Production line scheduling method for dynamically adding task scene
By dynamically adjusting resource allocation and priority processing, the problem of inefficient production in the aerospace manufacturing industry is solved, the flexibility of production planning and efficient utilization of resources are achieved, and the dynamic new task scenarios are adapted to dynamically added tasks.
Patent Information
- Application Number
- CN202510425809.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-07
- Publication Date
- 2025-07-11
AI Technical Summary
When handling emergency orders, the prior art ignores resource allocation optimization in a dynamic environment, resulting in low production efficiency and failure to effectively distinguish between order-plugging tasks of different priorities, which cannot meet the high flexibility and high efficiency needs of the aerospace manufacturing industry.
A production line scheduling method for dynamic new task scenarios was designed. By triggering the scheduling program, updating the task set, calculating the congestion and priority of the processing path, dynamically adjusting resource allocation, prioritizing high-priority tasks, and inserting the processing time window to ensure the flexibility of production planning and efficient utilization of resources.
It improves the flexibility of production planning, shortens planning adjustment time, optimizes resource allocation, improves overall production efficiency, can quickly respond to the latest order information and maintain the realization of production goals.
Smart Images

Figure CN120295240A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of intelligent scheduling in the aerospace manufacturing industry, and proposes a production line scheduling method for dynamic new task scenarios. Background Art
[0002] The aerospace manufacturing industry is characterized by a high degree of specialization, and its production process is complex in production processes, high in customization level, and strict in delivery time limits. To meet these characteristics, the aerospace manufacturing industry needs to adopt advanced production planning and control methods to ensure the timely delivery of high-quality products. However, in actual operation, due to factors such as the uncertainty of market demand and emergencies, enterprises often encounter the situation of urgent orders, which poses a huge challenge to the production plan.
[0003] Production planning and scheduling refers to the process of determining the order of production tasks and allocating the processing resources and start times used for each processing operation in a given production environment. This process involves multiple aspects such as resource allocation and priority setting. For the aerospace manufacturing industry, the production plan not only needs to consider the requirements of regular orders, but also needs to have a certain degree of flexibility to adapt to the insertion of urgent orders.
[0004] Urgent orders usually refer to those orders that need to be completed within a short period of time, and such orders often have a greater impact on the production plan. Handling urgent orders well can not only improve customer satisfaction, but also enhance the market competitiveness of the enterprise. Therefore, developing a set of production planning and scheduling methods that can effectively handle urgent orders is crucial for the aerospace manufacturing industry.
[0005] Currently, the handling of urgent orders mainly relies on static scheduling methods. These methods usually consider all known orders when formulating the initial production plan, and after receiving an urgent order, only arrange the urgent order through simple adjustments (such as delaying the production time of other orders). However, this method often ignores the optimization problem of resource allocation in a dynamic environment, resulting in low overall production efficiency.
[0006] At present, there are some heuristic-based scheduling methods in the industry. These methods usually analyze the availability of processing resources such as currently available production equipment and production line personnel, and reschedule the affected processing tasks including emergency orders to minimize the overall production delay. For reference: Shanghai Jiao Tong University Zhibang Technology Co., Ltd., Machining Workshop Scheduling Method and System: 202310048866.9[P].2023-02-01; There is some research on job insertion tasks in the academic community. For reference: Luo S. Dynamic scheduling for flexible job shop with new job insertions by deep reinforcement learning[J]. Applied Soft Computing, 2020, 91: 106208. However, the research is limited to modeling traditional manufacturing problems, does not consider the particularity of the aerospace production field, and does not distinguish different priorities for job insertion tasks. Summary of the Invention
[0007] In view of the above deficiencies in the prior art, the present invention provides a production line scheduling method for dynamic new task scenarios, characterized in that it includes the following steps:
[0008] S1: Start the new task scheduling program according to the trigger strategy;
[0009] S2: Update the set of processing tasks to be scheduled;
[0010] S3: Obtain the set of processing paths for each processing task to be scheduled according to the processing technology;
[0011] S4: Calculate the congestion degree of each processing path and the secondary priority of each processing task;
[0012] S5: Select a processing task for scheduling based on the task priority;
[0013] S6: Select the unscheduled processing paths;
[0014] S7: Construct the time vector of each processing resource required for the processing path;
[0015] S8: Insert the time windows of each process of the processing path into the time vector of the required processing resources;
[0016] S9: Determine whether there are unscheduled processing paths in the set of processing paths of the selected processing task. If so, return to step S6; otherwise, continue to step S10;
[0017] S10: Select the processing path with the earliest completion time for the selected processing task and update the time vector of the corresponding processing resources;
[0018] S11: Determine whether the set of machining tasks to be scheduled is empty. If so, end; otherwise, return to step S2.
[0019] Furthermore, in the above S1, each machining task has a primary priority attribute, which is a qualitative classification attribute. There are n primary priority levels in total. Different primary priorities have corresponding priority weights d = [d1, d2, d3, …, d n , where 1 ≥ d1 > d2 > d3 > … > d n , when a newly added machining task arrives and is added to the new task pool, if the priority weight corresponding to its primary priority is d k , when the total number of machining tasks with this primary priority in the new task pool is greater than or equal to , then start the new task scheduling program.
[0020] Furthermore, in the above S2, the set of machining tasks to be scheduled contains two types of machining tasks. One is the machining tasks included in all primary priority categories that meet the requirements of the total number of machining tasks in the new task pool, and the other is the scheduled machining tasks with lower priorities removed when inserting the scheduling time window for the newly added machining task.
[0021] Furthermore, in the above S3, a machining path i σ of machining task i is defined as where are the sets of fixtures, machines, and personnel assigned to the j-th process of machining task i respectively. The three sets are subsets of F, M, and R respectively. The same machining process corresponds to multiple feasible machining paths, and then form the machining path set of this machining task In the case where the subsequent process time window of the scheduled machining task is removed, the new machining task formed only contains some processes in the original machining process, that is, from the original machining process converted to
[0022] Furthermore, in the above S4, first obtain the current time t. For each machining path of each machining task to be scheduled, when the machining path involves s machining resources in total, that is then the congestion degree of this machining path is calculated by the following formula: where, is the latest release time among all machining resources of the same type as the i-th machining resource; is the total duration that resource i is occupied by machining tasks from t to ; Each machining task has a quantitative secondary priority: Among them, is the latest delivery time of processing task j; is the processing path with the smallest congestion degree in the set of processing paths belonging to processing task j, is the processing path The release time of, that is, The latest occupation end time of the scheduled processes on all processing resources involved in the last process.
[0023] Furthermore, in the said S5, first select the subset of processing tasks with the highest primary priority in the current set, and select a processing task i with the highest secondary priority, that is, the smallest value, in this subset for scheduling time window insertion. If there are multiple processing tasks with the highest secondary priority in the subset, randomly select one of them for scheduling.
[0024] Furthermore, in the said S6, for the selected processing task, randomly select a processing path in its set of processing paths that has not been inserted with a scheduling time window i σ.
[0025] Furthermore, in the said S7, at the same time, each processing resource is occupied by at most one process o of a processing task ij Then the duration of the process j of processing task i occupying processing resource k is defined as:
[0026] w i,j,k = out t i,j,k - in t i,j,k
[0027] Among them, out t i,j,k is the end time of the process j of processing task i occupying processing resource k; in t i,j,k is the start time of the process j of processing task i occupying processing resource k; The duration, occupation start time, and occupation end time of processing resource k are written in vector form:
[0028] w k = [w i,j,k
[0029] in t k = in t i,j,k
[0030] out t k = out t i,j,k
[0031] The dimension of the three time vectors is equal to the sum of the number of processes involving the processing resource among all currently scheduled processing tasks.
[0032] First, initialize the time vectors. For each processing resource involved in the selected processing path, the time vectors are as follows:
[0033]
[0034] where is the occupation duration of process j of the processing task i to be scheduled i on the processing resource k; and are the start time and end time of the occupation of process j of the processing task i i on the processing resource k.
[0035] Furthermore, in the step S8, according to the process sequence in the selected processing path, find the first feasible time window on the required processing resource for each process in turn. After all the processes in the processing path complete the insertion of the scheduling time window, record its scheduling result and the completion time of the processing path.
[0036] Furthermore, in the step S10, for the selected processing task i to be scheduled, after attempting to insert the scheduling time window for all the processing paths in its processing path set Σ i , this step selects the processing path i σ * with the earliest completion time, and at the same time updates the time vectors of the processing resources related to i σ * .
[0037] By the above method, the production line scheduling method of the present invention for the dynamic new task scenario achieves the following three aspects of effects:
[0038] 1) Improved planning flexibility:
[0039] The new order scheduling method designed by the present invention allows real-time update of the production plan, enabling the system to quickly respond according to the latest order information. By reasonably arranging the production plan of emergency orders, the solution of the present invention improves the overall elasticity of the production plan.
[0040] 2) Reduced planning adjustment time:
[0041] Compared with the traditional method, the dynamic order insertion method designed by the present invention only adjusts the part affected by the emergency order, rather than re-planning the entire production schedule. This not only saves calculation time but also ensures that the adjusted production plan still meets the enterprise's goals.
[0042] 3) Optimized resource allocation:
[0043] The dynamic order insertion method designed in this solution can dynamically adjust the allocation of processing resources among various processing tasks according to the processing technology of the newly added order and the usage of current processing resources, avoiding unnecessary idleness or overuse of processing resources and improving resource utilization. Brief Description of the Drawings
[0044] Figure 1 It is a flowchart of the production line scheduling method for the scenario of dynamically adding new tasks of the present invention.
[0045] Figure 2 It is a schematic diagram of the static scheduling algorithm design in an example of the present invention.
[0046] Figure 3 It is a schematic diagram of the static scheduling result in an example of the present invention.
[0047] Figure 4 It is a schematic diagram of the dynamic order insertion algorithm design in an example of the present invention.
[0048] Figure 5 It is a schematic diagram of the dynamic order insertion result in an example of the present invention. Detailed Description of the Invention
[0049] The following further describes in detail the specific implementation manners of the present invention in conjunction with the drawings. According to the drawings Figure 1 , preferred examples of the present invention are given and described in detail so as to better understand the functions and features of the present invention.
[0050] Figure 1 It is a flowchart of the production line scheduling method for the scenario of dynamically adding new tasks of the present invention. As Figure 1 shown, the production line scheduling method for the scenario of dynamically adding new tasks of the present invention includes the following steps:
[0051] S1: Start the new task scheduling program according to the trigger strategy.
[0052] The dynamically added processing tasks are incorporated into the new task pool. Each processing task has a primary priority attribute, which is a qualitative classification attribute. Suppose there are a total of n primary priority levels, and different primary priorities have corresponding priority weights d = [d1, d2, d3, …, d n , where 1 ≥ d1 > d2 > d3 > … > d n . The program trigger strategy is that when a newly added processing task arrives and is added to the new task pool, if the priority weight corresponding to its primary priority is d k , when the total number of processing tasks with this primary priority in the new task pool is greater than or equal to When this happens, start the new task scheduling dispatcher.
[0053] S2: Update the set of machining tasks to be scheduled.
[0054] The set of machining tasks to be scheduled includes two types of machining tasks. One is the machining tasks included in all primary priority categories in the new task pool that meet the requirements of the total number of machining tasks. The other is the lower-priority scheduled machining tasks removed when inserting the scheduling time window for the newly added machining tasks. Whenever the insertion of the scheduling time window for a newly added machining task is completed, update the set of machining tasks to be scheduled, that is, delete the newly added machining tasks that have completed scheduling and add the scheduled machining tasks removed during the time window insertion.
[0055] S3: Obtain the set of machining paths for each machining task to be scheduled according to the machining process.
[0056] The machining resources in the actual production line include different types of fixtures, machines, and personnel with different skill types. Let the set of fixtures in the production line be F = {f1, f2, …, f |F|}, the set of machines be M = {m1, m2, …, m |M|}, and the set of personnel be R = {r1, r2, …, r |R|}. The machining process of each machining task includes multiple machining operations. Taking machining task i as an example, its machining process is a machining operation sequence where, when p < q, o ip is defined as the upstream operation of o iq Each machining operation o ij involves a specific combination of types and quantities of three machining resources: fixtures, machines, and personnel. A machining path i σ of machining task i is defined as where are the sets of fixtures, machines, and personnel assigned to the j-th operation of machining task i respectively, and the three sets are subsets of F, M, and R respectively. Since the number of each type of fixture, machine, and personnel in the actual production line is usually more than one, the same machining process can correspond to multiple feasible machining paths, and then form the set of machining paths The set of machining paths is calculated offline before the newly added machining tasks arrive. For machining tasks with a completely new machining process, calculate their set of machining paths in this step. When inserting the scheduling time window for the new task, the subsequent time windows of some lower-priority scheduled machining tasks will be removed, and the new machining tasks formed only include some operations in the original machining process, that is, from the original machining process converted to In this case, the processing path set corresponding to the original processing technology can be obtained first. The completed process parts of this task in each processing path are deleted, and duplicates are removed, so as to obtain a processing path set containing only some processes.
[0057] S4: Calculate the congestion degree of each processing path and the secondary priority of each processing task.
[0058] In this step, the current time t is obtained first. For each processing path of each processing task to be scheduled, assume that a certain processing path involves s processing resources in total, that is Then the congestion degree of this processing path can be calculated by the following formula: Among them, is the latest release time among all processing resources of the same type as the i-th processing resource (that is, the completion time of the last processing process responsible for this processing resource); is the time from t to The total duration that resource i is occupied by processing tasks during the time period. Based on the definition of the congestion degree of the processing path, the quantitative secondary priority of each processing task can be calculated: Among them, is the latest delivery time of processing task j; is the processing path with the smallest congestion degree in the set of processing paths belonging to processing task j, is the processing path The release time of, that is The latest occupancy end time of the scheduled processes on all processing resources involved in the last process. The higher the secondary priority of the processing task, the smaller the value.
[0059] S5: Select a processing task based on the task priority for scheduling.
[0060] In the set of processing tasks to be scheduled, first select the subset of processing tasks with the highest primary priority in the current set, and select a processing task i with the highest secondary priority (the smallest value) in this subset for inserting the scheduling time window. If there are multiple processing tasks with the highest secondary priority in the subset, randomly select one of them for scheduling.
[0061] S6: Select the unscheduled processing path.
[0062] For the selected processing task, randomly select an unscheduled processing path in its set of processing paths for inserting the scheduling time window i σ.
[0063] S7: Construct the time vectors of the processing resources required for the processing path.
[0064] First, the relevant concepts of the time vector are elaborated. At the same moment, each processing resource is occupied by at most one operation of a processing task. Then, the duration during which the operation j of the processing task i occupies the processing resource k can be defined as: ij where
[0065] w i,j,k = out t i,j,k - in t i,j,k
[0066] Among them, out t i,j,k is the end time when the operation j of the processing task i occupies the processing resource k; in t i,j,k is the start time when the operation j of the processing task i occupies the processing resource k. Then, the duration, occupancy start time, and occupancy end time regarding the processing resource k can be written in vector form:
[0067] w k =[w i,j,k
[0068] in t k = in t i,j,k
[0069] out t k = out t i,j,k
[0070] The dimension of the three time vectors is equal to the sum of the number of operations involving this processing resource among all currently scheduled processing tasks. At the same time, the elements within each time vector are sorted according to the priority level. First, they are sorted by the primary priority level. For processing tasks with the same primary priority level, they are then sorted by the secondary priority level. If the processing technology of a certain processing task involves multiple operations using the processing resource k, then these operations are sorted in their order in the processing technology O i in the time vector of k. Since new processing tasks are constantly added to the scheduling plan and at the same time, scheduled processing tasks are constantly completed, the dimensions of the above three time vectors will change dynamically over time. For scheduled processing tasks that are still in progress, if their processing technology does not use the processing resource k, the corresponding elements in the vector w k will be set to 0, and in the vector in t k and the vector out t k The corresponding elements are set to ∞. For the convenience of inserting time windows, the elements in the above three time vectors can be sorted in chronological order instead of in priority order. Therefore, the occupancy start time vector of resource k in t k = in t i,j,k can be converted into a sequential vector < in t k >= in t i,j,k , where and The sorted duration vector w k and the occupancy end time vector out t k , have the same subscript for each position element as the sorted occupancy start time vector in t k .
[0071] This step first initializes the time vector. For each processing resource involved in the selected processing path, the time vector is:[[]]
[0072]
[0073] where is the occupancy duration of operation j of the to-be-scheduled processing task i i on processing resource k, and its value is equal to the sum of the duration required for this operation in the processing technology of the task and the safety duration. The safety duration includes the loading and unloading time of some operations and the logistics time of the processed parts in the production line between various equipment; and are the occupancy start time and occupancy end time of operation j of processing task i i on processing resource k, and their values are unknown and need to be determined through subsequent time window insertion steps.[[]]
[0074] In the process of initializing the time vector, the elements in the vector out t k whose values are less than the current time t are set to ∞. At the same time, the corresponding elements with the same subscript in the vector out t k and the vector w k are respectively set to ∞ and 0. Since the occupancy of a certain operation of the processing task corresponding to these elements on the processing resource has ended before time t, they do not affect the insertion of time windows for the newly added to-be-scheduled processing tasks. For the operations of the ongoing processing tasks, that is, in t i,j,k ≥t and out t i,j,k<t, whose elements in the time vector remain unchanged. For the remaining unstarted processing task operations, if the priority of the processing task is lower than that of the selected scheduling processing task to be scheduled, then the remaining operations of the processing task are deleted from the time vector of the corresponding processing resource ( in t k and out t k the elements in are set to ∞, and the elements in w k are set to 0), and the remaining operations are merged to form a new scheduling processing task to be scheduled and placed in the set of scheduling processing tasks to be scheduled. There are two cases where the priority here is lower than that of the selected scheduling processing task to be scheduled. One is that the primary priority is lower than that of the scheduling processing task to be scheduled, and the other is that the primary priority is the same as that of the scheduling processing task to be scheduled, but the secondary priority is lower than that of the scheduling processing task to be scheduled. The secondary priority of the scheduled processing task is still calculated according to Equation However, here corresponds to the scheduled processing path of the task in the scheduling plan.
[0075] S8: Insert the time windows of each operation of the processing path into the time vector of the required processing resource.
[0076] This step inserts the time windows of each operation of the processing path of the selected scheduling processing task to be scheduled into the time vector of the processing resource required by the operation. According to the order of the operations in the selected processing path, find the first feasible time window on the processing resource required by each operation in turn. The feasible time window needs to meet the following requirements: a) The duration of the time window is sufficient to execute the processing operation; b) The processing resources required by the selected processing path at this operation are not occupied during this time window; c) For non-starting operations, the start time of the time window is later than the end time of its previous operation.
[0077] Starting from the current moment t, if the processing resource is not occupied by other operations before the time window that meets the above conditions, then the start time of the occupation of the operation to be scheduled on this processing resource is set to t, and the end time of the occupation If the processing resource is occupied by other operations both before and after the time window that meets the above conditions, then the start time of the occupation of the operation to be scheduled on this processing resource is set to the larger of two times: one time is the end time of the occupation of the previous occupation operation on the processing resource k before this time window, and the other time is the end time of the upstream operation of this operation to be scheduled in the selected processing path. The end time of the occupation of the operation to be scheduled on this processing resource If the scheduled operations on the processing resource occupy time too intensively and a feasible time window that meets the above conditions cannot be found, then insert the time window of the operation to be scheduled after the time window of the last scheduled operation on this processing resource, that is, the start time of the operation to be scheduled on this processing resource is set to the end time of the occupancy of the last scheduled operation on the processing resource, and the end time of the occupancy of the operation to be scheduled After all the operation scheduling time windows of this processing path are inserted, record its scheduling result and the completion time of the processing path.
[0078] S9: Determine whether there is an unscheduled processing path in the set of processing paths of the selected processing task. If so, return to step S6; otherwise, continue to step S10.
[0079] S10: Select a processing path with the earliest completion time for the selected processing task and update the time vector of the corresponding processing resource.
[0080] For the selected processing task i to be scheduled, after attempting to insert the scheduling time window for all the processing paths in its set of processing paths Σ i this step selects the processing path with the earliest completion time among them i σ * , and at the same time update the time vector of the processing resource related to i σ * .
[0081] S11: Determine whether the set of processing tasks to be scheduled is empty. If so, end; otherwise, return to step S2.
[0082] To make the above objects, features, and advantages of the present invention more obvious and understandable, the present invention will be further described in detail below with reference to examples.
[0083] Example
[0084] Step 1: Establish part processing process data resources
[0085] (1) Part type 1
[0086]
[0087] (2) Part type 2
[0088]
[0089] (3) Part type 3
[0090]
[0091]
[0092] Step 2: Establish a processing task
[0093]
[0094] Step 3: Algorithm scheduling, refer to Figure 2
[0095] (1) Static scheduling process
[0096] The core index of scheduling priority: (earliest completion time + remaining time margin + number of subsequent processes) * task importance.
[0097] 1) Let t = 1, S t ={P 1j |j = 1,2,…,N}, where P 1j represents the first process of workpiece j, represents the usage time of K types of resources.
[0098] 2) Take out the scheduling priority score of process P t from S ij .
[0099] 2.1) Take machine m from the set M of available machines for the process, and find the earliest start time M ij S t of machine m and the set K ij of other types of resources available for this process. Then, each type of resource used by this process satisfies
[0100] 2.2) Based on the earliest start time and other indicators, calculate the scheduling priority score of machine / resource for process P ij on machine m or resource at the earliest start time
[0101] 2.3) Repeat steps 2.1) and 2.2) to obtain the optimal machine / resource scheduling priority score of this process on all machines and resources, denoted as the scheduling priority score of this process.
[0102] 3) Repeat step 2) to find the scheduling priority scores of all processes in S t .
[0103] 4) Determine the process to be scheduled first according to the scheduling priority score, and assign the machines and resources (fixtures, personnel, etc.) used by the process.
[0104] 5) Update S t : Delete the assigned process; add subsequent processes; stage recursion.
[0105] 6) Return to step 2) until a complete schedule is constructed, such as Figure 3 as shown
[0106] (2) Dynamic order-insertion process
[0107] Core method for inserting an order into a feasible time window: (the start time is not earlier than the end time of the previous process & the size of the time window is greater than the processing time required for the process & the corresponding processing resources are not occupied during the window), select the feasible time window with the earliest start time from the above three conditions, refer to Figure 4 .
[0108] 1) When a new inserted order task arrives, if the number of waiting tasks under a certain external priority meets a certain quantity, start the order-insertion scheduling program.
[0109] 2) Update the set of processing tasks to be scheduled, and insert the time windows of the processing resources for task scheduling.
[0110] 2.1) Obtain the set of processing resource assignment combinations for each task to be scheduled based on the roulette-wheel heuristic.
[0111] 2.2) For each task to be scheduled, calculate the congestion degree of each combination in its assignment combination set, and calculate the internal priority of the task.
[0112] 2.3) Based on the external priority and internal priority of the task, select a processing task to be scheduled for scheduling.
[0113] 2.3.1) Based on the priority of the selected processing task to be scheduled, delete some unscheduled processes that have not started, and form a new processing task to be scheduled.
[0114] 2.3.2) For a certain combination in the set of processing resource assignment combinations of the selected processing task to be scheduled, sequentially insert time windows on the processing resources selected for each of its processes, and select the earliest feasible time window for each process.
[0115] 2.3.3) Repeat step 2.3.2) until all processing resource assignment combinations have completed the time window insertion attempt, select the assignment combination with the earliest processing completion time, and update the scheduling result of the processing resources.
[0116] 3) Return to step 2) until all processing tasks to be scheduled are scheduled, as Figure 5 shown
[0117] It should be noted that the above is only a schematic illustration and description of the present invention. Those skilled in the art should understand that any modification and replacement of the present invention fall within the protection scope of the present invention.
Claims
1. A production line scheduling method for dynamic new task scenarios, characterized in that It includes the following steps: S1: Start a new task scheduling dispatcher according to a trigger policy; S2: Update the set of machining tasks to be scheduled; S3: Obtain the set of machining paths for each machining task to be scheduled according to the machining process; S4: Calculate the congestion degree of each machining path and the secondary priority of each machining task; S5: Select a machining task for scheduling based on the task priority; S6: Select unscheduled machining paths; S7: Construct the time vectors of the machining resources required for the machining paths; S8: Insert the time windows of each process of the machining path into the time vectors of the required machining resources; S9: Determine whether there are unscheduled machining paths in the set of machining paths of the selected machining task. If so, return to step S6; otherwise, continue to step S10; S10: Select the machining path with the earliest completion time for the selected machining task and update the time vectors of the corresponding machining resources; S11: Determine whether the set of machining tasks to be scheduled is empty. If so, end; otherwise, return to step S2.
2. The production line scheduling method for the dynamic new task scenario according to claim 1, wherein In the S1, each processing task has a primary priority attribute, which is a qualitative classification attribute. There are n primary priority levels in total. Different primary priorities have corresponding priority weights d = [d1, d2, d3, …, d n , where 1 ≥ d1 > d2 > d3 > … > d n , when a newly added processing task arrives and is added to the new task pool, if the priority weight corresponding to its primary priority is d k , when the total number of processing tasks with this primary priority in the new task pool is greater than or equal to , then start the new task scheduling program.
3. The production line scheduling method for dynamically adding new task scenarios according to claim 1, characterized in that In the said S2, the set of machining tasks to be scheduled contains two types of machining tasks. One is the machining tasks included in all the primary priority categories that meet the requirements of the total number of machining tasks in the new task pool, and the other is the scheduled machining tasks with lower priority removed when inserting the scheduling time window for the newly added machining tasks.
4. The production line scheduling method for dynamically adding new task scenarios according to claim 1, characterized in that In the step S3, a processing path of the processing task i i is defined as where are the sets of fixtures, machines, and personnel assigned to the j-th process of the processing task i respectively. The three sets are subsets of F, M, and R respectively. Multiple feasible processing paths correspond to the same processing technology, and then form the processing path set of the processing task In the case where the subsequent process time window of the scheduled processing task is removed, the new processing task formed only contains some processes in the original processing technology, that is, from the original processing technology converts to 5. The production line scheduling method for the dynamic new task scenario according to claim 1, wherein In S4, first, obtain the current time t. For each processing path of each scheduling task to be processed, when a total of s processing resources are involved in the processing path, that is The congestion degree of the processing path is calculated by the following formula: where is the latest release time among all processing resources of the same type as the i-th processing resource; is the total duration that resource i is occupied by processing tasks during the period from t to ; The secondary priority of each processing task in a fixed quantity: where is the latest delivery time of processing task j; is the processing path with the minimum congestion degree in the set of processing paths belonging to processing task j, is the release time of processing path , that is the latest occupancy end time of the scheduled processes on all processing resources involved in the last process.
6. The production line scheduling method for the dynamic new task scenario according to claim 1, wherein In the said S5, first select the subset of machining tasks with the highest primary priority in the current set, and select a machining task i with the highest secondary priority, that is, the smallest value, in this subset for inserting the scheduling time window. If there are multiple machining tasks with the highest secondary priority in the subset, randomly select one of them for scheduling.
7. The production line scheduling method for dynamically adding new task scenarios according to claim 1, characterized in that In S6, for the selected processing task, randomly select a processing path in its set of processing paths where no scheduling time window has been inserted i σ.
8. The production line scheduling method for dynamically adding new task scenarios according to claim 1, wherein In the S7, at the same moment, each processing resource is occupied by at most one operation o of a processing task. ij Then, the duration for which the operation j of the processing task i occupies the processing resource k is defined as: w i,j,k = out t i,j,k - in t i,j,k Among them, out t i,j,k is the end time when the $j$-th process of the $i$-th processing task occupies the $k$-th processing resource; in t i,j,k is the start time when the $j$-th process of the $i$-th processing task occupies the $k$-th processing resource; The duration, occupation start time, and occupation end time regarding the $k$-th processing resource are written in vector form: w k = [w i,j,k in t k = in t i,j,k out t k = out t i,j,k The dimensions of the three time vectors are equal to the sum of the number of processes involving this machining resource in all the currently scheduled machining tasks, First, initialize the time vectors. For each machining resource involved in the selected machining path, the time vector is: Among them is the operation j of the machining task i to be scheduled i the occupancy duration on the machining resource k; and is the operation j of the machining task i i the occupancy start time and occupancy end time on the machining resource k.
9. The production line scheduling method for the dynamic new task scenario according to claim 1, wherein In the said S8, according to the order of the processes in the selected machining path, find the first feasible time window on the machining resources required for each process in turn. After all the processes of the machining path complete the insertion of the scheduling time window, record its scheduling result and the completion time of the machining path.
10. The production line scheduling method for the dynamic new task scenario according to claim 1, characterized in that, In the step S10, for the selected machining task i to be scheduled, after attempting to insert scheduling time windows for all machining paths in its machining path set Σ i , this step selects the machining path with the earliest completion time among them i σ * , and simultaneously updates the time vector of the machining resources related to i σ * .
Citation Information
Patent Citations
Production scheduling methods and systems for machining workshops
CN116029516B
Cited By
Factory production scheduling decision management system combined with multi-factor intelligent analysis
CN121212693A