Production system scheduling optimization method, apparatus, device, medium and program product

By converting the discrete event model of the production system into semantically decoupled expressions and utilizing third-party service providers for scheduling optimization, the problem of the inability to optimize prior rules in existing technologies is solved, thus achieving efficient and secure production system scheduling.

WO2026025364A9PCT designated stage Publication Date: 2026-04-30SIEMENS AG +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-31
Publication Date
2026-04-30

AI Technical Summary

Technical Problem

The existing production system's scheduling plan based on prior rules cannot be optimized, resulting in low scheduling efficiency and potentially exposing confidential data of the production system.

Method used

By acquiring the discrete event model of the production system, it is transformed into a semantically decoupled first expression and an optimization objective second expression. The scheduling optimization is performed by a third-party service provider without relying on prior rules, and the optimal scheduling plan is determined by combining simulation and feedback mechanisms.

Benefits of technology

It enables the optimization of production system scheduling without relying on prior rules, reduces development workload, ensures that confidential data of the production system is not exposed, and improves scheduling efficiency and accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024108906_30042026_PF_FP_ABST
    Figure CN2024108906_30042026_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed in the embodiments of the present invention are a production system scheduling optimization method, an apparatus, a device, a medium and a program product. The method comprises: acquiring a discrete event model of a production system; converting the discrete event model into a first expression, the first expression being semantically decoupled from the production system; converting an optimization objective of the production system into a second expression, the second expression being semantically decoupled from the production system; releasing an optimization problem comprising the first expression and the second expression, the first expression being a constraint condition of the optimization problem, and the second expression being an objective function of the optimization problem; in response to a released feedback result, determining an optimization method for the optimization problem; on the basis of the optimization method, determining a scheduling plan of the production system; and, on the basis of the scheduling plan, executing scheduling of the production system. The present invention reduces workloads in developing optimal scheduling solutions to production systems, can execute optimization independently of priori rules and will not expose confidential data of the production systems.
Need to check novelty before this filing date? Find Prior Art

Description

Methods, devices, equipment, media, and program products for production system scheduling optimization Technical Field

[0001] This invention relates to the field of industrial digitalization, and in particular to methods, apparatus, equipment, media, and program products for scheduling and optimizing production systems. Background Technology

[0002] Rational production scheduling is crucial for achieving high efficiency, flexibility, and reliability in production systems. The research and application of effective and practical scheduling methods and optimization techniques have become the foundation of intelligent manufacturing practices. Production scheduling problems typically target a decomposable task (such as product manufacturing), exploring how, while satisfying constraints (such as delivery dates, process routes, and resource availability), production instructions are issued to arrange which resources, processing times, and processing sequences are used for each component, in order to optimize product manufacturing time or cost.

[0003] Currently, many production systems use prior rules to create scheduling plans. However, scheduling plans created based on prior rules are often not optimized.

[0004] Summary of the Invention

[0005] The embodiments of the present invention propose a method, apparatus, equipment, medium, and program product for optimizing the scheduling of a production system.

[0006] This application proposes a scheduling optimization method for a production system, including:

[0007] Obtain the discrete event model of the production system;

[0008] The discrete event model is converted into a first expression, which is semantically decoupled from the production system;

[0009] The optimization objective of the production system is converted into a second expression, which is semantically decoupled from the production system.

[0010] The optimization problem is published, which includes the first expression and the second expression, wherein the first expression is the constraint condition of the optimization problem and the second expression is the objective function of the optimization problem;

[0011] Based on the feedback results in response to the aforementioned release, an optimization method for the optimization problem is determined;

[0012] Based on the optimization method, the scheduling plan for the production system is determined;

[0013] Based on the scheduling plan, the production system is scheduled.

[0014] As can be seen, the embodiments of the present invention can perform optimization without relying on prior rules. Furthermore, the expressions are semantically decoupled from the production system, and do not expose confidential data of the production system. In addition, it reduces the workload of developing optimal scheduling solutions for the production system.

[0015] In one implementation, the discrete event model is a visualized discrete event model; the conversion of the discrete event model into a first expression includes:

[0016] Obtain the semantic description file of the visualized discrete event model;

[0017] Extract first information describing the capabilities of the production equipment in the production system and second information describing the requirements of the production processes in the production system from the semantic description file;

[0018] Based on the first information and the second information, the first expression is determined.

[0019] It is evident that by extracting descriptive information about equipment capabilities and production process requirements, discrete event models can be easily transformed into expressions.

[0020] In one implementation, determining the first expression based on the first information and the second information includes:

[0021] Determine a first variable representing each production device; determine a second variable representing each production process; combine the first and second variables to determine a third variable representing whether each production device performs each production process; instantiate the first variable based on the first information; instantiate the second variable based on the second information; determine the instantiated third variable based on the instantiated first and second variables; determine the first expression based on the first information, the second information, and the instantiated third variable; or

[0022] A first variable representing each production device is determined; a second variable representing each production process is determined; the first variable, the second variable, and a fourth variable representing each production time are combined to determine a third variable representing whether each production device performs each production process at each production time; the first variable is instantiated based on the first information; the second variable is instantiated based on the second information; the instantiated third variable is determined based on the instantiated first variable, the instantiated second variable, and the instantiated production time; and the first expression is determined based on the first information, the second information, and the instantiated third variable.

[0023] It is evident that the semantic decoupling from the production system is achieved based on variables, and multiple variables can be used, which enriches the transformation capability and facilitates the deriving of expressions for constraints in optimization problems.

[0024] In one implementation, converting the optimization objective of the production system into a second expression includes:

[0025] A first key performance indicator to be optimized is determined from the key performance indicators of the production system, wherein the first key performance indicator is characterized based on at least one of the first variable, the second variable, the third variable, or the fourth variable;

[0026] Determine the extreme value function with the first key performance indicator as the independent variable;

[0027] The extreme value function is determined as the second expression.

[0028] It is evident that the expression for the optimization objective in the optimization problem can be obtained by using the extreme value function associated with the key performance indicators.

[0029] In one implementation, the method for determining the optimization problem based on the feedback results released includes:

[0030] Receive multiple candidate optimization methods for the optimization problem;

[0031] Determine the extremum of the objective function for each of the plurality of candidate optimization methods;

[0032] Based on the sorting results of the extreme values, a predetermined number of candidate optimization methods are determined;

[0033] In response to the selection operation from the predetermined number of candidate optimization methods, the optimization method to be simulated is determined;

[0034] Run the optimization method that needs to be simulated and obtain the results;

[0035] Based on the results of the operation, a simulation scheduling plan for the production system is determined.

[0036] The simulation scheduling plan is run in the discrete event model.

[0037] Based on the simulation results, determine whether the optimization method that requires simulation should be adopted as the optimization method for the optimization problem.

[0038] It is evident that an interactive approach combining a release-feedback mechanism with simulation has been implemented, and the optimization method is determined based on the simulation results, thus ensuring optimization efficiency.

[0039] In one implementation, running the optimization method that needs to be simulated to obtain the running result includes: running the optimization method that needs to be simulated to obtain the value of the instantiated third variable;

[0040] The step of determining the simulation scheduling plan of the production system based on the running results includes: determining whether the instantiated production equipment executes the instantiated production process based on the value of the instantiated third variable, or determining whether the instantiated production equipment executes the instantiated production process during the instantiated production time; and determining the simulation scheduling plan of the production system based on whether the instantiated production equipment executes the instantiated production process or whether the instantiated production equipment executes the instantiated production process during the instantiated production time.

[0041] As can be seen, the simulation scheduling plan can be conveniently determined based on the value of the instantiated third variable.

[0042] In one implementation, the step of determining whether to adopt the optimization method requiring simulation for the optimization problem based on simulation results includes:

[0043] The simulation results are displayed in a graphical user interface, including the simulated value of the first key performance indicator;

[0044] In response to a confirmation operation received from the graphical user interface, the optimization method requiring simulation execution is determined as the optimization method for the optimization problem; or

[0045] In response to a non-acknowledgment received from the graphical user interface, it is determined that the optimization method that requires simulation execution is not the optimization method for the optimization problem.

[0046] Therefore, simulation results can be displayed, and users can confirm whether to adopt the optimization method based on their selections.

[0047] In one implementation, displaying the simulation results in the graphical user interface includes:

[0048] The graphical user interface displays simulated values ​​for at least one other key performance indicator that differs from the first key performance indicator.

[0049] The confirmation or non-confirmation operation is issued based on the weighted sum of the simulated value of the first key performance indicator and the simulated value of at least one other key performance indicator.

[0050] It is evident that other key performance indicators (KPIs) unrelated to the objective function can be obtained based on simulation results. These KPIs, combined with the first KPI, can be used to determine whether to employ an optimization method, thus improving the accuracy of the optimization method.

[0051] In one implementation, determining the scheduling plan of the production system based on the optimization method includes:

[0052] When the optimization method that requires simulation is used as the optimization method for the optimization problem, the simulation scheduling plan is determined as the scheduling plan for the production system.

[0053] Therefore, once the optimization method is determined, the simulation scheduling plan using that optimization method can be directly used as the scheduling plan for the production system, thus improving scheduling efficiency.

[0054] This application also proposes a scheduling optimization device for a production system, comprising:

[0055] The acquisition module is used to acquire the discrete event model of the production system.

[0056] The first conversion module is used to convert the discrete event model into a first expression, wherein the first expression is semantically decoupled from the production system;

[0057] The second conversion module is used to convert the optimization objective of the production system into a second expression, which is semantically decoupled from the production system.

[0058] The publishing module is used to publish an optimization problem containing the first expression and the second expression, wherein the first expression is the constraint condition of the optimization problem and the second expression is the objective function of the optimization problem;

[0059] The first determining module is used to determine the optimization method for the optimization problem based on the feedback results in response to the release.

[0060] The second determining module is used to determine the scheduling plan of the production system based on the optimization method;

[0061] The execution module is used to execute the scheduling of the production system based on the scheduling plan.

[0062] As can be seen, the embodiments of the present invention can perform optimization without relying on prior rules. Furthermore, the expressions are semantically decoupled from the production system, and do not expose confidential data of the production system. In addition, it reduces the workload of developing optimal scheduling solutions for the production system.

[0063] This application also proposes an electronic device, comprising:

[0064] processor;

[0065] Memory for storing the executable instructions of the processor;

[0066] The processor is configured to read the executable instructions from the memory and execute the executable instructions to implement the scheduling optimization method for the production system as described above.

[0067] This application also proposes a computer-readable storage medium storing computer instructions that, when executed by a processor, implement the scheduling optimization method for the production system as described above.

[0068] This application also proposes a computer program product, including a computer program that, when executed by a processor, implements the scheduling optimization method for the production system as described above. Attached Figure Description

[0069] Preferred embodiments of the present invention will now be described in detail with reference to the accompanying drawings, which will make the above and other features and advantages of the present invention more apparent to those skilled in the art. In the drawings:

[0070] Figure 1 is an exemplary flowchart of a scheduling optimization method for a production system according to an embodiment of the present invention.

[0071] Figure 2 is a schematic diagram of converting a discrete event model into an expression according to an embodiment of the present invention.

[0072] Figure 3 is a schematic diagram illustrating the simulation results according to an embodiment of the present invention.

[0073] Figure 4 is an exemplary schematic diagram of the scheduling optimization process of a production system according to an embodiment of the present invention.

[0074] Figure 5 is an exemplary structural diagram of a scheduling optimization device for a production system according to an embodiment of the present invention.

[0075] Figure 6 is an exemplary structural diagram of an electronic device according to an embodiment of the present invention.

[0076] The reference numerals in the attached figures are as follows: Detailed Implementation

[0077] To make the objectives, technical solutions, and advantages of this invention clearer, the following embodiments are provided to further illustrate the invention in detail. The nouns and pronouns referring to "person" in this patent application are not limited to specific genders.

[0078] For the sake of brevity and intuitiveness, the following description uses several representative embodiments to illustrate the solution of the present invention. Numerous details in the embodiments are only used to aid in understanding the solution of the present invention. However, it is obvious that the technical solution of the present invention can be implemented without being limited to these details. To avoid unnecessarily obscuring the solution of the present invention, some embodiments are not described in detail, but only a framework is given. In the following text, "comprising" means "including but not limited to," and "according to..." means "at least according to..., but not limited to only according to...". Due to Chinese language habits, unless the quantity of a component is specifically indicated below, it means that the component can be one or more, or can be understood as at least one.

[0079] Production scheduling is a crucial task for manufacturing enterprises, directly impacting production progress and efficiency. Based on customer orders, production capacity, and available resources, production scheduling rationally arranges, coordinates, and schedules production tasks to achieve efficient production operations. This includes focusing on the rational allocation of production resources and controlling production schedules to improve efficiency and meet customer demands. Specifically, production scheduling refers to the process of assigning production tasks to production resources. Considering capacity and equipment, and given a fixed quantity of materials, it involves arranging the production sequence of each task, optimizing the production sequence and selecting appropriate production equipment to minimize waiting time and balance the workload of various production equipment and workers.

[0080] Currently, many production systems (such as factories) utilize prior rules (e.g., rules specifying which production equipment should be executed on a first-come, first-served basis to determine task priority; rules specifying which workpieces need to be combined with orders; etc.) to create scheduling plans. However, a drawback of this rule-based planning approach is its inability to optimize manufacturing. In other words, the scheduling plans generated by rule-based planning methods are usually executable, but not necessarily optimal solutions.

[0081] This invention proposes a "scheduling as a service" solution that automatically converts the discrete event model of a production system into a non-sensitive mathematical representation (semantically decoupled from the production system). This mathematical representation is then published on an industrial platform, allowing third-party service providers specializing in scheduling optimization to offer corresponding scheduling services based on it. These third-party service providers do not need to understand the manufacturing scenario (and therefore cannot understand it due to the semantic decoupling from the production system) to provide solutions to scheduling problems. This significantly reduces the workload of developing optimal scheduling solutions for the production system and allows for scheduling optimization without relying on prior rules, while also protecting the confidential data of the production system.

[0082] The above disclosure details the technical defects existing in the relevant technology, the causes of these defects, and the analytical process for overcoming them. In fact, the understanding of these technical defects is not common knowledge in the field, but rather a novel discovery made by the applicant during their research. Furthermore, the tracing of the causes of these technical defects and the analytical process for overcoming them are also the results of the applicant's gradual analysis during the actual research process, and are not common knowledge in the field.

[0083] Figure 1 is an exemplary flowchart of a scheduling optimization method for a production system according to an embodiment of the present invention. As shown in Figure 1, the method includes:

[0084] Step 101: Obtain the discrete event model of the production system.

[0085] A production system is a unit that transforms input resources into desired outputs. Production systems can be categorized into flow-line production units, fixed-location production units, job-shop production units, and so on. Flow-line production is a typical production model for mass-production enterprises. In manufacturing, production systems typically include factories and / or workshops, etc.

[0086] In one implementation, a discrete event model of a production system can be determined using discrete event simulation based on various types of modeling tools. Discrete event simulation is a computer simulation method used to study and analyze the behavior and interactions of systems, processes, or events occurring at discrete points in time. The core idea of ​​discrete event simulation is to simulate events occurring in a production system at discrete points in time, events that cause changes in the system's state. Simulated events in a production system can include various types of events, such as arrival events, service events, and departure events. By advancing the simulation over time to model the changes in the system's state at different events, the system's performance indicators, behavior, and outcomes can be derived. In a discrete event model, the system's operations can be viewed as a time-discrete sequence of events, each event marking a change in the system's state. The system's state changes discretely, and its behavior is driven and changes by events. For example, events in a production system can include the arrival of materials, the completion of a machine cycle, or the departure of products, etc.

[0087] For example, modeling tools such as Plant Simulation, AnyLogic, Simio, Arena, ExtendSim, and GPSS World can be used to build discrete event models of various production systems.

[0088] Taking Plant Simulation as an example, the modeling process of a production system is described. Plant Simulation provides an integrated three-dimensional discrete event simulation platform, enabling engineers to easily build complex factory models. Its object-oriented modeling method ensures high reusability and scalability of the model, adapting to the ever-changing needs of enterprises. Based on Plant Simulation, the specific process of establishing a discrete event model of a production system can include: (1) Establishing a preliminary model: First, a model needs to be established according to the actual situation. In Plant Simulation, existing object libraries or custom objects can be used to build the model. Objects are placed on the canvas by dragging and dropping, and then connected to form the production line of the production system. Various parameters can also be set in the model, such as transportation time, processing time, etc. (2) Setting materials: Materials can be raw materials, semi-finished products, or finished products. Each material has its unique attributes and characteristics, such as volume, weight, and properties. (3) Setting resources: Resources refer to equipment or robots used to process materials. In Plant Simulation, various resource types can be set, and information such as attributes and capabilities can be assigned to each resource. For example, when using robots for assembly on an automated production line, parameters such as speed, accuracy, and reliability need to be set for the robots. (4) Create process logic: Process logic refers to the sequence of operations to be executed during the manufacturing process. In Plant Simulation, process logic can be created using the flowchart editor. (5) Set simulation parameters: During the simulation process, various parameters need to be set to simulate the actual production environment. For example, parameters such as transportation time, processing time, resource utilization, and material inventory need to be set. In Plant Simulation, simulation parameters can be set using the simulation parameter editor.

[0089] The above illustrative descriptions are typical examples of establishing discrete event models for production systems. Those skilled in the art will recognize that such descriptions are merely illustrative and are not intended to limit the implementation of the present invention.

[0090] Step 102: Convert the discrete event model into a first expression, which is semantically decoupled from the production system.

[0091] In one implementation, the discrete event model is a visualized discrete event model. Step 102, converting the discrete event model into a semantically decoupled first expression, includes: obtaining a semantic description file (e.g., XML file format) of the visualized discrete event model; extracting first information describing the capabilities of production equipment in the production system and second information describing the requirements of production processes in the production system from the semantic description file; and determining the semantically decoupled first expression based on the first and second information. Semantically decoupled means that the first expression is a non-sensitive mathematical expression, containing variables, their value ranges, constants, and / or operators, etc., but without semantic annotations about the production enterprise. Users browsing the first expression cannot understand the specific manufacturing scenario of the production enterprise. Therefore, by extracting descriptive information about equipment capabilities and production process requirements, the discrete event model can be conveniently converted into an expression.

[0092] For example, after creating a discrete event model visually in a modeling tool, a semantic description file in XML format can be exported from the modeling tool. The semantic description file describes the discrete event model semantically. For example, in the XML file, assets, materials, bill of materials (BOM), orders, and process routes are represented. The following is what each element in the XML file represents: (1) <asset>: Represents assets in the system. It includes information such as asset ID, name, process, category, description, and category list; (2) <material>: Represents the materials in the system, which includes information such as material number, type, description, and category list; (3) <bom>: Represents the bill of materials, which defines the components and quantities required to produce a specific product. It includes information such as bill of materials ID, header material, component number, and component quantity; (4) <order>: This indicates a production order. It includes information such as production number, material number, quantity, priority, start time, end time, status, and work center ID; (5) <processroute>This represents the process route, defining the sequence and details of the processes involved in manufacturing a product. It includes information such as route ID, material ID, routing ID, process ID, process name, setup time, machine time, manual time, work center ID, and process sequence. These elements and their associated data provide a structured representation of assets, materials, production orders, and process routes in an industrial environment.

[0093] In a typical manufacturing process, a process path can be subdivided into multiple stages, each containing multiple production steps. A process route is a technical document describing the sequence of operations for material processing and component assembly; it is a sequence of multiple production steps. A production step is an action or series of actions performed by production workers or machinery to complete a specified task. It is the most basic processing method for processing materials and assembling products, and is the basic unit constituting a process route. For example, an assembly line is a process route, and this assembly line contains many production steps.

[0094] The first expression is typically multiple. It can extract first information describing the capabilities of each production device in the production system and second information describing the requirements of each production step from the XML file. For example, for each production device, an expression describing its capabilities can be written based on its capability description. For each production step, an expression describing its requirements can be written based on its step requirements (e.g., the required interval between adjacent steps, whether it needs to be executed before or after a certain step, etc.). Both types of expressions can be included in the first expression as constraints for the optimization problem.

[0095] In one implementation, based on the first information and the second information, the first expression is determined to include at least one of the following:

[0096] (1) Determine a first variable representing each production equipment; determine a second variable representing each production process; combine the first and second variables to determine a third variable representing whether each production equipment performs each production process; instantiate the first variable based on first information; instantiate the second variable based on second information; determine the instantiated third variable based on the instantiated first and second variables; determine the first expression based on the first information, the second information, and the instantiated third variable.

[0097] For example, the first variable i (the range of values ​​for i is equal to the number of production equipment) represents the production equipment, and the second variable j (the range of values ​​for j is equal to the number of production processes) represents the production processes. The third variable X... ij This characterizes whether production equipment i executes production process j. For example, when production process j is assigned to production equipment i for execution by production equipment i, X... ij =1; otherwise, X ij =0. Based on the first information, each piece of equipment in the production system can be known, thus allowing the instantiation of the first variable i; based on the second information, each production process in the production system can be known, thus allowing the instantiation of the second variable j. Then, based on the instantiated first variable i (i.e., i is assigned a value) and the instantiated second variable j (i.e., j is assigned a value), the instantiated X can be obtained. ij (X ij Both i and j in the first and second information are assigned values. Then, based on the first and second information for the instantiated X... ij The constraints can be used to derive corresponding expressions. For example, based on the constraint descriptions obtained from the first and second information—the capabilities of the first device (i=1) and the second device (i=2) and the requirements of the first process (j=1)—the corresponding expression can be obtained: X 11 +X 21 ≥1.

[0098] (2) Determine the first variable representing each production equipment; determine the second variable representing each production process; combine the first variable, the second variable, and the fourth variable representing each production time to determine the third variable representing whether each production equipment performs each production process at each production time; instantiate the first variable based on the first information; instantiate the second variable based on the second information; determine the instantiated third variable based on the instantiated first variable, the instantiated second variable, and the instantiated production time; determine the first expression based on the first information, the second information, and the instantiated third variable.

[0099] For example, the first variable i (the range of values ​​for i is equal to the number of production equipment) represents the production equipment, and the second variable j (the range of values ​​for j is equal to the number of production processes) represents the production processes. The third variable Y ijt Y represents whether production equipment i executes production process j at time t. For example, when a production process is assigned to production equipment i for execution by production equipment i at time t, Y... ijt =1; otherwise, Y ijt =0. Based on the first information, each device in the production system can be known, thus the first variable i can be instantiated; based on the second information, each production process in the production system can be known, thus the second variable j can be instantiated. Then, based on the instantiated first variable i (i.e., i is assigned a value), the instantiated second variable j (i.e., j is assigned a value), and the instantiated t (i.e., the specific time is specified), the instantiated Y can be obtained. ijt (Y ijt (The values ​​of i, j, and t in the first and second information are all assigned values). Then, based on the first and second information for the instantiated Y, ijt Given the constraints, we can obtain the corresponding expression. For example, based on the information obtained from the first and second information: the capabilities of the first device (i=1) and the second device (i=2) at time 1, and the requirements of the first process (j=1), we can obtain the corresponding expression: Y 111 +X 211 ≤1.

[0100] The first expression, in addition to including variables based on the first, second, third, and fourth variables, can also include other variables (such as the start time of each production step, etc.). Furthermore, the first expression can also include expressions containing only the remaining variables (excluding the first, second, third, and fourth variables) and constants. For example, S 11 +30≤S 12 S 11 S is the start time of production process 1 of production equipment 1. 12 This is the start time of production step 2 on production equipment 1. For example, the first expression could also include expressions such as C1 = S. 11 The expression is +0.5, where C1 is the end time of production step 1.

[0101] As can be seen, the implementation of this invention achieves semantic decoupling from the production system based on variable definition, and the number of variables can be multiple, which enriches the transformation capability and facilitates obtaining the expression of the constraint conditions in the optimization problem.

[0102] Step 103: Transform the optimization objective of the production system into a second expression, which is semantically decoupled from the production system.

[0103] Similarly, semantic decoupling means that the second expression is a non-sensitive mathematical expression that includes variables, their ranges, constants, and / or operators (e.g., Max for maximum value or Min for minimum value), but does not contain semantic annotations related to the manufacturing company. Users browsing the second expression do not gain insight into the specific manufacturing scenario of the company.

[0104] In one implementation, step 103, converting the optimization objective of the production system into a second expression, includes:

[0105] From the key performance indicators (KPIs) of the production system, identify the primary KPI to be optimized, where the primary KPI is characterized by at least one of the first, second, third, or fourth variables. Determine the extreme value function with the primary KPI as the independent variable. Define the extreme value function as a second expression. For example, the primary KPI may include: output; production completion time; production cost; overall equipment efficiency (OEE); overall operating efficiency (OOE); total effective equipment performance (TEEP); capacity utilization; defect density; return on investment (ROR); on-time delivery; inventory turnover; asset turnover, etc.

[0106] For example, the first key performance indicator is production completion time, where C j This represents the completion time of the j-th production process. Max(C) j This represents the completion time of the entire production process. Therefore, the second expression can be: Min(Max(C)) = 10 ... j ), where 1≤j≤2), thus minimizing the completion time of the entire production process is the optimization objective.

[0107] Figure 2 is a schematic diagram of the conversion of a discrete event model into an expression according to an embodiment of the present invention. In Figure 2, a visualized discrete event model 11 is shown in the graphical user interface 10. The discrete event model 11 is converted into an expression 11 consisting of several equations or inequalities.

[0108] Step 104: Publish the optimization problem containing the first expression and the second expression, where the first expression is the constraint condition of the optimization problem and the second expression is the objective function of the optimization problem.

[0109] For example, an optimization problem containing a first expression and a second expression might be published on a service access platform accessible to multiple service providers. The first expression represents the constraints of the optimization problem, and the second expression represents the objective function. An optimization problem is one that seeks the optimal solution under certain conditions, where "optimal" usually refers to maximizing or minimizing a certain objective function. Constraints define the rules or restrictions that the solution must satisfy, limiting the solution space. Constraints can be equality constraints or inequality constraints. Equality constraints require decision variables to satisfy specific mathematical relationships, while inequality constraints require the values ​​of decision variables to meet certain conditions. Constrained optimization problems seek to minimize or maximize the objective function while satisfying the constraints. Methods for solving optimization problems typically include traditional methods and evolutionary algorithms. Traditional methods include the Lagrange multiplier method and the penalty function method, while evolutionary algorithms, by simulating natural selection and genetic mechanisms, search for the optimal solution in the search space and are suitable for handling complex and nonlinear constrained optimization problems, etc.

[0110] Step 105: Based on the feedback results from the response, determine the optimization method for the optimization problem.

[0111] In one implementation, step 105, determining the optimization method for the optimization problem based on the published feedback results, includes: receiving multiple candidate optimization methods for the optimization problem; determining the extremum of the objective function of each candidate optimization method; determining a predetermined number of candidate optimization methods based on the ranking of the extremums; determining the optimization method to be simulated in response to a selection operation from the predetermined number of candidate optimization methods; running the optimization method to be simulated to obtain the running results; determining a simulation scheduling plan for the production system based on the running results; simulating and running the simulation scheduling plan in a discrete event model; and determining whether to adopt the optimization method to be simulated as the optimization method for the optimization problem based on the simulation results. It can be seen that this achieves an interactive approach combining a publish-feedback mechanism and simulation, determining the optimization method based on simulation results, and ensuring optimization efficiency.

[0112] In one implementation, running the optimization method requiring simulation and obtaining the results includes: running the optimization method requiring simulation to obtain the value of the instantiated third variable; determining the simulation scheduling plan of the production system based on the results includes: determining whether the instantiated production equipment executes the instantiated production process, or determining whether the instantiated production equipment executes the instantiated production process during the instantiated production time, based on the value of the instantiated third variable; and determining the simulation scheduling plan of the production system based on whether the instantiated production equipment executes the instantiated production process or whether the instantiated production equipment executes the instantiated production process during the instantiated production time. It can be seen that, based on the value of the instantiated third variable (e.g., determining Y...), 111 The value equals 1, meaning that production process 1 is assigned to production equipment 1 for execution by production equipment 1 at time 1; Y 222 Equal to 1, meaning that production process 2 is assigned to production equipment 2 so that production equipment 2 can execute it at time 2; etc.), it is possible to program out which processes each production equipment executes and the order of processing, thereby facilitating the determination of the simulation scheduling plan of the production enterprise.

[0113] In one implementation, determining whether to adopt an optimization method requiring simulation for the optimization problem based on simulation results includes: displaying the simulation results in a graphical user interface, the simulation results including simulated values ​​of a first key performance indicator; determining whether to adopt the optimization method requiring simulation based on a confirmation operation received from the graphical user interface; or determining whether to adopt the optimization method requiring simulation based on a non-confirmation operation received from the graphical user interface. Therefore, simulation results can be displayed, and the user can confirm whether to adopt the optimization method based on their selection.

[0114] In one implementation, displaying simulation results in the graphical user interface includes: displaying simulated values ​​of at least one other key performance indicator (KPI) different from the first KPI in the graphical user interface; and issuing a confirmation or non-confirmation operation based on the weighted sum of the simulated values ​​of the first KPI and at least one other KPI. It is evident that other KPIs independent of the objective function can be obtained based on the simulation results, and combined with the first KPI to determine whether to employ an optimization method, thereby improving the accuracy of the optimization method.

[0115] Figure 3 is a schematic diagram illustrating simulation results according to an embodiment of the present invention. In Figure 3, a discrete event model 21 and a simulation scheduling plan 23 are displayed in the graphical user interface 20. The discrete event model 21 is simulated based on the simulation scheduling plan 23, and the simulation results include: (1) the simulated value of the product manufacturing time 22 related to the optimization objective; and (2) the simulated value of the conveyor belt utilization rate 24. The user then determines whether to adopt the simulation scheduling plan based on the simulation results viewed in the graphical user interface 20. If so, scheduling is performed in the production system using the simulation scheduling plan 23.

[0116] Step 106: Determine the scheduling plan for the production system based on the optimization method.

[0117] In one implementation, determining the production system scheduling plan based on the optimization method includes: when the optimization method that needs to be simulated is the optimization method for the optimization problem, the simulation scheduling plan is determined as the production system scheduling plan.

[0118] Therefore, once the optimization method is determined, the simulation scheduling plan using that optimization method can be directly used as the scheduling plan for the production system, thus improving scheduling efficiency.

[0119] Step 107: Execute the production system scheduling based on the scheduling plan.

[0120] Here, the production system can specifically execute the scheduling plan.

[0121] Figure 4 is an exemplary schematic diagram of the scheduling optimization process of a production system according to an embodiment of the present invention. In Figure 4, the production system 30 interacts with the service provider 32 via a service access platform 31. The production system 30 first uploads a discrete event model (e.g., a Tecnomatix factory simulation model) to the platform 31. The platform 31 interprets the model to obtain a semantic description file of the model and automatically converts it into a mathematical expression. Moreover, an objective function is generated with the optimization objective of maximizing or minimizing one or more key performance indicators previously configured by the factory user. The platform 31 publishes the optimization problem containing the mathematical expression of the model and the objective function. Third-party service providers 32 (which can be multiple) registered on the platform 31 can attempt to solve the specific problem and upload their optimization algorithms upon completion. Since the mathematical expression and objective function in the optimization problem are not explained, even though the optimization problem is made public, viewers cannot infer specific information about the production system 30.

[0122] Service provider 32 solves the optimization problem and submits its optimization algorithm to platform 31. Platform 31 pre-selects a predetermined number of optimization algorithms based on the results calculated by the mathematical model and notifies production system 30. Production system 30 tests the optimization algorithms with different order information and equipment availability inputs on platform 31 through discrete event simulation, and then converts the optimization algorithms into scheduling logic to be input into the discrete event model. The simulation results can be visualized on platform 31. When production system 30 is satisfied with the optimization algorithm, it can purchase the algorithm from service provider 32 and download it for use.

[0123] Specifically, as shown in Figure 4, the interaction process includes:

[0124] Step 40: Production system 30 uploads the discrete event model of production system 30 to service access platform 31.

[0125] Step 41: The service access platform 31 converts the discrete event model into a mathematical expression, and generates an objective function based on the key performance indicators specified by the production system 30, thus generating an optimization problem that includes the mathematical expression of the discrete event model and the objective function.

[0126] Step 42: Service access platform 31 publishes optimization issues and notifies service providers 32 (there can be multiple service providers 32) to resolve the optimization issues.

[0127] Step 43: Service provider 32 reviews the optimization issue.

[0128] Step 44: Service provider 32 sends an optimization method to solve the optimization problem.

[0129] Step 45: Service access platform 31 calculates the extreme value of the objective function for each optimization method.

[0130] Step 46: The service access platform 31 determines a predetermined number of optimization methods with good optimization effects based on the order of the extreme values ​​of the objective functions of each optimization method, and uses them as candidate optimization methods, and notifies the production system 30.

[0131] Step 47: Production system 30 determines whether candidate optimization methods need to be evaluated. If yes (corresponding to the "Y" branch), proceed to step 48 and subsequent steps; otherwise (corresponding to the "N" branch), jump to step 56 to end this process.

[0132] Step 48: The production system 30 selects one candidate optimization method from the multiple candidate optimization methods uploaded and notifies the service access platform 31.

[0133] Step 49: Service access platform 31 runs the selected candidate optimization method to obtain the running result (e.g., obtaining X). 11 X 21 Y 111 Or Y 211 Based on the operational results (and other specific values), a simulation scheduling plan for production system 30 is determined. The simulation scheduling plan instructs each production device on which resources to use, which processes to execute, the processing time, and the processing sequence, etc.

[0134] Step 50: Service access platform 31 simulates and runs the simulation scheduling plan in the discrete event model.

[0135] Step 51: Production system 30 views the simulation results via a graphical user interface.

[0136] Step 52: Production system 30 determines whether the simulation results are satisfactory. If yes (corresponding to the "Y" branch), proceed to step 53 and subsequent steps; otherwise (corresponding to the "N" branch), jump to step 56 to end this process.

[0137] Step 53: The production system 30 sends a purchase request to the service access platform 31 to purchase an optimization method that satisfies its simulation results.

[0138] Step 54: After the service access platform 31 completes the purchase process for this purchase request, it notifies the production system 30.

[0139] Step 55: Download the optimization method that satisfies the simulation results of the production system 30.

[0140] Step 56: End this process.

[0141] As can be seen, the embodiments of the present invention utilize a service access platform to implement a collaborative method for solving production system scheduling problems. This platform can automatically convert scheduling requests into non-sensitive mathematical problems and publish these problems on the platform. Service providers do not need to understand the manufacturing scenario to provide optimal solutions to scheduling problems, significantly reducing the workload of developing optimal scheduling solutions. This achieves optimized scheduling without relying on prior rules and does not expose confidential data of the production system.

[0142] Figure 5 is an exemplary structural diagram of a production system scheduling optimization device according to an embodiment of the present invention. As shown in Figure 5, the production system scheduling optimization device 500 includes: an acquisition module 501, used to acquire a discrete event model of the production system; a first conversion module 502, used to convert the discrete event model into a first expression, wherein the first expression is semantically decoupled from the production system; a second conversion module 503, used to convert the optimization objective of the production system into a second expression, wherein the second expression is semantically decoupled from the production system; a publishing module 504, used to publish an optimization problem containing the first expression and the second expression, wherein the first expression is the constraint condition of the optimization problem and the second expression is the objective function of the optimization problem; a first determination module 505, used to determine an optimization method for the optimization problem based on the feedback result in response to the published expression; a second determination module 506, used to determine a scheduling plan for the production system based on the optimization method; and an execution module 507, used to execute the scheduling of the production system based on the scheduling plan.

[0143] In one implementation, the discrete event model is a visualized discrete event model; the first conversion module 502 is used to obtain a semantic description file of the visualized discrete event model; extract first information describing the capabilities of production equipment in the production system and second information describing the requirements of production processes in the production system from the semantic description file; and determine a first expression based on the first information and the second information.

[0144] In one implementation, a first conversion module 502 is configured to: determine a first variable characterizing each production device; determine a second variable characterizing each production process; combine the first and second variables to determine a third variable characterizing whether each production device performs each production process; instantiate the first variable based on first information; instantiate the second variable based on second information; determine the instantiated third variable based on the instantiated first and second variables; determine a first expression based on the first information, the second information, and the instantiated third variable; or, determine a first variable characterizing each production device; determine a second variable characterizing each production process; combine the first and second variables and a fourth variable characterizing each production time to determine a third variable characterizing whether each production device performs each production process at each production time; instantiate the first variable based on first information; instantiate the second variable based on second information; determine the instantiated third variable based on the instantiated first, second, and production times; and determine a first expression based on the first, second, and third variables.

[0145] In one implementation, the second conversion module 503 is configured to determine a first key performance indicator to be optimized from the key performance indicators of the production system, wherein the first key performance indicator is characterized based on at least one of a first variable, a second variable, a third variable, or a fourth variable; determine an extremum function with the first key performance indicator as the independent variable; and determine the extremum function as a second expression.

[0146] In one implementation, the first determining module 505 is configured to receive a plurality of candidate optimization methods for an optimization problem; determine the extremum of the objective function of each candidate optimization method; determine a predetermined number of candidate optimization methods based on the ranking of the extremums; determine the optimization method to be simulated in response to a selection operation from the predetermined number of candidate optimization methods; run the optimization method to be simulated to obtain the running results; determine a simulation scheduling plan for the production system based on the running results; simulate and run the simulation scheduling plan in a discrete event model; and determine whether to adopt the optimization method to be simulated as the optimization method for the optimization problem based on the simulation results.

[0147] This invention also proposes an electronic device with a processor-memory architecture. Figure 6 is a structural diagram of the electronic device according to an embodiment of the present invention. As shown in Figure 6, the control host includes a processor 601, a memory 602, and a computer program stored in the memory 602 and executable on the processor 601. When the computer program is executed by the processor 601, it implements the scheduling optimization method of the production system as described above. Specifically, the memory 602 can be implemented as various storage media such as electrically erasable programmable read-only memory (EEPROM), flash memory, and programmable programmable read-only memory (PROM). The processor 601 can be implemented as including one or more central processing units (CPUs) or one or more field-programmable gate arrays (FPGAs), wherein the FPGA integrates one or more CPU cores. Specifically, the CPU or CPU core can be implemented as a CPU, MCU, or DSP, etc.

[0148] It should be noted that not all steps and modules in the above processes and structural diagrams are mandatory; some steps or modules can be omitted as needed. The execution order of the steps is not fixed and can be adjusted as required. The division of modules is merely for the convenience of description and functional division. In actual implementation, a module can be implemented by multiple modules, and the functions of multiple modules can also be implemented by the same module. These modules can be located in the same device or in different devices.

[0149] The hardware modules in each embodiment can be implemented mechanically or electronically. For example, a hardware module may include specially designed permanent circuitry or logic devices (such as dedicated processors, such as FPGAs or ASICs) to perform specific operations. A hardware module may also include programmable logic devices or circuitry (such as general-purpose processors or other programmable processors) temporarily configured by software to perform specific operations. The choice between mechanical implementation, dedicated permanent circuitry, or temporarily configured circuitry (such as software-configured circuitry) can be made based on cost and time considerations.

[0150] The present invention also provides a machine-readable storage medium storing instructions for causing a machine to perform the methods described in this application. Specifically, a system or apparatus equipped with a storage medium storing software program code that implements the functions of any of the embodiments described above, and causing a computer (e.g., CPU, MCU, or MPU) of the system or apparatus to read and execute the program code stored in the storage medium. Furthermore, an operating system or similar device operating on a computer can perform some or all of the actual operations through instructions based on the program code. The program code read from the storage medium can also be written to a memory located in an expansion board inserted into a computer or to a memory located in an expansion unit connected to the computer. Subsequently, a control unit or similar device installed on the expansion board or expansion unit can perform some or all of the actual operations based on the instructions in the program code, thereby implementing the functions of any of the embodiments described above. Storage medium embodiments for providing program code include floppy disks, hard disks, magneto-optical disks, optical disks (such as CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-RAM, DVD-RW, DVD+RW), magnetic tapes, non-volatile memory cards, and ROMs. Alternatively, program code can be downloaded from a server computer or the cloud via a communication network.

[0151] The above description is merely a preferred embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

[0152] In this patent application, nouns and pronouns relating to people are not limited to specific genders.< / processroute> < / order> < / bom> < / material> < / asset>

Claims

A scheduling optimization method for a production system, characterized in that, include: Obtain the discrete event model of the production system (101); The discrete event model is converted into a first expression, which is semantically decoupled from the production system (102); The optimization objective of the production system is converted into a second expression, which is semantically decoupled from the production system (103); Publish an optimization problem containing the first expression and the second expression, wherein the first expression is the constraint condition of the optimization problem and the second expression is the objective function of the optimization problem (104); Based on the feedback results in response to the published statement, an optimization method for the optimization problem is determined (105); Based on the optimization method, the scheduling plan of the production system is determined (106); Based on the scheduling plan, the scheduling of the production system is executed (107). The method according to claim 1, characterized in that, The discrete event model is a visualized discrete event model; the conversion of the discrete event model into the first expression (102) includes: Obtain the semantic description file of the visualized discrete event model; Extract first information describing the capabilities of the production equipment in the production system and second information describing the requirements of the production processes in the production system from the semantic description file; Based on the first information and the second information, the first expression is determined. The method according to claim 2, characterized in that, Determining the first expression based on the first information and the second information includes: Determine a first variable representing each production device; determine a second variable representing each production process; combine the first and second variables to determine a third variable representing whether each production device performs each production process; instantiate the first variable based on the first information; instantiate the second variable based on the second information; determine the instantiated third variable based on the instantiated first and second variables; determine the first expression based on the first information, the second information, and the instantiated third variable; or Determine a first variable representing each production device; determine a second variable representing each production process; combine the first variable, the second variable, and a fourth variable representing each production time to determine a third variable representing whether each production device executes each production process at each production time; instantiate the first variable based on the first information; instantiate the second variable based on the second information; based on the instantiated first variable and the instantiated second variable... The quantity and instantiation production time determine the third variable of the instantiation; based on the first information, the second information, and the instantiated third variable, the first expression is determined. The method according to claim 3, characterized in that, The step of converting the optimization objective of the production system into a second expression (103) includes: A first key performance indicator to be optimized is determined from the key performance indicators of the production system, wherein the first key performance indicator is characterized based on at least one of the first variable, the second variable, the third variable, or the fourth variable. Determine the extreme value function with the first key performance indicator as the independent variable; The extreme value function is determined as the second expression. The method according to claim 4, characterized in that, The optimization method (105) for determining the optimization problem based on the feedback results in response to the release includes: Receive multiple candidate optimization methods for the optimization problem; Determine the extremum of the objective function for each of the plurality of candidate optimization methods; Based on the sorting results of the extreme values, a predetermined number of candidate optimization methods are determined; In response to the selection operation from the predetermined number of candidate optimization methods, the optimization method to be simulated is determined; Run the optimization method that needs to be simulated and obtain the results; Based on the results of the operation, a simulation scheduling plan for the production system is determined. The simulation scheduling plan is run in the discrete event model. Based on the simulation results, determine whether the optimization method that requires simulation should be adopted as the optimization method for the optimization problem. The method according to claim 5, characterized in that, The process of running the optimization method that needs to be simulated and obtaining the running results includes: running the optimization method that needs to be simulated to obtain the value of the instantiated third variable; The step of determining the simulation scheduling plan of the production system based on the running results includes: determining whether the instantiated production equipment executes the instantiated production process based on the value of the instantiated third variable, or determining whether the instantiated production equipment executes the instantiated production process during the instantiated production time; and determining the simulation scheduling plan of the production system based on whether the instantiated production equipment executes the instantiated production process or whether the instantiated production equipment executes the instantiated production process during the instantiated production time. The method according to claim 6, characterized in that, The optimization method for determining whether to adopt the required simulation optimization method based on simulation results includes: The simulation results are displayed in a graphical user interface, including the simulated value of the first key performance indicator; In response to a confirmation operation received from the graphical user interface, the optimization method requiring simulation execution is determined as the optimization method for the optimization problem; or In response to a non-acknowledgment received from the graphical user interface, it is determined that the optimization method that requires simulation execution is not the optimization method for the optimization problem. The method according to claim 7, characterized in that, The display of simulation results in the graphical user interface includes: The graphical user interface displays simulated values ​​for at least one other key performance indicator that differs from the first key performance indicator. The confirmation or non-confirmation operation is issued based on the weighted sum of the simulated value of the first key performance indicator and the simulated value of at least one other key performance indicator. The method according to claim 5, characterized in that, The step of determining the scheduling plan (106) of the production system based on the optimization method includes: When the optimization method that requires simulation is used as the optimization method for the optimization problem, the simulation scheduling plan is determined as the scheduling plan for the production system. A scheduling optimization device for a production system, characterized in that, include: The acquisition module (501) is used to acquire the discrete event model of the production system; The first conversion module (502) is used to convert the discrete event model into a first expression, wherein the first expression is semantically decoupled from the production system; The second conversion module (503) is used to convert the optimization objective of the production system into a second expression, wherein the second expression is semantically decoupled from the production system; The publishing module (504) is used to publish an optimization problem containing the first expression and the second expression, wherein the first expression is the constraint condition of the optimization problem and the second expression is the objective function of the optimization problem; The first determining module (505) is used to determine the optimization method for the optimization problem based on the feedback results in response to the release. The second determining module (506) is used to determine the scheduling plan of the production system based on the optimization method; The execution module (507) is used to execute the scheduling of the production system based on the scheduling plan. An electronic device, characterized in that, include: Processor (601); Memory (602) for storing executable instructions of the processor (601); The processor (601) is configured to read the executable instructions from the memory (602) and execute the executable instructions to implement the scheduling optimization method of the production system according to any one of claims 1-9. A computer-readable storage medium storing computer instructions thereon, characterized in that, When the computer instructions are executed by the processor, the scheduling optimization method of the production system according to any one of claims 1-9 is implemented. A computer program product, characterized in that, It includes a computer program that, when executed by a processor, implements the scheduling optimization method for the production system according to any one of claims 1-9.