CN109686431B - Operating room scheduling method based on mixed wolf-change neighborhood search algorithm - Google Patents

Operating room scheduling method based on mixed wolf-change neighborhood search algorithm Download PDF

Info

Publication number
CN109686431B
CN109686431B CN201811623601.2A CN201811623601A CN109686431B CN 109686431 B CN109686431 B CN 109686431B CN 201811623601 A CN201811623601 A CN 201811623601A CN 109686431 B CN109686431 B CN 109686431B
Authority
CN
China
Prior art keywords
solution
wolf
operating room
patients
optimal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811623601.2A
Other languages
Chinese (zh)
Other versions
CN109686431A (en
Inventor
范雯娟
朱淑婉
杨善林
裴军
丁帅
刘同柱
偶德峻
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei University of Technology
Original Assignee
Hefei University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hefei University of Technology filed Critical Hefei University of Technology
Priority to CN201811623601.2A priority Critical patent/CN109686431B/en
Publication of CN109686431A publication Critical patent/CN109686431A/en
Application granted granted Critical
Publication of CN109686431B publication Critical patent/CN109686431B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/20ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management or administration of healthcare resources or facilities, e.g. managing hospital staff or surgery rooms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Biomedical Technology (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Primary Health Care (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Public Health (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Epidemiology (AREA)
  • Medical Treatment And Welfare Office Work (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The embodiment of the invention provides an operating room scheduling method and device based on a hybrid grayish wolf-variable neighborhood search algorithm, wherein the method comprises the steps of firstly setting algorithm parameters and randomly generating initial solutions through the hybrid grayish wolf-variable neighborhood search algorithm, then calculating a fitness value and determining the best three solutions; then, variable neighborhood search transformation is carried out on the best three solutions, so that the quality of the solutions is improved; and performing cross operation on the population based on the fitness of the solution, and continuously updating the population through repeated iteration to finally obtain the optimal solution. In the embodiment of the invention, the hybrid wolf-change neighborhood search algorithm has better convergence speed and convergence result, solves the problem of high-complexity operating room scheduling, and improves the operating room scheduling efficiency of hospitals.

Description

Operating room scheduling method based on mixed wolf-change neighborhood search algorithm
[ technical field ] A method for producing a semiconductor device
The invention relates to the technical field of computers, in particular to an operating room scheduling method and device based on a hybrid wolf-change neighborhood search algorithm.
[ background of the invention ]
The efficiency of hospital resource scheduling determines the quality of service, and operating room scheduling is one of the most important links in hospital resource scheduling. Operating room scheduling requires systematic consideration of resource constraints, number of physicians, type of physicians, number of patients, duration of surgery, and other factors, which have been a challenging issue in recent years. At present, intelligent algorithms have been widely applied to various operating room scheduling problems, such as genetic algorithms, simulated annealing algorithms, tabu search algorithms, and the like.
In the existing scheduling model, only one day of operation allocation plan is generally considered, and the patient is allocated on the premise that the number of operation rooms available for each department is given. However, in general, the number of patients in each department is dynamically changed, and in addition, the allocation of the number of operating rooms to departments, the allocation of doctors to operating rooms, and the allocation of patients to operating rooms all affect the solution of the scheduling problem of the operating rooms.
[ summary of the invention ]
In view of this, the embodiment of the present invention provides an operating room scheduling method based on a hybrid grayish wolf-variable neighborhood search algorithm.
In a first aspect, an operating room scheduling method based on a hybrid grayish wolf-variable neighborhood search algorithm includes:
step 1, inputting the number of operating rooms, the capacity of each operating room, the number of doctors of each operation type, the number of patients of each doctor and the predicted operation duration, and setting mixed wolf-variable neighborhood search algorithm parameters including maximum iteration times max _ iter, neighborhood search time limit rho and wolf number popsize, wherein the iteration times t is 1;
step 2, initializing a population, considering that the common popsize only contains the wolfsbane, and defining the position of each wolfsbane as
Figure GDA0002940414330000021
Figure GDA0002940414330000022
q=1,2,...,popsize,
Figure GDA0002940414330000023
Respectively showing the position of the qth gray wolf on the 3s-2, 3s-1, 3s dimensions and also showing the operation day assigned by the sth doctor
Figure GDA0002940414330000024
Step 3, calculating the fitness value of each wolf in the solution set; the method specifically comprises the following steps:
step 31, pair
Figure GDA0002940414330000025
Assign the s-th doctor s to the operation day
Figure GDA0002940414330000026
In each operating room day, sequencing all the patients according to the non-increasing order of the operation risk coefficients, thereby obtaining a patient waiting list of each operating room day;
step 32, in each operating room day, sequentially allocating unassigned patients to the operating room day from the patient waiting list of the operating room day until the operating room day can contain the operating duration, and allocating a complete operating room day;
step 33, sequencing all the remaining unassigned patients in a non-increasing order according to the surgical risk coefficients, so as to obtain an updated waiting list;
step 34, calculating the time difference between the last operation ending time of each operation day and the normal closing time of the operating room
Figure GDA0002940414330000027
Step 35, for each patient k, the time difference of 3 operation days of the corresponding doctor is obtained
Figure GDA0002940414330000028
Figure GDA0002940414330000029
Selecting an optimal operation day to distribute patients k;
step 36, sorting all the patients distributed in each operation day according to the operation risk coefficients in a non-increasing order;
and step 37, calculating the sum of the hospitalization waiting cost of all the patients and the overtime cost of all the operating rooms, namely the fitness value.
Step 4, sorting according to the quality of the solutions, and finding out the best three solutions Xα,Xβ,XδAnd recording the optimal solution XαA fitness value of;
step 5, for Xα,Xβ,XδPerforming variable neighborhood search, and if the generated new solution is more optimal, updating the optimal solution;
step 6, updating parameters and coefficient vectors;
step 7, updating the position of each current wolf;
step 8, calculating the fitness value of each wolf in the solution set, sorting according to the merits of the solutions, and finding out the best three solutions Xα,Xβ,XδAnd recording the optimal solution XαA fitness value of;
and 9, making t equal to t +1, judging whether t is equal to or less than max _ iter, if so, returning to the step 5, otherwise, ending the algorithm and outputting a global optimal solution, outputting optimal allocation of the operation type to the room, allocation of the doctor to the operation room and the operation day, allocation of the patient to the operation room and the operation day, and operation sequence of the patient in the operation room.
The above-mentioned aspects and any possible implementation further provide an implementation, and the step 5 is for Xα,Xβ,XδPerforming variable neighborhood search, and if the generated new solution is more optimal, updating the optimal solution, specifically comprising:
step 51, setting iter to 0;
step 52, for the solution X, selecting a neighborhood structure N1Making neighborhood change, and randomly selecting two doctors from two operation days with the same type to exchange to obtain a new solution X';
step 53, if the fitness of the new solution X 'is better than that of the solution X, replacing the solution X with the new solution X';
step 54, selecting neighborhood structure N2Performing neighborhood change, randomly searching to obtain two different operation days for interchange to obtain a new solution X', limiting the neighborhood searching times to rho, and stopping if the search is not achieved;
step 55, if the fitness of the new solution X 'is better, replacing the original solution with the new solution X';
step 56, solve Xα,Xβ,XδDistributed execution step 52-step 55;
and 57, making iter equal to iter +1, judging whether iter is less than or equal to max _ iter, if so, returning to the step 2, and otherwise, outputting the updated optimal solution.
The above-mentioned aspect and any possible implementation manner further provide an implementation manner, and the updating the current position of each gray wolf in step 7 specifically includes:
step 71, setting the individual number variable q to be 1, and expressing the solution of the gray wolf position as
Figure GDA0002940414330000031
Figure GDA0002940414330000032
Step 72, setting a dimension variable j to 1;
step 73, randomly generating two fractional numbers r between (0,1)1And r2Calculating A1=2×a×r1-a,C1=2×r2
Figure GDA0002940414330000033
Step 74, randomly generating two fractional numbers r between (0,1)1And r2Calculating A2=2×a×r1-a,C2=2×r2
Figure GDA0002940414330000034
Step 75, randomly generating two fractional numbers r between (0,1)1And r2Calculating A1=2×a×r1-a,C1=2×r2
Figure GDA0002940414330000041
Step 76, calculate
Figure GDA0002940414330000042
Step 77, making j equal to j +1, judging whether j is equal to or less than dim, if yes, returning to step 73, otherwise, executing step 78;
and step 78, making q equal to q +1, judging whether the popsize is equal to or less than q, if so, returning to the step 72, otherwise, outputting an updating result.
In a second aspect, the present invention provides an electronic device comprising: a processor, a memory, and a bus;
the memory is used for storing execution instructions, the processor is connected with the memory through the bus, and when the electronic device runs, the processor executes the execution instructions stored in the memory to enable the processor to execute the method according to any one of the first aspect.
One of the above technical solutions has the following beneficial effects:
in the method of the embodiment of the invention, aiming at the scheduling problem of an operating room, algorithm parameters are firstly set and initial solutions are randomly generated by a mixed wolf-change neighborhood search algorithm, and then fitness values are calculated and the best three solutions are determined; then, variable neighborhood search transformation is carried out on the best three solutions, so that the quality of the solutions is improved; and performing cross operation on the population based on the fitness of the solution, and continuously updating the population through repeated iteration to finally obtain the optimal solution. The hybrid wolf-change neighborhood search algorithm has good convergence speed and convergence results, solves the problem of high-complexity operating room scheduling, and improves the operating room scheduling efficiency of hospitals.
[ description of the drawings ]
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings needed to be used in the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive labor.
FIG. 1 is a schematic diagram illustrating a surgical scheduling problem provided by an embodiment of the present invention;
fig. 2 is a schematic flowchart of an operating room scheduling method based on a hybrid grayish wolf-change neighborhood search algorithm according to an embodiment of the present invention;
FIG. 3 is a functional block diagram of an operating room dispatching device based on a hybrid grayish wolf-variable neighborhood search algorithm according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
[ detailed description ] embodiments
In order to make the objects, technical solutions and advantages of the present invention more apparent, the technical solutions of the present invention will be described in detail and completely with reference to the following embodiments and accompanying drawings. It is to be understood that the described embodiments are merely exemplary of the invention, and not restrictive of the full scope of the invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
For ease of understanding, the technical problem solved by the embodiment of the present invention is described in detail below with reference to fig. 1.
As illustrated in fig. 1, the operating room scheduling problem aims to minimize patient waiting costs and operating room overtime costs. The problem is described as follows: given R operating rooms, S doctors, I patients need to be scheduled for surgery in a week' S time. Each patient i has a surgical risk factor w that has been evaluated by the attending physicianiPredicted duration of operation pi. The typical open duration of the operating room is U.
The problem is assumed to be as follows:
1) the operation process is not allowed to be interrupted, and the patient is not allowed to exit or join in the midway;
2) patients were admitted at the time of the scheduled decision day and had already had a preoperative examination. Scheduling decisions are generally completed by nurses on the day before the scheduling period, namely the weekday;
3) the normal open time of each operating room is the same;
4) all patient operations are completed within a one-week scheduled time frame;
5) the doctor of each patient has already determined;
6) each doctor has three days of operating room time per week.
Based on this, an embodiment of the present invention provides an operating room scheduling method based on a hybrid grayish wolf-variable neighborhood search algorithm, as shown in fig. 2, the method includes the following steps:
step 1, inputting the number of operating rooms, the capacity of each operating room, the number of doctors of each operation type, the number of patients of each doctor and the predicted operation duration, and setting mixed wolf-variable neighborhood search algorithm parameters including maximum iteration times max _ iter, neighborhood search limit rho and wolf number popsize, wherein the iteration times t is 1;
step 2, initializing a population, considering that the common popsize only contains the wolfsbane, and defining the position of each wolfsbane as
Figure GDA0002940414330000061
Figure GDA0002940414330000062
q=1,2,...,popsize,
Figure GDA0002940414330000063
Respectively shows the position of the qth gray wolf on the 3s-2, 3s-1, 3s dimensions, which indicates that the operation day assigned by the s th doctor is
Figure GDA0002940414330000064
Step 3, calculating the fitness value of each wolf in the solution set;
step 4, sorting according to the quality of the solutions, and finding out the best three solutions Xα,Xβ,XδAnd recording the optimal solution XαA fitness value of;
step 5, for Xα,Xβ,XδPerforming variable neighborhood search, and if the generated new solution is more optimal, updating the optimal solution;
step 6, updating parameters and coefficient vectors;
step 7, updating the position of each current wolf;
step 8, calculating the fitness value of each wolf in the solution set, sorting according to the merits of the solutions, and finding out the best three solutions Xα,Xβ,XδAnd recording the optimal solution XαA fitness value of;
and 9, making t equal to t +1, judging whether t is equal to or less than max _ iter, if so, returning to the step 5, otherwise, ending the algorithm and outputting a global optimal solution, outputting optimal allocation of the operation type to the room, allocation of the doctor to the operation room and the operation day, allocation of the patient to the operation room and the operation day, and operation sequence of the patient in the operation room.
In specific implementation, the calculating the fitness value of each wolf in the solution set in step 3 specifically includes:
step 31, pair
Figure GDA0002940414330000065
Assign the s-th doctor s to the operation day
Figure GDA0002940414330000066
In each operating room, sequencing all patients according to the non-increasing order of the operation risk coefficients, thereby obtaining a waiting list of each operation day;
step 32, in each operation day, sequentially allocating unassigned patients to the operation days capable of containing the operation duration from the waiting list until all the operation days are allocated;
step 33, sequencing all the remaining unassigned patients in a non-increasing order according to the surgical risk coefficients, so as to obtain an updated waiting list;
step 34, calculating the time difference between the last operation ending time of each operation day and the normal closing time of the operating room
Figure GDA0002940414330000071
Step 35, for each patient k, the time difference of 3 operation days of the corresponding doctor is obtained
Figure GDA0002940414330000072
Figure GDA0002940414330000073
Selecting an optimal operation day to distribute patients k;
step 36, sorting all the patients distributed in each operation day according to the operation risk coefficients in a non-increasing order;
and step 37, calculating the sum of the hospitalization waiting cost of all the patients and the overtime cost of all the operating rooms, namely the fitness value.
In specific implementation, the allocation process in step 32 specifically includes:
in each operation day, the patients are sequentially distributed to the operation day from the waiting list of the operation day until the total operation time length of the distributed patients plus the operation time length of the next patient is just longer than the general open time length of the operation room, and the distributed patients are deleted from the waiting list of the operation day. From the first operating room to the last operating room on monday, the first operating room to the last operating room on tuesday was reassigned until the last operating room on friday was assigned in turn until all operating days were scheduled.
In step 35, two operation days (OR) for the same doctor sxT) and (OR)yT + SD), where SD > 0, the classification is discussed below:
the optimal operating room day is selected to assign patient k by: (where τ represents the quotient of operating room overtime cost per hour and patient hospitalization cost per day.)
1) If it is
Figure GDA0002940414330000074
When in use
Figure GDA0002940414330000075
Patient k is assigned to the operating day (OR)xT) is the best scheduling scheme, otherwise patient k is assigned to the surgical day (OR)yT + SD) is the best scheduling scheme;
2) if it is
Figure GDA0002940414330000081
Patient k is assigned to the operating day (OR)xT) is the best scheduling scheme, otherwise patient k is assigned to the surgical day (OR)yT + SD) is the best scheduling scheme;
3) if it is
Figure GDA0002940414330000082
Patient k is assigned to the operating day (OR)yT + SD) is the best scheduling scheme, otherwise patient k is assigned to the surgery day (OR)xT) is the best scheduling scheme;
4) if it is
Figure GDA0002940414330000083
When in use
Figure GDA0002940414330000084
Patient k is assigned to the operating day (OR)xT) is the best scheduling scheme, otherwise patient k is assigned to the surgical day (OR)yT + SD) is the best scheduling scheme;
5) if it is
Figure GDA0002940414330000085
When in use
Figure GDA0002940414330000086
Patient k is assigned to the operating day (OR)xT) is the best scheduling scheme, otherwise patient k is assigned to the surgical day (OR)yT + SD) is the best scheduling scheme;
6) if it is
Figure GDA0002940414330000087
And is
Figure GDA0002940414330000088
Patient k is assigned to the operating day (OR)xT) is the best scheduling scheme, otherwise patient k is assigned to the surgical day (OR)yT + SD) is the best scheduling scheme.
In step 37, the fitness value is the sum of the waiting hospitalization cost and the overtime cost, the waiting hospitalization cost is the product of the operation waiting days and the daily hospitalization cost, and the overtime cost is the product of the overtime hours and the overtime cost per hour.
In specific implementation, X is treated in step 5α,Xβ,XδPerforming variable neighborhood search, and if the generated new solution is more optimal, updating the optimal solution, specifically comprising:
step 51, setting iter to 0;
step 52, for the solution X, selecting a neighborhood structure N1Making neighborhood change, and randomly selecting two doctors from two operation days with the same type to exchange to obtain a new solution X';
step 53, if the fitness of the new solution X 'is the fitness of the solution X, replacing the solution X with the new solution X';
step 54, selecting neighborhood structure N2Performing neighborhood change, and performing random search to obtain two different operation days for interchange (the neighborhood search times are limited to rho, and the search is stopped if the neighborhood search times are not obtained), so as to obtain a new solution X';
step 55, if the fitness of the new solution X 'is better, replacing the original solution with the new solution X';
step 56, solve Xα,Xβ,XδDistributed execution step 52-step 55;
and 57, making iter equal to iter +1, judging whether iter is less than or equal to max _ iter, if so, returning to the step 2, and otherwise, outputting the updated optimal solution.
In specific implementation, the parameters are updated in step 6
Figure GDA0002940414330000091
Coefficient vector
Figure GDA0002940414330000092
Figure GDA0002940414330000093
Figure GDA0002940414330000094
And
Figure GDA0002940414330000095
is a random number between (0, 1).
In specific implementation, the updating of the current position of each gray wolf in step 7 specifically includes:
step 71, setting the individual number variable q to be 1, and expressing the solution of the gray wolf position as
Figure GDA0002940414330000096
Figure GDA0002940414330000097
Step 72, setting a dimension variable j to 1;
step 73, randomly generating two fractional numbers r between (0,1)1And r2Calculating A1=2×a×r1-a,C1=2×r2
Figure GDA0002940414330000098
Step 74, randomly generating two fractional numbers r between (0,1)1And r2Calculating A2=2×a×r1-a,C2=2×r2
Figure GDA0002940414330000099
Step 75, randomly generating two fractional numbers r between (0,1)1And r2Calculating A1=2×a×r1-a,C1=2×r2
Figure GDA00029404143300000910
Step 76, calculate
Figure GDA00029404143300000911
Step 77, making j equal to j +1, judging whether j is equal to or less than dim, if yes, returning to step 73, otherwise, executing step 78;
and step 78, making q equal to q +1, judging whether the popsize is equal to or less than q, if so, returning to the step 72, otherwise, outputting an updating result.
The technical scheme provided by the embodiment of the invention has the following beneficial effects:
according to the embodiment of the invention, by a mixed wolf optimization-variable neighborhood algorithm, operating room days are firstly distributed to doctors in a coding mode, then a patient distribution and sorting strategy aiming at each operating room day is proposed according to the nature of the problem, and an optimal patient distribution and sorting scheme in each operating room day is obtained within polynomial time; performing neighborhood search operation on each wolf location; selectively carrying out systematic updating based on the gray wolf optimization search based on the fitness of the gray wolf position; and continuously updating the population by repeated iteration, and finally obtaining the optimal solution. The mixed Grey wolf-variable neighborhood search algorithm has better convergence speed and convergence results, solves the problem of high-complexity operating room scheduling, and improves the operating room scheduling efficiency of hospitals.
The embodiment of the invention can complete the allocation of operating room days to the operation types, the allocation of doctors to the operating room days and the allocation and sequencing of patients to the operating room days, improves the utilization efficiency of the operating room in the actual complex environment and provides effective decision support for the scheduling of the operating room.
The embodiment of the invention provides a patient allocation and ordering strategy aiming at each operation day aiming at the problem that the traditional gray wolf optimization algorithm is easy to fall into local optimum, improves the search capability of the gray wolf by changing the neighborhood search algorithm, ensures the efficiency of the position of a prey, optimizes the convergence speed and the resolution diversity of the algorithm, and strengthens the local convergence capability at the end of the algorithm to a certain extent.
Based on the same concept, the embodiment of the invention further provides an embodiment of a device for realizing the steps and the method in the embodiment of the method.
Please refer to fig. 3, which is a flowchart illustrating an operating room dispatching apparatus based on a hybrid grayish wolf-variant neighborhood search algorithm according to an embodiment of the present invention, as shown in the figure, the apparatus includes:
a calculation module 310 for performing:
step 1, inputting the number of operating rooms, the capacity of each operating room, the number of doctors of each operation type, the number of patients of each doctor and the predicted operation duration, and setting mixed wolf-variable neighborhood search algorithm parameters including maximum iteration times max _ iter, neighborhood search time limit rho and wolf number popsize, wherein the iteration times t is 1;
step 2, initializing a population, considering that the common popsize only contains the wolfsbane, and defining the position of each wolfsbane as
Figure GDA0002940414330000101
Figure GDA0002940414330000102
q=1,2,...,popsize,
Figure GDA0002940414330000103
Respectively shows the position of the qth gray wolf on the 3s-2, 3s-1, 3s dimensions, which indicates that the operation day assigned by the s th doctor is
Figure GDA0002940414330000104
Step 3, calculating the fitness value of each wolf in the solution set;
step 4, sorting according to the quality of the solutions, and finding out the best three solutions Xα,Xβ,XδAnd recording the optimal solution XαA fitness value of;
step 5, for Xα,Xβ,XδPerforming variable neighborhood search, and if the generated new solution is more optimal, updating the optimal solution;
step 6, updating parameters and coefficient vectors;
step 7, updating the position of each current wolf;
step 8, calculating the fitness value of each wolf in the solution set, sorting according to the merits of the solutions, and finding out the best three solutions Xα,Xβ,XδAnd recording the optimal solution XαA fitness value of;
an output module 320 for performing:
and 9, making t equal to t +1, judging whether t is equal to or less than max _ iter, if so, returning to the step 5, otherwise, ending the algorithm and outputting a global optimal solution, outputting optimal allocation of the operation type to the room, allocation of the doctor to the operation room and the operation day, allocation of the patient to the operation room and the operation day, and operation sequence of the patient in the operation room.
The above-mentioned aspect and any possible implementation manner further provide an implementation manner, where the calculating module 310, in performing step 3, specifically includes:
step 31, pair
Figure GDA0002940414330000111
Assign the s-th doctor s to the operation day
Figure GDA0002940414330000112
In each operating room, sequencing all patients according to the non-increasing order of the operation risk coefficients, thereby obtaining a waiting list of each operation day;
step 32, in each operation day, sequentially allocating unassigned patients to the operation days capable of containing the operation duration from the waiting list until all the operation days are allocated;
step 33, sequencing all the remaining unassigned patients in a non-increasing order according to the surgical risk coefficients, so as to obtain an updated waiting list;
step 34, calculating the time difference between the last operation ending time of each operation day and the normal closing time of the operating room
Figure GDA0002940414330000113
Step 35, for each patient k, the time difference of 3 operation days of the corresponding doctor is obtained
Figure GDA0002940414330000114
Figure GDA0002940414330000115
Selecting an optimal operation day to distribute patients k;
step 36, sorting all the patients distributed in each operation day according to the operation risk coefficients in a non-increasing order;
and step 37, calculating the sum of the hospitalization waiting cost of all the patients and the overtime cost of all the operating rooms, namely the fitness value.
The above-mentioned aspect and any possible implementation manner further provide an implementation manner, and the calculating module 310 performs step 5 on Xα,Xβ,XδPerforming variable neighborhood search, and if the generated new solution is more optimal, updating the optimal solution, specifically comprising:
step 51, setting iter to 0;
step 52, for the solution X, selecting a neighborhood structure N1Making neighborhood change, and randomly selecting two doctors from two operation days with the same type to exchange to obtain a new solution X';
step 53, if the fitness of the new solution X 'is the fitness of the solution X, replacing the solution X with the new solution X';
step 54, selecting neighborhood structure N2Performing neighborhood change, and performing random search to obtain two different operation days for interchange (the neighborhood search times are limited to rho, and the search is stopped if the neighborhood search times are not obtained), so as to obtain a new solution X';
step 55, if the fitness of the new solution X 'is better, replacing the original solution with the new solution X';
step 56, solve Xα,Xβ,XδDistributed execution step 52-step 55;
and 57, making iter equal to iter +1, judging whether iter is less than or equal to max _ iter, if so, returning to the step 2, and otherwise, outputting the updated optimal solution.
The above-mentioned aspect and any possible implementation manner further provide an implementation manner, where the updating, by the computing module 310, the current position of each of the gray wolves in step 7 includes:
step 71, setting the individual number variable q to be 1, and expressing the solution of the gray wolf position as
Figure GDA0002940414330000121
Figure GDA0002940414330000122
Step 72, setting a dimension variable j to 1;
step 73, randomly generating two fractional numbers r between (0,1)1And r2Calculating A1=2×a×r1-a,C1=2×r2
Figure GDA0002940414330000123
Step 74, randomly generating two fractional numbers r between (0,1)1And r2Calculating A2=2×a×r1-a,C2=2×r2
Figure GDA0002940414330000124
Step 75, randomly generating two fractional numbers r between (0,1)1And r2Calculating A1=2×a×r1-a,C1=2×r2
Figure GDA0002940414330000131
Step 76, calculate
Figure GDA0002940414330000132
Step 77, making j equal to j +1, judging whether j is equal to or less than dim, if yes, returning to step 73, otherwise, executing step 78;
and step 78, making q equal to q +1, judging whether the popsize is equal to or less than q, if so, returning to the step 72, otherwise, outputting an updating result.
Since each unit module in the embodiment can execute the method shown in fig. 2, reference may be made to the related description of fig. 2 for a part not described in detail in this embodiment.
Fig. 4 is a schematic structural diagram of an electronic device according to an embodiment of the present invention. Referring to fig. 4, at a hardware level, the electronic device includes a processor, and optionally further includes an internal bus, a network interface, and a memory. The Memory may include a Memory, such as a Random-Access Memory (RAM), and may further include a non-volatile Memory, such as at least 1 disk Memory. Of course, the electronic device may also include hardware required for other services.
The processor, the network interface, and the memory may be connected to each other via an internal bus, which may be an ISA (Industry Standard Architecture) bus, a PCI (Peripheral Component Interconnect) bus, an EISA (Extended Industry Standard Architecture) bus, or the like. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one double-headed arrow is shown in FIG. 4, but that does not indicate only one bus or one type of bus.
And the memory is used for storing programs. In particular, the program may include program code comprising computer operating instructions. The memory may include both memory and non-volatile storage and provides instructions and data to the processor.
In a possible implementation manner, the processor reads the corresponding computer program from the nonvolatile memory into the memory and then runs the computer program, and the corresponding computer program can also be obtained from other equipment so as to form the operating room scheduling device on a logic level. And the processor executes the program stored in the memory so as to realize the operating room scheduling method provided by any embodiment of the invention through the executed program.
Embodiments of the present invention also provide a computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by an electronic device comprising a plurality of application programs, enable the electronic device to perform the operating room scheduling method provided in any of the embodiments of the present invention.
The method executed by the operating room scheduling apparatus based on the hybrid grayish wolf-change neighborhood searching algorithm according to the embodiment of the present invention shown in fig. 3 can be applied to or implemented by a processor. The processor may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware in a processor or instructions in the form of software. The Processor may be a general-purpose Processor, including a Central Processing Unit (CPU), a Network Processor (NP), and the like; but also Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components. The various methods, steps and logic blocks disclosed in the embodiments of the present invention may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The steps of the method disclosed in connection with the embodiments of the present invention may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is well known in the art. The storage medium is located in a memory, and a processor reads information in the memory and completes the steps of the method in combination with hardware of the processor.
Embodiments of the present invention also provide a computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by an electronic device comprising a plurality of application programs, enable the electronic device to perform the operating room scheduling method provided in any of the embodiments of the present invention.
The systems, devices, modules or units illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product with certain functions. One typical implementation device is a computer. In particular, the computer may be, for example, a personal computer, a laptop computer, a cellular telephone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
For convenience of description, the above devices are described as being divided into various units or modules by function, respectively. Of course, the functionality of the units or modules may be implemented in the same one or more software and/or hardware when implementing the invention.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The invention may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
The embodiments of the present invention are described in a progressive manner, and the same and similar parts among the embodiments can be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the system embodiment, since it is substantially similar to the method embodiment, the description is simple, and for the relevant points, reference may be made to the partial description of the method embodiment.
The above description is only an example of the present invention, and is not intended to limit the present invention. Various modifications and alterations to this invention will become apparent to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention should be included in the scope of the claims of the present invention.

Claims (3)

1. An operating room scheduling method based on a hybrid grayish wolf-variable neighborhood search algorithm, characterized in that the method comprises:
step 1, inputting the number of operating rooms, the capacity of each operating room, the number of doctors of each operation type, the number of patients of each doctor and the predicted operation duration, and setting mixed wolf-variable neighborhood search algorithm parameters including maximum iteration times max _ iter, neighborhood search limit rho and wolf number popsize, wherein the iteration times t is 1;
step 2, initializing a population, considering that the common popsize only contains the wolfsbane, and defining the position of each wolfsbane as
Figure FDA0002940414320000011
Figure FDA0002940414320000012
q=1,2,...,popsize,
Figure FDA0002940414320000013
Respectively shows the position of the qth gray wolf on the 3s-2, 3s-1, 3s dimensions, which indicates that the operation day assigned by the s th doctor is
Figure FDA0002940414320000014
Step 3, calculating the fitness value of each wolf in the solution set; the method comprises the following steps:
step 31, pair
Figure FDA0002940414320000015
Assign the s-th doctor s to the operation day
Figure FDA0002940414320000016
In each operating room, all patients are operatedNon-increasing the rank ordering of risk coefficients, thus obtain the waiting list of each operation day;
step 32, in each operation day, sequentially allocating unassigned patients to the operation days capable of containing the operation duration from the waiting list until all the operation days are allocated;
step 33, sequencing all the remaining unassigned patients in a non-increasing order according to the surgical risk coefficients, so as to obtain an updated waiting list;
step 34, calculating the time difference between the last operation ending time of each operation day and the normal closing time of the operating room
Figure FDA0002940414320000017
Step 35, for each patient k, the time difference of 3 operation days of the corresponding doctor is obtained
Figure FDA0002940414320000018
Figure FDA0002940414320000019
Selecting an optimal operation day to distribute patients k;
step 36, sorting all the patients distributed in each operation day according to the operation risk coefficients in a non-increasing order;
step 37, calculating the sum of the hospitalization waiting cost of all patients and the overtime cost of all operating rooms, namely the fitness value;
step 4, sorting according to the quality of the solutions, and finding out the best three solutions Xα,Xβ,XδAnd recording the optimal solution XαA fitness value of;
step 5, for Xα,Xβ,XδPerforming variable neighborhood search, and if the generated new solution is more optimal, updating the optimal solution;
step 6, updating parameters and coefficient vectors;
step 7, updating the position of each current wolf;
step 8, calculating the fitness value of each wolf in the solution setSorting according to the quality of the solution to find the best three solutions Xα,Xβ,XδAnd recording the optimal solution XαA fitness value of;
step 9, making t equal to t +1, judging whether t is equal to or less than max _ iter, if so, returning to the step 5, otherwise, ending the algorithm and outputting a global optimal solution, outputting optimal allocation of operation types to rooms, allocation of doctors to operating rooms and operating days, allocation of patients to operating rooms and operating days, and operation sequence of patients in the operating rooms;
for X in the step 5α,Xβ,XδPerforming variable neighborhood search, and if the generated new solution is more optimal, updating the optimal solution, specifically comprising:
step 51, setting iter to 0;
step 52, for the solution X, selecting a neighborhood structure N1Making neighborhood change, and randomly selecting two doctors from two operation days with the same type to exchange to obtain a new solution X';
step 53, if the fitness of the new solution X 'is better than that of the solution X, replacing the solution X with the new solution X';
step 54, selecting neighborhood structure N2Performing neighborhood change, randomly searching to obtain two different operation days for interchange to obtain a new solution X', limiting the neighborhood searching times to rho, and stopping if the neighborhood searching times are not searched;
step 55, if the fitness of the new solution X 'is better, replacing the original solution with the new solution X';
step 56, solve Xα,Xβ,XδDistributed execution step 52-step 55;
and 57, making iter equal to iter +1, judging whether iter is less than or equal to max _ iter, if so, returning to the step 2, and otherwise, outputting the updated optimal solution.
2. The method as claimed in claim 1, wherein the step 7 of updating the current position of each gray wolf specifically comprises:
step 71, setting the individual number variable q to be 1, and expressing the solution of the gray wolf position as
Figure FDA0002940414320000031
Figure FDA0002940414320000032
Step 72, setting a dimension variable j to 1;
step 73, randomly generating two fractional numbers r between (0,1)1And r2Calculating A1=2×a×r1-a,C1=2×r2
Figure FDA0002940414320000033
Step 74, randomly generating two fractional numbers r between (0,1)1And r2Calculating A2=2×a×r1-a,C2=2×r2
Figure FDA0002940414320000034
Step 75, randomly generating two fractional numbers r between (0,1)1And r2Calculating A1=2×a×r1-a,C1=2×r2
Figure FDA0002940414320000035
Step 76, calculate
Figure FDA0002940414320000036
Step 77, making j equal to j +1, judging whether j is equal to or less than dim, if yes, returning to step 73, otherwise, executing step 78;
and step 78, making q equal to q +1, judging whether the popsize is equal to or less than q, if so, returning to the step 72, otherwise, outputting an updating result.
3. An electronic device, comprising: a processor, a memory, and a bus; the memory is used for storing execution instructions, the processor is connected with the memory through the bus, and when the electronic device runs, the processor executes the execution instructions stored in the memory to enable the processor to execute the method according to any one of claims 1 to 2.
CN201811623601.2A 2018-12-28 2018-12-28 Operating room scheduling method based on mixed wolf-change neighborhood search algorithm Active CN109686431B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811623601.2A CN109686431B (en) 2018-12-28 2018-12-28 Operating room scheduling method based on mixed wolf-change neighborhood search algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811623601.2A CN109686431B (en) 2018-12-28 2018-12-28 Operating room scheduling method based on mixed wolf-change neighborhood search algorithm

Publications (2)

Publication Number Publication Date
CN109686431A CN109686431A (en) 2019-04-26
CN109686431B true CN109686431B (en) 2021-04-06

Family

ID=66190861

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811623601.2A Active CN109686431B (en) 2018-12-28 2018-12-28 Operating room scheduling method based on mixed wolf-change neighborhood search algorithm

Country Status (1)

Country Link
CN (1) CN109686431B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113011612B (en) * 2021-03-23 2022-09-20 合肥工业大学 Production and maintenance scheduling method and system based on improved wolf algorithm
CN113066568B (en) * 2021-04-13 2022-09-16 安徽医科大学第二附属医院 PETCT inspection scheduling method based on GVNS-OP algorithm
CN113345559B (en) * 2021-04-15 2023-04-18 山东师范大学 Multi-objective flexible element heuristic optimization method and system for surgical case scheduling
CN113555096B (en) * 2021-06-10 2023-06-30 合肥工业大学 Operating room scheduling method and system considering doctor scheduling condition
CN115331793B (en) * 2022-10-12 2023-02-07 华中科技大学同济医学院附属协和医院 Operation information management system and method based on lean medical treatment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107730072A (en) * 2017-09-11 2018-02-23 合肥工业大学 Based on the parallel machine gang scheduling method and system for improving Artificial Immune Algorithm
CN107730065A (en) * 2017-06-12 2018-02-23 合肥工业大学 Based on the production scheduling method and system for improving variable neighborhood search algorithm
CN109087698A (en) * 2018-07-16 2018-12-25 合肥工业大学 Based on the operating room dispatching method of dragonfly algorithm under weighted completion time minimum

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107730065A (en) * 2017-06-12 2018-02-23 合肥工业大学 Based on the production scheduling method and system for improving variable neighborhood search algorithm
CN107730072A (en) * 2017-09-11 2018-02-23 合肥工业大学 Based on the parallel machine gang scheduling method and system for improving Artificial Immune Algorithm
CN109087698A (en) * 2018-07-16 2018-12-25 合肥工业大学 Based on the operating room dispatching method of dragonfly algorithm under weighted completion time minimum

Also Published As

Publication number Publication date
CN109686431A (en) 2019-04-26

Similar Documents

Publication Publication Date Title
CN109686431B (en) Operating room scheduling method based on mixed wolf-change neighborhood search algorithm
AU2018246770B2 (en) Block chain based data processing method and device
Bertsimas et al. Predicting inpatient flow at a major hospital using interpretable analytics
CA3048739C (en) Blockchain-based data processing method and equipment
CN111930486B (en) Task selection data processing method, device, equipment and storage medium
Abdelmaguid et al. A hybrid GA/heuristic approach to the simultaneous scheduling of machines and automated guided vehicles
CN113792920B (en) Single-consulting-room-oriented hospital consultation sequence optimization method and device
CN113011483B (en) Method and device for model training and business processing
CN116432778B (en) Data processing method and device, storage medium and electronic equipment
CN108920183B (en) Service decision method, device and equipment
US11568227B1 (en) Neural network inference circuit read controller with multiple operational modes
CN112465172A (en) Hospital intelligent treatment method and device
WO2020120633A1 (en) Method for adaptive transportation services scheduling for healthcare cost reduction
CN116932175B (en) Heterogeneous chip task scheduling method and device based on sequence generation
CN116521350B (en) ETL scheduling method and device based on deep learning algorithm
CN113344248A (en) Order allocation method, device, storage medium and electronic equipment
CN107391541A (en) A kind of real time data merging method and device
US20230154599A1 (en) System and method for identifying optimal appointment times of patients
Zychlinski Managing queues with reentrant customers in support of hybrid healthcare
CN113703945B (en) Micro service cluster scheduling method, device, equipment and storage medium
US20240203572A1 (en) Multi-Agent Operating Theatre Management
CN113778094A (en) Vehicle path planning method and device, readable storage medium and electronic equipment
CN116994727A (en) Intelligent scheduling method and device for operation, computer equipment and medium
CN116386894A (en) Information tracing method and device, storage medium and electronic equipment
CN118154265A (en) Clothes washing recommendation method and device, electronic equipment and medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant