Shell-making production line production scheduling method and device based on genetic algorithm, and program product
By applying a production scheduling method based on genetic algorithms on the precision casting production line, the problem of low production scheduling efficiency in the mold shell production line is solved, and more efficient production management and workpiece allocation are achieved.
Patent Information
- Application Number
- CN202510083629.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-20
- Publication Date
- 2025-06-10
AI Technical Summary
During the precision casting process, the mold shell production line has a limited capacity and complex process, resulting in low production efficiency, making it difficult to effectively manage the drying time and manual shift system of the multi-layer shell structure.
The shell production line scheduling method based on genetic algorithm is used to obtain the production process data of the to-be-scheduled and the workpieces that have been scheduled, and the optimal production scheduling result is determined through encoding, constraint inspection, selection, crossover and variation operations.
The production efficiency of the shell making production line is improved, the reasonable allocation and time management of workpieces during the production process is ensured, and the actual production needs of the shell making production line are met.
Smart Images

Figure CN120124897A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of precision casting technology, and more specifically, to a scheduling method, device, and program product for a shell-making production line based on a genetic algorithm. Background Art
[0002] The shell mold is an important in-process product in the precision casting process. In the actual shell mold production process, after the wax mold enters the shell-making line, the robot grabs the wax mold hanger to sprinkle sand and dip slurry, and reciprocally transfers it between multiple drying lines in turn to form and dry a multi-layer shell structure.
[0003] In the actual production process, due to the limited capacity of each drying line, when the number of shell molds participating in production is large, at certain moments, the number of hangers in the drying room may exceed the maximum limit. At the same time, the shift system of workers needs to be considered in scheduling. When the number of shell molds participating in production is large and the construction period is long, it often spans multiple shifts; during the breaks and rest days of the shifts, there should be no production tasks that require manual participation such as loading and unloading on the production line.
[0004] In addition, due to the characteristics of complex process, long production cycle, and great influence on the quality of subsequent processes in the shell mold production process, in order to ensure the quality of the shell mold, its drying time must strictly comply with the process requirements, which makes the time series formed by the sand sprinkling / dipping slurry and drying time of multiple shell molds intersect with each other during the production process, forming mutually coupled constraints. When producing shell molds of different types and at different stages simultaneously, the scheduling results have a great impact on production efficiency. Summary of the Invention
[0005] In view of this, the present disclosure provides a scheduling method, device, and program product for a shell-making production line based on a genetic algorithm.
[0006] One aspect of the present disclosure provides a scheduling method for a shell-making production line based on a genetic algorithm, including:
[0007] In response to a scheduling request for multiple workpieces to be scheduled, obtaining the production process data of the multiple workpieces to be scheduled and multiple scheduled workpieces; wherein, the equipment used in the next production process of the multiple scheduled workpieces is the same as the equipment used in the first production process of the multiple workpieces to be scheduled entering the shell-making production line;
[0008] Based on the genetic algorithm, generating multiple initial production sequences of the multiple workpieces to be scheduled according to the production process data composed of the multiple workpieces to be scheduled and the multiple scheduled workpieces; each initial production sequence is determined by the sequence of production of the multiple workpieces to be scheduled according to the corresponding production process;
[0009] Encode the above-mentioned multiple initial production sequences according to the preset encoding rules to obtain the encodings of the above-mentioned multiple initial production sequences;
[0010] Determine the genetic algorithm parameters. Among them, the encodings of the above-mentioned multiple initial production sequences form a population; the encoding of each initial production sequence is an individual of the population; each individual of the population uniquely corresponds to an encoding; the above-mentioned genetic algorithm parameters include the preset number of genetic generations, crossover rate, and mutation rate;
[0011] Perform constraint checking, selection, crossover, and mutation operations on the encodings of the above-mentioned multiple initial production sequences to determine the scheduling results of the above-mentioned multiple scheduled workpieces; the above-mentioned constraint checking is to determine the encodings of the multiple initial production sequences that meet the preset constraint conditions from the encodings of the above-mentioned multiple initial production sequences; the scheduling results of the above-mentioned multiple scheduled workpieces include the workpiece number of each scheduled workpiece, the process numbers of the multiple production processes corresponding to each scheduled workpiece, and the start time and end time of the production process corresponding to each scheduled workpiece.
[0012] According to an embodiment of the present disclosure, the above-mentioned performing constraint checking, selection, crossover, and mutation operations on the encodings of the above-mentioned multiple initial production sequences to determine the scheduling results of the above-mentioned multiple scheduled workpieces includes:
[0013] Determine multiple individuals that meet the preset constraint conditions from the population to obtain the first population to be optimized;
[0014] Determine the first fitness of all individuals in the first population to be optimized according to the fitness function;
[0015] Perform the first selection operation on all individuals in the first population to be optimized according to the above-mentioned first fitness and the preset selection rule;
[0016] Perform crossover operations on the individuals after the first selection operation according to the above-mentioned crossover rate;
[0017] Perform mutation operations on the individuals after crossover according to the above-mentioned mutation rate;
[0018] Determine multiple individuals that meet the preset constraint conditions from the current population to obtain the second population to be optimized;
[0019] Determine the second fitness of all individuals in the second population to be optimized according to the fitness function;
[0020] Perform the second selection operation on all individuals in the second population to be optimized according to the above-mentioned second fitness and the above-mentioned preset selection rule; and
[0021] Repeat the above-mentioned constraint checking operation, crossover operation, mutation operation, and selection operation until the number of iterations is greater than the preset number of genetic generations, and determine the production sequence of the scheduled workpiece corresponding to the encoding with the highest fitness as the scheduling result.
[0022] According to an embodiment of the present disclosure, the above fitness function is to calculate the production cycle of the individuals in the population.
[0023] According to an embodiment of the present disclosure, the above preset constraint conditions include:
[0024] For each population, the production time of the first scheduled workpiece in the production order of the scheduled workpieces corresponding to the individuals in the population shall not be earlier than the preset start time.
[0025] According to an embodiment of the present disclosure, the above preset constraint conditions further include:
[0026] For each population, the number of scheduled workpieces produced by the same equipment simultaneously needs to meet the preset capacity requirements of the above equipment.
[0027] According to an embodiment of the present disclosure, the above preset constraint conditions further include:
[0028] For each population, the start time and end time of each scheduled workpiece of the individual in the population to complete the corresponding production process shall meet the preset time requirements.
[0029] Another aspect of the present disclosure provides a scheduling device for a shell-making production line based on a genetic algorithm, including:
[0030] A data acquisition module, configured to obtain the production process data of the above-mentioned multiple to-be-scheduled workpieces and multiple scheduled workpieces in response to the scheduling requests of the multiple to-be-scheduled workpieces; wherein, the equipment applied to the next production process of the above-mentioned multiple scheduled workpieces is the same as the equipment applied to the first production process of the above-mentioned multiple to-be-scheduled workpieces entering the shell-making production line;
[0031] An order generation module, configured to generate multiple initial production orders of multiple scheduled workpieces based on a genetic algorithm according to the production process data composed of the above-mentioned multiple to-be-scheduled workpieces and the above-mentioned multiple scheduled workpieces; each initial production order is determined by the sequence of production of the above-mentioned multiple scheduled workpieces according to the corresponding production process;
[0032] An order encoding module, configured to perform an encoding operation on the above-mentioned multiple initial production orders according to a preset encoding rule to obtain the encodings of the above-mentioned multiple initial production orders;
[0033] A parameter determination module, configured to determine genetic algorithm parameters, wherein the encodings of the above-mentioned multiple initial production orders are a population; the encoding of each initial production order is an individual in the population; each individual in the population uniquely corresponds to one encoding; the above-mentioned genetic algorithm parameters include a preset number of genetic generations, a crossover rate, and a mutation rate; and
[0034] The production scheduling result determination module is used to perform constraint checking, selection, crossover, and mutation operations on the encodings of the above-mentioned multiple initial production sequences to determine the production scheduling results of the above-mentioned multiple production scheduling workpieces; the above-mentioned constraint checking is to determine the encodings of multiple initial production sequences that meet the preset constraint conditions from the encodings of the above-mentioned multiple initial production sequences; the production scheduling results of the above-mentioned multiple production scheduling workpieces include the workpiece numbers of each production scheduling workpiece, the process numbers of the multiple production processes included in each production scheduling workpiece, and the start time and end time of the production process corresponding to each production scheduling workpiece.
[0035] Another aspect of the present disclosure provides an electronic device, including:
[0036] One or more processors;
[0037] A memory for storing one or more programs,
[0038] wherein, when the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the method as described above.
[0039] Another aspect of the present disclosure provides a computer-readable storage medium storing computer-executable instructions that are used to implement the method as described above when executed.
[0040] Another aspect of the present disclosure provides a computer program product, which includes computer-executable instructions that are used to implement the method as described above when executed.
[0041] According to the embodiments of the present disclosure, based on the genetic algorithm, by performing constraint checking, selection, crossover, and mutation operations on the encodings of multiple initial production sequences, the production scheduling results of multiple production scheduling workpieces are determined. During each genetic algorithm solution process, constraint checking can be performed on the population individuals, and the encodings of multiple initial production sequences that meet the preset constraint conditions are determined from the encodings of the multiple initial production sequences. Only the initial production sequences that meet the actual production process of the shell-making production line are retained, and selection, crossover, and mutation operations are performed on the screened initial production sequences. The production scheduling results of the multiple production scheduling workpieces obtained through multiple iterations of applying the genetic algorithm can meet the actual production process of the shell-making production line. Further, production is carried out according to the production scheduling results, which improves the production efficiency of the shell-making production line. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] Through the following description of the embodiments of the present disclosure with reference to the drawings, the above and other objects, features, and advantages of the present disclosure will become clearer. In the drawings:
[0043] Figure 1 Schematically shows an exemplary system architecture of a shell-making production line to which the present disclosure can be applied;
[0044] Figure 2 Schematically shows a flowchart of a scheduling method for a shell-making production line based on a genetic algorithm according to an embodiment of the present disclosure;
[0045] Figure 3 Schematically shows a schematic diagram of various situations of the earliest start time according to an embodiment of the present disclosure;
[0046] Figure 4 Schematically shows a schematic diagram of a time period overlap check rule according to an embodiment of the present disclosure;
[0047] Figure 5 Schematically shows a schematic diagram of a scheduling result output form according to an embodiment of the present disclosure;
[0048] Figure 6 Schematically shows a flowchart of a scheduling method for a shell-making production line based on a genetic algorithm according to another embodiment of the present disclosure;
[0049] Figure 7 Schematically shows a block diagram of a scheduling device for a shell-making production line based on a genetic algorithm according to an embodiment of the present disclosure; and
[0050] Figure 8 Schematically shows a block diagram of an electronic device suitable for implementing a scheduling method for a shell-making production line based on a genetic algorithm according to an embodiment of the present disclosure. Detailed implementation manners
[0051] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are merely exemplary and are not intended to limit the scope of the present disclosure. In the following detailed description, for the sake of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, obviously, one or more embodiments can also be implemented without these specific details. In addition, in the following description, descriptions of well-known structures and technologies are omitted to avoid unnecessarily confusing the concepts of the present disclosure.
[0052] The terms used herein are merely for describing specific embodiments and are not intended to limit the present disclosure. The terms "including", "comprising", etc. used herein indicate the presence of the described features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.
[0053] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.
[0054] In the case of using expressions such as "at least one of A, B, and C, etc.", generally, it should be interpreted according to the meaning that those skilled in the art usually understand this expression (for example, "a system having at least one of A, B, and C" should include, but not be limited to, a system having only A, only B, only C, having A and B, having A and C, having B and C, and / or having A, B, and C, etc.).
[0055] In the embodiments of the present disclosure, in aspects such as the collection, update, analysis, processing, use, transmission, provision, disclosure, storage, etc. of the involved data (for example, including but not limited to user personal information), they all comply with the provisions of relevant laws and regulations, are used for legal purposes, and do not violate public order and good customs. In particular, necessary measures are taken for user personal information to prevent illegal access to user personal information data and to safeguard user personal information security and network security.
[0056] In the embodiments of the present disclosure, before obtaining or collecting user personal information, the authorization or consent of the user has been obtained.
[0057] The embodiments of the present disclosure provide a scheduling method, device, and program product for a shell-making production line based on a genetic algorithm, which is an automatic scheduling method for an automated shell-making production line considering issues such as the drying capacity of drying equipment, manual shift systems, and various technological processes in the shell-making production line, and has generality in the scheduling process of a precision casting automated shell-making production line.
[0058] Figure 1 An exemplary system architecture to which the shell-making production line of the present disclosure can be applied is schematically shown.
[0059] As Figure 1 shown, the shell-making production line of the present disclosure is managed by a production control system; the production control system mainly consists of a production control system and an automation system. Among them, the production control system realizes functions such as production information recording, process parameter storage, production management, automatic production process control, automatic scheduling, etc. The automation system includes an automation control system and automation equipment, is connected to the production control system, and realizes the production control of equipment and the acquisition of production data.
[0060] The production control system consists of an operation terminal and a data processing module. The operation terminal mainly consists of a process management module, a material management module, and a production management module. The process management module realizes the input of the automatic shell-making process, mainly including production process parameters such as part number, slurry / slurry dipping equipment selection, slurry dipping time, sand material / sand spraying equipment selection, sand spraying time, and drying time. The material management module realizes the input of incoming material information, mainly including material production information such as incoming material number, part number, and incoming material time. The production management module mainly realizes the graphical scheduling of production plans, the start of production tasks, and the completion operation of production tasks. The data processing module mainly consists of a process database, a material database, and a scheduling module. The process database stores production process data, which is input through the process input module. The material database stores material production information, which is input through the incoming material input module and updated in real time according to the actual production situation. The scheduling module automatically schedules according to the existing material production information and production process data, and sends the scheduling information to the operation terminal for production according to the settings.
[0061] The automation system includes an automation control system and automation equipment. The automation control system receives information such as production process data and scheduling situation sent by the data processing module, and automatic production commands set by the operation terminal, and controls the automation equipment to produce. The automation equipment is the execution end of the system, consisting of the actual production equipment of the automatic shell-making production line. During production, it returns production data to the automation control system, and then the automation control system updates the production data in the material database.
[0062] The production control system has a production mode selection function, including two modes: batch production mode and non-batch production mode. Among them, in the batch production mode, the shells to be made are divided into several groups according to the process route and parameters, and enter the production line in the order obtained by scheduling optimization. After the first group of shells to be made is completed and all exit the production line, the second group of shells to be made enters the production line, and so on, until all the shells to be made are processed. In the non-batch production mode, the shells to be made are not grouped, and the production order of each shell is directly arranged by the scheduling software.
[0063] Figure 2 The flowchart of the shell-making production line scheduling method based on the genetic algorithm according to an embodiment of the present disclosure is schematically shown.
[0064] As Figure 2 shown, the method includes operations S201 to S205.
[0065] In operation S201, in response to the scheduling requests of multiple workpieces to be scheduled, obtain the production process data of multiple workpieces to be scheduled and multiple scheduled workpieces; wherein, the equipment used in the next production process of the multiple scheduled workpieces is the same as the equipment used in the first production process of the multiple workpieces to be scheduled entering the shell-making production line.
[0066] In operation S202, based on the genetic algorithm, generate multiple initial production sequences for the multiple workpieces to be scheduled according to the production process data composed of the multiple workpieces to be scheduled and the multiple scheduled workpieces; each initial production sequence is determined by the order of production of the multiple workpieces to be scheduled according to the corresponding production process.
[0067] In operation S203, perform an encoding operation on the multiple initial production sequences according to a preset encoding rule to obtain the encodings of the multiple initial production sequences.
[0068] In operation S204, determine the genetic algorithm parameters, wherein, the encodings of the multiple initial production sequences form a population; the encoding of each initial production sequence is an individual of the population; each individual of the population uniquely corresponds to an encoding; the genetic algorithm parameters include a preset number of genetic generations, a crossover rate, and a mutation rate.
[0069] In operation S205, perform constraint checking, selection, crossover, and mutation operations on the encodings of the multiple initial production sequences to determine the scheduling results of the multiple workpieces to be scheduled; constraint checking is to determine the encodings of the multiple initial production sequences that meet the preset constraint conditions from the encodings of the multiple initial production sequences; the scheduling results of the multiple workpieces to be scheduled include the workpiece numbers of each workpiece to be scheduled, the process numbers of the multiple production processes corresponding to each workpiece to be scheduled, and the start time and end time of the production process corresponding to each workpiece to be scheduled.
[0070] According to an embodiment of the present disclosure, when a new workpiece to be scheduled needs to be added to the production line where shell making production is in progress, a scheduling request is generated. For example, the shell making production line can be set to include a robotic arm, a hanger for placing the membrane shell workpieces to be produced, a container for placing the slurry material, and a device for completing the sand spraying process. The robotic arm takes the hangers in sequence according to the arrangement order of the hangers, places the membrane shells on the hangers into the container filled with the slurry material. After completing the slurry dipping process, the robotic arm drives the hanger to place the membrane shell after slurry dipping into the device for the sand spraying process. After completing the sand spraying process, the robotic arm drives the hanger to be placed back to the original position and automatically transferred to the drying line. The drying line dries the membrane shells on the hanger. Since each membrane shell has to go through multiple sand spraying / slurry dipping processes, the slurries and processes used in each sand spraying / slurry dipping process are different, and moreover, the drying time of the drying line for different sand spraying / slurry dipping processes is also different. Therefore, when the workpiece to be scheduled needs to be inserted between the scheduled workpieces, it needs to be inserted from the sand spraying / slurry dipping process of the shell making production line. When inserting the workpiece to be scheduled into the scheduled workpieces, the sequence of each scheduled workpiece in the sand spraying / slurry dipping process or the drying process on the shell making production line will change. Further, the start time and end time of each process will also change.
[0071] According to an embodiment of the present disclosure, different numbers can be set for each workpiece, and the scheduling problem can be transformed into an optimization problem of the workpiece inlet sequence. Furthermore, a genetic algorithm can be used as the optimization algorithm. Non-repeating numbers are assigned to the hangers corresponding to the workpieces to be scheduled. The arrangement order of these numbers constitutes the "genes" in the genetic algorithm, and the production cycle corresponding to different genes is their fitness. The shorter the production cycle, the higher the fitness. Based on the genetic algorithm, according to the production process data composed of multiple workpieces to be scheduled and multiple scheduled workpieces, multiple initial production sequences are obtained. For the set multiple initial inlet sequences, the specific inlet timing of each workpiece (hanger) in each initial inlet sequence can be calculated. The device capacity check algorithm based on the greedy strategy and timing data can be used to solve it, ensuring that the obtained scheduling result can ensure that the maximum equipment capacity is not exceeded.
[0072] According to an embodiment of the present disclosure, since each initial production sequence includes multiple scheduled workpieces and multiple workpieces to be scheduled, and each scheduled workpiece and each workpiece to be scheduled corresponds to a unique non-repeating number, therefore, each initial production sequence can arrange the corresponding numbers according to the arrangement order of the workpieces, thereby obtaining a string of numbers for each initial production sequence. This number can be used as the encoding of the initial production sequence, or multiple initial production sequences can be encoded through techniques such as binary encoding, real number encoding, and symbol encoding.
[0073] According to an embodiment of the present disclosure, parameters of the genetic algorithm are set according to the characteristics of the population, population individuals, and genes of population individuals according to the actual situation, including a preset number of genetic generations, a crossover rate, and a mutation rate. For example, minimizing the idle time of the robotic arm is used as the algorithm optimization goal.
[0074] According to an embodiment of the present disclosure, a constraint check operation is first performed on multiple initial production sequences, and the initial production sequences that do not meet the actual production conditions are eliminated, ensuring that the initial production sequences for selection, crossover, and mutation operations are all schemes that can be implemented on the actual shell-making production line. After multiple rounds of constraint check operations, selection, crossover, and mutation operations, an optimal production scheduling sequence is finally determined as the production scheduling result. The condition for stopping the iteration can be that the iteration times are reached or the fitness value reaches a preset threshold.
[0075] According to an embodiment of the present disclosure, based on the genetic algorithm, by performing constraint check, selection, crossover, and mutation operations on the encodings of multiple initial production sequences, the production scheduling results of multiple production scheduling workpieces are determined. During each genetic algorithm solution process, a constraint check can be performed on population individuals, and the encodings of multiple initial production sequences that meet the preset constraint conditions are determined from the encodings of multiple initial production sequences. Only the initial production sequences that meet the actual production process of the shell-making production line are retained, and selection, crossover, and mutation operations are performed on the screened initial production sequences. The production scheduling results of multiple production scheduling workpieces obtained through multiple iterations of the genetic algorithm can meet the actual production process of the shell-making production line. Further, production is carried out according to the production scheduling result, improving the production efficiency of the shell-making production line.
[0076] According to an embodiment of the present disclosure, performing constraint check, selection, crossover, and mutation operations on the encodings of multiple initial production sequences to determine the production scheduling results of multiple production scheduling workpieces includes: determining multiple individuals that meet the preset constraint conditions from the population to obtain a first population to be optimized; determining the first fitness of all individuals in the first population to be optimized according to the fitness function; performing a first selection operation on all individuals in the first population to be optimized according to the first fitness and the preset selection rule; performing a crossover operation on the individuals after the first selection operation according to the crossover rate; performing a mutation operation on the individuals after crossover according to the mutation rate; determining multiple individuals that meet the preset constraint conditions from the current population to obtain a second population to be optimized; determining the second fitness of all individuals in the second population to be optimized according to the fitness function; performing a second selection operation on all individuals in the second population to be optimized according to the second fitness and the preset selection rule; repeating the above constraint check operation, crossover operation, mutation operation, and selection operation until the iteration times are greater than the preset number of genetic generations, and determining the production sequence of the production scheduling workpiece corresponding to the encoding with the highest fitness as the production scheduling result.
[0077] According to an embodiment of the present disclosure, a plurality of population individuals that do not meet the preset constraint conditions are eliminated, so that the remaining population individuals all conform to the actual production situation. To calculate the first fitness of all individuals, one can choose to calculate the fitness of each gene among all individuals, and then add up the fitnesses of multiple genes. One can choose to add directly or add with weights to obtain the first fitness of the population individuals. According to the first fitness and the preset threshold of the first fitness, the population individuals that do not meet the constraint conditions are selected, and the population individuals with a first fitness less than the first fitness threshold are eliminated. Then, crossover operation and mutation operation are performed to obtain a new population, and then the above operations are performed on the new population. Repeat the iteration for a preset number of iterations or use the production order corresponding to the encoding of the population that reaches the preset fitness threshold as the scheduling result.
[0078] According to an embodiment of the present disclosure, the fitness function is to calculate the production cycle of the population individuals. The production cycles corresponding to different genes are their fitnesses. The shorter the production cycle, the higher the fitness. Different genes refer to different workpieces. The production cycles of different workpieces are their fitnesses.
[0079] According to an embodiment of the present disclosure, the preset constraint conditions include: for each population, the production time of the first scheduled workpiece in the production order of the scheduled workpiece corresponding to the population individual cannot be earlier than the preset start time.
[0080] According to an embodiment of the present disclosure, the earliest start time can be determined based on the greedy algorithm, that is, to determine the production time of the first scheduled workpiece in the production order of the scheduled workpiece. The greedy algorithm is manifested as always choosing the earliest time when determining the start times of each workpiece (hanger). For example, let the earliest start time of the new hanger be t min , it can be proved that: . Among them, is the end time of the i-th time period when the scheduled workpiece occupies the equipment; is the start time of the j-th time period when the workpiece to be scheduled uses the equipment. Since the start time of the workpiece to be scheduled cannot be earlier than the zero moment, this constraint should also be added, that is . It shows that the earliest start time of the new hanger exists in a finite set, but which specific time in this set is the required t min , still needs to be screened by using the equipment capacity inspection method based on time series data.
[0081] Figure 3 Schematically shows various schematic diagrams of the earliest start time according to an embodiment of the present disclosure.
[0082] Such as Figure 3As shown, assume that the occupied time period of the scheduled workpiece for the robot at a certain moment is represented by a light-colored square, and the blank between the light-colored squares represents the idle time of the robot; the usage time period requirements of a new workpiece to be scheduled for this robot are represented by a dark-colored square, and the blank between the dark-colored squares represents the time period for drying or other operations. The dark-colored square has the shortest translation distance to the right relative to the zero-time line, that is, the earliest start time of the new hanger. In Figure 3 , the zero-time line can be the time node when the module processing project starts. Therefore, the production time of all workpieces to be scheduled cannot be earlier than the zero-time line. Thus, in Figure 3 , the scheduling methods and the scheduling method are not satisfied because the earliest start times of the scheduling methods and the scheduling method are earlier than the zero-time line. All other scheduling methods meet this constraint condition.
[0083] According to an embodiment of the present disclosure, the preset constraint condition further includes: for each population, the number of scheduled workpieces produced by the same device simultaneously needs to meet the preset capacity requirement of the device.
[0084] According to an embodiment of the present disclosure, when screening the earliest start time of the workpiece (hanger), the maximum capacity of the device must be taken into account, that is, to ensure that when production is carried out according to the selected start time, the situation of exceeding the maximum capacity of the device will not occur. The excessive overlap of the time periods during which the hanger occupies the device is the reason for exceeding the maximum capacity of the device. Therefore, the inspection of the maximum capacity of the device depends on the discrimination of the overlap situation of the above time periods.
[0085] Figure 4 Schematically shows a schematic diagram of the time period overlap inspection rule according to an embodiment of the present disclosure.
[0086] As Figure 4 shown, taking two time periods as an example, time period A and B respectively correspond to two hangers. When and only when , time periods A and B will overlap. Among them, refers to the completion production time of the workpiece on the hanger corresponding to time period A; refers to the start production time of the workpiece on the hanger corresponding to time period B; refers to the start production time of the workpiece on the hanger corresponding to time period A, refers to the completion production time of the workpiece on the hanger corresponding to time period B; the greater than sign means later than in terms of time; the less than sign means earlier than in terms of time. Therefore, when screening the earliest start time of the new workpiece (hanger), only the minimum value with the number of overlaps not exceeding the maximum capacity of the corresponding device needs to be found from the alternative start times.
[0087] According to an embodiment of the present disclosure, the preset constraint condition further includes: for each population, the start time and end time of each production process of each population individual for completing the corresponding production workpiece should meet the preset time requirements.
[0088] According to an embodiment of the present disclosure, the constraint condition may be the shift constraint in the production workshop. For some specific processes, they can only be executed within the shift time. For example, for the operations of loading and unloading workpieces that require manual participation, when determining the earliest start time of the workpiece (hanger), it is also necessary to check whether the execution time of its corresponding process is within the working time range. If it exceeds the working time range, a later start time must be selected.
[0089] Figure 5 Schematically shows a schematic diagram of the form of the production scheduling result according to an embodiment of the present disclosure.
[0090] As Figure 5 shown, after the production scheduling calculation is completed, the production scheduling results of each shell to be manufactured will be given in the form of a Gantt chart and a list. The production scheduling results include: workpiece number, process number, equipment number used, start time, end time. In Figure 5 , the abscissa is time and the ordinate is the numbers of different workpieces.
[0091] Figure 6 Schematically shows a flowchart of a production scheduling method for a shell-making production line based on a genetic algorithm according to another embodiment of the present disclosure.
[0092] As Figure 6 shown, the calculation steps of the production scheduling method for the shell-making production line based on the genetic algorithm include operations 601 to 603.
[0093] In operation 601, when the algorithm runs for the first time, according to the information in the process database and the material database, automatically calculate the next process of the existing work in process, and randomly generate the incoming line sequence.
[0094] In operation 602, obtain the start time list of the current population: according to the information in the process database and the material database, calculate the earliest start time, and obtain the production time list of different workpieces (hangers).
[0095] In operation 603, sort the earliest start times of the existing incoming line sequences.
[0096] In operation 604, determine whether the production time of the first-produced production workpiece in the production order of the production workpieces corresponding to the current population individuals is earlier than the preset start time. If so, return to operation 603; if not, execute operation 605.
[0097] At operation 605, it is determined whether the number of scheduled workpieces produced by the same device simultaneously needs to meet the preset capacity requirement of the device; if not, return to operation 603; if so, execute operation 606.
[0098] At operation 606, it is determined whether the shift constraint is met; if not, return to operation 603; if so, execute operation 607.
[0099] At operation 607, calculate the fitness of the current population, and select the population greater than the fitness threshold according to the fitness threshold.
[0100] At operation 608, perform selection, crossover, and mutation operations on the population greater than the fitness threshold.
[0101] At operation 609, it is determined whether the loop end condition is reached. If not, return to operation 602; if so, execute operation 610.
[0102] At operation 610, output the scheduling result.
[0103] The present invention transforms the scheduling problem into the optimization of the incoming order of workpieces (racks), and effectively solves it by means of a genetic algorithm. A specific calculation method is constructed. For the set incoming order, calculate the specific incoming time of each workpiece (rack). For this problem, it can be solved by means of a device capacity check algorithm based on a greedy strategy and time series data, ensuring that the scheduling result can ensure that the maximum capacity of the device is not exceeded. The actual operation results show that the algorithm has a fast calculation speed and can meet the requirements of production practice.
[0104] According to an embodiment of the present disclosure, an option allowing floating of the drying time can be set. Usually, the drying time of each back layer of the shell to be manufactured must be a fixed value, but in some cases, this time can be taken as a floating value within a certain range. When the drying time of the last layer of the back layer is selected as a floating value, the drying time of this layer of all the shells in production will be set as a floating value within the corresponding range. The scheduling software should make full use of this convenience and compress the total manufacturing period as much as possible.
[0105] Figure 7 Schematically shows a block diagram of a shell-making production line scheduling device based on a genetic algorithm according to an embodiment of the present disclosure.
[0106] As Figure 7 shown, the shell-making production line scheduling device 700 based on a genetic algorithm includes a data acquisition module 701, an order generation module 702, an order encoding module 703, a parameter determination module 704, and a scheduling result determination module 705.
[0107] A data acquisition module 701, configured to obtain production process data of multiple to-be-scheduled workpieces and multiple scheduled workpieces in response to scheduling requests of the multiple to-be-scheduled workpieces; wherein, the equipment used in the next production process of the multiple scheduled workpieces is the same as the equipment used in the first production process of the multiple to-be-scheduled workpieces entering the shell-making production line.
[0108] A sequential generation module 702, configured to generate multiple initial production sequences of multiple scheduled workpieces based on a genetic algorithm according to the production process data composed of the multiple to-be-scheduled workpieces and the multiple scheduled workpieces; each initial production sequence is determined by the sequential order of the multiple scheduled workpieces in accordance with the corresponding production processes.
[0109] A sequential encoding module 703, configured to perform an encoding operation on the multiple initial production sequences according to a preset encoding rule to obtain encodings of the multiple initial production sequences.
[0110] A parameter determination module 704, configured to determine genetic algorithm parameters, wherein the encodings of the multiple initial production sequences form a population; each encoding of an initial production sequence is an individual of the population; each individual of the population uniquely corresponds to an encoding; the genetic algorithm parameters include a preset number of genetic generations, a crossover rate, and a mutation rate.
[0111] A scheduling result determination module 705, configured to perform constraint checking, selection, crossover, and mutation operations on the encodings of the multiple initial production sequences to determine the scheduling results of the multiple scheduled workpieces; constraint checking is to determine the encodings of the multiple initial production sequences that meet the preset constraint conditions from the encodings of the multiple initial production sequences; the scheduling results of the multiple scheduled workpieces include the workpiece numbers of each scheduled workpiece, the process numbers of the multiple production processes included in each scheduled workpiece, and the start time and end time of the production process corresponding to each scheduled workpiece.
[0112] Any combination of modules, sub-modules, units, and sub-units according to embodiments of the present disclosure, or at least some functions of any combination thereof, may be implemented in one module. Any one or more of the modules, sub-modules, units, and sub-units according to embodiments of the present disclosure may be split into multiple modules for implementation. Any one or more of the modules, sub-modules, units, and sub-units according to embodiments of the present disclosure may be at least partially implemented as a hardware circuit, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system-on-chip, a system-on-substrate, a system-on-package, an application-specific integrated circuit (ASIC), or may be implemented by any other reasonable way of integrating or packaging circuits, or in any one of the three implementation manners of software, hardware, and firmware, or in any suitable combination of several of them. Alternatively, one or more of the modules, sub-modules, units, and sub-units according to embodiments of the present disclosure may be at least partially implemented as a computer program module, which may perform corresponding functions when the computer program module is run.
[0113] For example, any combination of the data acquisition module 701, the sequence generation module 702, the sequence encoding module 703, the parameter determination module 704, and the production scheduling result determination module 705 may be combined and implemented in one module / unit / sub-unit, or any one of the modules / units / sub-units may be split into multiple modules / units / sub-units. Alternatively, at least some functions of one or more of these modules / units / sub-units may be combined with at least some functions of other modules / units / sub-units and implemented in one module / unit / sub-unit. According to embodiments of the present disclosure, at least one of the data acquisition module 701, the sequence generation module 702, the sequence encoding module 703, the parameter determination module 704, and the production scheduling result determination module 705 may be at least partially implemented as a hardware circuit, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system-on-chip, a system-on-substrate, a system-on-package, an application-specific integrated circuit (ASIC), or may be implemented by any other reasonable way of integrating or packaging circuits, or in any one of the three implementation manners of software, hardware, and firmware, or in any suitable combination of several of them. Alternatively, at least one of the data acquisition module 701, the sequence generation module 702, the sequence encoding module 703, the parameter determination module 704, and the production scheduling result determination module 705 may be at least partially implemented as a computer program module, which may perform corresponding functions when the computer program module is run.
[0114] It should be noted that the data processing system part in the embodiments of the present disclosure corresponds to the data processing method part in the embodiments of the present disclosure. For the description of the data processing system part, please specifically refer to the data processing method part, and details will not be repeated here.
[0115] Figure 8 Schematically shows a block diagram of an electronic device suitable for implementing the method described above according to an embodiment of the present disclosure. Figure 8 The illustrated electronic device is merely an example and should not impose any limitation on the functions and usage scope of the embodiments of the present disclosure.
[0116] As Figure 8 shown, the electronic device 800 according to an embodiment of the present disclosure includes a processor 801, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 802 or a program loaded from a storage section 808 into a random access memory (RAM) 803. The processor 801 may include, for example, a general microprocessor (such as a CPU), an instruction set processor, and / or a related chipset, and / or a dedicated microprocessor (such as an application specific integrated circuit (ASIC)), and so on. The processor 801 may also include on-board memory for caching purposes. The processor 801 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.
[0117] In the RAM 803, various programs and data required for the operation of the electronic device 800 are stored. The processor 801, the ROM 802, and the RAM 803 are connected to each other via a bus 804. The processor 801 performs various operations of the method flow according to an embodiment of the present disclosure by executing the programs in the ROM 802 and / or the RAM 803. It should be noted that the programs may also be stored in one or more memories other than the ROM 802 and the RAM 803. The processor 801 may also perform various operations of the method flow according to an embodiment of the present disclosure by executing the programs stored in the one or more memories.
[0118] According to an embodiment of the present disclosure, the electronic device 800 may further include an input / output (I / O) interface 805, and the input / output (I / O) interface 805 is also connected to the bus 804. The electronic device 800 may further include one or more of the following components connected to the input / output (I / O) interface 805: an input portion 806 including a keyboard, a mouse, etc.; an output portion 807 including, for example, a cathode ray tube (CRT), a liquid crystal display (LCD), etc. and a speaker, etc.; a storage portion 808 including a hard disk, etc.; and a communication portion 809 including a network interface card such as a LAN card, a modem, etc. The communication portion 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the input / output (I / O) interface 805 as needed. A removable medium 811, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 810 as needed so that a computer program read from it can be installed into the storage portion 808 as needed.
[0119] According to an embodiment of the present disclosure, the method flow according to the embodiment of the present disclosure may be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable storage medium, and the computer program includes program codes for executing the method shown in the flowchart. In such an embodiment, the computer program may be downloaded and installed from the network through the communication portion 809, and / or installed from the removable medium 811. When the computer program is executed by the processor 801, the above-described functions defined in the system of the embodiment of the present disclosure are executed. According to an embodiment of the present disclosure, the above-described system, device, apparatus, module, unit, etc. may be implemented by computer program modules.
[0120] The present disclosure also provides a computer-readable storage medium, which may be included in the device / device / system described in the above embodiments; or may exist separately without being assembled into the device / device / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiment of the present disclosure is implemented.
[0121] According to an embodiment of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium. For example, it may include but is not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above. In the present disclosure, the computer-readable storage medium may be any tangible medium that contains or stores a program, and this program can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0122] For example, according to an embodiment of the present disclosure, the computer-readable storage medium may include one or more memories other than the above-described ROM 802 and / or RAM 803 and / or ROM 802 and RAM 803.
[0123] An embodiment of the present disclosure also includes a computer program product, which includes a computer program that contains program code for executing the method provided by the embodiment of the present disclosure. When the computer program product runs on an electronic device, the program code is used to cause the electronic device to implement the shell-making production line scheduling method based on a genetic algorithm provided by the embodiment of the present disclosure.
[0124] When the computer program is executed by the processor 801, the above functions defined in the system / apparatus of the embodiment of the present disclosure are executed. According to an embodiment of the present disclosure, the above-described systems, apparatuses, modules, units, etc. may be implemented by computer program modules.
[0125] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices and magnetic storage devices. In another embodiment, the computer program may also be transmitted and distributed in the form of a signal on a network medium, and is downloaded and installed through the communication part 809, and / or installed from the removable medium 811. The program code contained in the computer program can be transmitted by any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0126] In accordance with embodiments of the present disclosure, program code for executing the computer programs provided by the embodiments of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. The programming languages include, but are not limited to, such as Java, C++, Python, the "C" language, or similar programming languages. The program code can be executed entirely on the user's computing device, partially on the user's device, partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user's computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (e.g., by connecting through the Internet using an Internet service provider).
[0127] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagram can represent a module, a program segment, or a part of code that contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks can occur in a different order than that marked in the accompanying drawings. For example, two consecutive blocks shown can actually be executed substantially in parallel, and they can sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram or flowchart, and combinations of blocks in the block diagram or flowchart, can be implemented by a dedicated hardware-based system for performing the specified functions or operations, or can be implemented by a combination of dedicated hardware and computer instructions. Those skilled in the art can understand that the features described in the various embodiments of the present disclosure can be combined and / or combined in various ways, even if such combinations or combinations are not explicitly described in the present disclosure. In particular, without departing from the spirit and teachings of the present disclosure, the features described in the various embodiments of the present disclosure can be combined and / or combined in various ways. All such combinations and / or combinations fall within the scope of the present disclosure.
[0128] The above describes the embodiments of the present disclosure. However, these embodiments are merely for illustrative purposes and not for limiting the scope of the present disclosure. Although the embodiments are described separately above, this does not mean that the measures in each embodiment cannot be used advantageously in combination. Without departing from the scope of the present disclosure, those skilled in the art can make various substitutions and modifications, and all such substitutions and modifications should fall within the scope of the present disclosure.
Claims
1. A method for scheduling a shell production line based on a genetic algorithm, characterized in that: The method comprises: In response to a scheduling request for a plurality of workpieces to be scheduled, obtaining production process data of the plurality of workpieces to be scheduled and the plurality of workpieces that have been scheduled; wherein the equipment applied to the next production process of the plurality of workpieces that have been scheduled is the same as the equipment applied to the first production process of the plurality of workpieces to be scheduled entering the shell production line; Based on a genetic algorithm, a plurality of initial production sequences of the plurality of scheduled workpieces are generated according to the production process data consisting of the plurality of workpieces to be scheduled and the plurality of workpieces that have been scheduled; each initial production sequence is determined by the order in which the plurality of scheduled workpieces are produced according to the corresponding production process; Performing encoding operations on the multiple initial production sequences according to a preset encoding rule to obtain codes of the multiple initial production sequences; Determine genetic algorithm parameters, wherein the codes of the multiple initial production sequences are a population; the code of each initial production sequence is a population individual; each population individual uniquely corresponds to a code; the genetic algorithm parameters include a preset genetic generation, a crossover rate, and a mutation rate; The codes of the multiple initial production sequences are subjected to constraint checking, selection, crossover and mutation operations to determine the scheduling results of the multiple scheduled workpieces; the constraint checking is to determine the codes of the multiple initial production sequences that meet the preset constraint conditions from the codes of the multiple initial production sequences; the scheduling results of the multiple scheduled workpieces include the workpiece number of each scheduled workpiece, the process numbers of the multiple production processes corresponding to each scheduled workpiece, and the start time and end time of the production process corresponding to each scheduled workpiece.
2. The method according to claim 1, characterized in that The performing constraint checking, selection, crossover and mutation operations on the codes of the multiple initial production sequences to determine the production scheduling results of the multiple scheduled workpieces includes: Determine a plurality of individuals satisfying preset constraints from the population to obtain a first population to be optimized; Determine the first fitness of all individuals in the first population to be optimized according to the fitness function; According to the first fitness and the preset selection rule, performing a first selection operation on all individuals in the first population to be optimized; Performing a crossover operation on the individuals that have undergone the first selection operation according to the crossover rate; Performing a mutation operation on the individuals after the crossover according to the mutation rate; Determine a plurality of individuals satisfying preset constraints from the current population to obtain a second population to be optimized; Determine the second fitness of all individuals in the second population to be optimized according to the fitness function; Performing a second selection operation on all individuals in the second population to be optimized according to the second fitness and the preset selection rule; and Repeat the above constraint checking operation, crossover operation, mutation operation and selection operation until the number of iterations is greater than the preset genetic generation, and determine the production sequence of the scheduled workpieces corresponding to the encoding with the highest fitness as the scheduling result.
3. The method according to claim 2, characterized in that The fitness function is used to calculate the production cycle of individuals in the population.
4. The method according to claim 2, characterized in that: The preset constraints include: For each population, the production time of the first scheduled workpiece produced in the production sequence of the scheduled workpieces corresponding to the individuals in the population cannot be earlier than the preset start time.
5. The method according to claim 4, characterized in that The preset constraints also include: For each population, the number of scheduled workpieces produced simultaneously by the same equipment needs to meet the preset capacity requirements of the equipment.
6. The method according to claim 5, characterized in that The preset constraints also include: For each population, the start time and end time of the corresponding production process of each scheduled workpiece of the population individual must meet the preset time requirements.
7. A shell production line scheduling device based on genetic algorithm, characterized in that: include: A data acquisition module, for obtaining, in response to a scheduling request of a plurality of workpieces to be scheduled, production process data of the plurality of workpieces to be scheduled and the plurality of workpieces that have been scheduled; wherein the equipment applied to the next production process of the plurality of workpieces that have been scheduled is the same as the equipment applied to the first production process of the plurality of workpieces to be scheduled entering the shell production line; A sequence generation module, for generating a plurality of initial production sequences of a plurality of scheduled workpieces based on a genetic algorithm and according to the production process data consisting of the plurality of workpieces to be scheduled and the plurality of workpieces that have been scheduled; each initial production sequence is determined by the order in which the plurality of scheduled workpieces are produced according to the corresponding production process; A sequence encoding module, used to perform encoding operations on the multiple initial production sequences according to a preset encoding rule to obtain the codes of the multiple initial production sequences; A parameter determination module, used to determine genetic algorithm parameters, wherein the codes of the multiple initial production sequences are a population; the code of each initial production sequence is a population individual; each population individual uniquely corresponds to a code; the genetic algorithm parameters include a preset genetic generation, crossover rate and mutation rate; and A scheduling result determination module is used to perform constraint checking, selection, crossover and mutation operations on the codes of the multiple initial production sequences to determine the scheduling results of the multiple scheduled workpieces; the constraint checking is to determine the codes of the multiple initial production sequences that meet the preset constraints from the codes of the multiple initial production sequences; the scheduling results of the multiple scheduled workpieces include the workpiece number of each scheduled workpiece, the process numbers of the multiple production processes included in each scheduled workpiece, and the start time and end time of the production process corresponding to each scheduled workpiece.
8. An electronic device comprising: one or more processors; a memory for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 6.
9. A computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, enables the processor to implement the method according to any one of claims 1 to 6.
10. A computer program product, comprising a computer program, which, when executed by a processor, implements the method according to any one of claims 1 to 6.
Citation Information
Cited By
Typesetting method and system for ensuring consistent falling order of different surfaces of hollow glass
CN120317154A