Complex flexible job shop scheduling task planning method and device and electronic equipment
By building an emergency maneuver planning model and using the simulated annealing algorithm to optimize task scheduling in complex flexible workshop scheduling, the problems of limited resources and complex scheduling are solved, and efficient scheduling automation and intelligence are achieved.
Patent Information
- Application Number
- CN202510720950.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-30
- Publication Date
- 2025-09-12
AI Technical Summary
Under the condition of limited resources and complex scheduling relationships, how to build an emergency mobility planning model to realize complex and flexible workshop operation scheduling solves the problem that traditional scheduling solutions are difficult to meet the needs of rapid response to market changes and efficient resource utilization.
By obtaining the relevant data of the work shop, constructing constraints and objective functions, and using the simulated annealing algorithm to solve the objective function under the constraints, the optimal delivery window combination is determined, and the task schedule at different time nodes is reversely calculated to achieve automated and intelligent scheduling planning.
While meeting multiple constraints, the task completion time and resource utilization are optimized, the automation and intelligence of complex flexible workshop scheduling are realized, and the emergency response efficiency is improved.
Smart Images

Figure CN120634127A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a flexible job shop scheduling method, and in particular to a complex flexible job shop scheduling task planning method, device and electronic equipment. Background Art
[0002] Emergency mobile task planning is a key research area for optimizing resource allocation and scheduling to respond to emergencies. With increasing urbanization and the frequent occurrence of natural disasters, traditional response methods are no longer sufficient, and more efficient solutions are needed. This field requires rapid planning in a dynamic and uncertain environment to allocate limited resources to high-priority tasks. Similar to emergency mobile task planning, the problem of flexible job shop scheduling is an NP-hard problem under complex constraints. The research goal is to develop efficient scheduling solutions that maximize resource utilization under emergency conditions and to obtain efficient emergency planning solutions under constraints through multi-objective optimization.
[0003] Complex Flexible Job Shop Scheduling (CFJSP) is a key concept in production management, transcending traditional shop scheduling. It aims to address the complexity of the manufacturing process involving the simultaneous planning of multiple jobs, which must be performed on multiple machines capable of performing different tasks. This flexibility and complexity enable companies to rapidly respond to market changes, achieve product customization, and optimize resource utilization. With globalization and technological advancement, the manufacturing industry faces rapidly evolving consumer preferences, shortened delivery times, and increasingly complex product mixes. Therefore, the core of CFJSP lies in its flexibility and complexity. Compared to traditional shop scheduling, CFJSP allows jobs to be processed in different orders on multiple machines. This flexibility enables production systems to rapidly adapt to changing environments and meet the demands of personalized and small-batch production. Furthermore, CFJSP involves multiple operations, resource constraints, priorities, and delivery times, making the scheduling problem even more challenging. Research has shown that CFJSP is often classified as NP-hard, meaning that finding the optimal solution is often infeasible in real-world applications. Therefore, the development of effective approximate algorithms and heuristic methods is crucial.
[0004] In the industrial context, complex and flexible job-shop scheduling is widely used in industries such as automotive, aerospace, electronics, and consumer goods. Production processes in these sectors require a high level of flexibility and efficiency to quickly respond to market changes and meet unique customer requirements. For example, automakers need to adjust production lines based on real-time orders and quickly switch between production of different models to maintain market competitiveness.
[0005] Currently, developing complex and flexible job shop scheduling solutions faces two major challenges: multiple constraints and complex resource scheduling relationships. Given limited resources and complex scheduling relationships, building an emergency maneuver planning model to automate and intelligently develop solutions has become a pressing issue. Summary of the Invention
[0006] The technical problem to be solved by the present invention is how to construct an emergency maneuver planning model to realize complex flexible workshop job scheduling when resources are limited and scheduling relationships are complex. In order to solve the above problem, the present invention provides a complex flexible job shop scheduling task planning method, device and electronic equipment.
[0007] The content of the present invention includes:
[0008] In a first aspect, an embodiment of the present invention provides a method for planning complex flexible job shop scheduling tasks, comprising:
[0009] Obtaining job shop related data, a scheduling target, and a plurality of tasks, each of the tasks corresponding to a plurality of delivery windows;
[0010] Constructing constraints based on the job shop association data, and constructing an objective function based on the scheduling target, the constraints including inventory constraints, shop site occupancy constraints, distance constraints, speed constraints, and time constraints, wherein the inventory constraints are used to limit the completion of tasks within the inventory range, the shop site occupancy constraints are used to prevent the same factory building from being occupied by multiple tasks at the same time, the distance constraints are used to limit the distance between task points, the speed constraints are used to limit the transportation or execution speed, and the time constraints are used to limit the completion of multiple tasks within a specified time;
[0011] Solving the objective function under the constraints to determine an optimal shipping window combination, wherein the shipping window combination includes a target shipping window corresponding to each task, the target shipping window being any one of the multiple shipping windows corresponding to the task, and the target shipping window front of the task being the start time of the task;
[0012] Based on the optimal transport window combination, the time schedule of each task at different time nodes is reversely calculated to obtain a planning solution.
[0013] Optionally, constructing an objective function based on the scheduling target includes:
[0014] An objective function is constructed with the scheduling goal of minimizing the total time to complete the plurality of tasks. The objective function is:
[0015]
[0016] Among them, T m ′ is task M m The starting time, N is the number of tasks, T m For task M m Time consumed, T = max(T m ′)+T m ≤τ, τ is the task cycle time determined based on the prescribed time.
[0017] Optionally, solving the objective function under the constraints to determine the optimal shipping window combination includes:
[0018] Allocating transport routes for the plurality of tasks to obtain transport route allocation results;
[0019] Calculating the total time required to complete the plurality of tasks under each candidate shipping window combination, wherein the transportation route allocation result includes the transportation route corresponding to each task, and the candidate shipping window combination satisfies the constraint condition;
[0020] The candidate shipping window combination with the smallest total time required to complete the plurality of tasks is determined as the optimal shipping window combination.
[0021] Optionally, the performing transport route allocation on the plurality of tasks to obtain a transport route allocation result includes any one of the following:
[0022] Based on maximizing the delivery interval between adjacent tasks on the same transport route, transport routes are allocated to the plurality of tasks based on a static planning model to obtain a transport route allocation result;
[0023] Based on the fact that the difference between the start times of any two adjacent tasks in the transport route is greater than or equal to the minimum time interval, transport routes are allocated to the plurality of tasks based on a dynamic programming model to obtain a transport route allocation result.
[0024] Optionally, the transport route allocation is performed on the plurality of tasks based on a dynamic programming model based on the fact that the difference between the start times of any two adjacent tasks in the transport route is greater than or equal to a minimum time interval, to obtain a transport route allocation result, including:
[0025] Step 1: Rearrange the elements in ζ=Vec(T) in ascending order to obtain ζ S , and based on ζ S Get the target task sequence M:
[0026]
[0027] Where T = [τ mz ] N×W, τ mz represents the frontier of the zth shipping window corresponding to the mth task, N is the number of tasks, W is the number of shipping windows corresponding to the task, Vec(·) is the column straightening operation, α m ,β m ,…,λ m (m=1,2,…,N) is a sort of sequence 1→N;
[0028] Step 2: Distribute them to multiple transport routes in sequence, and Remove from M, and then transport the window leading edge in M less than The task is deleted, Δτ is the minimum time interval, For the task The starting moment;
[0029] Step 3: If M is not empty, assign the first task in M to the current transport route to be assigned, and delete the other time windows corresponding to the first task in M. For the latest assigned task in the next route to be assigned, The front edge of the transport window in M is less than The task is deleted, For the task The starting moment;
[0030] Step 4: Repeat step 3 until M is empty and the sum of the tasks assigned to the multiple transport routes is equal to the number of tasks, and obtain the transport route assignment result.
[0031] Optionally, constructing an objective function based on the scheduling target includes:
[0032] An objective function is constructed with the scheduling goal of maximizing the total contribution of the plurality of tasks, and the objective function is:
[0033]
[0034] Among them, H m For task M m The single task contribution, L s is the task group contribution of task group s, M m×1 is the task matrix, N is the number of tasks, S is the number of task groups, P(M m×1 ) is the total contribution of the task matrix.
[0035] Optionally, the constraint condition further includes:
[0036] Compatibility constraints, where the compatibility constraints are used to coordinate usage between different devices;
[0037] A delivery window time constraint, which is used to limit the task to be completed within a specific time period;
[0038] Resource conflict avoidance constraints are used to avoid repeated occupation of resources within the same time period.
[0039] In a second aspect, an embodiment of the present invention provides a complex flexible job shop scheduling task planning device, comprising:
[0040] an acquisition module for acquiring job shop related data, a scheduling target, and a plurality of tasks, each of the tasks corresponding to a plurality of delivery windows;
[0041] a construction module, configured to construct constraint conditions based on the job shop association data, and to construct an objective function based on the scheduling objective, wherein the constraint conditions include inventory constraints, shop site occupancy constraints, distance constraints, speed constraints, and time constraints, wherein the inventory constraints are used to restrict tasks to be completed within an inventory range, the shop site occupancy constraints are used to prevent the same factory building from being occupied by multiple tasks at the same time, the distance constraints are used to restrict the distance between task points, the speed constraints are used to restrict transportation or execution speed, and the time constraints are used to restrict the completion of multiple tasks within a specified time;
[0042] a solving module, configured to solve the objective function under the constraints to determine an optimal shipping window combination, wherein the shipping window combination includes a target shipping window corresponding to each task, the target shipping window being any one of the multiple shipping windows corresponding to the task, and the target shipping window front of the task being the start time of the task;
[0043] The calculation module is used to reversely calculate the time schedule of each task at different time nodes based on the optimal transportation window combination to obtain a planning solution.
[0044] In a third aspect, an embodiment of the present invention provides an electronic device comprising: a memory, a processor, and a program stored in the memory and executable on the processor; the processor is configured to read the program in the memory to implement the steps in the complex flexible job shop scheduling task planning method as described in the first aspect.
[0045] In a fourth aspect, an embodiment of the present invention provides a readable storage medium for storing a program, which, when executed by a processor, implements the steps in the complex flexible job shop scheduling task planning method as described in the first aspect.
[0046] The beneficial effects of the present invention are as follows: in an embodiment of the present invention, job shop-related data, scheduling objectives, and multiple tasks are obtained, each task corresponding to multiple delivery windows; constraints are constructed based on the job shop-related data, and an objective function is constructed based on the scheduling objectives, wherein the constraints include inventory constraints, shop point occupancy constraints, distance constraints, speed constraints, and time constraints; the objective function is solved under the constraints to determine the optimal delivery window combination, wherein the delivery window combination includes a target delivery window corresponding to each task, and the target delivery window is any delivery window corresponding to the task; based on the optimal delivery window combination, the time schedule of each task at different time nodes is reversely calculated to obtain a planning solution. The method provided by the embodiment of the present invention takes into account multiple constraints and constructs an emergency maneuver planning model under the conditions of limited resources and complex scheduling relationships, which can realize the automation and intelligence of flexible job shop scheduling solution formulation. BRIEF DESCRIPTION OF THE DRAWINGS
[0047] Attachment Figure 1 A flowchart of a method for planning complex flexible job shop scheduling tasks provided by an embodiment of the present invention;
[0048] Attachment Figure 2 This is a schematic diagram of the mobile transportation process for transporting finished products to the finished product warehouse;
[0049] Attachment Figure 3 A schematic diagram of the transport route allocation process provided by an embodiment of the present invention;
[0050] Attachment Figure 4 A schematic diagram of a cost function generation method provided in an embodiment of the present invention;
[0051] Attachment Figure 5 A schematic diagram of a swap operation provided by an embodiment of the present invention;
[0052] Attachment Figure 6 A schematic diagram of a reverse operation provided by an embodiment of the present invention;
[0053] Attachment Figure 7 A schematic diagram of an insert operation provided by an embodiment of the present invention;
[0054] Attachment Figure 8 A schematic diagram of a complex flexible job shop scheduling task planning device provided by an embodiment of the present invention;
[0055] Attachment Figure 9 A schematic structural diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0056] In the embodiments of the present application, the term "and / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B may represent three situations: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the objects associated before and after are in an "or" relationship. In the embodiments of the present application, the term "multiple" refers to two or more, and other quantifiers are similar. The terms "first", "second", etc. in the specification and claims of this application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the terms used in this way can be interchangeable where appropriate, so that the embodiments of the present application can be implemented in an order other than those illustrated or described here, and the objects distinguished by "first" and "second" are generally of the same type, and the number of objects is not limited. For example, the first object can be one or more.
[0057] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0058] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which this application pertains. The terms used herein are for the purpose of describing the embodiments of this application only and are not intended to limit this application.
[0059] First, let's analyze several terms involved in this application. The key concepts in complex and flexible shop floor planning are as follows:
[0060] 1. Definition: The complex flexible job shop scheduling problem involves planning the allocation of resources (such as machines and workers) to a set of jobs under specific constraints. Each job may consist of multiple operations that can be performed on different machines in a variety of sequences. The planning process requires determining the processing time and path of the job within the production system.
[0061] 2. Flexibility: The term "flexibility" refers to several aspects:
[0062] Machine flexibility: Each job can be processed on multiple machines capable of performing similar tasks.
[0063] Operational flexibility: Jobs can take different paths through the production system depending on machine availability and operational priorities.
[0064] Scheduling flexibility: The ability to dynamically change plans based on outages or changes in job priorities.
[0065] 3. Complexity: Involves various complexities related to:
[0066] Resource constraints: Limitations on the number of machines, tools, and people available to process a job.
[0067] Time constraints: These include deadlines for completing assignments and the overall project timeline.
[0068] Predecessor constraints: Certain operations must occur before other operations, adding layers of dependencies and ordering requirements.
[0069] 4. Objectives: Typical objectives include:
[0070] Minimize total makespan: the total time required to complete all activities.
[0071] Maximize machine utilization: Ensure resources are used efficiently with no unnecessary idle time.
[0072] Balance workload: Distribute work evenly across machines to prevent bottlenecks.
[0073] 5. The known conditions are as follows:
[0074] Equipment Entities: In emergency maneuver missions, the mission system includes two types of transport vehicles, two types of tools, and four types of raw materials. Furthermore, the number of transport vehicles, tools, and raw materials is limited by equipment quantity, carrying capacity, and combination matching.
[0075] Factory Entity: In the emergency maneuver mission, the system includes two raw material warehouses, three transport vehicle warehouses, two assembly workshops, and three finished product warehouses. Each raw material warehouse stores different types and quantities of tools and raw materials. The assembly workshops have limited capacity, each with two distinct functional areas, each with two groups of workstations. Furthermore, the coordinates of each factory building and road connectivity are provided.
[0076] Normally, tools and raw materials are stored in the raw material warehouse, and transport vehicles are stored in the transport vehicle workshop. Before transporting the tools, tool and raw material assembly and transport vehicle testing must be completed separately. Finally, the finished product and transport vehicle docking test is carried out. Finally, the transport vehicle transports the finished product to the shipping location.
[0077] Emergency mobile transportation involves multiple processes, and the specific time required is related to conditions such as the tool model and the transport vehicle model.
[0078] 6. The task scenario satisfies the following assumptions:
[0079] Assume that after completing a transport mission and returning to the transport vehicle workshop, the transport vehicle can stop in the parking lot to rest first, and does not need to resume delivery immediately. It can resume delivery after the workstation is free;
[0080] Assume that at the starting time t = 0, all raw materials, tools and transport vehicles are at the designated location, and all equipment is in a usable state;
[0081] Assume that at any given time, each workstation can only perform one task at a time, and each tool and raw material combination can only be assembled in one assembly workshop;
[0082] Assume that the single load capacity of the transport vehicle is a combination of tool and raw materials;
[0083] Assume that the working process of any process cannot be interrupted;
[0084] Assume that the loading / unloading time and preparation time for testing of raw materials, tools and tool-raw materials combinations are negligible;
[0085] Assume that after the current transport task is completed, the transport vehicle should return to the original transport vehicle workshop for recovery;
[0086] It is assumed that with enough experiments, the arithmetic mean of a random variable converges to its mathematical expectation.
[0087] To avoid increasing scheduling complexity, it is assumed that a group of satellites and rockets for the same mission are unloaded from the same depot one after another without any waiting time in between.
[0088] While satisfying all constraints, the task is completed as efficiently as possible without considering human waiting time.
[0089] Based on this, the embodiments of the present application provide a method, device and electronic equipment for complex flexible job shop scheduling task planning, aiming to build an emergency maneuver planning model when resources are limited and scheduling relationships are complex, thereby realizing automated and intelligent complex flexible job shop scheduling task planning.
[0090] Simulated annealing algorithm theory:
[0091] When a solid is heated to a high temperature and then slowly cooled, the particles within the solid gradually become ordered during the cooling process, reaching equilibrium at each temperature and ultimately reaching the ground state at room temperature. The basic idea of the simulated annealing algorithm is to mimic this annealing process. Starting at a high temperature and gradually decreasing the temperature, the algorithm uses Monte Carlo iterations to search for the global optimal solution to the objective function in the solution space. Furthermore, by introducing a probabilistic jump mechanism, inferior solutions are accepted with a certain probability, thereby escaping the local optimal solution and ultimately achieving the global optimal solution.
[0092] The Metropolis criterion is the core of the simulated annealing algorithm, and its expression is as follows:
[0093]
[0094] Where, E i(k) represents the internal energy of the i-th particle at the k-th iteration, E g Represents the internal energy of the current population at the optimal point, T i represents the current temperature. The Metropolis criterion allows for the acceptance of poorer solutions with a certain probability during iterative optimization, thus providing a chance to escape from the local optimum. Therefore, a key advantage of the simulated annealing algorithm is its ability to escape from the local optimum.
[0095] Given a multi-constrained minimization objective problem as follows:
[0096]
[0097] Where f(x) is the objective function, h i (x)≤g i (x) is the i-th constraint, N means there are N constraints, and the objective function and constraints can be linear or nonlinear.
[0098] Assume that the solution corresponding to the current temperature T is x, also called the current solution, and the newly generated solution is x new , then we have the following formula:
[0099] △f=f(x new )-f(x);
[0100] Among them, △f represents the increment of the objective function. If △f<0, it means that the new solution x new The quality of the new solution x is better than the current solution x. If △f>0, it means that the new solution x new The quality of is worse than the current solution x. The probability of accepting the new solution as the current solution in the two cases is as follows:
[0101]
[0102] Assuming the current temperature is T, the temperature update at the next moment is as follows:
[0103] T = λT;
[0104] Where λ is the attenuation coefficient, λ∈(0,1). The smaller λ is, the faster the temperature drops, the fewer iterations are, and the faster the convergence speed is, but the optimality of the solution is not guaranteed.
[0105] One of the stopping conditions of the simulated annealing algorithm is that the new solution x in several consecutive Metropolis chains new None of them are accepted, indicating that the quality of the new solution is not as high as the current solution, which is reflected in the objective function f(x) <f(x new). The probability of accepting a suboptimal solution is very small, so the current solution can be judged as the optimal solution and the iteration can be exited. The determination process of this stopping condition is relatively complex and has a certain random factor, so the second stopping condition is generally used, that is, reaching the preset lower limit of temperature:
[0106] T<T min ;
[0107] Among them, T min The lower limit of temperature is given in advance. The current temperature T is less than the lower limit of temperature T min When , the iteration stops and the current solution is output as the optimal solution. The third stopping condition is to directly set the maximum number of simulated annealing iterations and stop the search when the maximum number is reached.
[0108] Based on this, the embodiment of the present invention provides a method, device and electronic device for planning complex flexible job shop scheduling tasks. Figure 1 , Figure 1 This is a flow chart of a method for planning complex flexible job shop scheduling tasks provided by an embodiment of the present invention. The method specifically includes the following steps:
[0109] Step 101: Obtain job shop related data, scheduling targets, and multiple tasks, each of which corresponds to multiple delivery windows.
[0110] Step 102: construct constraint conditions based on the job shop association data, and construct an objective function based on the scheduling target. The constraint conditions include inventory constraints, shop point occupancy constraints, distance constraints, speed constraints and time constraints. The inventory constraints are used to limit the completion of tasks within the inventory range, the shop point occupancy constraints are used to avoid the same factory being occupied by multiple tasks at the same time, the distance constraints are used to limit the distance between task points, the speed constraints are used to limit the transportation or execution speed, and the time constraints are used to limit the completion of multiple tasks within the specified time.
[0111] Step 103: Solve the objective function under the constraints to determine the optimal transport window combination, where the transport window combination includes a target transport window corresponding to each task, where the target transport window is any one of the multiple transport windows corresponding to the task, and where the target transport window frontier of the task is the start time of the task.
[0112] Step 104 : reversely calculate the time schedule of each task at different time nodes based on the optimal transport window combination to obtain a planning solution.
[0113] For the convenience of description, a specific flexible job shop scheduling problem will be taken as an example to explain the complex flexible job shop scheduling task planning method provided by the embodiment of the present invention.
[0114] First, the core symbols and mathematical meanings involved in the specific flexible job shop scheduling problem example are explained, as shown in Table 1:
[0115] Table 1 Symbol analysis and explanation
[0116]
[0117]
[0118] In this embodiment, D i×j ,D′ i×j ,E i×k ,E′ i×k ,F k×j ,F′ k×j The matrix position value corresponding to the i, j, k combination that has no storage relationship is 0, for example a∈{1,2,…,6} will not be explained in the subsequent use.
[0119] As a specific embodiment, a task list m∈{1,2,…,25} is constructed to represent 25 tasks to be transported, task M m Represents task m, T m ′ represents task M m By determining the time taken for each process in the task, the time T required to complete the task can be determined. m , and then match it with the latest time window to get the best strategy in the current state. Further, the start time of the last task is determined max(T m ′) can calculate the earliest completion time, that is, the completion time of the entire transportation plan, and obtain the total time for completing the 25 tasks. m ={τ mz |z=1,2,…,W} is task M m The frontier set of shipping windows, W is the total number of shipping windows, then: T m ′∈Γ m ,m=1,2,…,N. The delivery window front usually refers to the earliest time point of the delivery window set according to customer demand, warehousing capacity and transportation efficiency during the delivery process. Therefore, after the target delivery window corresponding to the task is determined, the target delivery window front can be considered as the starting time of the task.
[0120] In actual implementation, the transportation of finished products to the finished product warehouse includes multiple processes, which need to be completed one by one in sequence. The mobile transportation process is as follows: Figure 2As shown. Among the processes involved in the four major sites (raw material warehouse (denoted as KF), transport vehicle warehouse (denoted as FC), assembly workshop (denoted as CC), and finished product warehouse (denoted as FZ)), CC and FZ are the longest-consuming, and are much longer than KF and FC. In this embodiment, the total number of workstations in the assembly workshop is the same as the total number of finished product warehouses (both are 4 in this embodiment), so the workstations in CC are integrated with FZ. Through the above method, a total of four assembly and transportation routes are obtained, which are denoted as Φ1, Φ2, Φ3, and Φ4, and the number of tasks assigned to each route is denoted as S1, S2, S3, and S4, respectively. It should be understood that in the specific implementation, the specific number of transportation routes can be adjusted and set according to actual conditions. This embodiment is only an example.
[0121] Optionally, as an optional implementation manner, constructing an objective function based on the scheduling target includes:
[0122] An objective function is constructed with the scheduling goal of minimizing the total time to complete the plurality of tasks. The objective function is:
[0123]
[0124] Among them, T m ′ is task M m The starting time, N is the number of tasks, T m For task M m Time consumed, T = max(T m ′)+T m ≤τ, τ is the task cycle time determined based on the prescribed time.
[0125] Specifically, as a specific embodiment, it is required to complete the emergency transportation task within 5 days as much as possible under the premise of a given transportation window, and to ensure that the completion time of the last task is earlier than τ=120, that is, the last task must be completed within five days.
[0126] Optionally, solving the objective function under the constraints to determine the optimal shipping window combination includes:
[0127] Allocating transport routes for the plurality of tasks to obtain transport route allocation results;
[0128] Calculating the total time required to complete the plurality of tasks under each candidate shipping window combination, wherein the transportation route allocation result includes the transportation route corresponding to each task, and the candidate shipping window combination satisfies the constraint condition;
[0129] The candidate shipping window combination with the smallest total time required to complete the plurality of tasks is determined as the optimal shipping window combination.
[0130] In this embodiment, the transport vehicles are decoupled and the solution is sought from the perspective of optimizing the scheduling of transport vehicles to optimize the order of task execution. If there are currently two tasks with the same time window, the time windows of the two tasks for the next day are compared, and the task with the smaller time window for the next day is selected for execution, that is, the task with the higher priority is completed first.
[0131] As an optional implementation, allocating transport routes for the plurality of tasks to obtain transport route allocation results includes: allocating transport routes for the plurality of tasks based on a static planning model based on maximizing the delivery interval between adjacent tasks on the same transport route to obtain transport route allocation results.
[0132] Specifically, given a set of tasks (M m ,T m ′), with T m ′ is used as the basis, and the tasks are rearranged in ascending order to obtain a new task sequence Satisfies for any T m 'All Among them, α m A sorting of the sequence 1→N. Based on the rearranged task sequence Assign the tasks to the four assembly transport routes Φ1, Φ2, Φ3, and Φ4 in the order of arrangement in the sequence.
[0133] Specifically, first assign M1→M4 to Φ1→Φ4 respectively; for because:
[0134]
[0135] The selection is based on maximizing the interval between adjacent tasks on the same transport route. Assign to The transport route. Without loss of generality, assume that Nmod2 = 1, so the allocation results are as follows:
[0136]
[0137] As another optional implementation, the allocating transport routes for the plurality of tasks to obtain the transport route allocation result includes: allocating the transport routes for the plurality of tasks based on a dynamic programming model based on the fact that the difference between the start times of any two adjacent tasks in the transport route is greater than or equal to a minimum time interval to obtain the transport route allocation result.
[0138] Specifically, given a set of tasks (M m ,T m′) and the minimum time interval Δτ, in the process of completing task assignment, for each task M m Choose the right T m ′∈Γ m , satisfying the following constraints: For any line Φ k Any two adjacent tasks and Both Define the task delivery window frontier matrix T = [τ mz ] N×W , where τ mz represents the zth delivery window frontier of the mth task.
[0139] Optionally, in some embodiments, the transport route allocation is performed on the plurality of tasks based on a dynamic programming model based on the fact that the difference between the start times of any two adjacent tasks in the transport route is greater than or equal to a minimum time interval, to obtain a transport route allocation result, including:
[0140] Step 1: Rearrange the elements in ζ=Vec(T) in ascending order to obtain ζ S , and based on ζ S Get the target task sequence M:
[0141]
[0142] Where T = [τ mz ] N×W , τ mz represents the frontier of the zth shipping window corresponding to the mth task, N is the number of tasks, W is the number of shipping windows corresponding to the task, Vec(·) is the column straightening operation, α m ,β m ,…,λ m (m=1,2,…,N) is a sort of sequence 1→N;
[0143] Step 2: Distribute them to multiple transport routes in sequence, and Remove from M, and then transport the window leading edge in M less than The task is deleted, Δτ is the minimum time interval;
[0144] Step 3: If M is not empty, assign the first task in M to the current transport route to be assigned, and delete the other time windows corresponding to the first task in M. For the latest assigned task in the next route to be assigned, The front edge of the transport window in M is less than The task is deleted;
[0145] Step 4: Repeat step 3 until M is empty and the sum of the tasks assigned to the multiple transport routes is equal to the number of tasks, and obtain the transport route assignment result.
[0146] like Figure 3 As shown, in a specific embodiment, the specific allocation process is as follows:
[0147] S1: Rearrange the elements in ζ=Vec(T) in ascending order to obtain ζ S , and based on ζ S Get the target task sequence M:
[0148]
[0149] Where T = [τ mz ] N×W , τ mz represents the frontier of the zth shipping window corresponding to the mth task, N is the number of tasks, W is the number of shipping windows corresponding to the task, Vec(·) is the column straightening operation, assuming β i is a column vector, α m ,β m ,…,λ m (m=1,2,…,N) is a sort of sequence 1→N.
[0150] S2: First, the task sequence Assign them to Φ1, Φ2, Φ3, Φ4 in sequence, and delete these tasks from the target task sequence M, and then The task is deleted.
[0151] S3: When Then assign the first task in the target task sequence M to the current route to be assigned Φ k , and delete all the tasks in the target task sequence M. Then, for the next line Φ k+1 The latest assigned task in calculate And delete the tasks whose delivery window front is less than this value in the target task sequence M. Repeat S3 to allocate tasks.
[0152] S4: When the target task sequence M is empty, if S1+S2+S3+S4=N, then all assignments are completed; otherwise, there is no assignment scheme that meets the conditions, and the next task combination is considered.
[0153] It should be understood that, in specific implementation, for the task set (M m ,T m′), the algorithm often generates different solutions when the minimum time interval Δτ varies. If Δτ is too small, the time between two adjacent tasks on the same transport route is short, creating the risk of scheduling conflicts. If Δτ is too large, the problem may be unsolvable, and the total time required to complete all tasks is long. Therefore, it is necessary to select an appropriate Δτ before solving the problem, and its specific value is not limited here.
[0154] The complex flexible job shop scheduling task planning method provided in the embodiment of this application needs to optimize the scheduling and task allocation strategy as much as possible while satisfying the constraints, and reduce the total time to complete the plan. In a specific embodiment, the objective function is as follows:
[0155]
[0156] In this embodiment, the total time to complete the plan is minimized as the objective function, and the task scheduling and task allocation strategy are optimized as quickly as possible. The problem of completing the emergency plan is converted into a multi-objective resource scheduling problem, and the inventory of tools and raw materials, occupancy of workshop points, distance, speed, time and other constraints are fully considered. The scheduling is optimized by optimizing the task execution sequence, and the goal can be achieved by solving the multi-objective resource scheduling problem.
[0157] The specific content of each constraint condition is described below using the specific embodiment provided in this embodiment as an example.
[0158] For example, in a specific embodiment, the inventory constraints include:
[0159] The sum of the inventory of tools and raw materials in all raw material warehouses is less than or equal to the total number of raw materials or tools:
[0160]
[0161] The current storage quantity of tools and raw materials in each raw material warehouse is less than or equal to the upper storage quantity limit of the raw material warehouse:
[0162]
[0163] Among them, A a×1 Indicates the total number of tools and / or raw materials, a represents the tool and raw material serial number, b represents the workshop point serial number, D i×j Indicates the upper limit of the storage quantity of tools and raw materials at the corresponding workshop location, D′ i×j Indicates the current storage quantity of tools and raw materials at the corresponding workshop location, x represents the workshop location sequence number, and j1 represents the total number of workshop locations.
[0164] For example, in a specific embodiment, the workshop point occupancy constraint includes:
[0165] The sum of the number of transport vehicles at all workshop locations is less than or equal to the upper limit of the number of transport vehicles:
[0166]
[0167] The number of transport vehicles currently stored at each workshop location is less than or equal to the upper limit of the storage capacity of the workshop location:
[0168]
[0169] The number of tools and materials currently stored in each transport vehicle is less than or equal to the upper limit of the transport vehicle's storage capacity:
[0170]
[0171] For example, when b∈{1,2,8,9,10,11}, there is only one workstation. b×d The sum of all items is either occupied 0 or idle 1, and the workshop point b∈{3,4,5,6,7} has two stations. If both stations are occupied, then B b×d The sum of all items is 2, which is 1 if one workstation is occupied and 0 if no workstation is occupied, thus satisfying the following relationship:
[0172]
[0173] Among them, F k×j Indicates the upper limit of the number of transport vehicles that can be stored at the corresponding workshop location, c represents the transport vehicle serial number, F′ k×j Indicates the current storage quantity of transport vehicles at the corresponding workshop location, E i×k The upper limit of the number of tools and raw materials that can be stored in the corresponding transport vehicle, E′ i×k Indicates the current storage quantity of tools and raw materials in the corresponding transport vehicle, d indicates the work station number, B b×d Indicates the status of the d-th workstation at the b-th factory building, 0 means occupied and 1 means idle.
[0174] For example, in a specific embodiment, the distance constraint includes:
[0175] The distance matrix is a sparse matrix as follows:
[0176]
[0177] The sparse matrix also satisfies:
[0178] p=q, there is no road between points p and q;
[0179] Since the distances between points in the workshop are fixed, the distances between connected points can be calculated in advance to obtain the distance matrix, Gp×q Represents the distance between workshop points p and q, and the rows and columns of the distance matrix represent the corresponding two workshop points respectively.
[0180] For example, in a specific embodiment, the speed constraint includes that the speed of each transport vehicle is less than or equal to a preset value. Specifically, the transport vehicle number f∈{0,1,2} corresponds to a flatbed truck, a fully loaded transport vehicle, and an empty transport vehicle, respectively, and the tool model g∈{1,2} corresponds to tool model K and tool model V, respectively. f,g Indicates the fixed speed of transport tool f transporting model g. The fixed speed values are shown in Table 2:
[0181] Table 2 Transportation speed table
[0182]
[0183] For example, in a specific embodiment, the time constraint specifically includes the following:
[0184] o represents the number of days of the task cycle, o1=5 means the task cycle is 5 days, and the fixed time h∈{1,2,…,9} corresponds to the tool outbound time, raw material outbound time, transport vehicle testing time, tool and raw material assembly time, finished product loading time, pre-delivery preparation time, transport vehicle withdrawal time, and transport vehicle recovery time, respectively. h,g It represents the fixed time during the mission of the g-type transport vehicle. The fixed time values are shown in Table 3:
[0185] Table 3 Fixed timetable
[0186]
[0187] The time constraint includes a fixed time t h,g , path time t′ h,g , waiting time t″ h,g , where the fixed time is shown in Table 3. The path time is the path distance G p×q and speed v f,g The waiting time includes the waiting time for transportation and the time T between the current workshop point b and the next available time. b,g , the waiting time for transportation is at least 0 and at most 0.5 hours. The path time and waiting time are as follows:
[0188] Path time:
[0189]
[0190] Waiting time:
[0191] T b,g ≤t″ h,g ≤T b,g+0.5;
[0192] Among them, w m,n Represents task M m At the delivery window time on day n, where n∈{1,2,…,5}. T m Indicates the total time taken to complete the mth task, T m ′ represents task M m The starting time of task M is T, which indicates the completion time of all tasks. m The completion time is within the time window specified by the task, that is:
[0193]
[0194] In practical implementation, Matlab can be used to solve the objective function under the constraints, the specific process of which is not specified here. By calculating the execution order of tasks and working backwards from the delivery windows, the timing of each task at different time points can be accurately calculated, thereby deriving the final task planning solution. During the solution process, the constraints are continuously optimized to further shorten the total completion time of all tasks.
[0195] As a specific embodiment, the final planning scheme is shown in Table 4.
[0196] Table 4 Planning scheme for emergency mobile transport tasks
[0197]
[0198]
[0199] The planning scheme shown in Table 4 shortens the time cost as much as possible while ensuring the completion of all transportation plans. The final planning scheme can complete all transportation tasks 5 days ahead of schedule, making full use of resources and achieving significant time optimization. In this scheme, the Z-type tool is preferred because it has higher transportation efficiency and shorter transportation preparation time, which can shorten the transportation time while ensuring quality. The priority use of the Z-type tool has further accelerated the overall task progress based on the original plan. In addition, due to the limited resources of the transportation base, t 4,1 , t 4,2The solution fully considers optimal resource allocation, especially in the utilization of the assembly shop. The extremely high utilization rate of the assembly shop became a limiting factor in the optimization process. Given the limited resources, the solution's priority scheduling strategy ensured efficient utilization of the assembly shop, avoiding time conflicts and wasted resources. Although the assembly shop's resources were significantly constrained, the solution achieved a balance between high utilization and high efficiency through reasonable task allocation and rational time scheduling, effectively accelerating the completion of transportation tasks.
[0200] Furthermore, the solution incorporates various operational constraints when scheduling tasks, gradually optimizing task scheduling and execution order. By analyzing potential factors for task delays and the resource requirements of each link at different time points, the solution implements various measures to minimize inter-task waiting times and resource conflicts. This optimization reduces the likelihood of delays and increases task continuity throughout the overall scheduling process.
[0201] In another embodiment, all tasks are required to be implemented within the first three days. Considering that the base's transportation capacity may not be sufficient to complete all tasks, tasks are arranged in priority based on the contribution of transportation tasks given by the command organization.
[0202] H m Represents task M m The single task contribution, L s represents the task group contribution of task group s, N m Represents task M m Contribution density, δ(m,s) means when task group s contains task M m The output is 1, otherwise the output is 0, Ω(M m×1 ) represents the total contribution function, in the task matrix M m×1 The total contribution under the conditions. Contribution density N m For task M m The value evaluation index is used to sort tasks according to the contribution density (i.e., contribution per unit time). The contribution density value is the weighted average of the contribution of a single task and the average contribution in the task group with a certain task group contribution weight ω. The formula is as follows:
[0203]
[0204] 0≤ω≤1.
[0205] In this embodiment, o2=3, which means the task cycle is 3 days:
[0206]
[0207] Optionally, in some embodiments, the objective function is:
[0208]
[0209] Among them, H m For task M m The single task contribution, L s is the task group contribution of task group s, M m×1 is the task matrix, N is the number of tasks, S is the number of task groups, P(M m×1 ) is the total contribution of the task matrix.
[0210] Optionally, in this embodiment, the constraint condition further includes:
[0211] Compatibility constraints, where the compatibility constraints are used to coordinate usage between different devices;
[0212] A delivery window time constraint, which is used to limit the task to be completed within a specific time period;
[0213] Resource conflict avoidance constraints are used to avoid repeated occupation of resources within the same time period.
[0214] Through the constraints, it is proved that the maximum number of tasks that can be completed within three days is max(m), and the four largest delivery windows in the first three days are Then the number of tasks S1, S2, S3, S4 assigned to the four assembly transport routes Φ1, Φ2, Φ3, Φ4 respectively should satisfy the following formula:
[0215]
[0216] Where x1,x2,x3,x4∈{1,2,3,4}, then we can get:
[0217] S1+S2+S3+S4≤max(m);
[0218] From this we can see that under the existing conditions, the number of tasks completed by the group within three days is less than or equal to max(m).
[0219] In an embodiment of the present application, an improved simulated annealing algorithm (ISA) is proposed. The core idea is to divide the goals in the decision vector into different task groups, each of which is responsible for a specific responsible unit, thereby determining the task allocation method. Subsequently, through operations such as exchange, reversal and insertion, the execution order of each group of tasks is optimized, and finally a complete task planning scheme is generated.
[0220] See Figure 4-Figure 7, the design of the cost function, as well as the exchange operation, reverse operation and insertion operation will be introduced in detail below. In the actual calculation process, the new solution x new Denoted as x 1 、x 2 、x 3 , then:
[0221]
[0222] Further we can get x k The corresponding cost function is as follows:
[0223]
[0224] Then the new solution x new The cost function is as follows:
[0225]
[0226] Therefore, for the task scenario with N Tar There are N targets Base venues, dispatch The cost function when setting up a transport vehicle:
[0227]
[0228] In order to make the solution x satisfy the constraints, the idea of penalty function is introduced and the cost function is established as follows:
[0229]
[0230] Among them, P f is the penalty function, is the penalty factor, which is a large positive number. For details, please refer to the description in the relevant technology. The details are not repeated here. g1, g2, and g3 are respectively shown as follows:
[0231]
[0232] In this embodiment, the objective function is to maximize the total contribution of the task, and use it as the fitness evaluation function, and use the improved simulated annealing algorithm to solve the total contribution. In theory, there is an optimal solution for the contribution in the entire solution space, but due to the complexity of the problem, it is impossible to ensure that the global optimal solution is found. In order to effectively solve this problem, the above problem can be transformed into a 0-1 knapsack problem, where each transportation task represents a "material", the contribution density is used as the "value" of the task, and time is used as the "weight". In this way, the solution ideas of the classic knapsack problem can be used to optimize the distribution and scheduling of tasks.
[0233] Optionally, in some embodiments, to further improve the quality of the solution, an inner and outer two-layer iterative structure is used to implement algorithm optimization.
[0234] During the inner iterations, a modified simulated annealing algorithm is used to search for optimal solutions within the current solution space. This algorithm reduces volatility by gradually lowering the "temperature" and gradually converges to a more optimal solution. During this process, the mutation method and model parameters are adjusted to ensure that the algorithm fully explores the solution space, increasing the probability of finding an optimal solution. In the early iterations, the mutation operation is more aggressive to increase solution diversity and the ability to escape from local optima. As the number of iterations increases, the mutation operation becomes more conservative, allowing the algorithm to better converge to the current optimal solution.
[0235] However, given the limitations of the simulated annealing algorithm in complex solution spaces, relying solely on inner-level iterations may not prevent regression into local optima. Therefore, in the outer-level iterations, some aggressive mutation operations are introduced to further expand the search range of the solution space. These operations aim to prevent the algorithm from being trapped in local optima during the inner-level iterations by introducing larger perturbations, thereby improving the algorithm's ability to escape local optima. The goal of the outer-level iterations is to find even better solutions through more drastic adjustments after the inner-level iterations have achieved a certain level of local optimization, thereby continuously optimizing the task scheduling solution.
[0236] For solutions that do not meet the time constraints, a greedy strategy is used during the optimization process. Specifically, tasks are first sorted by contribution density (i.e., contribution per unit time), and then executed in descending order of contribution density. This greedy approach ensures that tasks with higher contribution are prioritized within a limited timeframe, effectively improving overall contribution. Furthermore, greedy sorting, combined with the global search capabilities of the simulated annealing algorithm, prevents the algorithm from becoming trapped in local optimal solutions.
[0237] Overall, the combined use of inner and outer layer iteration, mutation operations, and a greedy strategy largely avoided the local optimality issues of traditional simulated annealing algorithms and improved the algorithm's global search capabilities. Ultimately, through these optimization methods, the algorithm converged to an optimal solution, completing the transportation task within the first three days and maximizing the overall contribution.
[0238] In this embodiment, three methods are used to obtain new solutions for the designed decision vector, namely, swap operation, reverse operation and insertion operation. Figure 5 As shown in , for a certain solution, the swap operation is to swap the value of the i-th position in the solution x with the value of the j-th position. The schematic diagram of the reverse operation is shown in 6. For a certain solution, the reverse operation is to reverse the value of the i-th position in the solution x with the value of the j-th position. The schematic diagram of the insertion operation is shown in Figure 7 As shown, for a certain solution, the insertion operation is to insert the value of the i-th position and the value of the j-th position in the solution x.
[0239] like Figure 8 As shown, an embodiment of the present invention further provides a complex flexible job shop scheduling planning device 800, comprising:
[0240] An acquisition module 801 is used to acquire job shop related data, a scheduling target, and a plurality of tasks, each of which corresponds to a plurality of delivery windows;
[0241] A construction module 802 is configured to construct constraint conditions based on the job shop association data and to construct an objective function based on the scheduling objective, wherein the constraint conditions include inventory constraints, shop location occupancy constraints, distance constraints, speed constraints, and time constraints. The inventory constraints are used to limit the completion of tasks within the inventory range, the shop location occupancy constraints are used to prevent the same factory building from being occupied by multiple tasks at the same time, the distance constraints are used to limit the distance between task points, the speed constraints are used to limit the transportation or execution speed, and the time constraints are used to limit the completion of multiple tasks within a specified time.
[0242] A solution module 803 is configured to solve the objective function under the constraints to determine an optimal shipping window combination, where the shipping window combination includes a target shipping window corresponding to each task, where the target shipping window is any one of the multiple shipping windows corresponding to the task, and the target shipping window front of the task is the start time of the task;
[0243] The calculation module 804 is used to reversely calculate the time schedule of each task at different time nodes based on the optimal delivery window combination to obtain a planning solution.
[0244] Optionally, constructing an objective function based on the scheduling target includes:
[0245] An objective function is constructed with the scheduling goal of minimizing the total time to complete the plurality of tasks. The objective function is:
[0246]
[0247] Among them, T m ′ is task M m The starting time, N is the number of tasks, T m For task M m Time consumed, T = max(T m ′)+T m ≤τ, τ is the task cycle time determined based on the prescribed time.
[0248] Optionally, the solving module 803 is specifically configured to:
[0249] Allocating transport routes for the plurality of tasks to obtain transport route allocation results;
[0250] Calculating the total time required to complete the plurality of tasks under each candidate shipping window combination, wherein the transportation route allocation result includes the transportation route corresponding to each task, and the candidate shipping window combination satisfies the constraint condition;
[0251] The candidate shipping window combination with the smallest total time required to complete the plurality of tasks is determined as the optimal shipping window combination.
[0252] Optionally, the performing transport route allocation on the plurality of tasks to obtain a transport route allocation result includes any one of the following:
[0253] Based on maximizing the delivery interval between adjacent tasks on the same transport route, transport routes are allocated to the plurality of tasks based on a static planning model to obtain a transport route allocation result;
[0254] Based on the fact that the difference between the start times of any two adjacent tasks in the transport route is greater than or equal to the minimum time interval, transport routes are allocated to the plurality of tasks based on a dynamic programming model to obtain a transport route allocation result.
[0255] Optionally, the transport route allocation is performed on the plurality of tasks based on a dynamic programming model based on the fact that the difference between the start times of any two adjacent tasks in the transport route is greater than or equal to a minimum time interval, to obtain a transport route allocation result, including:
[0256] Step 1: Rearrange the elements in ζ=Vec(T) in ascending order to obtain ζ S , and based on ζ S Get the target task sequence M:
[0257]
[0258] Where T = [τ mz ] N×W , τ mz represents the frontier of the zth shipping window corresponding to the mth task, N is the number of tasks, W is the number of shipping windows corresponding to the task, Vec(·) is the column straightening operation, α m ,β m ,…,λ m (m=1,2,…,N) is a sort of sequence 1→N;
[0259] Step 2: Distribute them to multiple transport routes in sequence, and Remove from M, and then transport the window leading edge in M less than The task is deleted, Δτ is the minimum time interval, For the task The starting moment;
[0260] Step 3: If M is not empty, assign the first task in M to the current transport route to be assigned, and delete the other time windows corresponding to the first task in M. For the latest assigned task in the next route to be assigned, The front edge of the transport window in M is less than The task is deleted, For the task The starting moment;
[0261] Step 4: Repeat step 3 until M is empty and the sum of the tasks assigned to the multiple transport routes is equal to the number of tasks, and obtain the transport route assignment result.
[0262] Optionally, constructing an objective function based on the scheduling target includes:
[0263] An objective function is constructed with the scheduling goal of maximizing the total contribution of the plurality of tasks, and the objective function is:
[0264]
[0265] Among them, H m For task M m The single task contribution, L s is the task group contribution of task group s, M m×1 is the task matrix, N is the number of tasks, S is the number of task groups, P(M m×1 ) is the total contribution of the task matrix.
[0266] Optionally, the constraint condition further includes:
[0267] Compatibility constraints, where the compatibility constraints are used to coordinate usage between different devices;
[0268] A delivery window time constraint, which is used to limit the task to be completed within a specific time period;
[0269] Resource conflict avoidance constraints are used to avoid repeated occupation of resources within the same time period.
[0270] The complex flexible job shop scheduling task planning device 800 provided in the embodiment of the present application can execute the above method embodiment, and its implementation principle and technical effects are similar, which will not be repeated here in this embodiment.
[0271] It should be noted that the division of units in the embodiments of the present application is schematic and is merely a logical functional division. In actual implementation, other division methods may be used. Furthermore, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0272] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a processor-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) or a processor to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0273] like Figure 9 As shown, an embodiment of the present application provides an electronic device 900, including: a memory 902, a processor 901, and a program stored on the memory 902 and executable on the processor 901; the processor 901 is used to read the program in the memory 902 to implement the steps in the complex flexible job shop scheduling task planning method as described above.
[0274] An embodiment of the present application also provides a readable storage medium, on which a program is stored. When the program is executed by a processor, the various processes of the above-mentioned complex flexible job shop scheduling task planning method embodiment are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here. Among them, the readable storage medium can be any available medium or data storage device that can be accessed by the processor, including but not limited to magnetic storage (such as floppy disk, hard disk, magnetic tape, magneto-optical disk (MO), etc.), optical storage (such as compact disk (CD), digital video disc (DVD), Blu-ray disc (BD), high-definition versatile disc (HVD), etc.), and semiconductor memory (such as read-only memory (ROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read only memory (EEPROM), non-volatile memory (NAND FLASH), solid state drive (SSD)), etc.
[0275] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or apparatus comprising the element.
[0276] Through the description of the above embodiments, those skilled in the art can clearly understand that the above embodiment methods can be implemented by means of software plus the necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better embodiment. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, disk, CD-ROM), and includes a number of instructions for enabling a terminal (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in each embodiment of the present application.
[0277] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of this application, ordinary technicians in this field can also make many forms without departing from the purpose of this application and the scope of protection of the claims, all of which are within the protection of this application.
Claims
1. A method for planning complex flexible job shop scheduling tasks, characterized by: include: Obtaining job shop related data, a scheduling target, and a plurality of tasks, each of the tasks corresponding to a plurality of delivery windows; Constructing constraints based on the job shop association data, and constructing an objective function based on the scheduling target, the constraints including inventory constraints, shop site occupancy constraints, distance constraints, speed constraints, and time constraints, wherein the inventory constraints are used to limit the completion of tasks within the inventory range, the shop site occupancy constraints are used to prevent the same factory building from being occupied by multiple tasks at the same time, the distance constraints are used to limit the distance between task points, the speed constraints are used to limit the transportation or execution speed, and the time constraints are used to limit the completion of multiple tasks within a specified time; Solving the objective function under the constraints to determine an optimal shipping window combination, wherein the shipping window combination includes a target shipping window corresponding to each task, the target shipping window being any one of the multiple shipping windows corresponding to the task, and the target shipping window front of the task being the start time of the task; Based on the optimal transport window combination, the time schedule of each task at different time nodes is reversely calculated to obtain a planning solution.
2. The method according to claim 1, wherein: The constructing of an objective function based on the scheduling objective includes: An objective function is constructed with the scheduling goal of minimizing the total time to complete the plurality of tasks. The objective function is: Among them, T m ′ is task M m The starting time, N is the number of tasks, T m For task M m Time spent, τ is the task cycle time determined based on the prescribed time.
3. The method according to claim 2, wherein: Solving the objective function under the constraints to determine the optimal shipping window combination includes: Allocating transport routes for the plurality of tasks to obtain transport route allocation results; Calculating the total time required to complete the plurality of tasks under each candidate shipping window combination, wherein the transportation route allocation result includes the transportation route corresponding to each task, and the candidate shipping window combination satisfies the constraint condition; The candidate shipping window combination with the smallest total time required to complete the plurality of tasks is determined as the optimal shipping window combination.
4. The method according to claim 3, wherein: The transport route allocation is performed on the plurality of tasks to obtain a transport route allocation result, including any one of the following: Based on maximizing the delivery interval between adjacent tasks on the same transport route, transport routes are allocated to the plurality of tasks based on a static planning model to obtain a transport route allocation result; Based on the fact that the difference between the start times of any two adjacent tasks in the transport route is greater than or equal to the minimum time interval, transport routes are allocated to the plurality of tasks based on a dynamic programming model to obtain a transport route allocation result.
5. The method according to claim 4, wherein: The transport route allocation is performed on the plurality of tasks based on a dynamic programming model based on the fact that the difference between the start times of any two adjacent tasks in the transport route is greater than or equal to the minimum time interval, and a transport route allocation result is obtained, including: Step 1: Rearrange the elements in ζ=Vec(T) in ascending order to obtain ζ S , and based on ζ S Get the target task sequence M: Where T = [τ mz ] N×W , τ mz represents the frontier of the zth shipping window corresponding to the mth task, N is the number of tasks, W is the number of shipping windows corresponding to the task, Vec(·) is the column straightening operation, α m ,β m ,…,λ m (m=1,2,…,N) is a sort of sequence 1→N; Step 2: Distribute them to multiple transport routes in sequence, and Remove from M, and then transport the window leading edge in M less than The task is deleted, Δτ is the minimum time interval, For the task The starting moment; Step 3: If M is not empty, assign the first task in M to the current transport route to be assigned, and delete the other time windows corresponding to the first task in M. For the latest assigned task in the next route to be assigned, The front edge of the transport window in M is less than The task is deleted, For the task The starting moment; Step 4: Repeat step 3 until M is empty and the sum of the tasks assigned to the multiple transport routes is equal to the number of tasks, and obtain the transport route assignment result.
6. The method according to claim 1, wherein: The constructing of an objective function based on the scheduling objective includes: An objective function is constructed with the scheduling goal of maximizing the total contribution of the plurality of tasks, and the objective function is: Among them, H m For task M m The single task contribution, L s is the task group contribution of task group s, M m×1 is the task matrix, N is the number of tasks, S is the number of task groups, P(M m×1 ) is the total contribution of the task matrix.
7. The method according to claim 6, wherein: The constraints also include: Compatibility constraints, where the compatibility constraints are used to coordinate usage between different devices; A delivery window time constraint, which is used to limit the task to be completed within a specific time period; Resource conflict avoidance constraints are used to avoid repeated occupation of resources within the same time period.
8. A complex flexible job shop scheduling task planning device, characterized by: include: an acquisition module for acquiring job shop related data, a scheduling target, and a plurality of tasks, each of the tasks corresponding to a plurality of delivery windows; a construction module, configured to construct constraint conditions based on the job shop association data, and to construct an objective function based on the scheduling objective, wherein the constraint conditions include inventory constraints, shop site occupancy constraints, distance constraints, speed constraints, and time constraints, wherein the inventory constraints are used to restrict tasks to be completed within an inventory range, the shop site occupancy constraints are used to prevent the same factory building from being occupied by multiple tasks at the same time, the distance constraints are used to restrict the distance between task points, the speed constraints are used to restrict transportation or execution speed, and the time constraints are used to restrict the completion of multiple tasks within a specified time; a solving module, configured to solve the objective function under the constraints to determine an optimal shipping window combination, wherein the shipping window combination includes a target shipping window corresponding to each task, the target shipping window being any one of the multiple shipping windows corresponding to the task, and the target shipping window front of the task being the start time of the task; The calculation module is used to reversely calculate the time schedule of each task at different time nodes based on the optimal transportation window combination to obtain a planning solution.
9. An electronic device comprising: A memory, a processor, and a program stored in the memory and executable on the processor; wherein the processor is configured to read the program in the memory to implement the steps of the complex flexible job shop scheduling task planning method as described in any one of claims 1 to 7.
10. A readable storage medium for storing a program, characterized in that: When the program is executed by a processor, the steps of the complex flexible job shop scheduling task planning method according to any one of claims 1 to 7 are implemented.
Citation Information
Cited By
Operation and maintenance task planning and scheduling method and system fused with meteorological window prediction
CN122022349A
