Manufacturing cluster production scheduling method considering energy cost and carbon emission, equipment and medium
By constructing a mixed-integer linear programming model and the NSGA-II algorithm, the problem of coordinating the optimization of energy costs and carbon emissions in the production scheduling of manufacturing enterprise clusters was solved, achieving efficient and low-carbon production scheduling and improving the flexibility and real-time performance of scheduling decisions.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-01
- Publication Date
- 2026-04-07
AI Technical Summary
Existing production scheduling methods fail to effectively coordinate and optimize energy performance and production performance, and cannot meet the comprehensive needs of manufacturing enterprise clusters in terms of low carbon and high efficiency. Furthermore, traditional methods suffer from high model complexity, low solution efficiency, and insufficient decision-making flexibility in multi-objective and multi-constraint cluster production scheduling problems.
A mixed-integer linear programming model is constructed with the optimization objectives of minimizing delay penalties, total completion time, energy costs, and indirect carbon emissions. The model is solved using an optimization algorithm based on NSGA-II. Combining the encoding and decoding of a multi-layered structure of project-order-process-machine, and the selection operations of non-dominated sorting and congestion calculation, the model outputs production scheduling schemes under various preferences.
It achieves synergistic optimization of production efficiency, energy consumption, and carbon emissions, reduces energy costs and carbon emissions, improves the flexibility and real-time performance of scheduling decisions, and provides a variety of scheduling schemes to choose from based on preferences.
Smart Images

Figure CN121809901A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of industrial automation and intelligent manufacturing technology, specifically involving manufacturing cluster production scheduling methods, equipment and media that take into account energy costs and carbon emissions. Background Technology
[0002] Manufacturing enterprise clusters, as important carriers of industrial chain collaboration, play a crucial role in improving regional energy efficiency and reducing carbon emissions. However, existing production scheduling methods mostly focus on the scheduling of workpieces and processes at the level of a single enterprise or workshop, lacking overall optimization for the collaborative scheduling of complex assembly product production in distributed heterogeneous enterprise clusters. Furthermore, traditional high-efficiency scheduling research typically only focuses on the single-objective optimization of total energy consumption or energy cost, failing to fully consider the dynamic impacts of fluctuations in clean energy output, time-of-use electricity prices on the social grid, and time-of-use carbon emission factors, making it difficult to coordinate energy performance with production performance optimization. Current scheduling methods suffer from high model complexity, low solution efficiency, and insufficient decision-making flexibility when dealing with multi-objective, multi-constraint cluster production scheduling problems, failing to meet the comprehensive needs of manufacturing enterprise clusters in terms of low-carbon and high-efficiency production. Summary of the Invention
[0003] This application provides a manufacturing cluster production scheduling method that takes into account energy costs and carbon emissions to address one of the aforementioned technical problems.
[0004] The technical solution adopted in this application is as follows: This application provides a manufacturing cluster production scheduling method that considers energy costs and carbon emissions, including: A mixed-integer linear programming model for job shop scheduling under peak power constraints is constructed. The model aims to minimize the delay penalty, total completion time, energy cost, and indirect carbon emissions, and includes constraints related to the process sequence, machine allocation, energy consumption, and carbon emissions in the manufacturing enterprise cluster. The mixed-integer linear programming model is solved using an optimization algorithm based on NSGA-II to obtain the Pareto optimal solution set. The solution process includes encoding and decoding based on a multi-layer structure of project-order-process-machine, selection operation based on non-dominated sorting and crowding calculation, and crossover and mutation operations designed for different encoded strings. Based on the Pareto optimal solution set, output production scheduling schemes corresponding to different optimization objective preferences.
[0005] According to one embodiment of this application, the construction of the mixed-integer linear programming model specifically includes: Define model parameters, including: project set, order set, process set, enterprise set, factory set, work center set, machine set, discrete time set, processing time and power curves of each process on different machines, transfer time between processes, time-of-use electricity price of social grid, time-of-use carbon emission factor, cluster renewable energy output forecast, order delivery time and assembly level; Define decision variables, including: whether a process is assigned to a specific machine (0-1 variable), whether the machine is running at a specific time (0-1 variable), the start and finish times of the process (0-1 variable), whether the process is delayed (0-1 variable), the processing sequence of processes on the same machine (0-1 variable), total cluster energy consumption, total energy cost, total carbon emissions, number of delayed orders, and maximum completion time. Establish an objective function that minimizes the weighted sum of delay penalties, energy costs, carbon emissions, and maximum completion time; Establish constraints, including: the process must be assigned to a machine, process completion time calculation, process sequence constraints within the same order, the same machine can only process one process at a time, lower assembly level orders under the same project are given priority, delay judgment, cluster equipment energy consumption calculation, energy cost calculation, carbon emission calculation, and maximum completion time calculation.
[0006] According to one embodiment of this application, the step of solving the problem using an NSGA-II-based optimization algorithm includes: Initialize the algorithm parameters, including population size, crossover rate, mutation rate, and maximum number of iterations; An initial population is generated, in which each individual adopts a three-dimensional coding structure, including a project dimension coding sequence, an order assembly level coding sequence, and a machine allocation coding sequence; Decode individuals in the population, map the correspondence between processes and machines, and perform time-series scheduling and performance evaluation based on assembly level, order sequence, and machine availability; Based on non-dominated ranking and crowding calculation, individuals in the population are evaluated and selected; Perform crossover and mutation operations on the selected individuals to generate a new generation of population; Repeat the iterative process until the maximum number of iterations is reached, and output the final Pareto optimal solution set.
[0007] According to one embodiment of this application, the three-dimensional coding structure includes: Project coding generates a coding sequence describing the order of projects to which a process belongs by globally and randomly rearranging all processes. Order assembly hierarchy coding: For each project, a sorting code for orders within each hierarchy is generated according to its assembly hierarchy structure. Machine assignment coding randomly assigns an available machine number to each process within its respective work center.
[0008] According to one embodiment of this application, the crossover operation includes: For the project's encoded string, randomly select a portion for mapping crossover or use a block-based crossover mechanism for crossover; For the order assembly level encoding string, randomly select a multi-point interchange or fragment interchange mechanism for cross-interaction; The machine is assigned an encoded string, and a random selection mechanism is used to retain the repeating pattern or perform a fragment swapping process.
[0009] According to one embodiment of this application, the mutation operation includes: For the project's encoded string, randomly perform either swap mutation or neighborhood mutation; For the order assembly level encoding string, perform subgroup permutation mutation; Assign an encoded string to the machine and perform mutation based on random subsequence resampling.
[0010] According to one embodiment of this application, the output production scheduling scheme includes: The Pareto optimal solution set is normalized, and the solution schemes are classified into production efficiency type, low carbon emission type, low energy cost type and comprehensive energy efficiency type according to actual decision-making needs. It provides Gantt charts, time-of-use electricity consumption, time-of-use carbon emissions, and time-of-use energy costs corresponding to different types of solution schemes.
[0011] A second aspect of this application provides a computer-readable storage medium having a program stored thereon that, when executed by a processor, implements the steps described in the method.
[0012] A third aspect of this application provides an electronic device including a memory, a processor, and a program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of the method as described.
[0013] Due to the adoption of the above technical solution, the beneficial effects achieved by this application are as follows: This application constructs a mixed-integer linear programming model with the objectives of minimizing delay penalties, total completion time, energy costs, and indirect carbon emissions. This model deeply integrates production scheduling and energy management, overcoming the limitations of traditional single-objective optimization methods. It significantly reduces energy consumption and carbon emissions while ensuring production efficiency.
[0014] This application employs an optimization algorithm based on NSGA-II and designs an encoding and decoding mechanism for a multi-layered structure of project-order-process-machine. This effectively characterizes the complex hierarchical relationships and process logic of manufacturing enterprise clusters, enabling the model to flexibly cope with scheduling requirements in a distributed heterogeneous environment. Furthermore, by outputting the Pareto optimal solution set, it provides users with a variety of scheduling schemes to choose from based on their preferences.
[0015] This application introduces selection operations based on non-dominated sorting and crowding calculation, as well as crossover and mutation operations designed for different encoded strings. This accelerates algorithm convergence while maintaining population diversity, ensuring that high-quality non-dominated solutions are obtained quickly in large-scale cluster scheduling problems, and improving the real-time performance and reliability of scheduling decisions.
[0016] This application integrates clean energy output forecasts and social grid time-of-use carbon emission factors into the model, enabling dynamic modeling and optimization of indirect carbon emissions. This allows the scheduling scheme to fully utilize clean energy and avoid periods of high electricity prices and high carbon emissions, thereby effectively reducing energy costs and environmental load and supporting the green and low-carbon transformation of manufacturing enterprise clusters.
[0017] This application generates scheduling schemes corresponding to various preferences such as production efficiency, low carbon emission, low energy cost, and comprehensive energy efficiency by normalizing and classifying the Pareto optimal solution set. It is further supplemented by the visualization of Gantt charts, time-of-use electricity consumption, time-of-use carbon emissions, and time-of-use energy costs, which greatly facilitates the decision-making and implementation of production schedulers. Attached Figure Description
[0018] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings: Figure 1 A flowchart illustrating a manufacturing cluster production scheduling method that considers energy costs and carbon emissions, provided for an embodiment of this application; Figure 2 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application; Figure 3 A schematic diagram illustrating the decoding process of the Pro and Order strings provided in this application embodiment; Figure 4 A schematic diagram illustrating the decoding process of the Mach string provided in this application embodiment; Figure 5 A schematic diagram illustrating the crossover mechanism of the Pro string provided in this application embodiment; Figure 6 A schematic diagram of the dynamic energy structure provided in the embodiments of this application; Figure 7 A schematic diagram of the power curve of a certain process provided in an embodiment of this application; Figure 8(a) is a three-dimensional view of the Pareto fronts provided in an embodiment of this application; Figure 8(b) is a comparison chart of maximum completion time and carbon emission indicators provided in the embodiments of this application; Figure 8(c) is a comparison chart of maximum completion time and energy cost indicators provided in the embodiments of this application; Figure 8(d) is a comparison chart of energy costs and carbon emission indicators provided in the embodiments of this application; Figure 9(a) is a Gantt chart provided in an embodiment of this application; Figure 9(b) is a schematic diagram of time-of-use electricity consumption provided in an embodiment of this application; Figure 9(c) is a schematic diagram of time-of-use carbon emissions provided in an embodiment of this application; Figure 9(d) is a schematic diagram of time-of-use energy cost provided in the embodiments of this application.
[0019] Figure label: 810, Processor; 820, Communication interface; 830, Memory; 840, Communication bus. Detailed Implementation
[0020] To more clearly illustrate the overall concept of this application, a detailed explanation is provided below with reference to the accompanying drawings.
[0021] Many specific details are set forth in the following description to provide a thorough understanding of this application. However, this application may also be implemented in other ways different from those described herein. Therefore, the scope of protection of this application is not limited to the specific embodiments disclosed below. It should be noted that, unless otherwise specified, the embodiments of this application and the features thereof can be combined with each other.
[0022] In this application, unless otherwise expressly specified and limited, the "above" or "below" of the second feature can mean that the first and second features are in direct contact, or that the first and second features are in indirect contact through an intermediate medium. In the description of this specification, references to terms such as "an embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described can be combined in any suitable manner in one or more embodiments or examples.
[0023] Example 1 like Figure 1As shown, a manufacturing cluster production scheduling method considering energy costs and carbon emissions includes: S100. Construct a mixed-integer linear programming model for job shop scheduling under peak power constraints. The model aims to minimize delay penalties, total completion time, energy costs, and indirect carbon emissions, and includes constraints related to the processing sequence, machine allocation, energy consumption, and carbon emissions in the manufacturing enterprise cluster.
[0024] As mentioned above, this step is the core of the mathematical model of this scheme. Its purpose is to transform a complex, multi-objective real-world scheduling problem into a mathematical problem that can be precisely processed and optimized by a computer. Mixed-integer linear programming (MILP) is an optimization technique where "mixed-integer" means that the decision variables include both continuous variables (such as the start time of the process and energy consumption value) and integer variables (such as 0-1 variables used to represent the "yes or no" choice); "linear" means that the objective function and all constraints are linear relationships between the decision variables.
[0025] Specifically, the construction of this model includes: The objective function is formed as follows: the model does not pursue a single objective, but rather constructs a comprehensive optimization objective, namely, minimizing a weighted sum composed of delay penalties (measuring whether an order is delayed in delivery), total completion time (measuring overall production efficiency), energy costs (economic indicators calculated based on time-of-use electricity pricing and energy consumption), and indirect carbon emissions (environmental indicators calculated based on grid carbon emission factors and energy consumption). This reflects the idea of synergistic optimization of production performance and energy performance.
[0026] Systematic definition of constraints: The model rigorously defines the physical rules and business logic that the scheduling scheme must adhere to through a series of linear equations or inequalities. These constraints include, but are not limited to: Process allocation constraints: Ensure that each process must be assigned to one and only qualified machine for processing.
[0027] Process sequence constraints: For multiple processes within the same order, the preset processing order must be followed; for different orders under the same complex product, the logical relationship of their assembly levels must be followed, and lower-level components must be processed before higher-level components.
[0028] Machine capacity constraints: Ensure that a machine can process at most one operation at any given time to prevent resource conflicts.
[0029] Time logic constraints: Clearly define the start time and end time of each process, as well as the transfer time required between processes due to transportation across factories / enterprises, to ensure the continuity of the timeline.
[0030] Energy and carbon emission constraints: Based on the power curve of each process on a specific machine, the time-of-use electricity price of the social power grid and the time-of-use carbon emission factor, the total energy consumption, total energy cost and total carbon emissions of the cluster at each moment are accurately calculated and integrated into the optimization objective.
[0031] For example, consider a car engine assembly cluster distributed across three different companies. An engine order (project) includes multiple components (orders) such as pistons, crankshafts, and cylinder blocks, each requiring multiple processes such as turning, milling, and grinding. The model works as follows: The objective function considers simultaneously factors such as whether the crankshaft grinding process can be completed before the delivery date of the day after tomorrow (delay penalty), when the entire engine order can be fully assembled at the earliest (total completion time), whether the energy-intensive casting process can be scheduled at night when electricity prices are lower (energy cost), and whether the processing of large electricity consumers can be scheduled during the midday when photovoltaic power generation output is high (indirect carbon emissions).
[0032] Under constraints, the model will ensure that: The boring process of the cylinder block (process O1) must be completed before the milling process (process O2) in the same factory (process sequence constraint).
[0033] The piston can only be machined at the No. 5 CNC center of Factory No. 3 of Company A, and only one of the two parallel machines in the center can be selected (process allocation and machine capacity constraints).
[0034] Once the crankshaft has completed all processing at Company B, the 8 hours required to transport it to Company C for final assembly must be factored in before the final assembly process can begin (time logic constraint).
[0035] When calculating energy costs between 2 p.m. and 3 p.m., the model aggregates the power of all operating machines during that period, multiplies it by the high electricity price for that period, and includes this cost in the overall target. At the same time, it calculates the carbon footprint of production activities during that period based on the higher carbon emission factor of the power grid during that period.
[0036] It should be noted that, in specific implementation scenarios, the model can be expanded beyond the above-mentioned scheme to include not only purchasing electricity from the social power grid but also directly integrating clean energy power generation systems within the cluster (such as rooftop photovoltaics and small-scale wind power). In this case, the model can add "cluster self-generated output" as one of the constraints. The optimization objective can further encourage more electricity consumption during peak self-generation periods and less electricity consumption when self-generation is insufficient, thereby maximizing the absorption of clean energy and further reducing external electricity purchase costs and indirect carbon emissions. This extension does not change the basic structure and solution logic of the model and falls within the scope of protection of this invention.
[0037] In specific implementation scenarios, based on the above solutions, the current model, which considers transportation time, can be further extended to model energy consumption and carbon emissions in the transportation process. For example, different transportation modes (such as electric vehicle fleets and fuel vehicle fleets) and their energy consumption and carbon emission coefficients per unit distance can be defined for transportation routes between different enterprises, and the energy and environmental costs generated during the transportation process can also be included in the overall objective function for optimization.
[0038] In specific implementation scenarios, based on the above solutions, demand response signals from the power grid can be introduced into the model constraints. For example, when the power grid supply is tight, it will issue incentive requests to reduce load. The model can treat this as an additional constraint (such as the total power of the cluster must not exceed a certain upper limit during a specific period) or an additional benefit objective (such as including demand response subsidies in the cost minimization objective), so that the cluster scheduling can not only adapt to internal production needs, but also actively participate in grid interaction.
[0039] S200. The mixed-integer linear programming model is solved using an optimization algorithm based on NSGA-II to obtain the Pareto optimal solution set. The solution process includes encoding and decoding based on a multi-layer structure of project-order-process-machine, selection operation based on non-dominated sorting and crowding calculation, and crossover and mutation operations designed for different encoded strings.
[0040] As mentioned above, this step is the core of the algorithm in this scheme, aiming to solve the problem that the aforementioned mixed-integer linear programming model is difficult to solve in a reasonable time using an exact algorithm due to its high complexity and multi-objective characteristics. NSGA-II (Non-dominated sorting genetic algorithm with elitist strategy) is a multi-objective evolutionary algorithm that does not seek a single "optimal solution," but rather finds a set of "Pareto optimal solutions" that achieve the best trade-off among multiple objectives by simulating the biological evolution process. The solution process of this scheme specifically includes: First, encoding and decoding based on a multi-layered structure of project-order-process-machine, which is the key to transforming the actual scheduling problem into a "chromosome" form that the algorithm can handle. The encoding process maps complex scheduling schemes (such as which order, which process, which machine in which enterprise is processed) into a structured string of numbers (chromosome); while the decoding process is the reverse operation, restoring the string of numbers to an evaluable scheduling scheme and calculating its objective function value (such as completion time, cost, etc.). Second, selection operations based on non-dominated sorting and crowding calculation, which is the essence of the NSGA-II algorithm. The "non-dominated sorting" method stratifies solutions based on their quality: solutions not comprehensively superior to any other solution are placed in the first layer (Pareto front), then removed from this layer, and the next layer of non-dominated solutions is identified, and so on, ensuring that higher-quality solutions are prioritized. "Crowding calculation" measures the dispersion of a solution within the same layer from its neighbors; higher crowding indicates a sparser region of solutions, prioritizing such solutions helps maintain population diversity, avoids local optima, and achieves a uniformly distributed solution set on the Pareto front. Finally, crossover and mutation operations designed for different encoded strings are the engine driving population evolution. "Crossover" simulates gene recombination, exchanging specific parts of the encoded strings of two parent individuals to produce offspring that combine the best traits of both parents; "mutation" simulates gene mutation, randomly altering certain parts of the encoded strings of individuals to introduce new genes, helping the algorithm escape local optima. This scheme designs differentiated crossover and mutation strategies for encoded strings of different dimensions such as projects, orders, and machines to better maintain the effectiveness and diversity of solutions.
[0041] For example, consider a cluster scheduling system comprising 3 companies and 5 projects. During the coding phase, the algorithm generates three corresponding coding strings for each possible scheduling scheme (i.e., an individual): the first string, "Project Code," defines a rough processing order tendency for all processes at the global level; the second string, "Order Assembly Level Code," specifies the processing order sequence for different assembly levels within each project—for example, the chassis (level 1) must be processed before the body (level 2); the third string, "Machine Assignment Code," specifies which specific machine within its work center each process will be executed on. During the selection phase, the algorithm evaluates hundreds of such individuals in the population, first dividing them into different levels using "non-dominated sorting": for example, a solution that significantly reduces carbon emissions but has a slightly higher cost, and a solution with extremely low cost but slightly higher carbon emissions, might be placed in the same level (level 1) because they are not mutually dominant. Subsequently, within the same layer, the algorithm calculates the "crowding" of each solution, prioritizing those individuals that are uniquely positioned in the target space (such as a cost-carbon emission 2D graph) and can represent different trade-offs. During the crossover and mutation phases, for example, on the "project code" string, a crossover operation that preserves the relative order of parents might be used to avoid disrupting critical project processes; while on the "machine allocation code" string, a mutation operation that randomly replaces machine numbers might be used to explore the energy efficiency and time variations resulting from processing the same process on different machines. Through this directed evolutionary operation, the algorithm can efficiently search for a range of high-quality scheduling schemes, from "extremely efficiency-driven" to "extremely low-carbon-driven."
[0042] It should be noted that, in specific implementation scenarios, the NSGA-II-based solution framework described above can be further improved by replacing or enhancing specific operational components. For example, the selection operation can incorporate reference points or preference information to guide the algorithm in searching specific regions of the Pareto front that are of greater interest to the decision-maker; the crossover and mutation operations can employ other evolutionary operators besides partial mapping crossover and two-point swapping, such as cyclic crossover and scramble mutation, to adapt to different problem characteristics and improve search efficiency.
[0043] In specific implementation scenarios, to further improve the solution quality and speed, this algorithm framework can be combined with local search strategies to form a hybrid algorithm. For example, after generating new solutions through crossover and mutation, a fine-grained search can be performed in the neighborhood of some high-quality solutions to discover better scheduling schemes. Alternatively, the mechanisms of NSGA-II can be integrated with those of other metaheuristic algorithms (such as particle swarm optimization and simulated annealing) to leverage their respective strengths and compensate for their weaknesses.
[0044] In specific implementation scenarios, based on the above scheme, the parameters (such as crossover rate and mutation rate) and strategies of this algorithm can be fixed values or extended to an adaptive mechanism. For example, the mutation rate can be dynamically adjusted according to the diversity of the population: when the population tends to converge, the mutation rate is increased to increase diversity; when the population is too dispersed, the mutation rate is decreased to promote convergence. Similarly, the crossover strategy can also be adaptively selected based on the similarity of the parent individuals.
[0045] S300. Based on the Pareto optimal solution set, output the production scheduling scheme corresponding to different optimization objective preferences.
[0046] As mentioned above, this step is the decision output and value realization stage of this solution. Its purpose is to transform the Pareto optimal solution set, which represents multiple possible trade-offs obtained by the algorithm, into a specific scheduling plan with clear guidance that production managers can understand and execute. The Pareto optimal solution set itself is a collection of numerous non-dominated solutions, each of which achieves a certain degree of balance on multiple optimization objectives (such as completion time, energy cost, and carbon emissions), meaning that there is no other solution that is absolutely superior to it on all objectives. The core work of this step is to classify, interpret, and visualize these solutions. First, by normalizing the performance of all schemes in the solution set on each objective, the differences in dimensions and orders of magnitude between different objectives are eliminated, allowing them to be weighted or compared on a unified scale. Subsequently, based on pre-defined decision preferences or by analyzing the distribution characteristics of solutions in the target space, the solution set is divided into several typical strategy types, such as "production efficiency type" (prioritizing the shortest delivery time), "low carbon emission type" (prioritizing minimizing carbon footprint), "low energy cost type" (prioritizing reducing electricity expenditure), and "comprehensive energy efficiency type" (seeking the equilibrium optimality of multiple objectives). Finally, the specific scheduling scheme corresponding to each strategy type is output in its most intuitive form, that is, the abstract mathematical solution is restored to the specific process time arrangement, machine allocation list, and related energy and environmental performance data, and corresponding visualization charts are generated, thus providing decision-makers with clear and actionable options.
[0047] For example, suppose the NSGA-II algorithm yields a set of 50 Pareto optimal solutions. During the normalization and classification phase, the system calculates a normalized score for each solution across three objectives: "total completion time," "total energy cost," and "total carbon emissions." Analysis reveals that some solutions score extremely high on "total completion time" (i.e., very short time) but low on cost and carbon emissions; these solutions are automatically classified as "productivity-efficient." Other solutions excel in "total carbon emissions" but have relatively long completion times; these are classified as "low-carbon emission" solutions. During the output and presentation phase, when a production manager selects to view the "Low-Carbon Emission" solution, the system not only provides a detailed Gantt chart showing when, where, and by which machine each process is performed, highlighting how the solution achieves carbon reduction by cleverly scheduling energy-intensive processes during peak solar power hours or at night when the grid's carbon emission factor is lower, but also includes time-of-use electricity consumption curves, time-of-use carbon emission bar charts, and total energy costs, forming a complete scheduling decision package. Similarly, if a company is facing strict delivery deadlines, decision-makers can quickly switch to the "Production Efficiency" solution, which presents a schedule that is as compact as possible, potentially resulting in higher energy costs and carbon emissions, but maximizing on-time order delivery. This output method transforms the complex results of multi-objective optimization into plug-and-play decision support tools tailored to different management scenarios.
[0048] It should be noted that, in specific implementation scenarios, based on the above scheme, decision-makers can not only choose from preset types, but also adjust virtual "weight sliders" for different objectives (such as delays, costs, and carbon emissions). The system responds in real time, locates and recommends one or more solutions that best match the current weight preferences on the Pareto front, and dynamically updates the corresponding scheduling scheme and performance data. This interactive mechanism combines the decision-maker's subjective experience with the algorithm's objective optimization capability, making the output scheme more customized.
[0049] In specific implementation scenarios, based on the above solutions, the output production scheduling scheme can go beyond simple display functions and be extended to directly interface with manufacturing execution systems or enterprise resource planning systems. The optimal solution output by the system can directly generate standardized work orders, material delivery requests, or energy procurement suggestions, and automatically send them to the corresponding MES or ERP modules for execution.
[0050] In specific implementation scenarios, in addition to basic Gantt charts and energy cost graphs, the output can be expanded to include more multi-dimensional visualization analyses, such as water consumption analysis, equipment utilization heatmaps, and supply chain logistics carbon emission path maps. Simultaneously, a comprehensive impact assessment report can be automatically generated for each output solution, quantitatively comparing the differences between this solution and traditional solutions on various key performance indicators, thereby providing decision-makers with more comprehensive data support.
[0051] According to one embodiment of this application, the construction of the mixed-integer linear programming model specifically includes: Define model parameters, including: project set, order set, process set, enterprise set, factory set, work center set, machine set, discrete time set, processing time and power curves of each process on different machines, transfer time between processes, time-of-use electricity price of social grid, time-of-use carbon emission factor, cluster renewable energy output forecast, order delivery time and assembly level; Define decision variables, including: whether a process is assigned to a specific machine (0-1 variable), whether the machine is running at a specific time (0-1 variable), the start and finish times of the process (0-1 variable), whether the process is delayed (0-1 variable), the processing sequence of processes on the same machine (0-1 variable), total cluster energy consumption, total energy cost, total carbon emissions, number of delayed orders, and maximum completion time. Establish an objective function that minimizes the weighted sum of delay penalties, energy costs, carbon emissions, and maximum completion time; Establish constraints, including: the process must be assigned to a machine, process completion time calculation, process sequence constraints within the same order, the same machine can only process one process at a time, lower assembly level orders under the same project are given priority, delay judgment, cluster equipment energy consumption calculation, energy cost calculation, carbon emission calculation, and maximum completion time calculation.
[0052] As described above, the process of constructing a mixed-integer linear programming model specifically includes the following four steps: Define model parameters: This step aims to quantify the physical entities, resources, time, and external environmental factors involved in production scheduling for manufacturing enterprise clusters into the basic input data for a mathematical model. The defined parameters include: Production organization structure parameters: describe the hierarchical structure of the manufacturing cluster, including project sets, order sets, process sets, enterprise sets, factory sets, work center sets, and machine sets.
[0053] Process and resource parameters: describe the processing capacity and requirements, including the processing time of each process on different machines, the dynamic power curve during the processing, and the material transfer time between different factories or enterprises.
[0054] Time parameter: defined as a set of discrete time intervals used to solve the problem.
[0055] Energy and environmental parameters: These describe the dynamic signals of the external energy market and the cluster's own energy situation, including time-of-use electricity prices and time-of-use carbon emission factors from the social grid, as well as the output forecasts of the cluster's internal renewable energy systems.
[0056] Order attribute parameters: These include the delivery date for each order, as well as assembly hierarchy information describing the assembly logic of complex product components.
[0057] Define decision variables: This step aims to define a series of unknowns, whose values collectively constitute a complete scheduling scheme. These variables represent the content of the scheduling decision, including: Binary decision variables: used to describe logical choices and states, mainly including 0-1 variables for whether a process is assigned to a specific machine, 0-1 variables for whether a specific machine is in operation at a specific time, 0-1 variables for whether a process delays delivery, and 0-1 variables for determining the processing order of two processes on the same machine.
[0058] Continuous decision variables: used to describe time and performance indicators, mainly including the start and finish times of each process, the total energy consumption of the cluster throughout the entire scheduling cycle, the total energy cost calculated based on energy consumption and electricity price, the total carbon emissions calculated based on energy consumption and carbon emission factors, the total number of delayed orders, and the maximum completion time among all processes (i.e., the maximum completion time).
[0059] Establish the objective function: This step aims to construct a comprehensive mathematical expression to quantitatively evaluate the merits of any scheduling scheme. The objective function is in the form of minimizing a weighted sum that integrates multiple optimization objectives—namely, delay penalties, total energy costs, total carbon emissions, and maximum completion time—within a unified mathematical framework. By adjusting the weights of each objective, the decision-maker's preferences for different performance dimensions can be reflected.
[0060] Establish constraints: This step aims to precisely describe all the physical rules, logical relationships, and business rules that the scheduling scheme must adhere to through a series of mathematical equations or inequalities. The established constraints systematically ensure the feasibility of the scheduling scheme, mainly including: Process allocation constraint: Ensure that each process must be assigned to one and only one qualified machine for processing.
[0061] Temporal logic constraints include calculation constraints that determine the completion time of a process by its start time and processing time, constraints that require each process within the same order to follow a predetermined processing sequence, and machine mutual exclusion constraints that allow a single machine to process at most one process at any given time.
[0062] Production logic constraints: Ensure that, within the same project, orders at lower assembly levels must be processed before orders at higher levels to guarantee the feasibility of product assembly.
[0063] Performance calculation constraints include constraints for determining whether a process is delayed, constraints for calculating the total energy consumption of the cluster based on the process power curve and machine status, constraints for calculating the total energy cost based on the total energy consumption and time-of-use electricity price, constraints for calculating the total carbon emissions based on the total energy consumption and time-of-use carbon emission factor, and constraints for determining the maximum completion time.
[0064] By fully executing the above four steps, a precise mathematical model of the production scheduling problem of the manufacturing enterprise cluster is completed.
[0065] According to one embodiment of this application, the step of solving the problem using an NSGA-II-based optimization algorithm includes: Initialize the algorithm parameters, including population size, crossover rate, mutation rate, and maximum number of iterations; An initial population is generated, in which each individual adopts a three-dimensional coding structure, including a project dimension coding sequence, an order assembly level coding sequence, and a machine allocation coding sequence; Decode individuals in the population, map the correspondence between processes and machines, and perform time-series scheduling and performance evaluation based on assembly level, order sequence, and machine availability; Based on non-dominated ranking and crowding calculation, individuals in the population are evaluated and selected; Perform crossover and mutation operations on the selected individuals to generate a new generation of population; Repeat the iterative process until the maximum number of iterations is reached, and output the final Pareto optimal solution set.
[0066] As described above, the solution using the NSGA-II-based optimization algorithm includes the following steps: First, set the basic control parameters required for the algorithm to run. These parameters include: population size, i.e., the number of individuals retained in each generation; crossover rate, which controls the proportion of individuals that undergo crossover; mutation rate, which controls the proportion of gene loci that mutate; and the maximum number of iterations, which serves as the main condition for the algorithm to terminate.
[0067] An initial population is randomly generated based on the set population size. Each individual represents a complete scheduling scheme and is represented using a three-dimensional coding structure. This structure contains three coding sequences: a project-level coding sequence, which defines the order of project affiliation for all processes at the global level; an order assembly level coding sequence, which describes the order processing sequence at different assembly levels within each project; and a machine allocation coding sequence, which assigns a specific processing machine within its work center to each process.
[0068] For each individual in the population, a decoding operation is performed. The decoding process first maps the three encoded sequences, establishing a correspondence of "project → order → process → machine". Then, based on this mapping, the known assembly hierarchy logic, the process sequence within the order, and the available time window of the machine, a time-series scheduling is performed to determine the specific start and end times of each process, thus generating a complete scheduling Gantt chart. Finally, based on this scheduling result, the multi-objective function values of the solution represented by that individual are calculated, i.e., performance evaluation is performed, with indicators including delay penalties, maximum completion time, energy costs, and carbon emissions.
[0069] Based on the performance evaluation results of all individuals, a selection operation is performed on the current population. This operation first performs a non-dominated ordination, dividing the population into several frontier levels according to Pareto dominance relations; higher levels indicate higher overall quality. Next, the crowding distance is calculated for individuals within the same frontier level to measure their distribution density in the target space. The selection mechanism prioritizes retaining individuals at the frontier levels and, within the same level, prioritizes individuals with larger crowding distances, thereby maintaining population diversity while ensuring convergence.
[0070] For the parent individuals generated through selection, evolutionary operations are performed based on the crossover and mutation rates. The crossover operation simulates gene recombination, exchanging partial coding segments between two parent individuals to produce new offspring. The mutation operation simulates gene mutation, randomly altering the values of a small number of coding positions in an individual to introduce new genetic information. These operations are specifically designed for the aforementioned three-dimensional coding structure to ensure that the validity of the solution is maintained as much as possible while generating new solutions.
[0071] The offspring produced through crossover and mutation operations are grouped into a new generation of the population. Then, steps 3 through 5 (i.e., decoding, evaluation, selection, crossover, and mutation) are repeated to allow the population to evolve continuously. The algorithm terminates when the number of iterations reaches the preset maximum number of iterations. Finally, all non-dominated individuals (i.e., Pareto optimal solutions) in the population obtained from the last iteration are output as the result.
[0072] According to one embodiment of this application, the three-dimensional coding structure includes: Project coding generates a coding sequence describing the order of projects to which a process belongs by globally and randomly rearranging all processes. Order assembly hierarchy coding: For each project, a sorting code for orders within each hierarchy is generated according to its assembly hierarchy structure. Machine assignment coding randomly assigns an available machine number to each process within its respective work center.
[0073] As described above, the three-dimensional encoding structure comprises the following three components: Project coding is generated by randomly rearranging all pending processes in the cluster globally. The result is a coding sequence that defines a preliminary processing order tendency for these processes at the global level. This coding does not directly reflect the specific project to which a process belongs, but rather implicitly influences the way processes from different projects intersect and overlap on the final scheduling timeline through the arrangement of processes, providing a foundation for the algorithm to explore the parallel processing order between projects.
[0074] The order assembly hierarchy coding operates on each specific project involved in the aforementioned project coding. For each project, firstly, all assembly levels within it are identified. Then, based on the assembly logic from low to high (i.e., lower-level components are prerequisites for assembling higher-level components), the orders within each assembly level are independently and randomly ordered. Finally, a nested structure code is generated for each project that describes the processing sequence of orders at each assembly level within it. This coding ensures that the scheduling scheme conforms to the physical and logical constraints of product assembly within the project.
[0075] The machine allocation code assigns processing equipment to each specific process determined by the aforementioned project code and order assembly level code. Specifically, for each process, within its designated work center, a machine is randomly selected from all available parallel machines with the same processing capacity, and its number is recorded in the corresponding position in the coding sequence. This part of the coding directly determines the allocation of processing resources for the process, providing a decision space for the algorithm to optimize equipment utilization and energy efficiency.
[0076] In summary, this three-dimensional coding structure, through project coding, order assembly level coding, and machine allocation coding, comprehensively describes the global sequence of processes, the internal assembly logic sequence of a project, and the specific resource allocation information contained in a scheduling scheme.
[0077] According to one embodiment of this application, the crossover operation includes: For the project's encoded string, randomly select a portion for mapping crossover or use a block-based crossover mechanism for crossover; For the order assembly level encoding string, randomly select a multi-point interchange or fragment interchange mechanism for cross-interaction; The machine is assigned an encoded string, and a random selection mechanism is used to retain the repeating pattern or perform a fragment swapping process.
[0078] As described above, the cross operation includes the following differential processing for different encoded strings: Crossing of project-encoded strings: For the item encoding string representing the global order of processes, an operation is performed using either partial mapping crossover or block-based crossover mechanism. Partial mapping crossover first randomly divides the item set into two mutually exclusive subsets. Then, the process positions belonging to subset 1 in parent A are directly copied to child A, and the process positions belonging to subset 1 in parent B are copied to child B. Finally, the remaining processes in parent B and parent A are sequentially filled into the empty positions in child A and child B, thus introducing new combinations while preserving some relative order. Block-based crossover also first divides the item set into subsets, but the difference is that the process positions of subset 1 in parent A and the process positions of subset 2 in parent B are copied to child A and child B respectively. The remaining positions are filled with processes from the other parent, realizing the exchange and recombination of different item blocks.
[0079] Crossing of order assembly level encoded strings: For the order code string describing the assembly sequence within the project, one of two mechanisms—multi-point swapping or fragment swapping—is randomly selected for operation. The multi-point swapping mechanism divides the sequence into multiple discontinuous fragments by randomly setting multiple intersection points on the code sequence. The offspring then assembles the sequence by alternately selecting these fragments from two parent sequences, thus achieving a drastic reorganization of multiple points. The fragment swapping mechanism, on the other hand, randomly selects only a continuous interval on the sequence, and then the two parent sequences directly swap the entire order fragment located within that interval, achieving a centralized adjustment of the local sequence.
[0080] Machine-assigned encoding string intersection: For the machine-coded string that determines resource allocation, one of two mechanisms—repetition pattern preservation or fragment swapping—is randomly selected for operation. The repetition pattern preservation mechanism first identifies specific machine allocation patterns that frequently occur and perform well in previous population generations. When generating offspring, these patterns are directly copied to their corresponding positions, while other gene positions are filled through random sampling to inherit effective allocation patterns. The fragment swapping mechanism, similar to order coding, randomly selects a continuous interval and swaps the machine number sequences of two parent generations within that interval, achieving a local mixing of equipment allocation schemes.
[0081] According to one embodiment of this application, the mutation operation includes: For the project's encoded string, randomly perform either swap mutation or neighborhood mutation; For the order assembly level encoding string, perform subgroup permutation mutation; Assign an encoded string to the machine and perform mutation based on random subsequence resampling.
[0082] As described above, the mutation operation includes the following differential processing for different encoded strings: Variations in the project's encoded string: For the item encoding string representing the global order of processes, random swap mutation or neighborhood mutation is performed. Swap mutation achieves rapid order perturbation by randomly selecting two different positions in the encoding sequence and directly swapping the processes represented by those two positions. Neighborhood mutation, on the other hand, randomly selects three positions in the sequence and randomly rearranges the processes represented by those three positions, thereby generating a new sequence combination within a local range.
[0083] Variations in the order assembly level encoding string: For the order code string describing the assembly sequence within a project, a subgroup permutation mutation is performed. This operation first determines the number of projects to participate in the mutation based on a preset mutation strength, then randomly selects a corresponding number of specific projects from all projects. Finally, these selected projects are cyclically permuted across different individuals, meaning the order sequence in one individual replaces the corresponding sequence in another. This approach introduces a large range of perturbations while ensuring the integrity and validity of the assembly hierarchy within each project.
[0084] Machine-assigned encoding string variations: For the machine-coded string that determines resource allocation, a mutation based on random subsequence resampling is performed. This operation first calculates the number of gene sites requiring mutation based on the mutation intensity parameter, and then randomly selects the corresponding number of positions in the machine's coding sequence as mutation points. For each selected mutation point, the set of all available machines in the work center where its corresponding process is located is queried. Then, a new machine number is randomly selected from this set to replace the original machine number, thereby exploring new processing resource allocation schemes for the process.
[0085] According to one embodiment of this application, the output production scheduling scheme includes: The Pareto optimal solution set is normalized, and the solution schemes are classified into production efficiency type, low carbon emission type, low energy cost type and comprehensive energy efficiency type according to actual decision-making needs. It provides Gantt charts, time-of-use electricity consumption, time-of-use carbon emissions, and time-of-use energy costs corresponding to different types of solution schemes.
[0086] As described above, the output production scheduling scheme includes the following processing steps: First, the Pareto optimal solution set obtained by the algorithm is normalized. Since the dimensions and numerical ranges of each optimization objective are different, the normalization process eliminates the differences in dimensions, so that indicators such as delay penalties, energy costs, carbon emissions, and maximum completion time can be objectively compared and weighted on a uniform scale.
[0087] Based on this, and according to actual decision-making needs, the solutions are classified into four typical types: the solution with the shortest maximum completion time is classified as production efficiency type; the solution with the lowest total carbon emissions is classified as low-carbon emission type; the solution with the lowest total energy cost is classified as low-energy cost type; and the solution with the best comprehensive score after weighted summation of the normalized target values is classified as comprehensive energy efficiency type. This classification method provides decision-makers with clear choices for different optimization priorities.
[0088] Finally, each type of solution is accompanied by corresponding visualizations: Gantt charts show the specific scheduling of processes along the timeline, machine allocation, and inter-process connections; time-of-use electricity consumption charts show the distribution of electricity load over different time periods; time-of-use carbon emission charts show the carbon emission intensity over different time periods; and time-of-use energy cost charts show the time distribution of electricity expenses. These visualizations make the operational characteristics and performance of various solutions readily apparent, providing decision-makers with intuitive decision support.
[0089] A second aspect of this application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the method described in any of the embodiments of the first aspect above.
[0090] Figure 2 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 2 As shown, the electronic device may include a processor 810, a communication interface 820, a memory 830, and a communication bus 840, wherein the processor 810, the communication interface 820, and the memory 830 communicate with each other via the communication bus 840. The processor 810 may call logical instructions in the memory 830 to execute the method in any of the embodiments of the first aspect described above.
[0091] Furthermore, the logical instructions in the aforementioned memory 830 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory, random access memory, magnetic disks, or optical disks.
[0092] On the other hand, the present invention also provides a computer program product, the computer program product including a computer program, the computer program being stored on a non-transitory computer-readable storage medium, and when the computer program is executed by a processor, the computer is able to perform the methods provided by the above methods.
[0093] In another aspect, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, is implemented to perform the methods provided by the above methods.
[0094] Example 2 1. The energy-structure-aware scheduling problem for complex products in distributed heterogeneous enterprises (ESA-CP-DHE) considering energy performance can be described as follows: Heterogeneous enterprises... individual enterprises, enterprises Heterogeneous A factory, a factory Include Each work center, work center Depend on The equipment consists of: Projects, Projects Include One order, order Need to go through The process consists of multiple steps. There are no sequential constraints between projects. Orders within the same project must be processed sequentially according to a given assembly level. Orders within the same project and assembly level have no sequential relationship. Each order has a specified assembly level, and the steps within the same order must be processed in a specified order. Each step is processed in a designated work center, and each work center contains multiple parallel machines with the same processing capacity. After completing the last step within the current enterprise or factory, the order must be transported to the next enterprise or factory. The processing time and power curves of each step on different machines, and the transportation time between factories and enterprises are known. The problem is how to determine the processing sequence of steps on machines to reduce delay penalties, decrease total completion time, and reduce energy costs and carbon emissions.
[0095] Assumption: (1) Given the material transportation time between enterprises and between branch plants, the materials can be directly transferred after the process is completed; (2) All workpieces are independent of each other and can be machined at zero time; (3) Assume that the machine is continuously available and do not consider machine failures; (4) At any given time, a machine can only process one workpiece, and a process can only be processed by one machine. (5) Assume that the storage space of the enterprise and its branch factories is infinitely large, and the buffer area between machines is infinitely large; (6) The time-of-use carbon emission factor and time-of-use energy cost are known for a future period of time.
[0096] 2. MILP Model Objective Function: min (10) Subject to: (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (twenty one) (twenty two) The specific meanings are explained in Table 1 below.
[0097] Table 1. Related Symbols and Their Meanings
[0098] Formula (10) is the objective function, which simultaneously optimizes delay costs, energy costs, carbon emissions, and maximum completion time according to the problem description. Formula (11) ensures that each process must be assigned to a single machine. Formula (12) is used to calculate the completion time of each process. Formula (13) indicates that processes in the same order need to be processed in a given order. Formulas (14) and (15) indicate that a machine can only process one process at a time. Formula (16) ensures that orders with lower assembly levels are processed first under the same project. Formula (17) is used to determine whether a process is delayed. Formula (18) is used to calculate the number of delayed processes. Formula (19) is used to calculate the energy consumption of the cluster's equipment. Formula (20) is used to calculate the energy cost of the cluster. Formula (21) is used to calculate the carbon emissions of the cluster. Formula (22) is used to calculate the maximum completion time of all processes.
[0099] 3. Solution Method Since the above problem is a multi-enterprise, multi-workshop collaborative scheduling problem considering time series, it is difficult to solve using exact algorithms in polynomial time. This solution adopts the NSGA-II algorithm framework for solving the problem. A three-level encoding and decoding method (project-process-equipment) is designed for the multi-level characteristics of complex mechanical products. Corresponding crossover and mutation methods are designed for each level. Non-dominated solution sets are used to evaluate individual performance, and elite and tournament strategies are combined to select and generate the offspring population.
[0100] (1) Encoding and Decoding Methods To effectively characterize complex project scheduling problems under multiple project and assembly levels, this solution designs a chromosome-based coding method with a three-dimensional structure, including project coding (Pro), order assembly level coding (Order), and machine allocation coding (Mach). The overall coding structure reflects a multi-layered nested logic of "project—order—process—machine," which can adapt to the scheduling modeling requirements in a distributed heterogeneous manufacturing environment. The specific process is as follows: First, a coding sequence for the project dimension is randomly generated for each individual. This sequence is then randomly rearranged globally across all processes, assigning each process a "project affiliation order," thus constructing a sequence of length equal to the total number of processes to describe the projects to which a process belongs. .
[0101] Secondly, for each project, an order sorting structure is generated within each assembly level according to its assembly hierarchy. The specific process for order coding is as follows: ① First, identify the number of assembly levels in the project and sort the assembly levels from high to low; ② In each assembly level, the order numbers are randomly shuffled as the initial order for placing orders at that level; ③ For projects with multiple assembly levels, use a nested cell structure to record the order arrangement at each level, forming an Order code; ④ If a project contains only one assembly level, the generation order of all orders under that project will be directly shuffled.
[0102] The third part is the initialization of machine codes, which involves randomly assigning an available machine number to each process within its respective work center. This process takes into account the heterogeneity of the equipment in each work center, forming the Mach code.
[0103] The decoding process mainly includes three parts: chromosome mapping, time-series scheduling, and performance evaluation.
[0104] ①Chromosome mapping method The three strings (project order, order sequence within the assembly level, and machine allocation) within an individual are mapped sequentially to a global process index and a corresponding machine number, thus establishing a one-to-one correspondence between "project → order → process → machine". Taking projects T1 to T3 in the "project-order-process" business information model as an example, the decoding scheme for a certain "Pro" and "Order" string is as follows: Figure 3 As shown.
[0105] To demonstrate the decoding process of a Mach string, assume a manufacturing cluster comprises three companies, each with one factory, each factory with two processing centers, and each processing center with two parallel machines of equal processing capacity. The processing center numbers of the processes are known. Using projects T1 to T3 in a "project-order-process" business information model as an example, the decoding scheme for a given Mach string is as follows: Figure 4 As shown.
[0106] ②Sequence scheduling Based on the latest release time of assembly level, order sequence, and machine availability, the earliest start time of each process is determined according to the process sequence given by the chromosome. A gap insertion strategy is introduced to divide and reconstruct the idle machine segment to improve scheduling compactness.
[0107] ③Performance evaluation After completing the Gant diagram construction for all processes, calculate the number of delayed processes, maximum completion time, carbon emissions (TCE) based on the time-of-use power curve, and energy cost (TEC).
[0108] (2) Selection method The production scheduling problem of complex products in distributed heterogeneous enterprises considering energy performance is a large-scale multi-objective optimization problem. High-quality multi-objective individuals are selected by using non-dominated solutions and crowding evaluation methods. Elite retention strategy and tournament strategy are adopted to select individuals. Through the selection mechanism of "preserving excellence + randomness", the solution space is fully explored and high-quality solutions are continuously retained, which ensures the convergence and distribution performance of the solution set in the multi-objective optimization process.
[0109] The key non-dominated sorting mechanism in NSGA-II achieves candidate solution ranking and crowding estimation in a parallel and accelerated manner, thereby improving the efficiency of large-scale population processing. Its main process includes: ① Dominance Relationship Determination (Parallel Implementation) Based on the Pareto dominance relationship between multi-objective solution vectors, the dominance count and the set of individuals dominated by each individual are calculated in parallel.
[0110] ②Pareto Classification Based on the dominance relationship, multiple non-dominated frontiers are constructed from the bottom up, and individuals are assigned a level in turn. The lower the level, the stronger its dominance and the more likely it is to become the optimal solution.
[0111] ③ Crowding distance estimation For solutions within each level frontier, they are sorted along each objective dimension, and the crowding degree is calculated using the normalized difference in neighborhood objective values. Boundary individuals are assigned infinite distances to encourage diverse distributions of solutions.
[0112] During the selection phase, this scheme first implements an elite retention strategy, preserving the individuals with the lowest non-dominated ranking and the largest crowding distance in the current population to the next generation, ensuring the continuous transmission of information about the global optimal solution. A tournament selection strategy is then applied to the remaining individuals in the population. This method, while preserving the convergence of the optimal solution, introduces sufficient random perturbation and diversity into the offspring population, effectively preventing premature convergence and improving overall search performance.
[0113] (3) Crossover method To enhance population diversity and uncover potentially high-quality fragments in the solution set, individuals in each generation were paired up, and a segmented probability method was used to design different crossover strategies for the Pro, Order, and Mach strings. The specific process is as follows: ① Crossing strategy for Pro strings For the Pro string, one of two mechanisms is randomly selected: Partially Ordered Crossover (POX) or Job-based Crossover (JBX) to preserve the relative order information in the original string and introduce new permutations and combinations of items.
[0114] The POX crossover mechanism aims to introduce new gene segment combinations while preserving the relative parental order. The specific steps are as follows: Step 1: Combine the projects Randomly divided into 2 groups and ; Step 2: Transfer the parent string China belongs to Add any element to the child string At the same position in the parent string China belongs to Add any element to the child string The same position in; Step 3: Parent string The remaining elements in the string are appended to the child string in turn. The remaining empty spaces; The remaining elements in the string are appended to the child string in turn. The remaining empty spaces.
[0115] Similar to the POX crossover mechanism, the specific steps of the JBX crossover mechanism are as follows: Step 1: Combine the projects Randomly divided into 2 groups and ; Step 2: Transfer the parent string China belongs to Add any element to the child string At the same position in the parent string China belongs to Add any element to the child string The same position in; Step 3: Parent string The remaining elements in the string are appended to the child string in turn. The remaining empty spaces; The remaining elements in the string are appended to the child string in turn. The remaining empty spaces.
[0116] For the string Pro, Figure 5An example of the POX crossover operator is shown, and an example of the JBX crossover operator is described.
[0117] ② Crossing strategy for the Order string For the "Order" string, the parent string randomly selects one of two crossover mechanisms: multi-point swapping and fragment swapping. Multi-point swapping can simultaneously introduce parent information at multiple discrete positions, enriching the sequence recombination pattern. The specific steps are as follows: Step 1: Randomly select a sequence length... Select above Dissimilar intersections The parent's order code is alternately divided into these positions. part.
[0118] Step 2: Offspring inherit segments alternately from the two parents: that is, segments 1, 3, 5... are taken from the parents. Sections 2, 4, 6... are taken from the parent text. This allows for the recombination of multiple fragments on a global scale.
[0119] Fragment exchange causes relatively concentrated perturbation to the overall sequence, preserving a large number of the original gene relative positions, which is beneficial for retaining the superior characteristics of the paternal parent in local assembly order. The specific steps are as follows: Step 1: Randomly determine a single continuous interval Where O is the order quantity; Step 2: Extract the parent data and Order segments within this section are swapped.
[0120] ③ Crossing strategy for Mach strings For the Mach string, the parent string randomly selects one of two crossover mechanisms: repeat pattern preservation or fragment swapping. The repeat pattern preservation mechanism ensures that frequently occurring high-quality allocation fragments are inherited, significantly accelerating algorithm convergence, while randomly sampling fills in the remaining positions to maintain diversity. The specific steps are as follows: Step 1: Identify “good patterns” (continuous or discrete machine number sequences) that frequently appear in the parent Mach string and make a significant contribution to the objective function.
[0121] Step 2: When generating offspring, these superior patterns are directly copied to the corresponding locations, and the remaining gene loci are filled by uniform crossover from the two parents.
[0122] (4) Variation methods To maintain population diversity and prevent premature convergence, mutation operations are performed on offspring individuals after the generation of a new generation. In the mutation method, random numbers are first generated for all offspring individuals. When the random number is less than the mutation probability, the mutation operation is performed on that individual to ensure the sparsity of mutation events. For the selected individual's Pro string, either swap mutation or neighborhood mutation is randomly performed. The specific steps of neighborhood mutation are as follows: Step 1: Randomly select three indices from the Pro string; Step 2: Randomly arrange the three selected indices to obtain new indices; Step 3: Adjust the Pro string according to the new index order.
[0123] Subgroup permutation mutation is performed on the Order string of the selected individual, exchanging subsequences among multiple solutions. This breaks the existing local optimum path while maintaining the legality and coherence within each project assembly level through global permutation, thus introducing a wider range of sequence perturbations while ensuring the overall structural feasibility. The specific steps are as follows: Step 1: Calculate the number of items that need to participate in the mutation based on the mutation intensity parameter; Step 2: Randomly select mutation locations from all items and perform cyclic permutations of these items among different individuals; A mutation strategy based on random subsequence resampling is applied to the Mach string of the selected individual. By combining adaptive scaling with uniform resampling, a balance is achieved between maintaining population search capability and accelerating convergence. The specific steps are as follows: Step 1: Calculate the number of genes that need to participate in the mutation based on the mutation intensity parameter; Step 2: Randomly select mutation sites from all genes as the Mach coding sites to be mutated; Step 3: For each selected Mach coding site, query the number of machines in the work center and re-extract new machine numbers.
[0124] Numerical simulation experiment (1) Experimental dataset To verify the effectiveness of the method, numerical simulation experiments were conducted. This scheme generates the CP-DHE dataset according to the following standards: The CP-DHE dataset includes 3 standards for the number of enterprises (2 / 3 / 4), 3 standards for the number of factories (2 / 3 / 4 / 5), 3 standards for the number of work centers (2 / 3 / 4), 3 standards for the number of machines (2 / 3 / 4), 3 standards for the number of projects (5 / 10 / 15), 3 standards for the number of orders (3 / 5 / 7), 3 standards for assembly levels (3 / 5 / 7), and 3 standards for processes (3 / 5 / 7). A standard combination. For example, the CP-DHE-A dataset of 3×2×2×1-5×5×5×5 represents a cluster with 3 enterprises, each enterprise with a maximum of 2 factories, each factory with a maximum of 2 work centers, each work center with a maximum of 1 machine, 5 projects to be processed in the cluster, each project with a maximum of 5 orders, each order with a maximum of 5 assembly levels, and each order with a maximum of 5 processes. More details about the CP-DHE-A dataset are shown in Table 2. The unit of time is hours, uniformly distributed within [2,20]; the scheduling date is assumed to be December 31, 2023; the model population size is set to 500, the crossover rate to 0.6, the mutation rate to 0.1, and the number of iterations to 200; the scheduling time granularity is 15 minutes.
[0125] Table 2 CP-DHE Dataset
[0126] In addition, assuming that the time-of-use pricing policies of the social power grid for different periods in the future are known. Time-of-use carbon emission factor prediction value and the predicted output of the cluster renewable energy system The time granularity is 15 minutes, such as Figure 6 .
[0127] (2) Figure 7 The power curve of a certain machining process is shown.
[0128] (3) Numerical simulation experiment To more clearly illustrate the algorithm's solution performance, Figure 8 shows the Paretofronts obtained from the CP-DHE-A dataset. (a) is a 3D diagram of the Paretofronts, (b) is a comparison of maximum completion time and carbon emission indicators, (c) is a comparison of maximum completion time and energy cost indicators, and (d) is a comparison of energy cost and carbon emission indicators. Based on practical needs, the solutions are categorized as: production efficiency type (as shown in Figures 9(a), (b), (c), and (d)), low carbon emission type, low energy cost type, and comprehensive energy efficiency type. The comprehensive energy efficiency type production scheduling solution is obtained by normalizing and summing all optimization objectives of all solutions to obtain the solution with the minimum value. Enterprise production schedulers can select the corresponding production scheduling solution based on actual conditions or decision weights.
[0129] For any parts not mentioned in this application, existing technologies may be used or referenced.
[0130] The various embodiments in this specification are described in a progressive manner. The same or similar parts between the various embodiments can be referred to each other. Each embodiment focuses on describing the differences from other embodiments.
[0131] The above description is merely an embodiment of this application and is not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.
Claims
1. A manufacturing cluster production scheduling method considering energy costs and carbon emissions, characterized in that, include: A mixed-integer linear programming model for job shop scheduling under peak power constraints is constructed. The model aims to minimize the delay penalty, total completion time, energy cost, and indirect carbon emissions, and includes constraints related to the process sequence, machine allocation, energy consumption, and carbon emissions in the manufacturing enterprise cluster. The mixed-integer linear programming model is solved using an optimization algorithm based on NSGA-II to obtain the Pareto optimal solution set. The solution process includes encoding and decoding based on a multi-layer structure of project-order-process-machine, selection operation based on non-dominated sorting and crowding calculation, and crossover and mutation operations designed for different encoded strings. Based on the Pareto optimal solution set, output production scheduling schemes corresponding to different optimization objective preferences.
2. The method according to claim 1, characterized in that, The construction of the mixed-integer linear programming model specifically includes: Define model parameters, including: project set, order set, process set, enterprise set, factory set, work center set, machine set, discrete time set, processing time and power curves of each process on different machines, transfer time between processes, time-of-use electricity price of social grid, time-of-use carbon emission factor, cluster renewable energy output forecast, order delivery time and assembly level; Define decision variables, including: whether a process is assigned to a specific machine (0-1 variable), whether the machine is running at a specific time (0-1 variable), the start and finish times of the process (0-1 variable), whether the process is delayed (0-1 variable), the processing sequence of processes on the same machine (0-1 variable), total cluster energy consumption, total energy cost, total carbon emissions, number of delayed orders, and maximum completion time. Establish an objective function that minimizes the weighted sum of delay penalties, energy costs, carbon emissions, and maximum completion time; Establish constraints, including: the process must be assigned to a machine, process completion time calculation, process sequence constraints within the same order, the same machine can only process one process at a time, lower assembly level orders under the same project are given priority, delay judgment, cluster equipment energy consumption calculation, energy cost calculation, carbon emission calculation, and maximum completion time calculation.
3. The method according to claim 1, characterized in that, The solution is obtained using an optimization algorithm based on NSGA-II, including: Initialize the algorithm parameters, including population size, crossover rate, mutation rate, and maximum number of iterations; An initial population is generated, in which each individual adopts a three-dimensional coding structure, including a project dimension coding sequence, an order assembly level coding sequence, and a machine allocation coding sequence; Decode individuals in the population, map the correspondence between processes and machines, and perform time-series scheduling and performance evaluation based on assembly level, order sequence, and machine availability; Based on non-dominated ranking and crowding calculation, individuals in the population are evaluated and selected; Perform crossover and mutation operations on the selected individuals to generate a new generation of population; Repeat the iterative process until the maximum number of iterations is reached, and output the final Pareto optimal solution set.
4. The method according to claim 3, characterized in that, The three-dimensional coding structure includes: Project coding generates a coding sequence describing the order of projects to which a process belongs by globally and randomly rearranging all processes. Order assembly hierarchy coding: For each project, a sorting code for orders within each hierarchy is generated according to its assembly hierarchy structure. Machine assignment coding randomly assigns an available machine number to each process within its respective work center.
5. The method according to claim 3, characterized in that, The crossover operation includes: For the project's encoded string, randomly select a portion for mapping crossover or use a block-based crossover mechanism for crossover; For the order assembly level encoding string, randomly select a multi-point interchange or fragment interchange mechanism for cross-interaction; The machine is assigned an encoded string, and a random selection mechanism is used to retain the repeating pattern or perform a fragment swapping process.
6. The method according to claim 3, characterized in that, The mutation operation includes: For the project's encoded string, randomly perform either swap mutation or neighborhood mutation; For the order assembly level encoding string, perform subgroup permutation mutation; Assign an encoded string to the machine and perform mutation based on random subsequence resampling.
7. The method according to claim 1, characterized in that, The output production scheduling scheme includes: The Pareto optimal solution set is normalized, and the solution schemes are classified into production efficiency type, low carbon emission type, low energy cost type and comprehensive energy efficiency type according to actual decision-making needs. It provides Gantt charts, time-of-use electricity consumption, time-of-use carbon emissions, and time-of-use energy costs corresponding to different types of solution schemes.
8. A computer-readable storage medium having a program stored thereon, characterized in that, When the program is executed by the processor, it implements the steps of the method as described in any one of claims 1-7.
9. An electronic device comprising a memory, a processor, and a program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps of the method as described in any one of claims 1-7.