• No results found

Multi-agent based Patient Scheduling Using Particle Swarm Optimization

N/A
N/A
Protected

Academic year: 2021

Share "Multi-agent based Patient Scheduling Using Particle Swarm Optimization"

Copied!
8
0
0

Loading.... (view fulltext now)

Full text

(1)

Procedia Engineering 30 (2012) 386 – 393 1877-7058 © 2011 Published by Elsevier Ltd. doi:10.1016/j.proeng.2012.01.876

Procedia

Engineering

Procedia Engineering 00 (2011) 000–000 www.elsevier.com/locate/procedia

International Conference on Communication Technology and System Design

2011

Multi-agent based Patient Scheduling Using Particle Swarm

Optimization

E.Grace Mary Kanaga

a

, M.L. Valarmathi

b

,

a*

a,*Department of Computer science and Engineering, Karunya University, Karunya Nagar, Coimbatore-641 114, Tamil Nadu, India bDepartment of Computer science and Engineering, Government College of Technolog,Coimbatore-641 013, Tamil Nadu, India

Abstract

Patient scheduling is the process of scheduling and sequencing the patients for various multiple resources in health care domain. The multiple constraints and multiple goals to be achieved in minimal time makes this problem highly complex. Computational complexity is high in using exact methods for solving optimization problem. Motivated by the real needs in hospital environments, this paper focuses on finding an optimal schedule using the meta-heuristic technique Particle Swarm Optimization (PSO) and coordinating the hospital environment using multi-agents. Agents have been proved to be an effective approach to resource allocation because of its coordination and social abilities. For solving, various agents like Patient Agent (PA), Resource Agent (RA) and Common Agent (CA) are used. In addition to these agents a PSO Agent is used to perform the PSO optimization. On arrival of the patients, this PSO agent is called to perform PSO optimization dynamically and an optimized schedule is generated. The objective is to reduce the patient waiting time in the hospital. This agent based approach is implemented in JADE (Java Agent Development Environment) and tested for different data sets. The results are compared with the traditional dispatching rules like First Come First Serve(FCFS), Minimum Slack(MS),Shortest Processing Time(SPT) and Longest Processing Time (LPT). The performance improvement of total weighted waiting time in Agent-based Patient Scheduling using PSO (APS-PSO) for 10 resources and 50 patients is 4.13% when compared to the best performing dispatching rule MS and 52% with respect to LPT. Similarly, there is an average of 8.69% improvement in terms of total weighted completion time. When the number of late patient is considered, the performance of the PSO based approach increased by 17%.

© 2011 Published by Elsevier Ltd. Selection and/or peer-review under responsibility of ICCTSD 2011

Keywords: Agents; Multi-agent Coordination; PatientScheduling; Particle Swarm Optimization.

* Grace Mary Kanaga E. Tel.: +91-9994298003.

E-mail address: [email protected].

Open access under CC BY-NC-ND license.

(2)

1. Introduction

During the past decades the need for software applications in the health care industry has prominently changed, as the scenario switched from a rare use of mainframes to a massive use of low-cost hardware and networking technologies. The managerial aspect of providing health services to patients in hospitals is becoming important with the view of social concern. One main area that is of particular interest is patient scheduling. This paper describes how software agent will lead to a new generation of patient scheduling with ACL (Agent Communication Language) communication and with PSO optimization. PSO is one of the latest evolutionary optimization methods inspired by nature. Particle swarm was originated in 1995 by Kennedy and Eberhart [1] after studying the social behaviour of birds.

1.1 Problem Domain

The hospitals contain different autonomous wards and ancillary units. Each department has the authority to take their own decision so it is decentralized. In addition to the complexity arising from the distributed structure of hospitals, patient scheduling has to be performed in the face of a high degree of uncertainty about the treatment pathways of patients within the hospital [2].

The patients arrive continuously at the hospital and the necessary medical treatments are often not able to be completely determined at the beginning of the treatment process. Moreover the results of a diagnostic examination might change the (medical) priority of the patients, invoke additional activities and/or make other medical actions obsolete [3],[4].

2. Related Work

Heuristic are designed to find the best possible solutions with small computational efforts. If the problem space is very large, this is often the case of real-life problems like patient scheduling. The literatures available for patient scheduling using heuristic approaches are less but it has been widely used in other scheduling problems such as job shop scheduling. In scheduling area, PSO has been applied to the permutation flow shop scheduling problem by Fahit Tasgetiren et al. [5] and Maik Günther and Volker Nissen [6] has been used PSO in staff scheduling problem. PSO for sequencing problem has been discussed by Leticia Cagnina et al. [7]. The history, various methods, taxonomy, and different application of the PSO algorithm have been briefly discussed by Davoud Sedighizadeh and Ellips Masehian [8]. In this paper, PSO technique has been applied in agent-based patient scheduling and the effectiveness of the proposed method has been tested and the results are discussed.

2.1 Particle Swarm Optimization Technique

According to Nadia Nedjah et al [9], particle swarm optimization, also commonly known as PSO, mimics the behaviour of a swarm of insects or a school of fish. If one of the particles discovers a good path to food the rest of the swarm will be able to follow instantly even if they are far away in the swarm.

In PSO, each single solution is “bird” in the search space, which is called “particle”. All particles have fitness values, which are evaluated by the fitness (or objective) function to be optimized. Every particle in the swarm is described by position and velocity. In general, particle position represents the solution of optimization problem, and velocity represents the search distance and direction, which guides the flying of the particle. All particles fly through the problem space by following the current best particles. The

(3)

current best particles consist of the local best particle and the global best particle. The local best particle represents the best solution (position) the particle has achieved so far, and the global best particle represents the best value (position) obtained by the swarm so far.

Suppose that the search space is D-dimensional, and then the i-th particle of the swarm can be represented by a D-dimensional vector . That is

(1) The velocity of the particle i can be represented by another D-dimensional vector as follows.

(2)

The local best (pbest) of particle i is denoted as

(3)

and the global best (gbest) particle is denoted as

(4) Particle swarm has two primary operators: Velocity update and Position update as given by Kennedy and Eberhart [10].

(5)

(6)

where i= 1,2,…P, and P is the total number of the particle in a swarm, which is called population size. and are positive constants (called, learning factors) and is random function with range [0,1]. is the inertia weight used to control the impact of the previous velocities on the current velocity, influencing the trade-off between the global and local experiences. A particle’s new velocity is calculated according to its previous velocity and the distance from its current position to its local best and global best using Equation (5). A particle’s new position is calculated by utilizing its experience (ie., local best) and the best experience of all particles (ie., global best) using Equation (6).

3. Agent Based Patient Scheduling with Particle Swarm Optimization

The framework consists of Patient Agent (PA), Resource Agent (RA), Common Agent (CA) and Coordinator Agent (COA) .The CA is a general physician. According to the symptoms given by the patient the CA determines the initial treatments that the patient has to undergo. The treatment consists of consultation of doctor, diagnostic procedures like MRI scan, CT scan lab tests etc. Now the PA knows what are tasks it has to perform and then it request for the resources. The resource agent may be X-Ray, CT scan, Lab Tests, consultation with Physician etc. Each RA has multiple time slots. The PA requests for this time slots. Multiple PA may request for the same slot. For each resource a RA is created. In addition to these agents a PSO agent is used to perform the PSO optimization. On arrival of the patients, this PSO agent is called to perform PSO optimization dynamically and an optimized schedule is generated. The frame work for APS-PSO is given in Figure 1.

(4)

Figure 1.The frame work for APS-PSO

3.1 Particle Swarm Optimization for Patient Scheduling

The main problem of using PSO in patient-scheduling problem is the particle representation. In most applications of PSO, it is applied to the continuous optimization problems, where particle position xi, Velocity vi, acceleration constants c1 and c2,and inertia weight ω are all continuous constants. Therefore, that limits the use of PSO in the discrete space or combinatorial optimization problem. Patient-scheduling problem is a combinatorial optimization problem and its feasible solutions are the sequence of operations of all patients. Here the particle needs to be represented as a schedule. The particle representation and decoding of the solution has been discussed in the following sections.

PA1 RA1 RA2 RAm PS1 T11 T12 T1k Specialist RS1 RS2 RSm

RS i: Schedule for resource i RAi: Resource Agent Tij : Task j for patient i

CA T21 T22 T2l T31 T32 T3p PA2 PAn PS2 PSn PAi : Patient Agent CA: Common Agent PSi : Patient Schedule

Blood Test MRI Scan

(5)

3.1.1 Particle Encoding

This paper employs the particle representation based on Operation-Particle Position Sequence (OPPS) which has been discussed by Zhixiong Liu [11]. For a patient scheduling problem

consisting of n patients (or jobs) and resources , each

patient has a set of sequential tasks (operations) ,

where is the index of the patient, and is the index of the task or the operation. Total number of operations in the patient scheduling problem is denoted by d, where d is the sum of the number of tasks of all patients and is given by,

(7) Hence the search space is D-dimensional, and the particle representation is given as follows:

Table 1 Particle representation for patient scheduling problem

Task 1 1 … V … v … n

Position xij xi1 xi2 … xiy … xiz … xid

The first row of the Table 1 refers all the tasks of all patients. Every task of the vth patient is numbered

v and therefore there are nv same number of v tasks in the first line. In the above Table 1 the suffix and . The second row denotes the i-th particle position. The sequence of the tasks in the first row will correspondingly change if all particle position vectors in the second line are sequenced. Hence a sequence of tasks of all patients will be obtained.

3.1.2 Initialization

An example Patient Scheduling Pproblem (PSP) for 3 patients and 3 resources are given in Table 2. In the given example, there are 3 tasks for each patient and therefore totally 9 tasks are there (ie. d=9). The example particle representation and initialization of position and velocity vector of the given PSP is described in Table 3.

Table 2 An example 3x3 patient scheduling problem

Table 3 Particle representation and initialization of position and velocity vector for i th particle

Task 1 1 1 2 2 2 3 3 3

Position xij

(Values) 1.12 xi1 x0.82 i2 x1.8 i3 x.32 i4 1.08 xi5 x.70 i6 x1.90 i7 x.60 i8 .50 xi9 Velocity vij

(Values) -3.8 vi1 v2.8 i2 v0.08 i3 v-2.78 i4 1.34 vi5 v3.23 i6 v-0.98 i7 v3.60 i8 .75 vi9

Patient Arrival time Task Sequence Processing time Due Date

1 3 R1 R2 R3 2 1 3 13

2 6 R3 R2 R1 3 1 2 16

(6)

Particle position is initialized with random number from xmin to xmax and xmin is set to 0 and xmax is set to 2. The range [xmin, xmax ] is valid only for initialization and during PSO run, position vector has no limitation bound. The velocity vector is initialized with the random numbers between vmin and vmax . In this paper vmin is set to -4 and vmax is set to 4. The range [vmin, vmax ] is valid only for initialization and during PSO run, velocity vector has no limitation bound.The initial values are set based on the study made in various literatures.

3.1.3 Decoding Particles into solutions

For patient scheduling problem, PSO cannot directly employ particle position as a solution. Scheduling solution can be indirectly obtained through decoding of the particle representation. For decoding particles into a schedule, the first step is to sort the values of the position vector into ascending order. The next step is to arrange the tasks in the corresponding order as the values of the position vector, sorted in step 1. The resultant sequence of task and the corresponding position values are given in Table 4.

Table 4 Example of sequenced particles

Task 2 3 3 2 1 2 1 1 3 Position xij (Values) x.32 i4 (1) xi9 .50 (2) xi8 .60 (3) xi6 .70 (4) xi2 0.82 (5) xi5 1.08 (6) xi1 1.12 (7) xi3 1.8 (8) xi7 1.90 (9)

Thus from the above Table 4, the operation-based permutation is

obtained. An element of with a value i stands for patient . The j th occurrence of i in refers to that is the j th task (operation) of patient . The precedence of the task is determined simply by the order of the elements of . The task corresponding to the v th element of has to be completed before

v+1 th element. Thus, referring to the above description, the interpretation of considering the precedence constraint of the task is

. Ordered tasks from are ready to be scheduled. Table 5 Decoded schedule

R3 P2 P3 P1

R2 P2 P2 P3

R1 P3 P1 P2

Timeslot 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Consider the operation-based permutation , the first element in the

permutation is 2, therefore the 1 st task of the 2 nd patient is processed on resource R3. In succession, the 2 nd element in the permutation is 3, hence the 1 st task of the 3 rd patient is processed on R1, and then the 3 rd element is 3, so the 2 nd task of the 3 rd patient is processed on. Thus based on the above description the decode schedule in Table 5 is obtained.

3.1.4 Evaluation of Fitness

Evaluate the fitness of the particle which is the total weighted tardiness of all patients from the decoded schedule, where is the weight priority) of patient i and is the tardiness (lateness)

(7)

of patient i. Set this value as the pbest for patient i. Evaluate each particle in the swarm based on the fitness function and find the best fitness value and set the gbest value.

3.1.5 Updation of Position and Velocity Vectors

Update the velocity and the position vectors based on the Equation (5) and Equation (6) respectively. In Equation (5), inertia weight is an important parameter to the optimizing ability of PSO algorithm. Based on the study made from various literatures and the discussion given by Shi and Eberhart [12], in this paper , its value is set up to vary linearly from 0.9 t0 0.4 according to the following formula:

(8)

where and are both random numbers called initial weight and final weight respectively. In addition is the maximum number of iterations and is the current iteration.

4. Implementation

The basic framework is implemented in the JADE platform. JADE (Java Agent DEvelopment Framework) is a software framework fully implemented in Java language. The final schedule has been generated for 10 resources and 50.

5. Results And Discussion

An APS with PSO optimization is tested on the set of input data with 10 resources and varying number of patients. Each instance is tested for 10 runs and the best solution is taken. The computational results of the APS-PSO for 10 resources and 50 patients are compared with the traditional techniques like FCFS, MS, LPT and SPT and it is shown in Figure 2.

Figure 2 Comparison of performance metrics 0 2000 4000 6000 8000 10000 Time/ mins Scheduling Techniques

Comparison of Performance metrics

Max. Completion Time Total Completion Time Total Weighted Completion time Max Waiting Time Total Waiting Time

(8)

Perusal of Figure 2 clearly shows that the waiting time as well as the completion time of the APS-PSO is considerably reduced when compare to traditional scheduling techniques. The performance improvement of total weighted waiting time in APS-PSO is 4.13% when compared to the best performing dispatching rule MS and 52% when compared to LPT. Similarly, there is an average of 8.69% improvement in terms of total weighted completion time. There is a considerable percentage of reduction in the number of late patients in PSO method when compared to other scheduling techniques except SPT. There is a reduction of 17% in the number of late patients with the reference to FCFS, MS and 26.09% for LPT.

6. CONCLUSION AND FUTURE WORK

In this paper, an agent-based patient scheduling using PSO optimization has been explained and implemented using JADE. The results clearly shows that the performance improvement of total weighted waiting time in APS-PSO is 4.13% when compared to the best performing dispatching rule MS and 52% when compared to LPT. Similarly, there is an average of 8.69% improvement in terms of total weighted completion time.

For further enhancement, other evolutionary techniques can also be researched such as simulated annealing [13], and ant-colony optimization [14]. Also further improvement that can be made to include a module to negotiate for already allocated timeslots. An efficient patient scheduling which reduces the time of patient stay in the hospital, improves patient care, resource utilization and thus reducing anxiety and conflicts among staff and the family member.

References

[1] Kennedy. J and Eberhart. R (1995), “ Particle Swarm Optimization”, Proceedings of IEEE International Conference on Neural Networks , vol.4, pp. 1942-1948.

[2] Biskup. D, “Single-machine scheduling with learning considerations”, European Journal of Operational Research, 1999, vol. 115, no. 1, pp. 173–178.

[3] BenHassine A, Ho. T. B (2007), “An agent-based approach to solve dynamic meeting scheduling problems with preferences”, Engineering Applications Of Artificial Intelligence, vol.20, no.6, pp. 857-873.

[4] [4] Wainer. J, Ferreira. P. R, Constantino. E. R , “Scheduling meetings through multi-agent negotiations” , Decision Support Systems, 2007, vol.44, no.1, pp. 285-297.

[5] Fahit Tasgetiren .M, Mehmet Sevkli, Yun-Chia Liang, and Gunes Gencyilmaz , “Particle Swarm Optimization Algorithm for Permutation Flowshop Sequencing Problem,” Proceedings of the International Workshop on Ant Colony Optimization and Swarm Intelligence LNCS 3172, 2004, pp.382-390.

[6] Maik Günther and Volker Nissen (2010), “Particle Swarm Optimization and an Agent-Based Algorithm for a Problem of Staff Scheduling ,”Applications of Evolutionary Computation LNCS vol. 6025/2010, pp. 451-461.

[7] Leticia Cagnina, Susana Esquivel, Raul Gallard , “ Particle swarm Optimization for Sequencing Problems: A case study,” Proceedings of the Congress on Evolutionary Computation, 2004, pp. 536-540.

[8] Davoud Sedighizadeh and Ellips Masehian (2009), “ Particle Swarm Optimization Methods, Taxonomy and Applications,” International Journal of Computer Theory and Engineering, 2009, vol.1, No. 5, pp. 486- 497.

[9] Nadia Nedjah, Luiza de Macedo Mourelle (Eds.) ,“Swarm Intelligent Systems”, Springer Publications,2006. [10] Kennedy. J and Eberhart. R , Swarm Intelligence, Morgan Kaufmann Publishers,2001.

[11] Zhixiong Liu , “Investigations of Particle Swarm Optimization for JobShop Scheduling Problem,” Proceedings of the Third International Conference on Natural Computation, 2007, vol.3, pp. 799-803.

[12] Shi .Y, R.C. Eberhart ,“Empirical study of particle swarm optimization,” Proceeding of Congress on Evolutionary Computation. Piscataway, NJ: IEEE Service Center, 1999, pp. 1945-1949.

[13] K. Krishna, K. Ganeshan, D.J. Ram , “Distributed Simulated Annealing Algorithms for Job Shop Scheduling,” in IEEE Transactions on Systems Man and Cybernetics, 1995, vol.25, no. 7, pp. 1102.

[14] W. Xiang, H.P. Lee , “Ant colony intelligence in multi-agent dynamic manufacturing scheduling,” Engineering Applications of Artificial Intelligence, 2008, pp.73-84.

Figure

Figure 1.The frame work for APS-PSO
Table 2 An example 3x3 patient scheduling problem
Table 4 Example of sequenced particles
Figure 2 Comparison of performance metrics

References

Related documents

Corollary 1: When e ff ort is observable, as long as there is no crisis the size of the speculative sector goes up, along with the expected compensation of managers employed in

In order to keep the result, a copy of the instruction together with its arguments, results and execu- tion statistics are stored in the recycle pool and thus made available for

In this work we measure social surplus as the sum of consumer (buyers of houses) surplus, producer (housing developers) surplus and revenue obtained by the local regulator from

Notwithstanding these methodological limitations, the findings suggest that government funding of nonprofit organizations is a topic of relevance due to reasons A and B which have

Nonprofit governance focuses on issues such as setting organizational direction; determining mission, vision, and values; engaging in strategic thinking and planning;

Therefore, the efficacy in men of the HPV vaccines for the prevention of potentially infectious lesions induced by high-risk HPV will likely be in- ferred from studies in men on

physiological conditions yet responsive to the reductive environ- ment (eg, GSH) of intracellular fluids in cancer cells, indicating that disulfide bonds can be used as the linker

The aim of this paper is to present the findings from an initial study of the water levels and tidal properties derived from water level measurements made on various (15) islands