Execution design method and device for mixed production
By generating and optimizing event sets and dynamically adjusting production plans, the problem that the existing system is incompatible with the flexible discrete unit model is solved, and dynamic adjustment and efficient production in the production process are achieved.
Patent Information
- Application Number
- CN202511240658.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-02
- Publication Date
- 2025-10-03
- Estimated Expiration
- 2045-09-02
AI Technical Summary
The existing automotive production execution manufacturing system is unable to adapt to the flexible discrete unit production execution manufacturing model, and is unable to dynamically adjust production flexibility, process flexibility, and equipment flexibility during the production process, resulting in assembly unit blockage and low production efficiency during the production process.
The hybrid production execution design method is adopted to dynamically adjust the production plan by generating event sets, arranging event sets, optimizing the initial generation of particles and evaluating the initial generation of optimized particles, generating the final optimal particles and realizing dynamic adjustment in the production process.
It enables the production process to respond to changes in assembly unit planning and diversification of assembly paths at any time, thereby improving production efficiency and equipment utilization.
Smart Images

Figure CN120746221A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of production scheduling and planning, and in particular to a method and device for designing the execution of mixed production. Background Art
[0002] Currently, automobile final assembly is based on a linear, tactile production workshop where multiple branch lines converge into a main assembly line. However, production lines currently under construction are beginning to adopt a hybrid model combining discrete unit and line assembly. Specifically, some highly automated, difficult-to-adjust production units, or production processes unsuitable for mobility, are assembled using the discrete unit model, while other semi-automated or less automated assembly processes continue to utilize the tactile production line model. However, the more mature automotive production execution and manufacturing systems (PEMSs) currently operate primarily on a line-based tactile model and are therefore incompatible with the flexible, discrete unit model.
[0003] Flexible production needs to meet three major flexibilities, namely production flexibility, process flexibility, and equipment flexibility;
[0004] Production flexibility means that during the manufacturing process, the system can dynamically schedule production based on the current production status. For example, if an assembly unit malfunctions and stops production, the system can reroute vehicles originally scheduled for that unit to a similar unit. If an assembly unit is overloaded, the system can reroute subsequent vehicles to similar units based on actual load, or pre-install other assembly tasks within the permitted range according to process presets.
[0005] Process flexibility refers to the dynamic adjustment of the production process and appropriate assembly units for a particular vehicle type based on different vehicle models, different sites, different equipment requirements, and different process rhythms. For example, in the current market environment, many vehicle models can support a variety of personalized customer configurations. Under these diverse configuration requirements, the system needs to meet the diverse process configurations of different vehicle models. In addition, in conjunction with equipment flexibility, when the equipment layout and site layout of the same vehicle model change, the system must support readjustment of the production process to maximize the efficiency of the adjusted equipment layout. In addition, due to the enhanced autonomy of the scheduling system, a higher degree of freedom is required during the process design process to realize the potential of the scheduling system, such as whether the process sequence can be interchangeable and which processes can be skipped.
[0006] Equipment flexibility means that during the production process, the workshop can add or remove production equipment based on current production conditions. The current assembly cell design supports modification, whereby equipment is replaced to achieve different assembly functions. The resulting assembly layout adjustments require visual switching and adjustment across production scheduling, production processes, production monitoring, and the digital twin platform.
[0007] The flexible production model requires that the new production process will be data-driven. Under the current beat-driven production model, the role of data is only to guide the production line to perform violent actions such as alarms and line stops. It cannot meet the production flexibility requirements proposed by the discrete unit model. In addition, although the current manufacturing execution system can adjust the sequence of processes to a certain extent, it cannot make dynamic adjustments during the production process, cannot carry out large-scale mixed-line production, and cannot adjust some processes to a parallel sequence. Due to the characteristics of beat-driven production, the system in the past did not need to plan large-scale production events, but the current flexible production process creates space for planning. For example, the panoramic sunroofs required by some high-end cars do not account for a high proportion of the daily output. We do not need to produce them in a cluster, which will cause blockage in the sunroof assembly unit.
[0008] Currently, no effective solution has been proposed to the above-mentioned problems existing in the related technologies. Summary of the Invention
[0009] The main purpose of this application is to provide a method and device for designing the execution of hybrid production, so as to at least solve the problem in the related art that dynamic adjustment cannot be made during the production process.
[0010] In order to achieve the above-mentioned purpose, according to one aspect of the present application, a hybrid production execution design method is provided. The method includes: generating an event set, the event set including the production entity identifier, the online time, the production constraints, and the process set; arranging the event set to obtain the first-generation particles, and when the first-generation particles reach a preset number, obtaining a first-generation particle group, wherein each event set corresponds to a first-generation particle, the first-generation particle includes at least one planned item, the planned item includes at least one process set, and the process set includes at least one process; step S103, optimizing the first-generation particles to obtain the first-generation optimized particles; step S104, evaluating the first-generation optimized particles to obtain the first-generation optimal particles; repeating step S103-step S104 to a preset number of times to obtain the final optimal particle.
[0011] Optionally, a planned item is randomly selected from the event set, and all the first processes of the planned item are obtained, wherein the first process is the process corresponding to the starting point of each process set in the planned item; the execution process of the first process is selected in the starting process group, wherein the starting process group includes all execution processes that can be executed at the starting point of the process set; the execution process that can be executed after the production predecessor process is randomly selected for the process based on the production predecessor process of the process, wherein the production predecessor process is the process before the process of the production subject; the start time and end time of the execution process are determined, and the time occupancy of the assembly unit corresponding to the execution process is marked, and the completion time of the process is updated; when all the process sets in the planned items in the event set are arranged, the first generation of particles is obtained.
[0012] Optionally, step S301, setting the optimization vector length, the number of particle optimization rounds, and the particle optimization target percentage, wherein the optimization vector length is the time difference between two processes on the same assembly unit and the distance between the positions of two processes on different assembly units, and the optimization target percentage is the percentage of the consumption time of the first-generation optimization particles to the consumption time of the first-generation particles, wherein the position is a certain production entity in a certain assembly unit; step S302, according to the set vector length, selecting two to-be-exchanged processes from the optimization stage particles for exchange or movement, wherein the optimization stage particles include the first-generation particles and the particles obtained from each optimization, and the to-be-exchanged processes are any two processes on two assembly units of the same type, or any two processes on one assembly unit; step S303, reintegrating the exchanged optimization stage particles to obtain the final completion time of each process; step S304, detecting the integrated optimization stage particles, including: when the integration When the optimized stage particles after integration meet the production constraints, the optimized particles are obtained; when the optimized stage particles after integration do not meet the production constraints, steps S301 to S304 are repeated; step S305, determining whether the optimized particles are retained, including: when the total consumption time of the optimized particles is less than the optimized stage particles obtained by the previous optimization, recording the optimized particles as the latest value, and retaining the optimized stage particles obtained by the previous optimization as the historical record; when the total consumption time of the optimized particles is greater than the optimized stage particles obtained by the previous optimization, determining whether to retain the optimized particles as the latest value based on the retention probability, including: when it is determined that the optimized particles are not retained as the latest value based on the retention probability, ignoring this optimization; wherein, when performing the first optimization, the optimized stage particles obtained by the previous optimization are the first-generation particles; repeating steps S302 to S305 until the optimized stage particles reach the number of particle optimization rounds or the particle optimization target percentage, confirming the latest value as the first-generation optimized particle.
[0013] Optionally, when two processes to be exchanged are moved, one of the processes to be exchanged moves in front of the other process to be exchanged.
[0014] Optionally, step S501, starting from the first process, arranges the process time, wherein the first process is the process corresponding to the starting point of each process set in the planned items, including: when the process has no assembly predecessor process or the assembly predecessor process has been arranged, updating the start time and end time of the process; when the assembly predecessor process of the process has not been arranged, obtaining the first process of the planned items corresponding to the assembly predecessor process, wherein the assembly predecessor process is the previous process of the process on the assembly unit; repeating step S501 until all processes are arranged, and obtaining the final completion time of each process.
[0015] Optionally, calculate the retention probability, the formula is ,in, To retain the probability, To optimize the execution time of particles, is the execution time of the first generation of particles, The execution time for the initial settings.
[0016] Optionally, calculate the fitness of all first-generation optimized particles and select the first-generation optimized particle with the largest fitness as the first-generation optimal particle. The calculation formula is: ,in, For fitness, Optimize the final completion time of particles for the first generation, The weight of the final completion time of the first generation optimized particles in the final evaluation, is the imbalance of the machine load, Optimize the load imbalance weight of particles for the first generation, = Current algebra / optimized algebra upper bound), .
[0017] Optionally, based on the set vector length, two processes to be exchanged are selected for exchange or movement, including: arbitrarily selecting two processes, and comparing the positions of the two processes with the positions of the processes exchanged during the initial optimal particle optimization: if the positions of the two processes are the same as the positions of the processes exchanged during the initial optimal particle optimization, reselecting the two processes; if the positions of the two processes after exchange are the same as the positions of the processes exchanged during the initial optimal particle optimization, deciding whether to retain or restore them based on a preset probability.
[0018] According to another aspect of the present application, a hybrid production execution design device is provided. The device includes: a generation unit for generating an event set, the event set including a production entity identifier, an online time, production constraints, and a process set; an orchestration unit for orchestrating the event set to obtain a primary generation of particles, and when the primary generation of particles reaches a preset number, a primary generation of particle swarm is obtained, wherein each event set corresponds to a primary generation of particles, the primary generation of particles includes at least one planned item, the planned item includes at least one process set, and the process set includes at least one process; an optimization unit for executing step S103 to optimize the primary generation of particles to obtain primary generation of optimized particles; an evaluation unit for executing step S104 to evaluate the primary generation of optimized particles to obtain primary generation of optimal particles; and an execution unit for repeatedly executing steps S103-S104 to a preset number of times to obtain the final optimal particles.
[0019] In order to achieve the above-mentioned purpose, according to another aspect of the present application, a computer-readable storage medium is provided, which includes a stored program, wherein the program executes any one of the above-mentioned hybrid production execution design methods.
[0020] According to another aspect of the present application, an electronic device is provided, comprising: one or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include an execution design method for a hybrid production for executing any one of the items.
[0021] This application adopts the following steps: generating an event set, which includes the production entity identifier, online time, production constraints, and process set; arranging the event set to obtain primary particles. When the primary particles reach a preset number, a primary particle group is obtained, wherein each event set corresponds to a primary particle, the primary particle includes at least one planned item, the planned item includes at least one process set, and the process set includes at least one process; step S103, optimizing the primary particles to obtain primary optimized particles; step S104, evaluating the primary optimized particles to obtain primary optimal particles; repeating steps S103 and S104 a preset number of times to obtain the final optimal particle. This solves the problem of the related art that dynamic adjustments cannot be made during the production process, thereby achieving the effect of responding to changes in assembly unit planning and diversification of assembly paths at any time during the production process. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the specific embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0023] Figure 1 This is a flow chart of a hybrid production execution design method provided in accordance with an embodiment of the present application;
[0024] Figure 2 This is a structural block diagram of a hybrid production execution design device provided according to an embodiment of the present application. DETAILED DESCRIPTION
[0025] It should be noted that, in the absence of conflict, the embodiments and features of the embodiments in this application can be combined with each other. The present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.
[0026] In order to enable those skilled in the art to better understand the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of this application.
[0027] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present application described here. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0028] As introduced in the background technology, the production adjustment in the flexible production line production process in the existing technology is not automated. In order to solve the problem that the existing technology cannot dynamically adjust the production process, the embodiment of the present application provides a hybrid production execution design method and device.
[0029] The technical solutions in the embodiments of the present invention will be described clearly and completely below with reference to the accompanying drawings in the embodiments of the present invention.
[0030] In this embodiment, a hybrid production execution design method running on a mobile terminal, a computer terminal or a similar computing device is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0031] Figure 1 This is a flow chart of a hybrid production execution design method according to an embodiment of the present application. Figure 1 As shown, the method includes the following steps:
[0032] Step S101: Generate an event set, which includes the production entity identifier, online time, production constraints, and process set;
[0033] Specifically, each particle (event set) is defined as representing a production plan that can be executed on a given day—in other words, an outcome, regardless of whether it is executable. The core content of this outcome is the entry and exit times of each assembly unit, production time, and transportation time between assembly units for each vehicle to be assembled. It can also be described as the production sequence of each assembly unit on that day, along with the specific times and materials used.
[0034] The data involved in the automobile assembly process are divided into four categories for packaging: event data, resource data, result data, and constraint conditions.
[0035] Event data is used to describe all the events to be executed by the plan. Events are the decomposition of the smallest complete event of this plan. For example, in the automobile manufacturing process, we define the entire process of "assembling a car" as an event. Correspondingly, each particle is the calculation result of completing a set of events.
[0036] Due to the complexity of events, when designing an event model, it is necessary to decompose the event into a data model. An event is composed of a vehicle ID, online time, latest completion requirement, vehicle tracking resource set, and process set. The vehicle tracking resource set is a type of resource set.
[0037] Process Set: A process set is a decomposition of events, describing all the processes required to produce a vehicle. The process data model includes main components, process sets, and subsequent processes. In traditional automotive production, under the collaborative production model of main and branch lines, the main line is driven by the body structure as the main component, while the branch lines are driven by their own main assembly components, such as doors, seats, center consoles, and chassis. The main component not only records the unique resources that define this main or branch line, but also connects a main or branch production line.
[0038] Process technology: Since the processes in the flexible production process are determined by different process paths, the process sequence can be changed, and the process routes can also use different production line stations according to different production methods. Therefore, the process set is actually a tree-structured set. Each process has a subsequent process set, which represents the subsequent optional branches corresponding to the current process. Each process can be achieved through different processes. For example, tire assembly can be completed by different tire assembly units, and the assembly equipment and consumables of different assembly units may also be different. Therefore, in the process data structure, a "process set" is needed to describe the process methods that can be selected for the current process. The process data structure also includes the construction station of the current process, the process time, and the resource set required for the current process. The resource set data structure describes the number of current resources required for the process.
[0039] Resource set: The resource set is used to describe all the resources needed in this incident. Note that this includes not only consumable resources such as materials, but also major components such as the vehicle body, doors, and central control, including production lines, workstations, other production tools used in the production process, and even the working hours of production line workers.
[0040] In the resource data modeling of this project, we divided resources into three categories: workshop consumable public resources, workshop tool-type public resources, and vehicle following resources.
[0041] Usually, main components such as the car body, doors, and central control are packaged as vehicle-following resources, assembly units, AGV vehicles, cache parking spaces, etc. are used as workshop tool-type public resources, and line-side materials are used as workshop consumable public resources.
[0042] Result Set: The result set is the particle we described in Section 1. Each particle represents a result set. Based on the content of the result set, we can describe the order and time required for each assembly unit for each vehicle and component. From another perspective, we can also describe the production sequence of each assembly unit and the resulting vehicle. We designed the result set as follows:
[0043] Each result in a result set is the finest-grained element that can describe a result, namely, a collection of each process. However, unlike the process data structure described above, a result set must specify the selected process, its start time, and its duration. Therefore, a result set is a collection of processes that have already determined their processes, start times, and execution times, after events determine processes and processes determine their processes.
[0044] Constraint set: As the name suggests, a constraint set is a set of data calculation constraints on various aspects of the production process during the calculation process due to the characteristics of automobile production. For example, our constraint set this time includes the following:
[0045] 1. Constraints on the consumption quantity of consumable resources;
[0046] 2. Constraints on shared resource occupancy. Note that some assembly cells support simultaneous production of multiple vehicles. Therefore, multiple vehicles may be working simultaneously in an assembly cell. This constraint requires special handling of the number of vehicles being produced simultaneously.
[0047] 3. For vehicles with production end time constraints, limit the final production completion time;
[0048] 4. The production sequence of the vehicle must not violate the process rules;
[0049] 5. The production interval must not be less than the planned AGV transportation time between workstations;
[0050] About generating event sets:
[0051] Project
[0052] Vin code: "xxxxx",
[0053] Time of entering the production line: “hh:mi:ss”,
[0054] Latest completion time: "hh:mi:ss"
[0055] Process collection: [Process 1: {
[0056] Previous process name: "jobxx"
[0057] Optional process (array): ["assembly unit number", "time consumption", "resources required"]
[0058] };Step 2:{
[0059] Previous process name: "jobxx"
[0060] Optional process (array): ["assembly unit number", "time consumption", "resources required"]
[0061] }]
[0062] }
[0063] This data model is described using a data structure in json format. This data structure is used to describe a specific plan item. For example, in automobile production, it is used to describe a vehicle to be produced with a certain coding model.
[0064] This plan includes the car's VIN number, the time it enters the production line, the latest time it needs to be completed, and the set of steps. All times are accurate to the second and expressed in the format "hh:mi:ss".
[0065] The process set element is a JSON array that stores the set of all available processes for executing the event (producing the car) in order. Note that a model of a car may have multiple production paths. This is a tree structure that is linked to the previous and next processes through the "predecessor process".
[0066] The process set is also described in JSON format, encapsulating the current process name, the previous process name, and the set of optional processes for the current process. The optional execution process is an array that describes all possible production methods for the process.
[0067] Each execution process includes the assembly unit number (production equipment), assembly time, required materials and quantity. Materials include installation materials and consumables.
[0068] Step S102: Arrange the event set to obtain primary particles. When the primary particles reach a preset number, a primary particle swarm is obtained. Each event set corresponds to a primary particle. The primary particle includes at least one planned item, which includes at least one process set, which includes at least one process.
[0069] Specifically, due to multi-branch production, there will be multiple process starting points in the process set.
[0070] Special scenarios may occur when choreographing event sets. The solutions are as follows:
[0071] 1) Orderly Scheduling: In some cases, due to workshop conditions, the current assembly entry order cannot be adjusted, so the entry order is locked. In this scenario, we can implement the optimization method for individual particles described in point 3 above to perform scheduling.
[0072] 2) Temporary insertion tasks: For temporary insertion tasks, considering that the vehicle sequence in the current production process cannot be rearranged, the first generation of particles can be generated at random positions of the inserted vehicles. Considering the feasibility of the insertion, it can be considered to insert the particles into the vehicle cluster and insert them in a random order. The subsequent particle swarm screening and individual particle optimization are consistent with the original method.
[0073] Step S103, optimizing the first generation of particles to obtain first generation optimized particles;
[0074] Specifically, we begin optimizing the first generation of particles, each of which is optimized independently without interfering with each other. Because each particle corresponds to a different planned vehicle entry sequence, the possibility of convergence of optimization results across particles is avoided.
[0075] Step S104, evaluating the first generation optimized particles to obtain the first generation optimal particles;
[0076] Specifically, after all first-generation particles have completed optimization, all first-generation optimized particles are evaluated after optimization to obtain the first-generation optimal particles that are the best after the previous generation optimization.
[0077] Step S105 , repeating steps S103 and S104 to a preset number of times to obtain the final optimal particle.
[0078] Specifically, starting with the second-generation optimization, the process differs slightly from the first-generation optimization. When selecting a process, two processes are selected for exchange. The position of the process relative to the selected process step of the first-generation optimal particle is found. If the process's position matches the first-generation optimal particle, two new processes are randomly selected for replacement. If the position of the optimized process matches the relative position of the corresponding process in the first-generation optimal particle, the optimization is retained or restored to its original position based on a random probability. The random probability can be understood as a random number between 0 and 1 within the program; if it is less than 0.5, the process is executed; if it is greater, the process is restored. The new generation of particles is evaluated to obtain a new first-generation optimal particle. The first-generation optimal particle is then verified to meet production requirements or reach the upper limit of the optimization generation. If it does, the calculation is terminated.
[0079] Due to equipment flexibility requirements, the assembly functions of the assembly cells corresponding to each grid are not fixed, and the production line design can be adjusted and modified according to the company's assembly strategy. Accordingly, the execution system needs to be able to support changes in the assembly process of the assembly cells. In the flexible production line design method, our core work is to design a production line design that allows the current automobile factory to produce the expected models with the highest efficiency, ensuring the production route of the majority of production vehicles is relatively optimal. This invention, based on the implemented production line design layout, calculates the optimal production path plan for different vehicle models under the current production plan.
[0080] The first is to combine the current multi-branch production model and conduct data modeling of the production process, so that the specific plans and detailed requirements of the designed process can be expressed concisely and efficiently at the data level.
[0081] 1. The process sequence and precedence need to be clear.
[0082] 2. It is necessary to reflect which processes can be produced out of order and which processes have one or more pre-order dependencies.
[0083] 3. The relationship between process and equipment needs to be reflected, such as the production differences of the same process under different assembly units.
[0084] 4. It is necessary to be able to clearly indicate the production material requirements of each process, such as required working hours, required materials, and if it is a branch line, it is necessary to identify the main body of production and processing.
[0085] 5. Since the process path is dynamic and multiple choices are possible, for different processing paths, it is necessary to be able to clearly define the transportation time, material preparation time, etc. under different path selections.
[0086] 6. After the daily plan is finalized, a unique production plan for each vehicle can be derived based on the process path data model and further constraints. (The process path represents a data representation of various production methods, while the production plan specifies the specific assembly steps for a vehicle, including which assembly unit to use, based on the process path.)
[0087] Combined with the above plans and requirements, there is usually a three-hour preparation time from the time all materials are transported to the final execution. Taking into account extreme situations, the production processes of all main and branch line components planned for daily production need to be generated within three hours and repeatedly demonstrated and deduced.
[0088] According to the characteristics of the current assembly workshop, the production sequence of each main component is randomly generated, and the assembly process between components is combined to integrate the overall production plan as one of the options for the daily production plan. In this way, a certain number of production plan result sets are generated as the initial generation particle swarm.
[0089] In the above first-generation particle swarm, each particle represents a production plan that can be executed on a certain day. Each particle represents a set, and the format of each element in the set is: AA assembly unit assembles X component using X process at SS time.
[0090] Loop through the particles in the above particle swarm, recalculate the production time in the assembly unit according to the process sequence, and filter out particles that do not conform to the production relationship. For example, vehicle type A requires process A to be performed before process B; vehicle A performs process A before vehicle B in assembly unit A1, and vehicle B performs process B before vehicle A in assembly unit B1. Through integration, we obtain the final executable particle similar to (A1, A) -> (A1, B) -> (B1, B) -> (B1, A).
[0091] This method is suitable for production planning on flexible production lines that rely on assembly cells and AGVs. Planning tasks can be refined down to the workstation level as early as three hours before production. This method supports situations where the previous assembly has already been sequenced and supports the temporary insertion of unplanned vehicles. This method also remains applicable after production line reconfiguration or changes to assembly cell functionality; simply adjust the process methods for the corresponding steps in the aforementioned planning items and recalculate.
[0092] In an optional embodiment, a planned item is randomly selected from the event set, and all first processes of the planned item are obtained, wherein the first process is the process corresponding to the starting point of each process set in the planned item; an execution process of the first process is selected in the starting process group, wherein the starting process group includes all execution processes that can be executed at the starting point of the process set; an execution process that can be executed after the production predecessor process is randomly selected for the process based on the production predecessor process of the process, wherein the production predecessor process is the process before the process of the production subject; the start time and end time of the execution process are determined, and the time occupancy of the assembly unit corresponding to the execution process is marked, and the completion time of the process is updated; when all process sets in the planned items in the event set are arranged, the first generation of particles is obtained.
[0093] Specifically, due to multi-branch production, there will be multiple process starting points in the planned items. Initially, a primary particle swarm is defined, corresponding to a preset number. The starting points of all process sets are obtained, and a random execution process is selected from the processes that can be executed at the starting point. The subsequent processes are then further selected, with the execution process selected based on the previous processes. After the process is selected, the start and end times are determined, and the time usage of the executed assembly units is marked. This completes the initial generation of particle swarms. The initial generation of particle swarms is generated until the preset number of primary particles is reached.
[0094] In an optional embodiment, step S301 sets an optimization vector length, a number of particle optimization rounds, and a particle optimization target percentage, wherein the optimization vector length is the time difference between two processes on the same assembly unit and the distance between the positions of two processes on different assembly units, and the optimization target percentage is the percentage of the consumption time of the first-generation optimization particles to the consumption time of the first-generation particles, wherein the position is a production entity in a certain assembly unit; step S302 selects two to-be-exchanged processes from the optimization stage particles for exchange or movement based on the set vector length, wherein the optimization stage particles include the first-generation particles and particles obtained from each optimization, and the to-be-exchanged processes are any two processes on two assembly units of the same type, or any two processes on one assembly unit; step S303 reintegrates the exchanged optimization stage particles to obtain the final completion time of each process; step S304 detects the integrated optimization stage particles, including: When the integrated optimization stage particles meet the production constraints, optimized particles are obtained; when the integrated optimization stage particles do not meet the production constraints, steps S301 to S304 are repeated; step S305 determines whether the optimized particles are retained, including: when the total consumption time of the optimized particles is less than the optimization stage particles obtained in the previous optimization, recording the optimized particles as the latest value and retaining the optimization stage particles obtained in the previous optimization as historical records; when the total consumption time of the optimized particles is greater than the optimization stage particles obtained in the previous optimization, determining whether to retain the optimized particles as the latest value based on the retention probability, including: when it is determined that the optimized particles are not retained as the latest value based on the retention probability, ignoring this optimization; wherein, when performing the first optimization, the optimization stage particles obtained in the previous optimization are the first-generation particles; steps S302 to S305 are repeated until the optimization stage particles reach the number of particle optimization rounds or the particle optimization target percentage, and the latest value is confirmed as the first-generation optimized particle.
[0095] Specifically, swapping must be performed within a range based on the vector length. Failure to meet the constraints means the result does not meet production process requirements, as random swapping may lead to unmanufacturable scenarios. For example, the production process for vehicle p requires vehicle A to go to assembly unit A before vehicle B, while vehicle q requires vehicle B to go to assembly unit A before vehicle A. If the current result set shows assembly unit A planned for q before p and assembly unit B planned for p before q, the plan conflicts with the production process. When a conflict arises, execution is restarted from S301. When judging based on the retention probability, a final Boolean value is generated based on probability P. If the value is true, the optimization for t2 is retained, even though the total time for t2 is less than that for t1. If the value is false, the optimization is ignored.
[0096] In an optional embodiment, when two processes to be exchanged are moved, one of the processes to be exchanged moves in front of the other process to be exchanged.
[0097] Specifically, the mth vehicle assembled in assembly unit A can be exchanged with the nth vehicle assembled in assembly unit A, or the pth vehicle assembled in assembly unit A can be exchanged with the qth vehicle assembled in assembly unit B, or the pth vehicle assembled in assembly unit A can be produced before the qth vehicle assembled in assembly unit B.
[0098] In an optional embodiment, step S501, starting from the first process, arranges the process time, wherein the first process is the process corresponding to the starting point of each process set in the planned items, including: when the process has no assembly predecessor process or the assembly predecessor process has been arranged, updating the start time and end time of the process; when the assembly predecessor process of the process has not been arranged, obtaining the first process of the planned items corresponding to the assembly predecessor process, wherein the assembly predecessor process is the previous process of the process on the assembly unit; repeating step S501 until all processes are arranged, and obtaining the final completion time of each process.
[0099] Specifically, since each assembly unit assembles many workpieces in succession, and the first workpiece assembled isn't necessarily the first workpiece in each unit, scheduling should begin with the first workpiece that begins execution. For example, when workpiece #1 arrives at assembly unit B, it's discovered that workpiece #1 isn't the first workpiece in that unit, but workpiece #2 is. Therefore, scheduling should begin with the first process for workpiece #2. Once workpiece #2 has completed its process in assembly unit B, scheduling should resume with workpiece #1.
[0100] In an optional embodiment, the retention probability is calculated as follows: ,in, To retain the probability, To optimize the execution time of particles, is the execution time of the first generation of particles, The execution time for the initial settings.
[0101] Specifically, if the total consumption time is longer than the original particle, in order to prevent the optimization path of the current particle from falling into the local optimum, we calculate the probability of the current particle retaining the latest value according to a probability formula. This probability is related to the number of cycles that have been executed.
[0102] In an optional embodiment, the fitness of all the first-generation optimized particles is calculated, and the first-generation optimized particle with the largest fitness is selected as the first-generation optimal particle. The calculation formula is: ,in, For fitness, Optimize the final completion time of particles for the first generation, The weight of the final completion time of the first generation optimized particles in the final evaluation, is the imbalance of the machine load, Optimize the load imbalance weight of particles for the first generation, = Current algebra / optimized algebra upper limit), .
[0103] Specifically, the earlier the generation, the higher the weight of the completion time, and the later the generation, the higher the weight of the machine load balance. The greater the fitness, the better.
[0104] In an optional embodiment, two processes to be exchanged are selected for exchange or movement based on a set vector length, including: arbitrarily selecting two processes, and comparing the positions of the two processes with the positions of the processes exchanged during the initial optimal particle optimization: if the positions of the two processes are the same as the positions of the processes exchanged during the initial optimal particle optimization, reselecting the two processes; if the positions of the two processes after exchange are the same as the positions of the processes exchanged during the initial optimal particle optimization, deciding whether to retain or restore them based on a preset probability.
[0105] Specifically, starting from the second generation of optimization, since there is already a first generation of optimized particles, in order to prevent falling into local optimality and wasting resources, it is necessary to compare with the first generation of optimized particles of the previous generation when selecting process exchange and movement to avoid the two optimization results from converging.
[0106] The embodiment of the present application also provides an execution design device for mixed production. It should be noted that the execution design device for mixed production of the embodiment of the present application can be used to execute the execution design method for mixed production provided by the embodiment of the present application. The device is used to implement the above-mentioned embodiments and preferred implementation modes, and those that have been explained will not be repeated here. As used below, the term "module" can implement a combination of software and / or hardware for a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceived.
[0107] The following introduces a hybrid production execution design device provided in an embodiment of the present application.
[0108] Figure 2 This is a structural block diagram of a hybrid production execution design device according to an embodiment of the present application. Figure 2As shown, the apparatus includes: a generating unit 201 for generating an event set, the event set including a production entity identifier, an online time, production constraints, and a process set; an orchestration unit 202 for orchestrating the event set to obtain primary particles. When the primary particles reach a preset number, a primary particle swarm is obtained, wherein each event set corresponds to a primary particle, the primary particles include at least one planned item, the planned item includes at least one process set, and the process set includes at least one process; an optimizing unit 203 for executing step S103 to optimize the primary particles to obtain primary optimized particles; an evaluating unit 204 for executing step S104 to evaluate the primary optimized particles to obtain primary optimal particles; and an executing unit 205 for repeatedly executing steps S103-S104 a preset number of times to obtain a final optimal particle.
[0109] In an optional embodiment, the orchestration unit 202 includes: an acquisition subunit, which is used to randomly select a planned item in the event set and obtain all the first processes of the planned item, wherein the first process is the process corresponding to the starting point of each process set in the planned item; a first selection subunit, which is used to select the execution process of the first process in the starting process group, wherein the starting process group includes all execution processes that can be executed at the starting point of the process set; a second selection subunit, which is used to randomly select an execution process that can be executed after the production predecessor process of the process based on the production predecessor process of the process, wherein the production predecessor process is the process before the process of the production subject; a determination subunit, which is used to determine the start time and end time of the execution process, and mark the time occupancy of the assembly unit corresponding to the execution process, and update the completion time of the process; an orchestration subunit, which is used to obtain the first generation of particles when the orchestration of all process sets in the planned items in the event set is completed.
[0110] In an optional embodiment, the optimization unit 203 includes: a setting subunit for executing step S301, setting the optimization vector length, the number of particle optimization rounds, and the particle optimization target percentage, wherein the optimization vector length is the time difference between two processes on the same assembly unit and the distance between the positions of two processes on different assembly units, and the optimization target percentage is the percentage of the consumption time of the first-generation optimized particles to the consumption time of the first-generation particles, wherein the position is a certain production entity in a certain assembly unit; an exchange subunit for executing step S302, selecting two to-be-exchanged processes from the optimization stage particles for exchange or movement according to the set vector length, wherein the optimization stage particles include the first-generation particles and the particles obtained from each optimization, and the to-be-exchanged processes are any two processes on two assembly units of the same type, or any two processes on one assembly unit; an integration subunit for executing step S303, reintegrating the exchanged optimization stage particles to obtain the final completion time of each process; and a detection subunit for executing step S304, Detecting the integrated optimization stage particles includes: obtaining optimized particles when the integrated optimization stage particles meet the production constraints; repeating steps S301 to S304 when the integrated optimization stage particles do not meet the production constraints; a judgment subunit, configured to execute step S305, to determine whether the optimized particles are to be retained, including: recording the optimized particles as the latest value when the total consumption time of the optimized particles is less than the optimization stage particles obtained in the previous optimization, and retaining the optimization stage particles obtained in the previous optimization as historical records; determining whether to retain the optimized particles as the latest value based on a retention probability when the total consumption time of the optimized particles is greater than the optimization stage particles obtained in the previous optimization, including: ignoring the current optimization when it is determined that the optimized particles are not retained as the latest value based on the retention probability; wherein, when performing the first optimization, the optimization stage particles obtained in the previous optimization are first-generation particles; and a confirmation subunit, configured to execute steps S302 to S305 repeatedly until the optimization stage particles reach the number of particle optimization rounds or the particle optimization target percentage, and then confirming the latest value as the first-generation optimized particle.
[0111] In an optional embodiment, the exchange subunit includes: a moving unit, which is used to move one of the processes to be exchanged to the front of the other process to be exchanged when the two processes to be exchanged are moved.
[0112] In an optional embodiment, the integration sub-unit includes: a scheduling module, which is used for step S501, starting from the first process, scheduling the process time, wherein the first process is the process corresponding to the starting point of each process set in the planned items, including: when the process has no assembly predecessor process or the assembly predecessor process has been scheduled, updating the start time and end time of the process; when the assembly predecessor process of the process is not scheduled, obtaining the first process of the planned items corresponding to the assembly predecessor process, wherein the assembly predecessor process is the previous process of the process on the assembly unit; an acquisition module, which is used to repeatedly execute step S501 until all processes are scheduled, and obtain the final completion time of each process.
[0113] In an optional embodiment, the judgment subunit includes: a calculation module for calculating the retention probability, the formula is: ,in, To retain the probability, To optimize the execution time of particles, is the execution time of the first generation of particles, The execution time for the initial settings.
[0114] In an optional embodiment, the evaluation unit 204 includes: a calculation subunit, which is used to calculate the fitness of all the first-generation optimized particles and select the first-generation optimized particle with the largest fitness as the first-generation optimal particle. The calculation formula is: ,in, For fitness, Optimize the final completion time of particles for the first generation, The weight of the final completion time of the first generation optimized particles in the final evaluation, is the imbalance of the machine load, Optimize the load imbalance weight of particles for the first generation, = Current algebra / optimized algebra upper bound), .
[0115] In an optional embodiment, the execution unit 205 includes: a first selection subunit, used to select two to-be-exchanged processes for exchange or movement according to a set vector length, and includes: a second selection subunit, used to arbitrarily select two processes, and compare the positions of the two processes with the positions of the processes exchanged during the initial optimal particle optimization: if the positions of the two processes are the same as the positions of the processes exchanged during the initial optimal particle optimization, reselect the two processes; if the positions of the two processes after exchange are the same as the positions of the processes exchanged during the initial optimal particle optimization, decide whether to retain or restore based on a preset probability.
[0116] The hybrid production execution design device includes a processor and a memory. The generation unit 201 and other components are stored in the memory as program units, and the processor executes the program units stored in the memory to implement corresponding functions. The modules are all located in the same processor; alternatively, the modules are located in different processors in any combination.
[0117] The processor contains a kernel, which retrieves the corresponding program unit from the memory. There can be one or more kernels, and the kernel parameters can be adjusted to solve C technical problems.
[0118] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.
[0119] An embodiment of the present invention provides a computer-readable storage medium, which includes a stored program, wherein when the program is run, the device where the computer-readable storage medium is located is controlled to execute the execution design method of a hybrid production.
[0120] Specifically, a hybrid production execution design method includes:
[0121] Step S101: Generate an event set, which includes the production entity identifier, online time, production constraints, and process set;
[0122] Specifically, each particle (event set) is defined as representing a production plan that can be executed on a given day—in other words, an outcome, regardless of whether it is executable. The core content of this outcome is the entry and exit times of each assembly unit, production time, and transportation time between assembly units for each vehicle to be assembled. It can also be described as the production sequence of each assembly unit on that day, along with the specific times and materials used.
[0123] The data involved in the automobile assembly process are divided into four categories for packaging: event data, resource data, result data, and constraint conditions.
[0124] Event data is used to describe all the events to be executed by the plan. Events are the decomposition of the smallest complete event of this plan. For example, in the automobile manufacturing process, we define the entire process of "assembling a car" as an event. Correspondingly, each particle is the calculation result of completing a set of events.
[0125] Due to the complexity of events, when designing an event model, it is necessary to decompose the event into a data model. An event is composed of a vehicle ID, online time, latest completion requirement, vehicle tracking resource set, and process set. The vehicle tracking resource set is a type of resource set.
[0126] Process Set: A process set is a decomposition of events, describing all the processes required to produce a vehicle. The process data model includes main components, process sets, and subsequent processes. In traditional automotive production, under the collaborative production model of main and branch lines, the main line is driven by the body structure as the main component, while the branch lines are driven by their own main assembly components, such as doors, seats, center consoles, and chassis. The main component not only records the unique resources that define this main or branch line, but also connects a main or branch production line.
[0127] Process technology: Since the processes in the flexible production process are determined by different process paths, the process sequence can be changed, and the process routes can also use different production line stations according to different production methods. Therefore, the process set is actually a tree-structured set. Each process has a subsequent process set, which represents the subsequent optional branches corresponding to the current process. Each process can be achieved through different processes. For example, tire assembly can be completed by different tire assembly units, and the assembly equipment and consumables of different assembly units may also be different. Therefore, in the process data structure, a "process set" is needed to describe the process methods that can be selected for the current process. The process data structure also includes the construction station of the current process, the process time, and the resource set required for the current process. The resource set data structure describes the number of current resources required for the process.
[0128] Resource set: The resource set is used to describe all the resources needed in this incident. Note that this includes not only consumable resources such as materials, but also major components such as the vehicle body, doors, and central control, including production lines, workstations, other production tools used in the production process, and even the working hours of production line workers.
[0129] In the resource data modeling of this project, we divided resources into three categories: workshop consumable public resources, workshop tool-type public resources, and vehicle following resources.
[0130] Usually, main components such as the car body, doors, and central control are packaged as vehicle-following resources, assembly units, AGV vehicles, cache parking spaces, etc. are used as workshop tool-type public resources, and line-side materials are used as workshop consumable public resources.
[0131] Result Set: The result set is the particle we described in Section 1. Each particle represents a result set. Based on the content of the result set, we can describe the assembly unit sequence and time required for each component of each vehicle. Alternatively, we can describe the production sequence of each assembly unit and the resulting vehicle. We designed the result set as follows:
[0132] Each result in a result set is the finest-grained element that can describe a result, namely, a collection of each process. However, unlike the process data structure described above, a result set must specify the selected process, its start time, and its duration. Therefore, a result set is a collection of processes that have already determined their processes, start times, and execution times, after events determine processes and processes determine their processes.
[0133] Constraint set: As the name suggests, a constraint set is a set of data calculation constraints on various aspects of the production process during the calculation process due to the characteristics of automobile production. For example, our constraint set this time includes the following:
[0134] 1. Constraints on the consumption quantity of consumable resources;
[0135] 2. Constraints on shared resource occupancy. Note that some assembly cells support simultaneous production of multiple vehicles. Therefore, multiple vehicles may be working simultaneously in an assembly cell. This constraint requires special handling of the number of vehicles being produced simultaneously.
[0136] 3. For vehicles with production end time constraints, limit the final production completion time;
[0137] 4. The production sequence of the vehicle must not violate the process rules;
[0138] 5. The production interval must not be less than the planned AGV transportation time between workstations;
[0139] About generating event sets:
[0140] Project
[0141] Vin code: "xxxxx",
[0142] Time of entering the production line: “hh:mi:ss”,
[0143] Latest completion time: "hh:mi:ss"
[0144] Process collection: [Process 1: {
[0145] Previous process name: "jobxx"
[0146] Optional process (array): ["assembly unit number", "time consumption", "resources required"]
[0147] };Step 2:{
[0148] Previous process name: "jobxx"
[0149] Optional process (array): ["assembly unit number", "time consumption", "resources required"]
[0150] }]
[0151] }
[0152] This data model is described using a data structure in json format. This data structure is used to describe a specific plan item. For example, in automobile production, it is used to describe a vehicle to be produced with a certain coding model.
[0153] This plan includes the car's VIN number, the time it enters the production line, the latest time it needs to be completed, and the set of steps. All times are accurate to the second and expressed in the format "hh:mi:ss".
[0154] The process set element is a JSON array that stores the set of all available processes for executing the event (producing the car) in order. Note that a model of a car may have multiple production paths. This is a tree structure that is linked to the previous and next processes through the "predecessor process".
[0155] The process set is also described in JSON format, encapsulating the current process name, the previous process name, and the set of optional processes for the current process. The optional execution process is an array that describes all possible production methods for the process.
[0156] Each execution process includes the assembly unit number (production equipment), assembly time, required materials and quantity. Materials include installation materials and consumables.
[0157] Step S102: Arrange the event set to obtain primary particles. When the primary particles reach a preset number, a primary particle swarm is obtained. Each event set corresponds to a primary particle. The primary particle includes at least one planned item, which includes at least one process set, which includes at least one process.
[0158] Specifically, due to multi-branch production, there will be multiple process starting points in the process set.
[0159] Special scenarios may occur when choreographing event sets. The solutions are as follows:
[0160] 1) Orderly Scheduling: In some cases, due to workshop conditions, the current assembly entry order cannot be adjusted, so the entry order is locked. In this scenario, we can implement the optimization method for individual particles described in point 3 above to perform scheduling.
[0161] 2) Temporary insertion tasks: For temporary insertion tasks, considering that the vehicle sequence in the current production process cannot be rearranged, the first generation of particles can be generated at random positions of the inserted vehicles. Considering the feasibility of the insertion, it can be considered to insert the particles into the vehicle cluster and insert them in a random order. The subsequent particle swarm screening and individual particle optimization are consistent with the original method.
[0162] Step S103, optimizing the first generation of particles to obtain first generation optimized particles;
[0163] Specifically, we begin optimizing the first generation of particles, each of which is optimized independently without interfering with each other. Because each particle corresponds to a different planned vehicle entry sequence, the possibility of convergence of optimization results across particles is avoided.
[0164] Step S104, evaluating the first generation optimized particles to obtain the first generation optimal particles;
[0165] Specifically, after all first-generation particles have completed optimization, all first-generation optimized particles are evaluated after optimization to obtain the first-generation optimal particles that are the best after the previous generation optimization.
[0166] Step S105 , repeating steps S103 and S104 to a preset number of times to obtain the final optimal particle.
[0167] Specifically, starting with the second-generation optimization, the process differs slightly from the first-generation optimization. When selecting a process, two processes are selected for exchange. The position of the process relative to the selected process step of the first-generation optimal particle is found. If the process's position matches the first-generation optimal particle, two new processes are randomly selected for replacement. If the position of the optimized process matches the relative position of the corresponding process in the first-generation optimal particle, the optimization is retained or restored to its original position based on a random probability. The random probability can be understood as a random number between 0 and 1 within the program; if it is less than 0.5, the process is executed; if it is greater, the process is restored. The new generation of particles is evaluated to obtain a new first-generation optimal particle. The first-generation optimal particle is then verified to meet production requirements or reach the upper limit of the optimization generation. If it does, the calculation is terminated.
[0168] Optionally, a planned item is randomly selected from the event set, and all the first processes of the planned item are obtained, wherein the first process is the process corresponding to the starting point of each process set in the planned item; the execution process of the first process is selected in the starting process group, wherein the starting process group includes all execution processes that can be executed at the starting point of the process set; the execution process that can be executed after the production predecessor process is randomly selected for the process based on the production predecessor process of the process, wherein the production predecessor process is the process before the process of the production subject; the start time and end time of the execution process are determined, and the time occupancy of the assembly unit corresponding to the execution process is marked, and the completion time of the process is updated; when all the process sets in the planned items in the event set are arranged, the first generation of particles is obtained.
[0169] Optionally, step S301, setting the optimization vector length, the number of particle optimization rounds, and the particle optimization target percentage, wherein the optimization vector length is the time difference between two processes on the same assembly unit and the distance between the positions of two processes on different assembly units, and the optimization target percentage is the percentage of the consumption time of the first-generation optimization particles to the consumption time of the first-generation particles, wherein the position is a certain production entity in a certain assembly unit; step S302, according to the set vector length, selecting two to-be-exchanged processes from the optimization stage particles for exchange or movement, wherein the optimization stage particles include the first-generation particles and the particles obtained from each optimization, and the to-be-exchanged processes are any two processes on two assembly units of the same type, or any two processes on one assembly unit; step S303, reintegrating the exchanged optimization stage particles to obtain the final completion time of each process; step S304, detecting the integrated optimization stage particles, including: when the integration When the optimized stage particles after integration meet the production constraints, the optimized particles are obtained; when the optimized stage particles after integration do not meet the production constraints, steps S301 to S304 are repeated; step S305, determining whether the optimized particles are retained, including: when the total consumption time of the optimized particles is less than the optimized stage particles obtained by the previous optimization, recording the optimized particles as the latest value, and retaining the optimized stage particles obtained by the previous optimization as the historical record; when the total consumption time of the optimized particles is greater than the optimized stage particles obtained by the previous optimization, determining whether to retain the optimized particles as the latest value based on the retention probability, including: when it is determined that the optimized particles are not retained as the latest value based on the retention probability, ignoring this optimization; wherein, when performing the first optimization, the optimized stage particles obtained by the previous optimization are the first-generation particles; repeating steps S302 to S305 until the optimized stage particles reach the number of particle optimization rounds or the particle optimization target percentage, confirming the latest value as the first-generation optimized particle.
[0170] Optionally, when two processes to be exchanged are moved, one of the processes to be exchanged moves in front of the other process to be exchanged.
[0171] Optionally, step S501, starting from the first process, arranges the process time, wherein the first process is the process corresponding to the starting point of each process set in the planned items, including: when the process has no assembly predecessor process or the assembly predecessor process has been arranged, updating the start time and end time of the process; when the assembly predecessor process of the process has not been arranged, obtaining the first process of the planned items corresponding to the assembly predecessor process, wherein the assembly predecessor process is the previous process of the process on the assembly unit; repeating step S501 until all processes are arranged, and obtaining the final completion time of each process.
[0172] Optionally, calculate the retention probability, the formula is ,in, To retain the probability, To optimize the execution time of particles, is the execution time of the first generation of particles, The execution time for the initial settings.
[0173] Optionally, calculate the fitness of all first-generation optimized particles and select the first-generation optimized particle with the largest fitness as the first-generation optimal particle. The calculation formula is: ,in, For fitness, Optimize the final completion time of particles for the first generation, The weight of the final completion time of the first generation optimized particles in the final evaluation, is the imbalance of the machine load, Optimize the load imbalance weight of particles for the first generation, = Current algebra / optimized algebra upper bound), .
[0174] Optionally, based on the set vector length, two processes to be exchanged are selected for exchange or movement, including: arbitrarily selecting two processes, and comparing the positions of the two processes with the positions of the processes exchanged during the initial optimal particle optimization: if the positions of the two processes are the same as the positions of the processes exchanged during the initial optimal particle optimization, reselecting the two processes; if the positions of the two processes after exchange are the same as the positions of the processes exchanged during the initial optimal particle optimization, deciding whether to retain or restore them based on a preset probability.
[0175] An embodiment of the present invention provides a processor, which is used to run a program, wherein the program executes the hybrid production execution design method when running.
[0176] Specifically, a hybrid production execution design method includes:
[0177] Step S101: Generate an event set, which includes the production entity identifier, online time, production constraints, and process set;
[0178] Specifically, each particle (event set) is defined as representing a production plan that can be executed on a given day—in other words, an outcome, regardless of whether it is executable. The core content of this outcome is the entry and exit times of each assembly unit, production time, and transportation time between assembly units for each vehicle to be assembled. It can also be described as the production sequence of each assembly unit on that day, along with the specific times and materials used.
[0179] The data involved in the automobile assembly process are divided into four categories for packaging: event data, resource data, result data, and constraint conditions.
[0180] Event data is used to describe all the events to be executed by the plan. Events are the decomposition of the smallest complete event of this plan. For example, in the automobile manufacturing process, we define the entire process of "assembling a car" as an event. Correspondingly, each particle is the calculation result of completing a set of events.
[0181] Due to the complexity of events, when designing an event model, it is necessary to decompose the event into a data model. An event is composed of a vehicle ID, online time, latest completion requirement, vehicle tracking resource set, and process set. The vehicle tracking resource set is a type of resource set.
[0182] Process Set: A process set is a decomposition of events, describing all the processes required to produce a vehicle. The process data model includes main components, process sets, and subsequent processes. In traditional automotive production, under the collaborative production model of main and branch lines, the main line is driven by the body structure as the main component, while the branch lines are driven by their own main assembly components, such as doors, seats, center consoles, and chassis. The main component not only records the unique resources that define this main or branch line, but also connects a main or branch production line.
[0183] Process technology: Since the processes in the flexible production process are determined by different process paths, the process sequence can be changed, and the process routes can also use different production line stations according to different production methods. Therefore, the process set is actually a tree-structured set. Each process has a subsequent process set, which represents the subsequent optional branches corresponding to the current process. Each process can be achieved through different processes. For example, tire assembly can be completed by different tire assembly units, and the assembly equipment and consumables of different assembly units may also be different. Therefore, in the process data structure, a "process set" is needed to describe the process methods that can be selected for the current process. The process data structure also includes the construction station of the current process, the process time, and the resource set required for the current process. The resource set data structure describes the number of current resources required for the process.
[0184] Resource set: The resource set is used to describe all the resources needed in this incident. Note that this includes not only consumable resources such as materials, but also major components such as the vehicle body, doors, and central control, including production lines, workstations, other production tools used in the production process, and even the working hours of production line workers.
[0185] In the resource data modeling of this project, we divided resources into three categories: workshop consumable public resources, workshop tool-type public resources, and vehicle following resources.
[0186] Usually, main components such as the car body, doors, and central control are packaged as vehicle-following resources, assembly units, AGV vehicles, cache parking spaces, etc. are used as workshop tool-type public resources, and line-side materials are used as workshop consumable public resources.
[0187] Result Set: The result set is the particle we described in Section 1. Each particle represents a result set. Based on the content of the result set, we can describe the assembly unit sequence and time required for each component of each vehicle. Alternatively, we can describe the production sequence of each assembly unit and the resulting vehicle. We designed the result set as follows:
[0188] Each result in a result set is the finest-grained element that can describe a result, namely, a collection of each process. However, unlike the process data structure described above, a result set must specify the selected process, its start time, and its duration. Therefore, a result set is a collection of processes that have already determined their processes, start times, and execution times, after events determine processes and processes determine their processes.
[0189] Constraint set: As the name suggests, a constraint set is a set of data calculation constraints on various aspects of the production process during the calculation process due to the characteristics of automobile production. For example, our constraint set this time includes the following:
[0190] 1. Constraints on the consumption quantity of consumable resources;
[0191] 2. Constraints on shared resource occupancy. Note that some assembly cells support simultaneous production of multiple vehicles. Therefore, multiple vehicles may be working simultaneously in an assembly cell. This constraint requires special handling of the number of vehicles being produced simultaneously.
[0192] 3. For vehicles with production end time constraints, limit the final production completion time;
[0193] 4. The production sequence of the vehicle must not violate the process rules;
[0194] 5. The production interval must not be less than the planned AGV transportation time between workstations;
[0195] About generating event sets:
[0196] Project
[0197] Vin code: "xxxxx",
[0198] Time of entering the production line: “hh:mi:ss”,
[0199] Latest completion time: "hh:mi:ss"
[0200] Process set: [Process 1: {
[0201] Previous process name: "jobxx"
[0202] Optional process (array): ["assembly unit number", "time consumption", "resources required"]
[0203] };Step 2:{
[0204] Previous process name: "jobxx"
[0205] Optional process (array): ["assembly unit number", "time consumption", "resources required"]
[0206] }]
[0207] }
[0208] This data model is described using a data structure in json format. This data structure is used to describe a specific plan item. For example, in automobile production, it is used to describe a vehicle to be produced with a certain coding model.
[0209] This plan includes the car's VIN number, the time it enters the production line, the latest time it needs to be completed, and the set of steps. All times are accurate to the second and expressed in the format "hh:mi:ss".
[0210] The process set element is a JSON array that stores the set of all available processes for executing the event (producing the car) in order. Note that a model of a car may have multiple production paths. This is a tree structure that is linked to the previous and next processes through the "predecessor process".
[0211] The process set is also described in JSON format, encapsulating the current process name, the previous process name, and the set of optional processes for the current process. The optional execution process is an array that describes all possible production methods for the process.
[0212] Each execution process includes the assembly unit number (production equipment), assembly time, required materials and quantity. Materials include installation materials and consumables.
[0213] Step S102: Arrange the event set to obtain primary particles. When the primary particles reach a preset number, a primary particle swarm is obtained. Each event set corresponds to a primary particle. The primary particle includes at least one planned item, which includes at least one process set, which includes at least one process.
[0214] Specifically, due to multi-branch production, there will be multiple process starting points in the process set.
[0215] Special scenarios may occur when choreographing event sets. The solutions are as follows:
[0216] 1) Orderly Scheduling: In some cases, due to workshop conditions, the current assembly entry order cannot be adjusted, so the entry order is locked. In this scenario, we can implement the optimization method for individual particles described in point 3 above to perform scheduling.
[0217] 2) Temporary insertion tasks: For temporary insertion tasks, considering that the vehicle sequence in the current production process cannot be rearranged, the first generation of particles can be generated at random positions of the inserted vehicles. Considering the feasibility of the insertion, it can be considered to insert the particles into the vehicle cluster and insert them in a random order. The subsequent particle swarm screening and individual particle optimization are consistent with the original method.
[0218] Step S103, optimizing the first generation of particles to obtain first generation optimized particles;
[0219] Specifically, we begin optimizing the first generation of particles, each of which is optimized independently without interfering with each other. Because each particle corresponds to a different planned vehicle entry sequence, the possibility of convergence of optimization results across particles is avoided.
[0220] Step S104, evaluating the first generation optimized particles to obtain the first generation optimal particles;
[0221] Specifically, after all first-generation particles have completed optimization, all first-generation optimized particles are evaluated after optimization to obtain the first-generation optimal particles that are the best after the previous generation optimization.
[0222] Step S105 , repeating steps S103 and S104 to a preset number of times to obtain the final optimal particle.
[0223] Specifically, starting with the second-generation optimization, the process differs slightly from the first-generation optimization. When selecting a process, two processes are selected for exchange. The position of the process relative to the selected process step of the first-generation optimal particle is found. If the process's position matches the first-generation optimal particle, two new processes are randomly selected for replacement. If the position of the optimized process matches the relative position of the corresponding process in the first-generation optimal particle, the optimization is retained or restored to its original position based on a random probability. The random probability can be understood as a random number between 0 and 1 within the program; if it is less than 0.5, the process is executed; if it is greater, the process is restored. The new generation of particles is evaluated to obtain a new first-generation optimal particle. The first-generation optimal particle is then verified to meet production requirements or reach the upper limit of the optimization generation. If it does, the calculation is terminated.
[0224] Optionally, a planned item is randomly selected from the event set, and all the first processes of the planned item are obtained, wherein the first process is the process corresponding to the starting point of each process set in the planned item; the execution process of the first process is selected in the starting process group, wherein the starting process group includes all execution processes that can be executed at the starting point of the process set; the execution process that can be executed after the production predecessor process is randomly selected for the process based on the production predecessor process of the process, wherein the production predecessor process is the process before the process of the production subject; the start time and end time of the execution process are determined, and the time occupancy of the assembly unit corresponding to the execution process is marked, and the completion time of the process is updated; when all the process sets in the planned items in the event set are arranged, the first generation of particles is obtained.
[0225] Optionally, step S301, setting the optimization vector length, the number of particle optimization rounds, and the particle optimization target percentage, wherein the optimization vector length is the time difference between two processes on the same assembly unit and the distance between the positions of two processes on different assembly units, and the optimization target percentage is the percentage of the consumption time of the first-generation optimization particles to the consumption time of the first-generation particles, wherein the position is a certain production entity in a certain assembly unit; step S302, according to the set vector length, selecting two to-be-exchanged processes from the optimization stage particles for exchange or movement, wherein the optimization stage particles include the first-generation particles and the particles obtained from each optimization, and the to-be-exchanged processes are any two processes on two assembly units of the same type, or any two processes on one assembly unit; step S303, reintegrating the exchanged optimization stage particles to obtain the final completion time of each process; step S304, detecting the integrated optimization stage particles, including: when the integration When the optimized stage particles after integration meet the production constraints, the optimized particles are obtained; when the optimized stage particles after integration do not meet the production constraints, steps S301 to S304 are repeated; step S305, determining whether the optimized particles are retained, including: when the total consumption time of the optimized particles is less than the optimized stage particles obtained by the previous optimization, recording the optimized particles as the latest value, and retaining the optimized stage particles obtained by the previous optimization as the historical record; when the total consumption time of the optimized particles is greater than the optimized stage particles obtained by the previous optimization, determining whether to retain the optimized particles as the latest value based on the retention probability, including: when it is determined that the optimized particles are not retained as the latest value based on the retention probability, ignoring this optimization; wherein, when performing the first optimization, the optimized stage particles obtained by the previous optimization are the first-generation particles; repeating steps S302 to S305 until the optimized stage particles reach the number of particle optimization rounds or the particle optimization target percentage, confirming the latest value as the first-generation optimized particle.
[0226] Optionally, when two processes to be exchanged are moved, one of the processes to be exchanged moves in front of the other process to be exchanged.
[0227] Optionally, step S501, starting from the first process, arranges the process time, wherein the first process is the process corresponding to the starting point of each process set in the planned items, including: when the process has no assembly predecessor process or the assembly predecessor process has been arranged, updating the start time and end time of the process; when the assembly predecessor process of the process has not been arranged, obtaining the first process of the planned items corresponding to the assembly predecessor process, wherein the assembly predecessor process is the previous process of the process on the assembly unit; repeating step S501 until all processes are arranged, and obtaining the final completion time of each process.
[0228] Optionally, calculate the retention probability, the formula is ,in, To retain the probability, To optimize the execution time of particles, is the execution time of the first generation of particles, The execution time for the initial settings.
[0229] Optionally, calculate the fitness of all first-generation optimized particles and select the first-generation optimized particle with the largest fitness as the first-generation optimal particle. The calculation formula is: ,in, For fitness, Optimize the final completion time of particles for the first generation, The weight of the final completion time of the first generation optimized particles in the final evaluation, is the imbalance of the machine load, Optimize the load imbalance weight of particles for the first generation, = Current algebra / optimized algebra upper bound), .
[0230] Optionally, based on the set vector length, two processes to be exchanged are selected for exchange or movement, including: arbitrarily selecting two processes, and comparing the positions of the two processes with the positions of the processes exchanged during the initial optimal particle optimization: if the positions of the two processes are the same as the positions of the processes exchanged during the initial optimal particle optimization, reselecting the two processes; if the positions of the two processes after exchange are the same as the positions of the processes exchanged during the initial optimal particle optimization, deciding whether to retain or restore them based on a preset probability.
[0231] An embodiment of the present invention provides a device, comprising a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, the following steps are implemented: generating an event set, the event set including a production entity identifier, an online time, production constraints, and a process set; arranging the event set to obtain primary particles, and obtaining a primary particle swarm when the primary particles reach a preset number, wherein each event set corresponds to a primary particle, the primary particle includes at least one planned event, the planned event includes at least one process set, and the process set includes at least one process; in step S103, optimizing the primary particles to obtain primary optimized particles; in step S104, evaluating the primary optimized particles to obtain primary optimal particles; and repeating steps S103 and S104 a preset number of times to obtain a final optimal particle.
[0232] The devices in this article can be servers, PCs, PADs, mobile phones, etc.
[0233] Optionally, a planned item is randomly selected from the event set, and all the first processes of the planned item are obtained, wherein the first process is the process corresponding to the starting point of each process set in the planned item; the execution process of the first process is selected in the starting process group, wherein the starting process group includes all execution processes that can be executed at the starting point of the process set; the execution process that can be executed after the production predecessor process is randomly selected for the process based on the production predecessor process of the process, wherein the production predecessor process is the process before the process of the production subject; the start time and end time of the execution process are determined, and the time occupancy of the assembly unit corresponding to the execution process is marked, and the completion time of the process is updated; when all the process sets in the planned items in the event set are arranged, the first generation of particles is obtained.
[0234] Optionally, step S301, setting the optimization vector length, the number of particle optimization rounds, and the particle optimization target percentage, wherein the optimization vector length is the time difference between two processes on the same assembly unit and the distance between the positions of two processes on different assembly units, and the optimization target percentage is the percentage of the consumption time of the first-generation optimization particles to the consumption time of the first-generation particles, wherein the position is a certain production entity in a certain assembly unit; step S302, according to the set vector length, selecting two to-be-exchanged processes from the optimization stage particles for exchange or movement, wherein the optimization stage particles include the first-generation particles and the particles obtained from each optimization, and the to-be-exchanged processes are any two processes on two assembly units of the same type, or any two processes on one assembly unit; step S303, reintegrating the exchanged optimization stage particles to obtain the final completion time of each process; step S304, detecting the integrated optimization stage particles, including: when the integration When the optimized stage particles after integration meet the production constraints, the optimized particles are obtained; when the optimized stage particles after integration do not meet the production constraints, steps S301 to S304 are repeated; step S305, determining whether the optimized particles are retained, including: when the total consumption time of the optimized particles is less than the optimized stage particles obtained by the previous optimization, recording the optimized particles as the latest value, and retaining the optimized stage particles obtained by the previous optimization as the historical record; when the total consumption time of the optimized particles is greater than the optimized stage particles obtained by the previous optimization, determining whether to retain the optimized particles as the latest value based on the retention probability, including: when it is determined that the optimized particles are not retained as the latest value based on the retention probability, ignoring this optimization; wherein, when performing the first optimization, the optimized stage particles obtained by the previous optimization are the first-generation particles; repeating steps S302 to S305 until the optimized stage particles reach the number of particle optimization rounds or the particle optimization target percentage, confirming the latest value as the first-generation optimized particle.
[0235] Optionally, when two processes to be exchanged are moved, one of the processes to be exchanged moves in front of the other process to be exchanged.
[0236] Optionally, step S501, starting from the first process, arranges the process time, wherein the first process is the process corresponding to the starting point of each process set in the planned items, including: when the process has no assembly predecessor process or the assembly predecessor process has been arranged, updating the start time and end time of the process; when the assembly predecessor process of the process has not been arranged, obtaining the first process of the planned items corresponding to the assembly predecessor process, wherein the assembly predecessor process is the previous process of the process on the assembly unit; repeating step S501 until all processes are arranged, and obtaining the final completion time of each process.
[0237] Optionally, calculate the retention probability, the formula is ,in, To retain the probability, To optimize the execution time of particles, is the execution time of the first generation of particles, The execution time for the initial settings.
[0238] Optionally, calculate the fitness of all first-generation optimized particles and select the first-generation optimized particle with the largest fitness as the first-generation optimal particle. The calculation formula is: ,in, For fitness, Optimize the final completion time of particles for the first generation, The weight of the final completion time of the first generation optimized particles in the final evaluation, is the imbalance of the machine load, Optimize the load imbalance weight of particles for the first generation, = Current algebra / optimized algebra upper limit), .
[0239] Optionally, based on the set vector length, two processes to be exchanged are selected for exchange or movement, including: arbitrarily selecting two processes, and comparing the positions of the two processes with the positions of the processes exchanged during the initial optimal particle optimization: if the positions of the two processes are the same as the positions of the processes exchanged during the initial optimal particle optimization, reselecting the two processes; if the positions of the two processes after exchange are the same as the positions of the processes exchanged during the initial optimal particle optimization, deciding whether to retain or restore them based on a preset probability.
[0240] The present application also provides a computer program product, which, when executed on a data processing device, is suitable for executing a program that initializes at least the following method steps: generating an event set, the event set including a production entity identifier, an online time, production constraints, and a process set; arranging the event set to obtain a primary-generation particle, and when the primary-generation particles reach a preset number, obtaining a primary-generation particle swarm, wherein each event set corresponds to a primary-generation particle, the primary-generation particle includes at least one planned item, the planned item includes at least one process set, and the process set includes at least one process; step S103, optimizing the primary-generation particles to obtain primary-generation optimized particles; step S104, evaluating the primary-generation optimized particles to obtain primary-generation optimal particles; and repeating steps S103 and S104 a preset number of times to obtain a final optimal particle.
[0241] Optionally, a planned item is randomly selected from the event set, and all the first processes of the planned item are obtained, wherein the first process is the process corresponding to the starting point of each process set in the planned item; the execution process of the first process is selected in the starting process group, wherein the starting process group includes all execution processes that can be executed at the starting point of the process set; the execution process that can be executed after the production predecessor process is randomly selected for the process based on the production predecessor process of the process, wherein the production predecessor process is the process before the process of the production subject; the start time and end time of the execution process are determined, and the time occupancy of the assembly unit corresponding to the execution process is marked, and the completion time of the process is updated; when all the process sets in the planned items in the event set are arranged, the first generation of particles is obtained.
[0242] Optionally, step S301, setting the optimization vector length, the number of particle optimization rounds, and the particle optimization target percentage, wherein the optimization vector length is the time difference between two processes on the same assembly unit and the distance between the positions of two processes on different assembly units, and the optimization target percentage is the percentage of the consumption time of the first-generation optimization particles to the consumption time of the first-generation particles, wherein the position is a certain production entity in a certain assembly unit; step S302, according to the set vector length, selecting two to-be-exchanged processes from the optimization stage particles for exchange or movement, wherein the optimization stage particles include the first-generation particles and the particles obtained from each optimization, and the to-be-exchanged processes are any two processes on two assembly units of the same type, or any two processes on one assembly unit; step S303, reintegrating the exchanged optimization stage particles to obtain the final completion time of each process; step S304, detecting the integrated optimization stage particles, including: when the integration When the optimized stage particles after integration meet the production constraints, the optimized particles are obtained; when the optimized stage particles after integration do not meet the production constraints, steps S301 to S304 are repeated; step S305, determining whether the optimized particles are retained, including: when the total consumption time of the optimized particles is less than the optimized stage particles obtained by the previous optimization, recording the optimized particles as the latest value, and retaining the optimized stage particles obtained by the previous optimization as the historical record; when the total consumption time of the optimized particles is greater than the optimized stage particles obtained by the previous optimization, determining whether to retain the optimized particles as the latest value based on the retention probability, including: when it is determined that the optimized particles are not retained as the latest value based on the retention probability, ignoring this optimization; wherein, when performing the first optimization, the optimized stage particles obtained by the previous optimization are the first-generation particles; repeating steps S302 to S305 until the optimized stage particles reach the number of particle optimization rounds or the particle optimization target percentage, confirming the latest value as the first-generation optimized particle.
[0243] Optionally, when two processes to be exchanged are moved, one of the processes to be exchanged moves in front of the other process to be exchanged.
[0244] Optionally, step S501, starting from the first process, arranges the process time, wherein the first process is the process corresponding to the starting point of each process set in the planned items, including: when the process has no assembly predecessor process or the assembly predecessor process has been arranged, updating the start time and end time of the process; when the assembly predecessor process of the process has not been arranged, obtaining the first process of the planned items corresponding to the assembly predecessor process, wherein the assembly predecessor process is the previous process of the process on the assembly unit; repeating step S501 until all processes are arranged, and obtaining the final completion time of each process.
[0245] Optionally, calculate the retention probability, the formula is ,in, To retain the probability, To optimize the execution time of particles, is the execution time of the first generation of particles, The execution time for the initial settings.
[0246] Optionally, calculate the fitness of all first-generation optimized particles and select the first-generation optimized particle with the largest fitness as the first-generation optimal particle. The calculation formula is: ,in, For fitness, Optimize the final completion time of particles for the first generation, The weight of the final completion time of the first generation optimized particles in the final evaluation, is the imbalance of the machine load, Optimize the load imbalance weight of particles for the first generation, = Current algebra / optimized algebra upper bound), .
[0247] Optionally, based on the set vector length, two processes to be exchanged are selected for exchange or movement, including: arbitrarily selecting two processes, and comparing the positions of the two processes with the positions of the processes exchanged during the initial optimal particle optimization: if the positions of the two processes are the same as the positions of the processes exchanged during the initial optimal particle optimization, reselecting the two processes; if the positions of the two processes after exchange are the same as the positions of the processes exchanged during the initial optimal particle optimization, deciding whether to retain or restore them based on a preset probability.
[0248] Obviously, those skilled in the art will appreciate that the various modules or steps of the present invention described above can be implemented using a general-purpose computing device, can be centralized on a single computing device, or can be distributed across a network of multiple computing devices. They can be implemented using program code executable by the computing device, and thus, can be stored in a storage device and executed by the computing device. In some cases, the steps shown or described herein can be performed in a different order than that shown, or can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, the present invention is not limited to any particular combination of hardware and software.
[0249] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0250] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0251] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0252] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0253] In a typical configuration, a computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory.
[0254] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.
[0255] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can be implemented using any method or technology to store information. Information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase-change RAM (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transitory computer-readable media such as modulated data signals and carrier waves.
[0256] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.
[0257] The above description is merely a preferred embodiment of the present application and is not intended to limit the present application. Various modifications and variations are possible for those skilled in the art. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present application shall be included within the scope of protection of the present application.
Claims
1. A hybrid production execution design method, characterized in that: include: Generate an event set, the event set including a production entity identifier, an online time, production constraints, and a process set; Arranging the event set to obtain primary particles, and obtaining a primary particle swarm when the primary particles reach a preset number, wherein each event set corresponds to a primary particle, the primary particle includes at least one planned event, the planned event includes at least one process set, and the process set includes at least one process; Step S103, optimizing the first generation particles to obtain first generation optimized particles; Step S104, evaluating the first generation optimized particles to obtain the first generation optimal particles; Repeat step S103 to step S104 for a preset number of times to obtain the final optimal particle.
2. The method according to claim 1, characterized in that Arranging the event set to obtain primary particles, and when the primary particles reach a preset number, obtaining a primary particle swarm, including: Randomly select a planned event from the event set, and obtain all first processes of the planned event, wherein the first process is the process corresponding to the starting point of each process set in the planned event; Selecting an execution process of the first process in a starting process group, wherein the starting process group includes all the execution processes that can be executed at the starting point of the process set; Randomly selecting the execution process that can be executed after the production-precursor process of the process according to the production-precursor process of the process, wherein the production-precursor process is the process before the production process of the main body; Determine the start time and end time of the execution process, mark the time occupancy of the assembly unit corresponding to the execution process, and update the completion time of the process; When all the process sets in the planned items in the event set are completed, the first generation particles are obtained.
3. The method according to claim 1, characterized in that Step S103 includes: Step S301: Set the optimization vector length, the number of particle optimization rounds, and the particle optimization target percentage. The optimization vector length is the time difference between two processes on the same assembly unit and the distance between two processes on different assembly units. The optimization target percentage is the percentage of the consumption time of the first generation of optimized particles to the consumption time of the first generation of particles. The location is the location of a production entity in a certain assembly unit. Step S302: Select two processes to be exchanged from the particles in the optimization stage according to the set vector length, and exchange or move them. The particles in the optimization stage include the initial generation particles and particles obtained from each optimization. The processes to be exchanged are any two processes on two assembly units of the same type, or any two processes on one assembly unit. Step S303, reintegrating the exchanged optimization phase particles to obtain the final completion time of each process; Step S304, detecting the integrated optimization stage particles, including: when the integrated optimization stage particles meet the production constraints, obtaining the optimized particles; when the integrated optimization stage particles do not meet the production constraints, repeating steps S301 to S304; Step S305, determining whether the optimized particle is retained, including: when the total consumption time of the optimized particle is less than the optimization stage particle obtained in the previous optimization, recording the optimized particle as the latest value, and retaining the optimization stage particle obtained in the previous optimization as a historical record; when the total consumption time of the optimized particle is greater than the optimization stage particle obtained in the previous optimization, determining whether to retain the optimized particle as the latest value based on the retention probability, including: when it is determined that the optimized particle is not retained as the latest value based on the retention probability, ignoring this optimization; wherein, when performing the first optimization, the optimization stage particle obtained in the previous optimization is the first generation particle; Repeat steps S302 to S305 until the particles in the optimization stage reach the number of particle optimization rounds or the target percentage of particle optimization, and confirm that the latest value is the first generation optimized particle.
4. The method according to claim 3, characterized in that Step S302 includes: When two processes to be exchanged are moved, one of the processes to be exchanged moves in front of the other process to be exchanged.
5. The method according to claim 3, characterized in that Step S303 includes: Step S501, starting from the first process, scheduling the time of the process, wherein the first process is the process corresponding to the starting point of each process set in the planned event, including: when the process has no assembly predecessor process or the assembly predecessor process has been scheduled, updating the start time and end time of the process; when the assembly predecessor process of the process has not been scheduled, obtaining the first process of the planned event corresponding to the assembly predecessor process, wherein the assembly predecessor process is the process before the process on the assembly unit; Repeat step S501 until all processes are arranged, and obtain the final completion time of each process.
6. The method according to claim 3, characterized in that Step S305 includes: Calculate the retention probability, the formula is ,in, is the retention probability, For the execution time of the optimized particle, is the execution time of the first generation of particles, The execution time for the initial settings.
7. The method according to claim 1, characterized in that Step S104 includes: Calculate the fitness of all the first-generation optimized particles, and select the first-generation optimized particle with the largest fitness as the first-generation optimal particle. The calculation formula is: , in, is the fitness, Optimize the final completion time of particles for the first generation, The weight of the final completion time of the first generation optimized particles in the final evaluation, is the imbalance of the machine load, is the load imbalance weight of the first generation optimized particles, = Current algebra / optimized algebra upper bound), .
8. The method according to claim 1, characterized in that Repeating steps S103 and S104 for a predetermined number of times to obtain the final optimal particle includes: According to the set vector length, two processes to be exchanged are selected for exchange or movement, including: Randomly select two of the processes, and compare their positions with the positions of the processes exchanged during the initial optimal particle optimization: if the positions of the two processes are the same as the positions of the processes exchanged during the initial optimal particle optimization, reselect the two processes; if the positions of the two processes after exchange are the same as the positions of the processes exchanged during the initial optimal particle optimization, decide whether to retain or restore them based on a preset probability.
9. A mixed production execution design device, characterized in that: include: A generating unit, configured to generate an event set, wherein the event set includes a production entity identifier, an online time, production constraints, and a process set; an arrangement unit, configured to arrange the event set to obtain primary particles, and obtain a primary particle swarm when the primary particles reach a preset number, wherein each event set corresponds to a primary particle, the primary particle includes at least one planned event, the planned event includes at least one process set, and the process set includes at least one process; An optimization unit, configured to execute step S103, optimize the first-generation particles to obtain first-generation optimized particles; An evaluation unit, configured to execute step S104, evaluate the first generation optimized particles, and obtain the first generation optimal particles; The execution unit is used to repeatedly execute the steps S103 and S104 for a preset number of times to obtain the final optimal particle.
10. A computer-readable storage medium, characterized in that The computer-readable storage medium includes a stored program, wherein when the program is run, the device where the computer-readable storage medium is located is controlled to execute the execution design method for mixed production according to any one of claims 1 to 8.
11. An electronic device, characterized in that: include: One or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs include a method for executing a hybrid production execution design method as described in any one of claims 1 to 8.
Citation Information
Patent Citations
Workshop production scheduling method based on GA-TS hybrid algorithm
CN111242446A
Neighborhood search scheduling method and device applied to replacement flow shop
CN111652412A
Dynamic scheduling method for production and assembly of large complex products
CN116610083A
Hybrid-driven particle swarm optimization method and device
CN117474035A
Multi-objective optimization scheduling method and system for multi-AGV flexible job shop
CN119668304A