A big data-based group optimization processing system and method
By using a big data optimization system, the optimal scheduling plan is generated, which solves the errors and duplication problems of the traditional scheduling model, and achieves fair work time arrangement and improved employee satisfaction.
Patent Information
- Application Number
- CN202410463144.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-17
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2044-04-17
AI Technical Summary
In the traditional scheduling model, administrators need to manually create scheduling rules, which is prone to errors and duplication, bringing difficulties and risks to enterprise production and management, and cannot effectively optimize the work time arrangement of employees.
A big data-based group optimization processing system is adopted to generate the optimal scheduling scheme by generating coded sequences, setting constraints, calculating objective function values, allocating non-dominated layers and crowding, and performing crossover and mutation operations.
This has enabled a fair allocation of work tasks and shift schedules, avoiding excessive overtime and improving employee job satisfaction and work performance.
Smart Images

Figure CN118313607B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of big data technology, specifically to a group optimization processing system and method based on big data. Background Technology
[0002] In today's society, various organizations operate across all industries, each with its own work patterns and habits. This places different demands on employees' working hours. For some companies and organizations with unique characteristics, 24 / 7 on-duty staff are required; therefore, shift scheduling becomes a necessary work arrangement. In traditional shift scheduling models, administrators need to create shift rules in the system that meet work requirements. Manual intervention can lead to scheduling errors and duplications, causing numerous difficulties and risks to the company's production and management. Therefore, various shift scheduling methods have emerged. Summary of the Invention
[0003] The purpose of this invention is to provide a group optimization processing system and method based on big data to solve the problems mentioned in the background art.
[0004] To address the aforementioned technical problems, this invention proposes the following technical solution: a group optimization processing method based on big data, comprising the following steps:
[0005] S1. Based on decision variables, generate coding sequences for individual solutions, and plan the structure of the coding sequences, which are divided into scheduling rule coding and shift coding;
[0006] S2. Set constraints to filter individual solutions that meet the constraints and store them in the initialization coding sequence population;
[0007] S3. Establish the objective function and calculate the objective function value of the solution for each individual in the initial coding sequence population;
[0008] S4. Based on the objective function value, assign non-dominated layers to individual solutions, and calculate the crowding degree of individual solutions based on the non-dominated layers; obtain the fitness of individual solutions based on the non-dominated level and crowding degree of individual solutions in the non-dominated layers.
[0009] S5. Based on fitness, determine whether the individual solution satisfies the optimal scheduling solution. If it does, output the individual solution; otherwise, perform crossover and mutation operations on the individual solutions in the initial coding sequence population to generate new individual solutions and return to S2.
[0010] Furthermore, in S1, a scheduling rule code is generated based on the number of days t within the scheduling cycle. The code length of the scheduling rule code is t, and t = W + R, where W represents the number of working days within the scheduling cycle, and R represents the number of rest days within the scheduling cycle. The scheduling rule code consists of shift label values and uses integer encoding. The code length represents the scheduling cycle, non-zero integers represent working days, and number 0 represents a rest day. For example, the code 01010303 indicates 4 rest days, 4 working days, and 1 consecutive working day. Specifically, in a scheduling rule with an 8-day cycle, the 2nd and 4th days are day shifts, the 6th and 8th days are night shifts, and the rest are rest days. The shift code consists of a shift label value, a duty status value, and a duty time value, where the shift label value indicates the current status of the shift. The shift status is represented by numbers such as 1 for day shift, 2 for regular day shift, 3 for night shift, and 0 for rest. The shift status value indicates whether the person is currently on duty or off duty, using integer encoding: 1 for on duty and 0 for off duty. The shift time value is represented by a real number: 8.00 represents 8:00 AM, and 17.50 represents 5:30 PM. For example, the code 118.50021.50 indicates that the day shift starts at 8:30 AM and ends at 9:30 PM. Because integer encoding is used, the hexadecimal representation of minutes in the shift time value needs to be converted to a base-100 integer. This conversion is done using a ratio of 100 / 60. For example, 30 minutes in 8:30 becomes 100 / 60*30=50 in integer encoding, resulting in the integer code 8.50. The structure of the generated encoding sequence based on the above conditions is as follows: Figure 2 As shown.
[0011] Furthermore, in S2, the constraints include:
[0012] Based on shift codes and working hour constraints, constraint condition one is generated:
[0013]
[0014] Where, x ij T represents the working hours of employee i on day j. i This represents the maximum number of working hours for employee i within a scheduling cycle;
[0015] Based on the scheduling rule code and the number of consecutive working days in each scheduling cycle, constraint condition two is generated:
[0016]
[0017] Among them, y ijThis represents the on-duty status value of employee i in the shift code on day j within the scheduling cycle, e represents the sequence number of the day corresponding to the start date within the scheduling cycle, f represents the number of consecutive working days, and L... i This represents the maximum number of consecutive working days that employee i can work within a scheduling cycle;
[0018] Based on the scheduling rule code and the rest interval within each scheduling cycle, constraint condition three is generated:
[0019]
[0020] Among them, D work D represents the number of consecutive working days within a scheduling cycle. rest This indicates the number of rest days within the work schedule cycle, and γ represents the rest interval threshold.
[0021] Based on the scheduling rule code and the number of rest days in each scheduling cycle, constraint condition four is generated:
[0022] α≤D rest ≤β
[0023] Among them, D rest Let α represent the number of rest days in a work schedule cycle, where α represents the lower limit of the number of rest days and β represents the upper limit of the number of rest days, and 0 < α < β. <R;
[0024] If an individual solution satisfies all the constraints, then the individual solution is filtered; otherwise, return to S1.
[0025] Furthermore, in S3, the objective function includes a comprehensive satisfaction function and a task quantity function, and the objective function value includes a comprehensive satisfaction function value and a task quantity function value.
[0026] The overall satisfaction level includes satisfaction with working hours, satisfaction with consecutive working days, and satisfaction with shifts. The overall satisfaction level function is:
[0027]
[0028] Where f(z) represents the overall satisfaction function value of employee i with individual solution z, A i (z) represents employee i's work hour satisfaction with individual solution z; B i (z) represents employee i's daily satisfaction with individual solution z; C i (z) represents the shift satisfaction of employee i with individual solution z, and Q represents the total number of employees;
[0029] The task quantity function is:
[0030]
[0031] Where t is the number of days in the scheduling cycle, T avg (z) represents the task quantity function value of employee i for individual solution z, N ij This represents the amount of work completed by employee i on day j when the individual solution is z.
[0032] Furthermore, in S4, the method for allocating the non-dominated layer is as follows:
[0033] Based on the comprehensive satisfaction function, the comprehensive satisfaction function values are sorted in ascending order, and the first non-dominated layer is generated, denoted as NDL1={z|z∈[1,S]}, where S represents the total number of individual solutions contained in the initial coding sequence population;
[0034] Based on the task quantity function, the values of the task quantity function are sorted in ascending order, and a second non-dominated layer is generated, denoted as NDL2={z|z∈[1,S]}.
[0035] Furthermore, in S4, the crowding distance is obtained as follows:
[0036] S4-1. Calculate the relative distance dist1(z) of the individual solution z in the first non-dominated layer = |f(z) - f(z) 0 )|+|f(z)-f(z 1 )|, where z 0 This represents the individual solution preceding the individual solution z in the first non-dominated layer. 1 This represents the individual solution f(z) at the position following the individual solution z in the first non-dominated layer. 0 ) represents the individual solution z 0 The overall satisfaction function value, f(z) 1 ) represents the individual solution z 1 The overall satisfaction function value;
[0037] Calculate the relative distance dist2(z) of the individual solution z in the second non-dominated layer = |T avg (z)-T avg (z 2 )|+|T avg (z)-T avg (z 3 )|, where z 2 This represents the individual solution preceding the individual solution z in the second non-dominated layer. 3 In the second non-dominated layer, T represents the individual solution at the position following individual solution z.avg (z 2 ) represents the task volume function value of the individual solution z 2 , T avg (z 3 ) represents the task volume function value of the individual solution z 3 ;
[0038] S4-2. Calculate the crowding distance of the individual solution z based on the relative distance
[0039] Furthermore, in S4, the calculation formula of the fitness is as follows where exp{-D(z)} means that when D(z) is smaller, the value of exp{-D(z)} is larger, then the crowding degree is larger, the individuals are denser, and there are more individuals around the individual solution z in the non-dominated layer, which is not conducive to optimizing diverse individual samples with distinct features. On the contrary, when D(z) is larger, the value of exp{-D(z)} is smaller, then the crowding degree is smaller, the individuals are sparser, and there are fewer surrounding individuals, that is, it is conducive to optimizing rich and diverse individual samples; where SY(z) represents the fitness of the individual solution z, SN1(z) represents the first non-dominated rank of the individual solution z, SN2(z) represents the second non-dominated rank of the individual solution z, the first non-dominated rank is the sorting number of the individual solution z in the first non-dominated layer, and the second non-dominated rank is the sorting number of the individual solution z in the second non-dominated layer.
[0040] Furthermore, in S5, a preset optimal shift schedule sy is set. If max[SY(z)] ≥ sy, it means that the individual solution z meets the optimal shift schedule, and the individual solution z is output. If max[SY(z)] < sy, it means that the individual solution z does not meet the optimal shift schedule, and crossover operation and mutation operation are performed on the individual solutions in the initialized coding sequence population. Among them, max[·] represents the maximum value function, and max[SY(z)] represents that the fitness of this individual solution is greater than the fitness of any other individual solution.
[0041] Furthermore, in S5, the crossover operation is to randomly select two coding sequences in the initialized coding sequence population, and at the fixed coding sequence crossover point, swap the coding information in the two randomly selected coding sequences
[0042] The mutation operation is to randomly change the coding segments in the coding sequence based on the result of the crossover operation to form a new individual solution.
[0043] A big data-based group optimization processing system, comprising: a basic settings module, an algorithm configuration module, an algorithm iteration module, and a scheduling module;
[0044] The basic settings module is used to define decision variables and plan the structure of the coding sequence; to set constraints and filter individual solutions that meet the constraints; and to establish an objective function and calculate the objective function value of each individual solution in the initial coding sequence population.
[0045] The algorithm configuration module is used to allocate non-dominated layers to individual solutions, calculate the crowding degree of individual solutions based on the non-dominated layers, and obtain the fitness of individual solutions based on the non-dominated level and crowding degree of individual solutions in the non-dominated layers.
[0046] The algorithm iteration module determines whether an individual solution satisfies the optimal scheduling solution based on fitness. If it does, the individual solution is output. If it does not, the individual solutions in the initial coding sequence population are subjected to crossover and mutation operations to generate new individual solutions, which are then sent to the basic settings module.
[0047] The scheduling module generates a schedule based on the individual solutions output by the algorithm iteration module.
[0048] Compared with the prior art, the beneficial effects achieved by the present invention are:
[0049] 1. This invention obtains the fitness of an individual solution by calculating the congestion distance, thereby obtaining the optimal solution for that individual solution;
[0050] 2. This invention is a group optimization system and generation method that optimizes the scheduling of personnel in an enterprise, allocates work tasks and shifts more fairly, avoids excessive overtime or unreasonable personnel arrangements, thereby improving employee job satisfaction and enthusiasm, as well as work performance. Attached Figure Description
[0051] The accompanying drawings are provided to further illustrate the invention and form part of the specification. They are used in conjunction with embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings:
[0052] Figure 1 This is a schematic diagram of the structure of a big data-based group optimization processing system according to the present invention;
[0053] Figure 2 This is an example diagram of the encoding sequence of a population optimization processing method based on big data according to the present invention;
[0054] Figure 3This is an example diagram of shift coding cross-validation in a group optimization processing method based on big data according to the present invention.
[0055] Figure 4 This is a cross-example diagram of the scheduling rule coding in the group optimization processing method based on big data of the present invention;
[0056] Figure 5 This is an example diagram of shift coding variation in a group optimization processing method based on big data according to the present invention;
[0057] Figure 6 This is an example diagram illustrating the variation of the scheduling rule encoding in a group optimization processing method based on big data according to the present invention.
[0058] Figure 7 This is a schematic diagram illustrating the steps of a group optimization processing method based on big data according to the present invention. Detailed Implementation
[0059] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative effort are within the scope of protection of the present invention.
[0060] Please see Figure 1 In this first embodiment: a group optimization processing system based on big data is provided, which includes: a basic settings module, an algorithm configuration module, an algorithm iteration module, and a scheduling module;
[0061] The basic settings module is used to define decision variables and plan the structure of the coding sequence; to set constraints and select individual solutions that meet the constraints; and to establish the objective function and calculate the objective function value of each individual solution in the initial coding sequence population.
[0062] The algorithm configuration module is used to assign non-dominated layers to individual solutions, calculate the crowding degree of individual solutions based on the non-dominated layers, and obtain the fitness of individual solutions based on the non-dominated level and crowding degree of individual solutions in the non-dominated layers.
[0063] The algorithm iteration module determines whether an individual solution satisfies the optimal scheduling solution based on fitness. If it does, the individual solution is output. If it does not, crossover and mutation operations are performed on the individual solutions in the initial coding sequence population to generate new individual solutions, which are then sent to the basic settings module.
[0064] The scheduling module generates a schedule based on the individual solutions output from the algorithm iteration module.
[0065] Please see Figure 7 In this second embodiment: a group optimization processing method based on big data is provided, the method including:
[0066] S1. Based on decision variables, generate coding sequences for individual solutions, and plan the structure of the coding sequences, which are divided into scheduling rule coding and shift coding;
[0067] Specifically, based on the number of days t within the scheduling cycle, a scheduling rule code is generated. The code length of the scheduling rule code is t, and t = W + R, where W represents the number of working days within the scheduling cycle and R represents the number of rest days within the scheduling cycle. The scheduling rule code consists of a shift label value; the shift code consists of a shift label value, a duty status value, and a duty time value.
[0068] S2. Set constraints to filter individual solutions that meet the constraints and store them in the initialization coding sequence population;
[0069] Specifically, the constraints include:
[0070] Based on shift codes and working hour constraints, constraint condition one is generated:
[0071]
[0072] Where, x ij T represents the working hours of employee i on day j. i This represents the maximum number of working hours for employee i within a scheduling cycle;
[0073] Based on the scheduling rule code and the number of consecutive working days in each scheduling cycle, constraint condition two is generated:
[0074]
[0075] Among them, y ij This represents the on-duty status value of employee i in the shift code on day j within the scheduling cycle, e represents the sequence number of the day corresponding to the start date within the scheduling cycle, f represents the number of consecutive working days, and L... i This represents the maximum number of consecutive working days that employee i can work within a scheduling cycle;
[0076] Based on the scheduling rule code and the rest interval within each scheduling cycle, constraint condition three is generated:
[0077]
[0078] Among them, D work D represents the number of consecutive working days within a scheduling cycle.rest This indicates the number of rest days within the work schedule cycle, and γ represents the rest interval threshold.
[0079] Based on the scheduling rule code and the number of rest days in each scheduling cycle, constraint condition four is generated:
[0080] α≤D rest ≤β
[0081] Among them, D rest Let α represent the number of rest days in a work schedule cycle, where α represents the lower limit of the number of rest days and β represents the upper limit of the number of rest days, and 0 < α < β. <R;
[0082] If an individual solution satisfies all the constraints, then the individual solution is filtered out; otherwise, return to S1.
[0083] S3. Establish the objective function and calculate the objective function value of the solution for each individual in the initial coding sequence population;
[0084] Specifically, the objective function includes a comprehensive satisfaction function and a task quantity function, and the objective function value includes the comprehensive satisfaction function value and the task quantity function value:
[0085] Overall satisfaction includes satisfaction with working hours, satisfaction with consecutive working days, and satisfaction with shifts. The overall satisfaction function is:
[0086]
[0087] Where f(z) represents the overall satisfaction function value of employee i with individual solution z, A i (z) represents employee i's work hour satisfaction with individual solution z; B i (z) represents employee i's daily satisfaction with individual solution z; C i (z) represents the shift satisfaction of employee i with individual solution z, and Q represents the total number of employees;
[0088] The task quantity function is:
[0089]
[0090] Where t is the number of days in the scheduling cycle, T avg (z) represents the task quantity function value of employee i for individual solution z, N ij This represents the amount of work completed by employee i on day j when the individual solution is z;
[0091] S4. Based on the objective function value, assign non-dominated layers to individual solutions, and calculate the crowding degree of individual solutions based on the non-dominated layers; obtain the fitness of individual solutions based on the non-dominated level and crowding degree of individual solutions in the non-dominated layers.
[0092] Specifically, the method for allocating non-dominated layers is as follows:
[0093] Based on the comprehensive satisfaction function, the comprehensive satisfaction function values are sorted in ascending order, and the first non-dominated layer is generated, denoted as NDL1={z|z∈[1,S]}, where S represents the total number of individual solutions contained in the initial coding sequence population;
[0094] Based on the task quantity function, the task quantity function values are sorted in ascending order, and a second non-dominated layer is generated, denoted as NDL2={z|z∈[1,S]};
[0095] The crowded distance is obtained as follows:
[0096] S4-1. Calculate the relative distance dist1(z) of the individual solution z in the first non-dominated layer = |f(z) - f(z) 0 )|+|f(z)-f(z 1 )|, where z 0 This represents the individual solution preceding the individual solution z in the first non-dominated layer. 1 This represents the individual solution f(z) at the position following the individual solution z in the first non-dominated layer. 0 ) represents the individual solution z 0 The overall satisfaction function value, f(z) 1 ) represents the individual solution z 1 The overall satisfaction function value;
[0097] Calculate the relative distance dist2(z) of the individual solution z in the second non-dominated layer = |T avg (z)-T avg (z 2 )|+|T avg (z)-T avg (z 3 )|, where z 2 This represents the individual solution preceding the individual solution z in the second non-dominated layer. 3 In the second non-dominated layer, T represents the individual solution at the position following individual solution z. avg (z 2 ) represents the individual solution z 2 The task quantity function value, T avg (z 3)Represents the task volume function value of the individual solution z 3 ;
[0098] S4-2. Calculate the crowding distance of the individual solution z based on the relative distance
[0099] The calculation formula of the fitness is where SY(z) represents the fitness of the individual solution z, SN1(z) represents the first non-dominated rank of the individual solution z, SN2(z) represents the second non-dominated rank of the individual solution z. The first non-dominated rank is the sorting number of the individual solution z in the first non-dominated layer, and the second non-dominated rank is the sorting number of the individual solution z in the second non-dominated layer;
[0100] S5. Based on the fitness, determine whether the individual solution meets the optimal shift scheduling solution. If it meets the optimal shift scheduling solution, output the individual solution; if it does not meet the optimal shift scheduling solution, perform crossover operation and mutation operation on the individual solutions in the initialized coding sequence population to generate new individual solutions, and return to S2;
[0101] Specifically, preset the optimal shift scheduling solution sy. If max[SY(z)] ≥ sy, it means that the individual solution z meets the optimal shift scheduling solution, and output the individual solution z. If max[SY(z)] < sy, it means that the individual solution z does not meet the optimal shift scheduling solution, and perform crossover operation and mutation operation on the individual solutions in the initialized coding sequence population, where max[·] represents the maximum value function;
[0102] The crossover operation is to randomly select two coding sequences in the initialized coding sequence population and swap the coding information in the two randomly selected coding sequences at the fixed coding sequence crossover point, such as Figure 3 the shift coding crossover shown, such as Figure 4 the crossover of the shift scheduling rule coding shown;
[0103] The mutation operation is to randomly change the coding segments in the coding sequence based on the result of the crossover operation to form a new individual solution, such as Figure 5 the shift coding mutation shown, such as Figure 6 the mutation of the shift scheduling rule coding shown.
[0104] For example, the chemical company studied in this study uses a two-shift system, consisting of a day shift, a night shift, and a regular day shift. The start and end times are set as follows: Day shift: 08:30:00~21:29:59; Night shift: 21:30:00~08:29:59+1; Regular day shift: 08:30:00~16:29:59. The night shift ends at 08:29:59 the following morning, as shown in the table below:
[0105]
[0106] The scheduling rule code consists of shift label values, as shown in the table below. The example here is a scheduling method with an 8-day scheduling cycle. The shift label value indicates the shift status of an employee in a certain day's schedule. "1" indicates day shift, "2" indicates regular day shift, "3" indicates night shift, and "0" indicates rest day.
[0107]
[0108] Employee satisfaction involves subjective feelings and various influencing factors. This indicator should be used effectively in group optimization systems, and the following methods can be used for quantification:
[0109] Employee satisfaction questionnaire design:
[0110] Considering that employees only consider the optimization of a single feature when filling out the questionnaire, such as the highest employee satisfaction when the working hours per shift are the lowest, other features were added to the questionnaire design to ensure the reliability of the results. Employee satisfaction scores were scored using a scale (1-10 points, with higher scores indicating greater satisfaction), as detailed below:
[0111] For example, in a survey on work satisfaction, let the current working hours be x and the current salary per shift be y. The questionnaire design is shown in the table below:
[0112] Hours per shift x-3n x-2n xn x x+n x+2n x+3n Salary per shift y-3m y-2m ym y y+m y+2m y+3m Employee rating <![CDATA[V i1 ]]> <![CDATA[V i2 ]]> <![CDATA[V i3 ]]> <![CDATA[V i4 ]]> <![CDATA[V i5 ]]> <![CDATA[V i6 ]]> <![CDATA[V i7 ]]>
[0113] In the table, n represents the size of the time adjustment, with a time granularity of minutes; m represents the size of the additional adjustment per shift; and employee rating V. i1 This represents the satisfaction score of employee i when the working hours per shift are x-3n and the salary per shift is y-3m.
[0114] The workday satisfaction survey mainly focuses on the number of consecutive workdays, the number of rest days, and the ratio of consecutive workdays.
[0115] The shift satisfaction survey mainly includes the frequency of specific shifts (such as morning shift, evening shift, night shift), the frequency of shift changes, the number of consecutive days a single shift occurs, and the start and end times of shifts.
[0116] Considering the current situation of manufacturing enterprises, positions can be generally divided into shift positions and full-time positions. Specifically, shift positions require working hours to be arranged according to a fixed shift system based on production tasks, with employees rotating between different shifts; full-time positions usually have a fixed number of working hours per week, and employees typically perform their job duties at the company or factory according to fixed working hours and workdays. Different types of positions often have different opinions on the satisfaction with the shift schedule, so we will calculate the overall satisfaction of employees in different positions with the individual solutions.
[0117] Job tasks have the necessary attributes of a task, requiring a start time and an end time. The total number of tasks completed by employees is calculated based on the start and end times of the shift.
[0118] The task data format for the position is shown in the table below:
[0119]
[0120] The main factors affecting shift scheduling are shown in the table below:
[0121]
[0122] As can be seen from the table, the longest continuous working time for each employee is 4 days, and the longest continuous night shift is 2 days. In a scheduling cycle, the total number of shifts for each employee is at most 6 and at least 4. The total working hours in a scheduling cycle are approximately 40 hours.
[0123] The examples described herein are merely preferred embodiments of the invention and are not intended to limit the concept and scope of the invention. Any modifications and improvements made by those skilled in the art to the technical solutions of the invention without departing from the design concept of the invention should fall within the protection scope of the invention.
[0124] It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus.
[0125] Finally, it should be noted that the above descriptions are merely preferred embodiments of the present invention and are not intended to limit the present invention. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions described in the foregoing embodiments or make equivalent substitutions for some of the technical features. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A group optimization processing method based on big data, characterized in that, The method includes the following steps: S1. Based on decision variables, generate coding sequences for individual solutions, and plan the structure of the coding sequences, which are divided into scheduling rule coding and shift coding; S2. Set constraints to filter individual solutions that meet the constraints and store them in the initial coded sequence population. Constraint 1 includes shift code and working hour limit; Constraint 2 includes shift rule code and number of consecutive working days in each shift cycle; Constraint 3 includes shift rule code and rest interval in each shift cycle; Constraint 4 includes shift rule code and number of rest days in each shift cycle. S3. Establish the objective function and calculate the objective function value of the solution for each individual in the initial coding sequence population; S4. Based on the objective function value, assign non-dominated layers to individual solutions, and calculate the crowding degree of individual solutions based on the non-dominated layers; obtain the fitness of individual solutions based on the non-dominated level and crowding degree of individual solutions in the non-dominated layers. S5. Based on fitness, determine whether the individual solution satisfies the optimal scheduling solution. If it does, output the individual solution; otherwise, perform crossover and mutation operations on the individual solutions in the initial coding sequence population to generate new individual solutions and return to S2. In S3, the objective function includes a comprehensive satisfaction function and a task quantity function, and the objective function value includes a comprehensive satisfaction function value and a task quantity function value: The overall satisfaction level includes satisfaction with working hours, satisfaction with consecutive working days, and satisfaction with shifts. The overall satisfaction level function is: Where f(z) represents the overall satisfaction function value of employee i with individual solution z, A i (z) represents employee i's work hour satisfaction with individual solution z; B i (z) represents employee i's daily satisfaction with individual solution z; C i (z) represents the shift satisfaction of employee i with individual solution z, and Q represents the total number of employees; The task quantity function is: Where t is the number of days in the scheduling cycle, T avg (z) represents the task quantity function value of employee i for individual solution z, N ij This represents the amount of work completed by employee i on day j when the individual solution is z; In S4, the formula for calculating the fitness is: Where D(z) represents the crowding distance of individual solution z, SY(z) represents the fitness of individual solution z, SN1(z) represents the first non-dominated level of individual solution z, and SN2(z) represents the second non-dominated level of individual solution z. The first non-dominated level is the ranking number of individual solution z in the first non-dominated level, and the second non-dominated level is the ranking number of individual solution z in the second non-dominated level.
2. The group optimization processing method based on big data according to claim 1, characterized in that: In S1, a scheduling rule code is generated based on the number of days t within the scheduling cycle. The code length of the scheduling rule code is t, and t = W + R, where W represents the number of working days within the scheduling cycle and R represents the number of rest days within the scheduling cycle. The scheduling rule code consists of a shift label value; the shift code consists of a shift label value, a duty status value, and a duty time value.
3. The group optimization processing method based on big data according to claim 2, characterized in that, In S2, the constraints include: Based on shift codes and working hour constraints, constraint condition one is generated: Where, x ij T represents the working hours of employee i on day j. i This represents the maximum number of working hours for employee i within a scheduling cycle; Based on the scheduling rule code and the number of consecutive working days in each scheduling cycle, constraint condition two is generated: Among them, y ij This represents the on-duty status value of employee i in the shift code on day j within the scheduling cycle, e represents the sequence number of the day corresponding to the start date within the scheduling cycle, f represents the number of consecutive working days, and L... i This represents the maximum number of consecutive working days that employee i can work within a scheduling cycle; Based on the scheduling rule code and the rest interval within each scheduling cycle, constraint condition three is generated: Among them, D work D represents the number of consecutive working days within a scheduling cycle. rest This indicates the number of rest days within the work schedule cycle, and γ represents the rest interval threshold. Based on the scheduling rule code and the number of rest days in each scheduling cycle, constraint condition four is generated: α≤D rest ≤β Among them, D rest Let α represent the number of rest days in a work schedule cycle, where α represents the lower limit of the number of rest days and β represents the upper limit of the number of rest days, and 0 < α < β. <R; If an individual solution satisfies all the constraints, then the individual solution is filtered; otherwise, return to S1.
4. The group optimization processing method based on big data according to claim 3, characterized in that, In S4, the method for allocating non-dominated layers is as follows: Based on the comprehensive satisfaction function, the comprehensive satisfaction function values are sorted in ascending order, and the first non-dominated layer is generated, denoted as NDL1={z|z∈[1,S]}, where S represents the total number of individual solutions contained in the initial coding sequence population; Based on the task quantity function, the values of the task quantity function are sorted in ascending order, and a second non-dominated layer is generated, denoted as NDL2={z|z∈[1,S]}.
5. The group optimization processing method based on big data according to claim 4, characterized in that, In S4, the crowding distance is obtained as follows: S4-1. Calculate the relative distance dist1(z) of the individual solution z in the first non-dominated layer = |f(z) - f(z) 0 )|+|f(z)-f(z 1 )|, where z 0 This represents the individual solution preceding the individual solution z in the first non-dominated layer. 1 This represents the individual solution f(z) at the position following the individual solution z in the first non-dominated layer. 0 ) represents the individual solution z 0 The overall satisfaction function value, f(z) 1 ) represents the individual solution z 1 The overall satisfaction function value; Calculate the relative distance dist2(z) of the individual solution z in the second non-dominated layer = |T avg (z)-T avg (z 2 )|+|T avg (z)-T avg (z 3 )|, where z 2 This represents the individual solution preceding the individual solution z in the second non-dominated layer. 3 In the second non-dominated layer, T represents the individual solution at the position following individual solution z. avg (z 2 ) represents the individual solution z 2 The task quantity function value, T avg (z 3 ) represents the individual solution z 3 The task quantity function value; S4-2. Calculate the crowding distance of the individual solution z based on relative distance.
6. The group optimization processing method based on big data according to claim 5, characterized in that: In S5, a preset optimal shift schedule sy is set. If max[SY(z)] ≥ sy, it means that the individual solution z meets the optimal shift schedule, and the individual solution z is output. If max[SY(z)] < sy, it means that the individual solution z does not meet the optimal shift schedule, and crossover operation and mutation operation are performed on the individual solutions in the initialized coding sequence population. Here, max[·] represents the maximum value function.
7. The group optimization processing method based on big data according to claim 6, characterized in that: In S5, the crossover operation is to randomly select two coding sequences in the initialized coding sequence population, and at the fixed coding sequence crossover point, exchange the coding information in the two randomly selected coding sequences. The mutation operation is to randomly change the coding segments in the coding sequence based on the result of the crossover operation to form a new individual solution.
8. A big data-based swarm optimization processing system, executing the big data-based swarm optimization processing method according to any one of claims 1-7, characterized in that, The system includes: a basic setting module, an algorithm configuration module, an algorithm iteration module, and a shift scheduling module. The basic setting module is used to define decision variables and plan the structure of the coding sequence; to set constraint conditions and screen individual solutions that meet the constraint conditions; to establish an objective function and calculate the objective function value of each individual solution in the initialized coding sequence population. The algorithm configuration module is used to assign non-dominated levels to individual solutions, calculate the crowding degree of individual solutions based on the non-dominated levels, and obtain the fitness of individual solutions based on the non-dominated rank and crowding degree of individual solutions in the non-dominated levels. The algorithm iteration module, based on the fitness, determines whether the individual solution meets the optimal shift schedule. If it meets the optimal shift schedule, the individual solution is output. If it does not meet the optimal shift schedule, crossover operation and mutation operation are performed on the individual solutions in the initialized coding sequence population to generate new individual solutions, and the new individual solutions are sent to the basic setting module. The shift scheduling module generates a shift schedule based on the individual solutions output in the algorithm iteration module.
Citation Information
Patent Citations
Method for scheduling doctors and assistants
CN110570937A
Vehicle scheduling optimization method based on improved NSGA-II algorithm
CN116341860A