CN117196189A - Work plan and work schedule determining method, system and device - Google Patents

Work plan and work schedule determining method, system and device Download PDF

Info

Publication number
CN117196189A
CN117196189A CN202311080034.1A CN202311080034A CN117196189A CN 117196189 A CN117196189 A CN 117196189A CN 202311080034 A CN202311080034 A CN 202311080034A CN 117196189 A CN117196189 A CN 117196189A
Authority
CN
China
Prior art keywords
output
model
decision module
scheduling
optimization model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311080034.1A
Other languages
Chinese (zh)
Inventor
王攀
武娜
毛坤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Huawei Cloud Computing Technology Co ltd
Original Assignee
Shenzhen Huawei Cloud Computing Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Huawei Cloud Computing Technology Co ltd filed Critical Shenzhen Huawei Cloud Computing Technology Co ltd
Priority to CN202311080034.1A priority Critical patent/CN117196189A/en
Publication of CN117196189A publication Critical patent/CN117196189A/en
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The application provides a method, a system and a device for determining a work plan and a work schedule. In an embodiment, a system includes an input module to determine first traffic feature data and second traffic features; the first decision module is used for selecting any one of the first proxy model and the first optimization model to output a working plan, wherein the input of the first proxy model and the first optimization model is first business characteristic data, and the output of the first proxy model and the first optimization model is the working plan; the second decision module is used for selecting any one of the second agent model and the second optimization model to output the work schedule; and the second agent model and the second optimization model are input into a working plan output by the second business characteristic data and the first decision module, and output into a working schedule. Therefore, the optimization model and the agent model are arranged in each layer of decision module, and the decision efficiency is improved to a certain extent through the selection of the optimization model and the agent model in the multi-layer decision module.

Description

Work plan and work schedule determining method, system and device
Technical Field
The present application relates to the field of computer technologies, and in particular, to a method, a system, and an apparatus for determining a work plan and a work schedule.
Background
Production planning and scheduling (also referred to as production scheduling) are a key link of a process enterprise in daily operation, and are also an important basis for production decisions of the process enterprise. At present, the production plan and the production schedule are more and more important in manufacturing enterprises, and the good production plan can enable the production to be orderly carried out, so that the resource utilization rate is improved, and the production and operation cost is reduced. Wherein the goal of generating a plan is to address what to do, how many of these two core issues. Scheduling, also known as scheduling, is generated by smart modeling of various constraints in the factory manufacturing process, including: the machine level detailed production is achieved under the constraint conditions of equipment, production lines, tool fixtures, materials, procedure connection, working calendars, KPI requirements and the like. Production planning and scheduling problems are typical double-layer decision problems in production, and production planning guides production scheduling.
Since the specific objects and time spans for which the production plan and the production schedule are directed are different, this results in conflicting production plans and production schedules, and respective optimizations may present an infeasible solution. Therefore, the production plan and the production schedule are integrated to be comprehensively optimized, and the method plays a vital role in solving the problem of the conflict between the production plan and the schedule. However, the actual production process is often affected by uncertainty factors, such as uncertainty in market demand, which results in undesirable or even infeasible optimal solutions for production planning and production scheduling. Thus, there is a need for an integrated optimization that addresses the uncertainty production plan and production schedule.
At present, in the process of optimizing the production plan and the production schedule, hierarchical decisions are made on the production plan and the scheduling problem from the perspective of the problem dimension, and the two sub-problems are respectively solved. The production plan (upper layer decision) is solved through one optimization model, the production schedule (lower layer decision) is solved through another optimization model, and guidance and feedback of the upper layer decision are added to the lower layer decision.
However, both production planning and production scheduling are iteratively solved using an optimization model, resulting in slower solution speeds.
The information disclosed in this background section is only for enhancement of understanding of the general background of the application and should not be taken as an acknowledgement or any form of suggestion that this information forms the prior art already known to a person of ordinary skill in the art.
Disclosure of Invention
The embodiment of the application provides a method, a system and a device for determining a work plan and a work schedule, wherein an optimization model and a proxy model are arranged in each layer of decision modules, and the decision efficiency is improved to a certain extent through the selection of the optimization model and the proxy model in the multi-layer decision modules.
In a first aspect, an embodiment of the present application provides a work plan and work schedule determining system, including:
The input module is used for determining first service characteristic data and second service characteristic based on the service data acquired from the service system;
the first decision module comprises a first optimization model and a first proxy model; the input of the first proxy model and the first optimization model is first business characteristic data, and the output is a work plan; the first decision module is used for selecting any one of the first proxy model and the first optimization model to output a working plan;
the second decision module comprises a second optimization model and a second proxy model; the input of the second agent model and the second optimization model is the second business characteristic data and the work plan output by the first decision module, and the output is the work schedule; the work schedule is a task distributed according to a work plan; the second decision module is used for selecting any one of the second agent model and the second optimization model to output the work schedule.
In the scheme, the optimization model and the agent model are arranged in each layer of decision module, and the decision efficiency is improved to a certain extent through the selection of the optimization model and the agent model in the multi-layer decision module.
In one possible implementation, the first decision module is configured to select to output the work plan using the first proxy model at the time of the first decision.
In the scheme, the proxy model is selected when deciding for the first time, so that the calculation cost is reduced, and the calculation efficiency is improved.
In one possible implementation, the second decision module is configured to select to output the work schedule using the second proxy model.
In the scheme, the proxy model is selected when deciding for the first time, so that the calculation cost is reduced, and the calculation efficiency is improved.
In one possible implementation, the system further includes:
the scheduling module is used for determining a first scheduling strategy and a second scheduling strategy based on the work plan output by the first decision module and the work schedule output by the second decision module; the first scheduling policy indicates whether to update the output of the first decision module, and when determining to update the output of the first decision module, the first proxy model or the first optimization model is selected; the second scheduling policy indicates whether to update the output of the second decision module, and selects a second proxy model or a second optimization model when determining to update the output of the second decision module;
the first decision module is used for selecting a model designated by the first scheduling strategy to output a working plan when determining to update the output of the first decision module according to the first scheduling strategy;
And the second decision module is used for selecting a model designated by the second scheduling policy to output the working schedule when determining to update the output of the second decision module according to the second scheduling policy.
In one possible implementation, the first scheduling policy is to select a first optimization model; the second scheduling policy is to select a second proxy model;
when the output of the second decision module is the output of the second agent model and the output of the first decision module is not updated for the first time, the second scheduling strategy is to select a second optimization model;
when the output of the second decision module is the output of the second optimization model and the output of the first decision module is not updated for the first time, the second scheduling strategy is to select a second agent model;
when the output of the first decision module is not updated a plurality of times in succession, the second scheduling policy is to select a second optimization model; wherein i is a positive integer of 2 or more.
In the scheme, for a second decision module, once the output of a first decision module is changed, a proxy model is adopted first; when the output of the first decision module is unchanged, an optimization model is adopted for the first time, and if the effect is not ideal, the optimization module is used, so that the number of times of using the optimization model can be reduced as much as possible, the calculation cost is reduced to a certain extent, and the calculation efficiency is improved.
In one possible implementation, the scheduling module is further configured to determine that the work schedule output by the first decision model and the work schedule output by the second decision model are decision results when the first scheduling policy indicates that the output of the first decision module is not updated and the second scheduling policy indicates that the output of the second decision module is not updated.
In one possible implementation, the first optimization model outputs a work plan after running according to a first running time length, and the second optimization model outputs a work schedule after running according to a second running time length, and the system further includes:
the scheduling module is used for selecting a first optimization model in the first scheduling strategy, selecting a second agent model in the second scheduling strategy, and updating the first operation time length at least based on the work plan output by the first decision module;
the scheduling module is used for not updating the output of the first decision module in the first scheduling strategy, selecting a second optimization model in the second scheduling strategy, and updating the second running time at least based on the working schedule output by the second decision module;
the scheduling module is used for selecting a first optimization model according to a first scheduling strategy, selecting a second optimization model according to a second scheduling strategy, and updating the first operation duration and the second operation duration based on the work plan output by the first decision module and the work schedule output by the second decision module.
In the scheme, according to the output of the second decision module and/or the first decision module, the operation time of the optimization model is increased or reduced, so that the reference value of a calculation result can be improved to a certain extent on one hand, and the calculation cost can be reduced to a certain extent on the other hand, and the calculation efficiency is improved.
In a second aspect, an embodiment of the present application provides a method for determining a work plan and a work schedule, including:
determining first service feature data and second service features based on service data acquired from a service system;
selecting any one of a first proxy model and a first optimization model in a first decision module to output a work plan; the input of the first proxy model and the first optimization model is first business characteristic data, and the output is a work plan;
selecting any one of a second agent model and a second optimization model in the second decision module to output a work schedule; the work schedule is a task distributed according to a work plan; the input of the second agent model and the second optimization model is the second business characteristic data and the working plan output by the first decision module;
and when the work plan and the work schedule are determined to be unnecessary to update, the work plan output by the first decision model and the work schedule output by the second decision model are used as decision results.
In the scheme, the optimization model and the agent model are arranged in each layer of decision module, and the decision efficiency is improved to a certain extent through the selection of the optimization model and the agent model in the multi-layer decision module.
In one possible implementation, selecting any one of the first proxy model and the first optimization model in the first decision module to output the work plan includes: at the time of first scheduling, the first proxy model is selected to output a work plan.
In the scheme, the proxy model is selected when deciding for the first time, so that the calculation cost is reduced, and the calculation efficiency is improved.
In one possible implementation, selecting any one of the second agent model and the second optimization model in the second decision module to output the work schedule includes: at the time of first scheduling, the second agent model is selected to output the work plan.
In the scheme, the proxy model is selected when deciding for the first time, so that the calculation cost is reduced, and the calculation efficiency is improved.
In one possible implementation, the method further includes:
determining a first scheduling strategy and a second scheduling strategy based on the work plan output by the first decision module and the work schedule output by the second decision module; the first scheduling policy indicates whether to update the output of the first decision module, and when determining to update the output of the first decision module, the first proxy model or the first optimization model is selected; the second scheduling policy indicates whether to update the output of the second decision module, and selects a second proxy model or a second optimization model when determining to update the output of the second decision module;
According to the first scheduling strategy, when the output of the first decision module is determined to be updated, selecting a model designated by the first scheduling strategy to output a work plan;
and according to the second scheduling strategy, when the output of the second decision module is determined to be updated, selecting a model designated by the second scheduling strategy to output the working schedule.
In one possible implementation, the first scheduling policy is to select a first optimization model; the second scheduling policy is to select a second proxy model;
when the output of the second decision module is the output of the second agent model and the output of the first decision module is not updated for the first time, the second scheduling strategy is to select a second optimization model;
when the output of the second decision module is the output of the second optimization model and the output of the first decision module is not updated for the first time, the second scheduling strategy is to select a second agent model;
the second scheduling policy is to select a second optimization model when the first scheduling policy indicates that the output of the first decision module is not updated a plurality of consecutive times; wherein i is a positive integer of 2 or more.
In the scheme, for a second decision module, once the output of a first decision module is changed, a proxy model is adopted first; when the output of the first decision module is unchanged, an optimization model is adopted for the first time, and if the effect is not ideal, the optimization module is used, so that the number of times of using the optimization model can be reduced as much as possible, the calculation cost is reduced to a certain extent, and the calculation efficiency is improved.
In one possible implementation, the first optimization model outputs a work plan after running according to a first running time length, and the second optimization model outputs a work schedule after running according to a second running time length; the method further comprises the steps of:
the first scheduling strategy is used for selecting a first optimization model, the second scheduling strategy is used for selecting a second agent model, and the first operation time length is updated at least based on the work plan output by the first decision module;
the output of the first decision module is not updated in the first scheduling strategy, the second scheduling strategy is used for selecting a second optimization model, and the second running time is updated at least based on the work scheduling output by the second decision module;
and the first scheduling strategy is used for selecting a first optimization model, the second scheduling strategy is used for selecting a second optimization model, and the first operation time length is updated based on the work plan output by the first decision module and the work schedule output by the second decision module.
In the scheme, according to the output of the second decision module and/or the first decision module, the operation time of the optimization model is increased or reduced, so that the reference value of a calculation result can be improved to a certain extent on one hand, and the calculation cost can be reduced to a certain extent on the other hand, and the calculation efficiency is improved.
In a third aspect, an embodiment of the present application provides a work plan and work schedule determining apparatus, including: at least one memory for storing a program; at least one processor for executing the memory-stored program, the processor being adapted to perform the method provided in the first aspect when the memory-stored program is executed.
In a fourth aspect, embodiments of the present application provide a work plan and work schedule determining apparatus, the apparatus running computer program instructions to perform the method provided in the first aspect. The apparatus may be, for example, a chip, or a processor.
In one example, the apparatus may include a processor, which may be coupled to a memory, read instructions in the memory and perform the method provided in the first aspect based on the instructions. The memory may be integrated into the chip or the processor, or may be separate from the chip or the processor.
In a fifth aspect, embodiments of the present application provide a computer storage medium having instructions stored therein which, when run on a computer, cause the computer to perform the method provided in the first aspect.
In a sixth aspect, embodiments of the present application provide a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method provided in the first aspect.
Drawings
FIG. 1 is a system architecture diagram of a decision making system provided by an embodiment of the present application;
FIG. 2 is a schematic diagram of a decision making application provided by an embodiment of the present application;
FIG. 3a is a schematic diagram of a model selection method according to an embodiment of the present application;
FIG. 3b is a schematic diagram I of a runtime update of an optimization model provided by an embodiment of the present application;
FIG. 3c is a second schematic diagram of a run-time update method of an optimization model according to an embodiment of the present application;
FIG. 3d is a schematic diagram III of a run-time update mode of an optimization model provided by an embodiment of the present application;
FIG. 4 is a schematic flow chart of iteration 1 provided by an embodiment of the present application;
FIG. 5a is a schematic diagram of a flow chart of the 2 nd iteration provided by an embodiment of the present application;
FIG. 5b is a second schematic flow chart of iteration 2 provided by an embodiment of the present application;
FIG. 6a is a schematic diagram of a flow chart of the 3 rd iteration provided by an embodiment of the present application;
FIG. 6b is a second schematic flow chart of the 3 rd iteration according to the embodiment of the present application;
Fig. 7 is a schematic view of a scenario of sheet metal production provided by an embodiment of the present application;
FIG. 8 is a schematic diagram of a device for determining a work plan and a work schedule according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a server 120 according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present application more apparent, the technical solutions of the embodiments of the present application will be described below with reference to the accompanying drawings.
In describing embodiments of the present application, words such as "exemplary," "such as" or "for example" are used to mean serving as examples, illustrations or explanations. Any embodiment or design described herein as "exemplary," "such as" or "for example" is not necessarily to be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary," "such as" or "for example," etc., is intended to present related concepts in a concrete fashion.
In the description of the embodiments of the present application, the term "and/or" is merely an association relationship describing an association object, and indicates that three relationships may exist, for example, a and/or B may indicate: a alone, B alone, and both A and B. In addition, unless otherwise indicated, the term "plurality" means two or more. For example, a plurality of systems means two or more systems, and a plurality of terminals means two or more terminals.
Furthermore, the terms "first," "second," and the like, are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating an indicated technical feature. Thus, a feature defining "a first" or "a second" may explicitly or implicitly include one or more such feature. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless expressly specified otherwise.
Hereinafter, some terms in this embodiment will be explained. It should be noted that these explanations are for the convenience of those skilled in the art, and do not limit the scope of the present invention.
Artificial intelligence (Artificial Intelligence, AI): is a branch of computer science, artificial intelligence attempts to understand the nature of intelligence, and to produce a new intelligent machine that can react in a manner similar to human intelligence, research in this field including robotics, language recognition, image recognition, natural language processing, and expert systems.
Optimization model (Optimization Model): models representing optimal solutions, determined by linear programming, nonlinear programming, dynamic programming, integer programming, and system science methods, are employed to find optimal solutions in a given region that can minimize or maximize a certain target. The optimization model may be, for example, a genetic algorithm model, a particle swarm algorithm.
Optimal Solution (optimal Solution): the best solution that can be achieved technically without sacrificing any of the total and sub-targets, i.e., the ideal solution that can be achieved for all of the total and sub-targets.
Initial Solution (Initial Solution): the mathematical programming model is used to accelerate the initial feasible solution of the solution process.
Machine Learning (ML): as a sub-field of artificial intelligence (Artificial Intelligence, AI). It is specially studied how a computer simulates or implements learning behavior of a human to acquire new knowledge or skills, and reorganizes existing knowledge structures to continuously improve own performance. It is an artificial intelligence core, which is the fundamental way to make computers intelligent. Machine learning involves inputting data into a machine learning algorithm and allowing it to learn from the data, thereby making accurate predictions or classifications of new data.
Proxy Model (Surrogate Model): one optimization method commonly used. Aiming at the practical problem, the high-precision model (such as an optimization model) has large calculated amount and is not easy to solve, and a simplified model with small calculated amount and rapid solution can be used for replacing the original model so as to accelerate the optimization process. The agent model is an algorithm in machine learning, and mainly aims to provide a solution for the problems of improving the training speed of the model, reducing the calculation complexity and the like. Specifically, the proxy model algorithm generally comprises the steps of: 1. building a proxy model through the data set: the proxy model algorithm will train a simple model through the dataset instead of the original, more complex model. 2. And (3) predicting: this proxy model can then be used to classify or regression predict new data samples.
And (3) supervised learning: is a machine learning task that infers a function from the labeled training data. Training data includes a set of training examples. In supervised learning, each instance is composed of an input object (typically a vector) and a desired output value (also called a supervisory signal). The supervised learning algorithm is a function that analyzes the training data and generates an inference that can be used to map out new instances. An optimal solution would allow the algorithm to correctly determine class labels for those instances that are not visible. This requires that the learning algorithm be formed in a "rational" way from a view from the training data to be invisible.
Advanced planning and Scheduling (Advanced Planning & Scheduling, APS): the method is based on theory of operation and aims to optimize and solve a series of problems of planning, scheduling, productivity, personnel, materials and the like in the production and manufacturing process through an advanced algorithm and a computer system so as to achieve the aim of factory intelligent and lean manufacturing. APS include advanced planning (Advanced Planning, AP) and advanced scheduling (Advanced Scheduling, AS), respectively, for production planning and production scheduling, where the goal of the production planning is to solve what to do, how many of these two core issues. Production scheduling, also known as scheduling, involves the smart modeling of various constraints in the factory manufacturing process, including: the machine level detailed production is achieved under the constraint conditions of equipment, production lines, tool fixtures, materials, procedure connection, working calendars, KPI requirements and the like. The production planning and production scheduling problem is a typical double-layer decision problem in production, and the production scheduling is guided by the result of the production planning.
Collecting batches: after accumulating orders for a period of time, the products with the same model are produced together after being concentrated as much as possible.
Enterprise resource planning (enterprisere source planning, ERP): the unified business management information platform is provided, all resources and information on supply and demand chains inside and outside an enterprise are managed in a unified way, and the integration can eliminate various information gaps and information islands caused by division of departments inside the enterprise.
The production execution system (Manufacturing Execution System, MES) begins with an underlying data collection, through process monitoring and on-line management, and up to cost-related data management. Wherein, the process monitoring focuses on the monitoring of material conveying and quality indexes between production flows and technological processes. Based on real-time data of the production process, the method utilizes the configuration technology of an MES system to realize real-time monitoring of the production progress, process quality and material consumption of production areas such as a production workshop, a power energy workshop, an auxiliary material warehouse, a finished product warehouse and the like.
Bill of materials (bill of materials, BOM): the list of parts and the composition structure required by the product are the complete combination of the sub-parts required by producing one product and the number of parts in the product.
Production planning: the method is a management method for enterprises to arrange and organize various works in the production process according to a certain plan and program so as to achieve the best production benefit and economic benefit. The production plan is formulated based on the production targets and market demands of enterprises, and the time, quantity, variety, quality, cost and other requirements of the production plan are formulated. The implementation of the production plan refers to organizing various works in the production process according to the requirements of the production plan, including raw material purchase, production scheduling, production processing, product inspection and the like. The monitoring of the production plan refers to monitoring and controlling various works in the production process, and timely finding and solving the problems in the production process, so as to ensure the smooth implementation of the production plan.
Production scheduling: the method is a specific implementation process of the production plan, and is a process of converting the production plan into specific production tasks and distributing the specific production tasks to each production link for production. Production scheduling requires consideration of various factors such as the utilization rate of production equipment, the flow of production process, the number and skill of production personnel, etc. When the production scheduling is performed, the enterprise needs to determine the time and the number of the production tasks based on the actual conditions of the production plan and the production links so as to ensure the smooth completion of the production tasks.
Ground service: ground service is mainly a collective term for ground workers in the aerospace industry. The method mainly comprises the posts of check-in, security check, VIP customer service, allocation, ticket selling, easy boarding and the like. The general work content of the airlines in China is to check passengers to report, check certificates, load luggage, distribute seats and take out tickets at an airport counter.
Ground service scheduling: scheduling refers to scheduling the work-on (day-off) and shift (shift) of the ground staff for a period of time according to a certain rule (in other words, scheduling refers to deciding which day to work and which time to work is from several points to several points for each staff). Wherein, do the rest: the rest is to indicate that the personnel go to work and rest according to a certain rule. For example, many people do five rest for two days after working continuously for five days. For ground staff, due to longer working time, the mode of first-break and second-break is adopted for working. Shift period: the shift indicates the time of the person going to and from each shift, each shift has a fixed time to work, and the time to work can be fixed (such as 8:00-20:00) or flexible (depending on the flight volume).
Ground dispatch: based on the results of the scheduling, the staff on duty every day is certain, and dispatching refers to assigning specific tasks (tasks) to be executed to the staff on duty every day. Wherein each task is a specific job associated with flight take-off and landing, with a fixed start-end time. For example, the start time of the check-in task is 40 minutes before the departure of the flight, and the end time is 10 minutes before the departure.
The production quantity index is as follows: is a core index of a production plan, and refers to the quantity of products required to be produced by an enterprise in a certain time. The production quantity index is formulated by considering factors such as market demand, production capacity, raw material supply and the like so as to ensure the rationality and feasibility of the production plan.
Production cycle index: refers to the time required by an enterprise to complete a batch of products, and includes production preparation time, production time, delivery time, etc. The production cycle index is formulated by considering factors such as production flow, production equipment, personnel and equipment and the like so as to ensure the smooth proceeding of the production plan.
The production cost index is as follows: refers to the cost of an enterprise to produce a quantity of product, which includes both direct and indirect costs. The direct cost includes costs of raw materials, manpower, energy sources and the like directly related to the production of the product, and the indirect cost includes costs of management fees, depreciation fees, tax fees and the like indirectly related to the production of the product. The production cost index is formulated by considering factors such as production efficiency, raw material price, labor cost and the like so as to ensure the economic benefit of a production plan.
Production quality index: refers to the quality level of the product produced by enterprises, and comprises aspects of appearance, size, performance and the like of the product. The production quality index is formulated by considering factors such as the use environment, market demand and the like of the product so as to ensure the quality of the product of the production plan.
Production efficiency index: the ratio of the number of products produced by an enterprise in a certain time to the production cost is referred to as the ratio, and the ratio reflects the production efficiency level of the enterprise. The production efficiency index is formulated by considering factors such as the efficiency of production equipment, personnel allocation and the like so as to ensure the production efficiency of a production plan.
Customer order on-time delivery rate: equal to 100% of the number of orders in the statistical period that on time completed the production plan.
The product sleeve rate is uniform: the number of actual product turnings/the planned number of product turnings. The product has a plurality of parts, and 1 product can be formed after the plurality of parts are assembled, so if the parts are absent, there is no way to obtain the product.
Yield line mobility: the actual line run time/expected line run time is 100%.
The production plan is long-period, the time span is generally month/week/day, the update frequency is low, and the requirement on the plan result is high; production scheduling is short-term, scheduling in the day is generally realized, the update frequency is high, the requirement on the planning result is low, and the executable is emphasized more. The goals of production schedule and production schedule are conflicting, the production schedule is not oriented to delivery, the delivery is prioritized, the batch collection is not needed, and the production schedule is oriented to delivery, and the batch collection is needed according to the output. In addition, production planning and production scheduling are strongly coupled because, although the production planning emphasizes completion, it is necessary to start work according to the production scheduling to ensure. This is a typical bi-layer decision optimization problem.
In the double-layer decision optimization problem, for convenience of description and distinction, the decision is marked as an upper layer decision and a lower layer decision; the lower level decision depends on the outcome of the upper level decision. For example, upper level decisions may be used to decide a production plan and lower level decisions may be used to decide a schedule. Under the double-layer decision optimization problem, three-layer solving modes generally exist:
mode (a): and comprehensively solving two problems in the same model, for example, comprehensively modeling and solving a month plan and a field scheduling problem of sheet metal machining, and directly deciding the sheet metal production and the machining sequence of each shift of each production line. The solution of the method (a) has the highest quality, but the solution has high complexity, large calculation amount and long time, and is often difficult to solve.
Mode (b): and carrying out layered decision on the production plan and the scheduling problem from the aspect of problem dimension, and respectively solving the two sub-problems. The method (b) firstly makes a production plan (upper layer decision) and then performs production scheduling (lower layer decision), but omits information transmission and feedback between the upper and lower layers, and has the advantages of poor solution quality, small operation amount and high operation speed.
Mode (c): on the basis of the mode (b), guidance and feedback are added between the upper layer problem decision and the lower layer problem decision, the solution quality is better, and the calculation amount is balanced compared with the modes (a) and (b). However, if the production plan and schedule are both solved by using the optimization model, the iteration number increases and the time consumption increases.
Therefore, a two-layer decision optimization method is needed.
In order to solve the above problems, the embodiment of the present application provides the following decision method.
First, a decision layer is provided, which comprises an upper layer decision module (which may be referred to as a first decision module in some possible cases) and a lower layer decision module (which may be referred to as a second decision module in some possible cases). Wherein the upper layer decision module includes an upper layer optimization model (which may be referred to as a first optimization model, in some possible cases) and an upper layer proxy model (which may be referred to as a first proxy model, in some possible cases); the lower decision module includes a lower optimization model (which may be referred to as a second optimization model, in some possible cases) and a lower proxy model (which may be referred to as a second proxy model, in some possible cases).
For the upper layer optimization model and the lower layer optimization model, the optimization model is a high-precision model, the calculated amount is relatively large, and the solution is slow; for the lower layer proxy model and the lower layer proxy model, the proxy model is equivalent to a simplified model of an optimized model, the calculated amount is relatively large, and the solution is quick.
The upper layer agent model is used for learning an upper layer optimization model, and is generally obtained through supervised learning training, and the input and the output of the upper layer agent model are respectively the same as the upper layer optimization model.
The lower layer agent model is used for learning a lower layer optimization model, and is generally obtained through supervised learning training, and the input and the output of the lower layer agent model are respectively the same as those of the lower layer optimization model. The inputs to the lower layer proxy model and the lower layer optimization model comprise outputs of the upper layer decision module.
Specifically, the output of any one of the upper layer optimization model and the upper layer proxy model is used as the output of the upper layer decision module; the output of any one of the lower-layer optimization model and the lower-layer proxy model is used as the output of the lower-layer decision module. In other words, in the embodiment of the present application, the output of the upper layer decision module is the output of the upper layer optimization model or the upper layer proxy model, and the output of the lower layer decision module is the output of the lower layer optimization model or the lower layer proxy model.
On the basis of an upper layer decision module and a lower layer decision module, the embodiment of the application can accelerate the solving of the problem on a certain program by carrying out model scheduling on the models in the upper layer decision module and the lower layer decision module. The model scheduling indicates a one-time solving process, and indicates the output of an upper layer decision module and a lower layer decision module.
After first-round iteration is carried out on the upper layer decision model and the lower layer decision model; subsequently, for each round of iterative process, an upper layer scheduling policy (which may be referred to as a first scheduling policy in some possible cases) and a lower layer scheduling policy (which may be referred to as a second scheduling policy in some possible cases) of the round of iteration may be determined based on the outputs of the upper layer decision module and the lower layer decision module of the previous round; the upper layer scheduling strategy indicates whether to update the output of the upper layer decision module, and when the output of the upper layer decision module is determined to be updated, an upper layer agent model or an upper layer optimization model is selected; the lower layer scheduling policy is used for indicating whether to update the output of the lower layer decision module, and selecting a lower layer proxy model or a lower layer optimization model when determining to update the output of the lower layer decision module.
And when the upper layer scheduling strategy indicates that the output of the upper layer decision module is not updated and the lower layer scheduling strategy indicates that the output of the lower layer decision module is not updated, determining the output of the upper layer decision model and the lower layer decision module of the lower round as a decision result.
Otherwise, re-selecting the model according to the upper layer scheduling strategy and the lower layer scheduling strategy; the specific process can be that according to the upper layer scheduling strategy of the round, when the output of the upper layer decision module is determined to be updated, the model designated by the upper layer scheduling strategy is selected to be output; and selecting a model designated by the lower-layer scheduling strategy to output when determining to update the output of the lower-layer decision module according to the lower-layer scheduling strategy of the round.
Illustratively, in the first iteration, the model scheduling adopts an upper layer agent model and a lower layer agent model to make decisions in consideration of the fact that the operation speed of the agent model is high.
In specific implementation, based on the output of the upper layer decision module and the lower layer decision module of the previous round, the manner of determining the upper layer scheduling policy and the lower layer scheduling policy of the present round may be:
based on the outputs of the upper and lower decision modules of the previous round, it is determined whether the current round updates the upper decision result (which may be referred to as a first decision result, in some possible cases) of the output of the upper decision module and whether the lower decision result (which may be referred to as a second decision result, in some possible cases) of the output of the lower decision module. And determining an upper layer scheduling strategy and a lower layer scheduling strategy of the round based on the upper layer judging result and the lower layer judging result of the round.
Illustratively, when determining to update the output of the upper layer decision module, the upper layer scheduling policy is to select an upper layer optimization model, and the lower layer scheduling policy is to select a lower layer proxy model; when the output of the upper layer decision module is not updated for the first time and the output of the lower layer decision module of the previous round is the output of the lower layer proxy model, the upper layer scheduling policy is the output of the upper layer decision module which is not updated for the 1 st time, and the lower layer scheduling policy is the lower layer optimization model; when the output of the upper layer decision module is not updated for the first time and the output of the lower layer decision module of the previous round is the output of the lower layer optimization model, the upper layer scheduling policy is the output of the upper layer decision module which is not updated for the 1 st time, and the lower layer scheduling policy is the lower layer agent model; and determining that the output of the upper layer decision module is not updated continuously for a plurality of times, wherein the lower layer scheduling strategy is to select a lower layer optimization model.
In summary, in the embodiment of the application, the agent model is introduced into each layer of decision module, and then, the models in the upper layer of decision module and the lower layer of decision module are selected, so that the decision efficiency is provided to a certain extent.
It should be noted that, the upper layer decision module and the lower layer decision module are merely examples, in practical application, more layers of decision modules can be set in combination with practical requirements, and each layer of decision module is provided with an optimization model and a proxy model.
Only the method is outlined here, see the description below for details.
Illustratively, the upper layer decision module outputs the work schedule through an upper layer optimization model or an upper layer proxy model, and the lower layer decision module outputs the work schedule through a lower layer optimization model or a lower layer proxy model. The work schedule is used for distributing tasks according to a work plan.
Illustratively, the work schedule may be a production schedule, and the work schedule may be a production schedule; illustratively, the production plan may decide the type and number of sheet metal to be produced each day for 30 days in the future for the monthly plan, and the production schedule may output the scheduling result for the production tasks and order of the production line for 4 days in the future for the minute level.
Illustratively, the work schedule may be a ground work schedule, and the work schedule may be a dispatch of the ground work.
It should be noted that, the work plan and the work schedule are merely examples, and not particularly limited, and in practical application, the outputs of the upper layer decision module and the lower layer decision module may be designed in combination with the actual requirements. In the embodiment of the application, the work schedule is taken as the output of the upper layer decision module, and the provided scheme is described by taking the output of the lower layer decision module as an example.
Next, a decision system to which the work plan and work schedule determining method provided by the embodiment of the present invention may be applied will be described. Fig. 1 shows an architecture example diagram of a decision making system according to an embodiment of the present invention. The embodiment of the invention provides a work plan and work schedule determining method which can be applied to a system architecture diagram shown in fig. 1. As shown in fig. 1, decision system 100 includes a terminal device 110 and a server 120.
The terminal device 110 may be, but not limited to, various personal computers, notebook computers, smart phones, tablet computers, and intelligent robots. Exemplary embodiments of terminal devices involved in the present solution include, but are not limited to, electronic devices that host iOS, android, windows, hong system (Harmony OS), or other operating systems. The embodiment of the invention does not limit the type of the electronic equipment in detail.
Wherein the server 120 may be a server cluster. In one example, the server involved in the present solution may be used to provide a cloud service, which may be a server or a super terminal that may establish a communication connection with other devices and may provide an operation function and/or a storage function for the other devices. The server involved in the scheme is a hardware server, and can be a rack server, a high-density server or a whole cabinet server.
Wherein the terminal device 110 communicates with the server 120 via a network. The network may be a wired network or a wireless network.
In one possible scenario, the server 120 may be a cloud (a software platform that adopts an application virtualization technology (Application Virtualization), and integrates multiple functions of software searching, downloading, use, management, backup, etc.); when the cloud management platform and the data center are specifically used, the server 120 deploys, and then the terminal equipment 110 and the cloud interact through the cloud management platform; in addition, the data center may deploy nodes, wherein the nodes in the data center may be virtual machine instances, container instances, physical servers, and the like; in a data center, the number of nodes is typically massive.
In the embodiment of the application, on one hand, the node can be used for model training, such as training of an upper-layer proxy model and a lower-layer proxy model; in one possible scenario, when the model is large in scale, the model may be distributed across multiple nodes for parallel training based on the idea of model parallelism. In another possible scenario, the model may be trained at 1 node. In the embodiment of the application, the upper layer proxy model and the lower layer proxy model are relatively simple models, so that model training can be performed on 1 node.
On the other hand, nodes may be used to deploy trained models, such as an upper layer proxy model and a lower layer proxy model. The deployed model may become an AI application or part of an AI application. The user may access the AI application online through a Web page run by a browser installed by the terminal device 110 or by a client app installed by the terminal device 110, and when the AI application is used, a model deployed at the node 312 may be invoked by way of an online call to provide a response. Thereby, the method is used for the treatment of the heart disease. The reasoning of the online request data can be realized through the cloud management platform and the trained model, and the reasoning result is returned. In the process of providing online service pairs by using the trained AI model, the cloud management platform 311 can charge based on the calling times of the model and also can charge based on the resource consumption inferred by the AI model.
In some possible implementations, the server 120 may be deployed with decision software for implementing the solutions provided by the embodiments of the present application.
In one possible scenario, as shown in fig. 2, the decision application may include a configuration management module 1201, a scheduling module 1202, an input module 1203, an upper layer decision module 1204, a lower layer decision module 1205, and a storage module 1206.
The configuration management module 1201 can be used for acquiring service data from a service system, and further can also be used for converting a data format so as to meet subsequent processing requirements; wherein, as shown in FIG. 2, the business system can comprise a BOM system, an EPR system and an MES system; further, the user may perform parameter configuration based on actual requirements, for example, parameters that may be configured are as follows:
iterative stop conditions (for deciding whether to stop scheduling models in the upper layer decision module 1204 and the lower layer decision module 1205); for example, the iteration stop condition may be reaching a run time or a number of iterations.
The upper layer stop update condition, such as a target value of the upper layer optimization index or more or less; for example, assuming the output of the upper level decision module 1204 is a production plan, the upper level optimization index may be a quantitative index, a production cycle index, a production cost index, a production efficiency index. Here, the upper-layer optimization index is merely an example, and may be specifically determined in conjunction with actual requirements, which is not specifically limited in the embodiment of the present application.
A lower layer stop update condition, such as a target value of the lower layer optimization index or more or less; illustratively, assuming the output of the lower decision module 1205 is a production schedule, the lower optimization criteria may be a production quality criteria, a customer order on-time delivery rate, a product rate, a line activity, a production cycle criteria, and so on. Here, the lower optimization index is merely an example, which may be specifically determined in conjunction with actual requirements, and the embodiment of the present application is not specifically limited thereto.
The service characteristic data (for convenience of description and distinction, may be referred to as upper layer service characteristic data, and may also be referred to as first service characteristic) input by the upper layer decision module 1204;
the service feature data (for convenience of description and distinction, may be referred to as lower service feature data, or may be referred to as a second service feature) input by the lower decision module 1205;
whether only the lower decision module 1205 is updated (if the lower decision module 1205 is set to be updated, the user needs to input the production plan).
It should be noted that the above-configured parameters are merely examples, and may be specifically determined in conjunction with actual requirements, for example, a target index value of a comprehensive evaluation index (for evaluating whether to update the operation time periods of the upper-layer optimization model and the lower-layer optimization model) may also be set; alternatively, a target value of an upper evaluation index (for evaluating whether to update the operation time length of the upper optimization model) and a target value of a lower evaluation index (for evaluating whether to update the operation time length of the lower optimization model) may be set. Illustratively, the composite evaluation index may include at least a portion of an upper-level optimization index and a lower-level optimization index, the upper-level evaluation index may include at least a portion of the upper-level optimization index, and the lower-level evaluation index may include at least a portion of the lower-level optimization index.
In addition, the configuration management module 1201 may also display the production plan output by the upper layer decision module 1204 and the production task output by the lower layer decision module 1205.
Illustratively, the configuration management module 1201 may include a data acquisition unit and a User Interface (UI) configuration unit.
The data acquisition unit is used for acquiring service data, and further can also convert data formats, so that subsequent processing requirements are met.
The UI configuration unit is configured to provide a UI interface, and the user may display, through the terminal device 110, the UI interface to configure parameters, where the configured parameters are not described herein. In addition, the UI interface may also display the production plan output by the upper layer decision module 1204 and the production task output by the lower layer decision module 1205.
The input module 1203 is configured to determine upper layer service feature data input to the upper layer decision module 1204 and lower layer service feature data input to the lower layer decision module 1205. The upper layer service feature data and the lower layer service feature data may be partially or completely the same, and specifically need to be determined in combination with actual requirements, which is not specifically limited in the embodiment of the present application.
The storage module 1206 is configured to store outputs of the upper layer decision module 1204 and the lower layer decision module 1205, and the configuration management module 1201 and the scheduling module 1202 may call the storage module 1206 to obtain the outputs of the upper layer decision module 1204 and the lower layer decision module 1205 for processing.
The scheduling module 1202 is configured to determine, for each round of iteration, an upper layer scheduling policy and an upper layer scheduling policy of the round when it is determined that the iteration stop condition is not satisfied. The upper layer scheduling policy is used for indicating whether to update the output of the upper layer decision module 1204, and if so, an upper layer optimization module or an upper layer proxy module is adopted; the lower layer scheduling policy is used to indicate whether to update the output of the lower layer decision module 1205, and if the output of the lower layer decision module 1205 is updated, the lower layer optimization module or the lower layer proxy module is adopted.
It should be noted that, in the embodiment of the present application, several iterations are required, as shown in fig. 3a, for the iteration of the 1 st round, the upper layer scheduling policy may be used to indicate that the upper layer proxy model is adopted, and the lower layer scheduling policy may be used to indicate that the lower layer proxy model is adopted. This manner is merely an example and is not intended to be limiting in any way.
For iteration of round 2, when it is determined that the iteration stop condition is not satisfied, the upper layer scheduling policy and the lower layer scheduling policy of the round may be determined based on the outputs of the upper layer decision model and the lower layer decision module 1205 of the previous round.
Illustratively, in the case where the upper level scheduling policy indicates to update the output of the upper level decision module 1204 (such as a work plan), an upper level optimization model is employed; correspondingly, the lower layer scheduling policy adopts a lower layer proxy model. In this way, after the output of the upper decision module 1204 is updated, the lower agent model with smaller calculation cost is adopted to make decisions, so that only one optimization model is used for each iteration, and the calculation efficiency is improved to a certain extent.
Illustratively, in the case where the upper-level scheduling policy indicates that the output of the upper-level decision module 1204 (such as a work plan) is not updated for the first time, the output of the lower-level decision module 1205 of the previous round is the output of the lower-level optimization module; correspondingly, the lower layer scheduling policy adopts a lower layer proxy model. In this way, after the output of the upper layer decision module 1204 is determined not to be updated for the first time, a lower layer proxy model with smaller calculation cost is adopted to make decisions, so that the calculation efficiency is improved to a certain extent.
Illustratively, in the case where the upper-layer scheduling policy indicates that the output of the upper-layer decision module 1204 (such as a work plan) is not updated for the first time, the output of the lower-layer decision module 1205 of the previous round is the output of the lower-layer proxy module; correspondingly, the lower layer scheduling strategy adopts a lower layer optimization model. In this way, after the output of the upper decision module 1204 is determined not to be updated for the first time, a lower agent model with smaller calculation cost is adopted to make decisions, and when the obtained result has smaller reference value, a lower optimization model with larger calculation cost is adopted, so that the calculation precision is improved to a certain extent.
It should be noted that, when the upper layer scheduling policy indicates that the output of the upper layer decision module 1204 is not updated, the output of the upper layer decision module 1204 of the current round is the output of the upper layer decision module 1204 of the previous round.
It should be understood that when the scheduling module 1202 determines that the output of the upper layer decision module 1204 and the output of the lower layer decision module 1205 are not updated in this round, the output of the upper layer decision module 1204 and the output of the lower layer decision module 1205 in the previous round are taken as decision results.
Wherein, based on the output of the upper layer decision model and the lower layer decision module 1205 of the previous round, the upper layer scheduling policy and the lower layer scheduling policy of the present round are determined, which can be implemented by the following ways:
based on the outputs of the upper and lower decision models 1205 of the previous round, it is determined whether the upper and lower stop update conditions are satisfied.
If the upper layer stopping updating condition is not met, determining that the upper layer scheduling strategy is to select an upper layer optimizing module, and determining that the lower layer scheduling strategy is to select a lower layer agent model.
If the upper layer stop updating condition is met, determining that the upper layer scheduling policy is not to update the output of the upper layer decision module 1204; if the lower layer stopping updating condition is met, the corresponding outputs of the upper layer decision module 1204 and the lower layer decision module 1205 are decision results; if the lower layer stop update condition is not satisfied, it is determined whether the lower layer decision module 1205 of the previous round adopts a lower layer proxy model, if so, it is determined that the lower layer scheduling policy adopts a lower layer optimization model, otherwise, it is determined that the lower layer scheduling policy adopts a lower layer proxy model.
For iteration round 3, see iteration round 2. Also included are cases outside of iteration round 2, illustratively where the upper level scheduling policy indicates that the output of the upper level decision module 1204 (such as a work plan) is not updated a number of times in succession; correspondingly, the lower layer scheduling strategy adopts a lower layer optimization model. In this way, after the output of the upper decision module 1204 is determined not to be updated for the first time, a lower agent model with smaller calculation cost is adopted to make decisions, and when the obtained result has smaller reference value, a lower optimization model with larger calculation cost is adopted to update continuously, so that the calculation precision is improved to a certain extent. It can be seen that, under the condition that the output (such as the work plan) of the upper decision module 1204 is determined not to be updated for the first time, the lower scheduling policy is to use the lower proxy model first, then, if it is determined that the output of the lower decision module 1205 needs to be continuously updated based on the output of the lower proxy model, the lower scheduling policy is to use the lower optimization model, and then, only the output of the lower optimization model needs to be updated multiple times.
By adopting the decision mode, the solving time of the optimization model can be reduced, and the decision time is reduced to a certain extent.
Illustratively, as shown in fig. 3a, the specific process of the scheduling module 1202 determining the upper layer scheduling policy and the lower layer scheduling policy for the ith (1 or more) iteration may be:
judging whether an iteration stop condition is met; if not, judging whether the upper layer updating condition is met; if yes, updating the output of the upper layer decision module, wherein the upper layer scheduling strategy is to select an upper layer optimization model, and the lower layer scheduling strategy is to select a lower layer agent model; if not, determining that the upper layer scheduling policy is not to update the output of the upper layer decision module 1204; on the basis, when the previous iteration adopts the lower-layer agent model, the lower-layer scheduling strategy is determined to be the lower-layer optimization model, and when the previous iteration adopts the lower-layer optimization model, the lower-layer scheduling strategy is determined to be the lower-layer agent model.
In addition, in the embodiment of the present application, the upper layer optimization model outputs the work plan after reaching the operation time (for convenience of description and distinction, may be referred to as an upper layer operation time and may also be referred to as a first operation time). The lower-level optimization model outputs the work schedule after reaching the run-time (which may be referred to as a lower-level run-time, and may be referred to as a second run-time for ease of description and distinction).
When the upper layer optimization model is used for the first time, the upper layer optimization model can output a working plan after being operated according to the initial upper layer operation time length. When the lower-layer optimization model is used for the first time, the lower-layer optimization model can output a working plan after being operated according to the initial lower-layer operation time length.
In the embodiment of the present application, in a possible case, the scheduling module 1202 is configured to update, for each round of iteration, the upper-layer operation duration and the lower-layer operation duration based on the output of the upper-layer decision module 1204 and/or the output of the lower-layer decision module 1205 of the previous round when determining that the upper-layer scheduling policy of the round is to use the upper-layer optimization model and the lower-layer scheduling policy of the round is to use the lower-layer optimization model, so that the upper-layer optimization model operates according to the updated upper-layer operation duration and then outputs the operation plan, and the lower-layer optimization model operates according to the updated lower-layer operation duration and then outputs the operation plan.
Illustratively, there may be multiple ways to update the upper run length and the lower run length based on the output of the upper decision module 1204 and/or the output of the lower decision module 1205 of the previous round.
In one possible implementation, as shown in fig. 3b, the index value of the comprehensive evaluation index is determined based on the output of the upper decision module 1204 and/or the output of the lower decision module 1205 of the previous round; and updating the upper-layer operation time length and the lower-layer operation time length based on the difference value of the index value and the target value of the comprehensive evaluation index. If the smaller the difference value between the index value and the target value of the comprehensive evaluation index is, the better the result is, the upper-layer operation time length and the lower-layer operation time length can be reduced, and otherwise, the upper-layer operation time length and the lower-layer operation time length are increased.
In another possible implementation, as shown in fig. 3c, the index value of the upper layer evaluation index is determined based on the output of the upper layer decision module 1204 of the previous round; updating the upper-layer operation time based on the difference value between the index value and the target value of the upper-layer evaluation index; determining an index value of the lower evaluation index based on the output of the lower decision module 1205 of the previous round; and updating the lower-layer operation duration based on the difference value between the index value and the target value of the lower-layer evaluation index.
In another possible case, the scheduling module 1202 is configured to update, for each round of iteration, the upper-layer operation duration based on the output of the upper-layer decision module 1204 and/or the output of the lower-layer decision module 1205 of the previous round when determining that the upper-layer scheduling policy of the round is to use the upper-layer optimization model and the lower-layer scheduling policy is to use the lower-layer proxy model, so that the upper-layer optimization model operates according to the updated upper-layer operation duration and then outputs the working plan.
Updating the upper run time period based on the output of the upper decision module 1204 and/or the output of the lower decision module 1205 of the previous round may be seen in fig. 3 c.
In another possible case, the scheduling module 1202 is configured to, for each round of iteration, determine that the upper layer scheduling policy of the round is an upper layer proxy model, or, when the output of the upper layer decision model is not updated, the lower layer scheduling model is a lower layer optimization model, and update the lower layer operation duration of the lower layer optimization model based on the output of the upper layer decision module 1204 and/or the output of the lower layer decision module 1205 of the previous round, so that the lower layer optimization model operates according to the updated lower layer operation duration and then outputs the working plan.
Updating the upper run time period based on the output of the upper decision module 1204 and/or the output of the lower decision module 1205 of the previous round may be seen in fig. 3 d.
Illustratively, the scheduling module 1202 may include an automatic scheduling unit, a result evaluation unit, and an iteration state evaluation unit.
The iteration state evaluation unit is used for determining whether the iteration stop condition is met or not, and feeding back the result to the automatic scheduling unit; the result evaluation unit is configured to determine an upper reference index value of the upper evaluation index and a lower reference index value of the lower evaluation index based on the output of the upper decision module 1204 and the output of the lower decision module 1205 of the previous round, and feed back the upper reference index value and the lower reference index value to the automatic scheduling unit; the automatic scheduling unit is used for determining an upper layer scheduling strategy and a lower layer scheduling strategy of the 1 st round of iteration; and for each subsequent iteration, after determining that the iteration stop condition is not met, determining an upper layer scheduling strategy and a lower layer scheduling strategy of the round based on the information fed back by the result evaluation unit.
The upper decision module 1204 includes an upper optimization model and an upper agent model, which are used for selecting the upper optimization model or the upper agent model to output a working plan according to an upper scheduling policy. In one possible example, the upper layer decision module 1204 includes an upper layer model scheduling layer, an upper layer optimization model, an upper layer proxy model, and an upper layer result management layer; the upper model scheduling layer is used for selecting any model of the upper optimization model and the upper agent model to make decisions based on an upper scheduling policy, and the upper result management layer is used for storing the model of each decision and the decision result output by the model.
In the embodiment of the application, the upper layer agent model can learn the upper layer optimization model. Wherein,
in one possible scenario, the upper layer proxy model is a trained model, specifically trained as follows:
a: acquiring a data set, wherein the data set comprises samples and labels corresponding to the samples, the samples are input of an upper-layer optimization model, and the labels of the samples are output of the upper-layer optimization model; b: for each sample in the data set, inputting the sample into an upper layer proxy model, and determining a decision result output by the upper layer proxy model; c: determining a loss value based on a decision result and a label corresponding to each sample in the data set; d: adjusting parameters of the upper layer proxy model based on the loss value; the above step B, C, D is then repeated.
In one possible scenario, when the server 120 is cloud, model training may be implemented through a cloud management platform. The specific process is as follows:
the cloud management platform provides a configuration interface. The terminal device 110 accesses the configuration interface to obtain the operation of the user on the configuration interface, and configures the model training task. The model training task indicates the location of the dataset, the location of the proxy model, configuration information of the node.
Wherein the data set comprises business feature data and labels of the business feature data, the labels being used to describe the work plan. The configuration interface may be an interface to access an AI-based development platform. The AI basic development platform is a one-stop AI development platform facing a developer, and can provide various capabilities in the whole AI development process. Illustratively, the capabilities provided by the AI-based development platform may include the following 6 major parts: data preprocessing, model construction and training, model management, model deployment, data optimization and model optimization updating. In practical application, a user can complete the development of an AI model and the deployment and management of AI application based on an AI basic development platform. The capabilities of the AI basic development platform can be integrated for the user to use the AI whole process, and can also provide independent functions for the user.
In specific implementation, a user accesses an AI basic development platform through a configuration interface, and configures model training tasks on the AI basic development platform.
In some possible cases, the user may determine the model training task through model building and training of the AI-based development platform.
In one example of this, the upper layer proxy model may be a model that is set for a preset by a person.
Model training tasks may include addresses of data sets (referred to as data addresses for purposes of illustration of data sources, for ease of description and distinction); in one example, the data set indicated by the data address may be a preprocessed data set, e.g., the data set may be a data set processed by a data preprocessing function provided by the AI-based development platform. In another example, the data set indicated by the data address may be a data set that has not been preprocessed, and the data set may be preprocessed subsequently by the AI-based development platform. The embodiment of the application is described by taking the first data set as the preprocessed data set as an example.
In a scenario that the data set is a data set processed through a data preprocessing function provided by the AI basic development platform, in specific implementation, a user can preprocess the data set through the data preprocessing function of the AI basic development platform to obtain a first data set. The preprocessing may include one or more of data selection, data annotation, data enhancement, data augmentation, data cleaning, cluster analysis, feature analysis, and the like.
The data set may be collected by the user in advance based on the actual application scenario, or may be an open source data set that has been formed in the industry. In some embodiments, a user may purchase an object storage module 1206object storage service (OBS), an object-based cloud storage module 1206, in advance at the cloud management platform, the user may store a data set in the OBS, and then read the data in the data set from the OBS while utilizing the functionality of data preprocessing provided by the AI-based development platform, and may perform one or more of data selection, data tagging, data enhancement, data augmentation, data cleansing, cluster analysis, feature analysis, and the like on the data based on demand.
The lower decision module 1205 includes a lower optimization model and a lower proxy model, and is configured to select the lower optimization model or the lower proxy model to output a working schedule according to a lower scheduling policy. In one possible example, the lower decision module 1205 includes a lower model scheduling layer, a lower optimization model, a lower agent model, and a lower result management layer; the lower model scheduling layer is used for selecting any model of the lower optimization model and the lower agent model to make decisions based on a second scheduling strategy, and the lower result management layer is used for storing the model of each decision and the decision result output by the model.
The lower layer agent model is a trained model, and the specific training mode refers to the upper layer agent model and is not repeated; the difference is that the samples in the dataset are input to the underlying optimization model and the labels of the samples are output from the underlying optimization model.
Next, a detailed description will be given of the work plan and work schedule determining method provided by the embodiment of the present invention. The present embodiment is applicable to an electronic device, and in particular, to the server 120.
First, the 1 st round of iteration is described, as shown in fig. 4, including the following steps:
Step 401, determining upper layer service feature data and lower layer service feature data based on service data acquired from a service system.
In the embodiment of the application, the upper layer business feature data and the lower layer business feature data can be the same or partially the same or completely different, and are determined by combining actual requirements, and the embodiment of the application is not particularly limited and is determined by combining actual conditions.
In the case where the upper decision-making module outputs a production plan and the lower decision-making module outputs a production schedule, as shown in fig. 2, the business system may be a BOM system, an ERP system, or an MES system.
The BOM system is used for storing components of a product, such as parts of the product. Correspondingly, the upper-layer business feature data and the lower-layer business feature data may include corresponding relations between the product and the parts (for explaining the parts required to compose the product), and substitute relations between the product and the parts (for explaining which parts of the product may be replaced).
The ERP system is used for describing order information (how many products are needed in what time), capacity information (how many products can be generated in unit time, such as 1 day, for example), the number of production lines, the types of production lines, the number of molds, the types of molds, the number of devices, the types of devices, and the number of people. Correspondingly, the upper layer business feature data and the lower layer business feature data can comprise order information and capacity information.
The MES system is used to account for, among other things, stock of materials (type of raw materials, number of raw materials), stock of finished products (finished parts or products have been generated), and generation (unfinished orders, finished parts, raw parts, products being produced). Correspondingly, the upper business feature data and the lower business feature data can comprise material stock, finished product stock and generation conditions.
Step 402, determining an upper layer scheduling strategy and a lower layer scheduling strategy of the round; the upper layer scheduling policy is to select an upper layer agent model, and the lower layer scheduling policy is to select a lower layer agent model.
Step 403, the upper layer scheduling policy based on the present round controls the upper layer decision module to select the upper layer proxy model, and the upper layer proxy model outputs the current work plan based on the upper layer service characteristic data as input.
And step 404, controlling a lower decision module to select a lower agent model based on the lower scheduling policy of the round, and outputting the current work schedule based on the lower business characteristic data and the current work schedule as input by the lower agent model, wherein the work schedule is used for realizing the work schedule.
Step 405, determining an upper layer judgment result of the present round (indicating whether to update the output of the upper layer decision model) and a lower layer judgment result of the present round (indicating whether to update the output of the lower layer decision model) based on the current work plan and the current work schedule.
Illustratively, an upper-layer update stop condition, such as an upper-layer target index value equal to or greater than an upper-layer evaluation index, may be set; and judging whether an upper-layer update stop condition is met based on the current work plan or the current work plan and the current work schedule, if so, not updating the current work plan, otherwise, updating the current work plan. It should be noted that, the upper layer update stop condition may be flexibly designed in combination with the actual requirement, and the embodiment of the present application is not specifically limited.
Illustratively, a lower-layer update stop condition may be set, such as an upper-layer target index value that is equal to or greater than the lower-layer evaluation index; and judging whether the lower-layer updating stop condition is met based on the current work schedule or the current work schedule and the current work schedule, if so, not updating the current work schedule, otherwise, updating the current work schedule by the lower-layer judging result. It should be noted that, the lower update stop condition may be flexibly designed in combination with the actual requirement, and the embodiment of the present application is not specifically limited.
Step 406, based on the upper layer judgment result and the lower layer judgment result of the present round, it is judged whether to stop updating the output of the upper layer decision module and the lower layer decision module at the same time, if yes, step 407 is executed, and if no, step 408 is executed. Iteration round 2 is performed.
Step 407, taking the current work plan and the current work schedule as decision results.
Step 408, iterate round 2.
First, a description will be given of the procedure of iteration 2, and there are 2 cases of iteration 2.
In one possible scenario, as shown in fig. 5a, the process of iteration 2 may comprise the steps of:
in step 511, the upper layer judgment result of the previous round indicates that the output of the upper layer decision module is not updated for the first time, the lower layer judgment result indicates that the output of the lower layer decision module is updated, and when the lower layer decision module of the previous round uses the lower layer proxy model, the upper layer scheduling policy of the previous round is determined to be the output of the upper layer decision module which is not updated, and the lower layer scheduling policy is the lower layer optimization model.
Step 512, determining the lower running duration of the present round of the lower optimization model based on the current work schedule of the previous round, or the current work schedule and the current work schedule of the previous round.
Illustratively, as previously described, the lower layer evaluation index may be set; specifically, determining an index value of a lower evaluation index based on the current work schedule of the previous round or the current work plan and the current work schedule; and determining the latest lower-layer operation time length of the lower-layer optimization model based on the index value and the target value of the lower-layer evaluation index.
Step 513, the lower layer decision-making module is controlled based on the lower layer scheduling policy of the present round to select a lower layer optimization model, and the lower layer optimization model outputs the current working schedule after running according to the upper layer running time of the present round based on the lower layer service characteristic data and the current working schedule as input.
Step 514, determining the lower layer judgment result of the round based on the current work plan and the current work schedule.
Step 515, it is determined whether the lower layer determination result of the present round indicates to update the output of the lower layer decision module, if yes, step 517 is executed, and if no, step 516 is executed.
For example, as described above, the lower-layer update stop condition may be set, and whether the lower-layer update stop condition is satisfied may be determined based on the current work schedule, or the current work schedule and the current work schedule, and if so, the lower-layer determination result is that the current work schedule is not updated, otherwise, the current work schedule is updated.
Step 516, taking the current work plan and the current work schedule as decision results.
Step 517, performing iteration of the 3 rd round.
It is noted that once it is determined that the upper layer decision module is not updated, the lower layer optimization model may be updated multiple times, thereby improving the reference value of the decision result.
In another possible case, as shown in fig. 5b, the iteration of round 2 comprises the following steps:
step 521, the upper layer judgment result of the previous round indicates updating the output of the upper layer decision module, and determines that the upper layer scheduling policy of the current round adopts an upper layer optimization model, and the lower layer scheduling policy adopts a lower layer proxy model.
Step 522, determining the upper layer operation duration of the present round of the upper layer optimization model based on the current work plan of the previous round or the current work plan and the current work schedule.
Illustratively, as previously described, an upper layer evaluation index may be set; specifically, determining an index value of an upper assessment index based on the current work schedule of the previous round, or the current work schedule and the current work schedule; and determining the latest upper-layer operation time length of the upper-layer optimization model based on the index value and the target value of the upper-layer evaluation index.
Step 523, controlling an upper layer decision module to select an upper layer optimization model based on the upper layer scheduling strategy of the round, wherein the upper layer optimization model is based on upper layer service characteristic data as input, and outputting a current working plan after running according to the upper layer running time of the round.
Step 524, the lower layer scheduling policy based on the present round controls the lower layer decision module to select the lower layer proxy model, and the lower layer proxy model outputs the current working schedule based on the lower layer service characteristic data and the current working plan as input.
Step 525, determining an upper layer judgment result of the current round and a lower layer judgment result of the current round based on the current work plan and the current work schedule.
Step 526, based on the upper layer determination result and the lower layer determination result of the present round, it is determined whether to stop updating the output of the upper layer decision module and the lower layer decision module at the same time, if yes, step 527 is executed, and if no, step 528 is executed.
Details are described above with reference to step 406, and are not repeated.
Step 527, taking the current work plan and the current work schedule as decision results.
Step 528, iterate round 3.
There are 4 cases in the third iteration, the 1 st case is the case shown in fig. 5a, the 2 nd case is the case shown in fig. 5b, the 3 rd case is the case shown in fig. 6a, and the 4 th case is the case shown in fig. 6 b.
As shown in fig. 6a, the iterative process of round 3 may include the following steps:
in step 611, the upper layer decision result of the previous round indicates that the output of the upper layer decision module is not updated for the first time, the lower layer decision result indicates that the output of the lower layer decision module is updated, and when the lower layer decision model of the previous round uses the lower layer optimization model, the upper layer scheduling policy of the previous round is determined to be the output of the upper layer decision module which is not updated, and the lower layer scheduling policy is the lower layer agent model.
And 612, controlling a lower decision module to select a lower agent model based on the lower scheduling policy of the round, and outputting the current working schedule by using the lower agent model based on the lower service characteristic data and the current working schedule as input.
Step 613, determining the lower layer judgment result of the round based on the current work plan and the current work schedule.
Step 614, it is determined whether the lower layer determination result of the present round indicates to update the output of the lower layer decision module, if yes, step 615 is executed, and if no, step 616 is executed.
Details are described above with respect to step 515, and are not repeated.
Step 615, taking the current work plan and the current work schedule as decision results.
Step 616, iterate round 4.
As shown in fig. 6b, the iterative process of round 3 may include the following steps:
in step 621, when the output of the upper layer decision module is not updated continuously for multiple times, the lower layer judgment result indicates that the output of the lower layer decision module is updated, and the upper layer scheduling policy of the round is determined to be the output of the upper layer decision module which is not updated, and the lower layer scheduling policy is the lower layer optimization model.
Step 622, determining a lower-layer running duration of the present round of the lower-layer optimization model based on the current work schedule of the previous round, or the current work schedule and the current work schedule of the previous round.
Illustratively, as previously described, the lower layer evaluation index may be set; specifically, determining an index value of a lower evaluation index based on the current work schedule of the previous round or the current work plan and the current work schedule; and determining the latest lower-layer operation time length of the lower-layer optimization model based on the index value and the target value of the lower-layer evaluation index.
Step 623, controlling a lower decision module to select a lower optimization model based on the lower scheduling policy of the round, wherein the lower optimization model outputs the current working schedule after running according to the upper running time of the round based on the lower business feature data and the current working schedule as input.
Step 624, determining the lower layer judgment result of the round based on the current work plan and the current work schedule.
Step 625, determining whether the lower layer determination result of the present round indicates to update the output of the lower layer decision module, if yes, executing step 627, and if no, executing step 626.
For example, as described above, the lower-layer update stop condition may be set, and whether the lower-layer update stop condition is satisfied may be determined based on the current work schedule, or the current work schedule and the current work schedule, and if so, the lower-layer determination result is that the current work schedule is not updated, otherwise, the current work schedule is updated.
Step 626, taking the current work plan and the current work schedule as decision results.
Step 627, performing iteration of the 4 th round.
For iteration of round 4, there are 4 cases, 1 st case is the case shown in fig. 5a, 2 nd case is the case shown in fig. 5b, 3 rd case is the case shown in fig. 6a, 4 th case is the case shown in fig. 6b, and no further description is given.
It should be noted that the above-mentioned iterative process of each round is merely an example and not a specific limitation, and in practical application, the content of each round of iteration may be flexibly designed, for example, for each round, the upper layer scheduling policy and the lower layer scheduling policy of the next round may be determined, so that each round does not need to determine the upper layer scheduling policy and the lower layer scheduling policy of the present round.
It should be noted that, in the embodiment of the present application, the cases shown in fig. 4, fig. 5a, fig. 5b, fig. 6a, and fig. 6b are only examples, and the main application scenario is that the upper layer judgment result only considers the current working plan, and the present working plan is not limited specifically; in some possible cases, at each iteration, the differences are as follows: even if the upper layer scheduling policy indicates that the output of the upper layer decision module is not updated, if the upper layer judgment result needs to comprehensively consider the current work plan and the current work schedule, the upper layer judgment result and the lower layer judgment result of the round need to be determined again under the condition that the current work schedule is changed. Correspondingly, the first determination to not update the output of the upper layer decision module can be understood as: the output of the upper layer decision module is unchanged for the first time after being changed.
In addition, in some possible implementation manners, after a certain iteration number is reached, if the output of the upper layer decision module and the output of the lower layer decision module need to be updated, an upper layer scheduling policy may be set to adopt an upper layer optimization model, and a lower layer scheduling policy may be set to adopt a lower layer optimization model; and subsequently, after the output of the upper layer decision module is not required to be updated, updating the lower layer optimization model for a plurality of times.
Based on the work plan and work schedule determining method provided above, specific applications of the work plan and work schedule determining method will be described, and the embodiment of the application will be described by taking sheet metal processing as an example.
Sheet metal processing is a common processing technology in the field of machining and is widely applied to the fields of air conditioners, electric appliances, automobile industry and the like. The sheet metal parts are more in variety, more in mold changing times and more complex in production mode, and great difficulty is brought to production planning and scheduling. The forming processing of the metal plate is completed on 9 production lines according to different types, and each production line is formed by connecting more than 1 punching machine in series, as shown in 7. Although sheet metal processing requires a plurality of punches, the sheet metal processing cannot be divided from each other, and thus can be regarded as a whole. In addition, each sheet metal processing requires a corresponding sheet metal die to be installed on the punch. Currently, each metal plate only has one set of die, namely, each metal plate in the same shift is only allowed to be produced in one production line.
The fine production of the metal plate machining is realized by realizing the metal plate month plan and the metal plate on-site scheduling. The main tasks of the sheet metal month plan are to decide the type, the number, the shift time and the personnel configuration of sheet metal production every day for 30 days in the future. The sheet metal field scheduling decides the processing sequence of the sheet metal on the production line on the premise of giving the processing tasks (type, quantity and exchange period) of the sheet metal, for example, the production tasks and the sequence of the production line of 4 days in the future, and the scheduling result is output in a minute level.
Fig. 7 is a schematic diagram of a sheet metal processing architecture provided by the implementation of the present invention. As shown in fig. 7, the sheet metal processing architecture includes a configuration management module 1201, a scheduling module 1202, an input module 1203, an upper layer decision module 1204, a lower layer decision module 1205, and a storage module 1206. The configuration management module 1201, the scheduling module 1202, the input module 1203, the upper layer decision module 1204, the lower layer decision module 1205 and the storage module 1206 are described above, wherein the difference is that the upper layer decision module 1204 is used for outputting a sheet metal month plan, the lower layer decision module 1205 outputs sheet metal field schedule, the scheduling module 1202 needs to evaluate the results (sheet metal month plan and sheet metal field schedule) output after the upper layer decision module 1204 and the lower layer decision module 1205 call the model once, update the upper layer scheduling strategy and the lower layer scheduling strategy, and control the operation time of the upper layer optimization model and the lower layer optimization model; in addition, the inputs to the upper layer decision module 1204 and the lower layer decision module 1205 are component requirements, fixed conditions, and varying conditions. The fixed conditions include production capacity, the number of containers (products in production or in production), placement area and container holding number (the number of articles held in a single packaging container in a standard packaging mode); the changing conditions include an operator, a stock part (an integral part), a fault condition (a line and equipment fault condition), a stock of materials, a material property, a maintenance condition) (a line and equipment fault condition).
According to the on-site actual verification, on the basis that the defective rate of the sheet metal semi-finished product is zero, the sheet metal semi-finished product is reduced by 20% in a warehouse, the movable rate is improved by 2%, and a plan result is returned in a minute level.
Based on the same conception as the embodiment of the method, the embodiment of the invention also provides a working plan and working schedule determining device. The work plan and work schedule determining apparatus includes a plurality of modules, each of which is configured to perform each step in the work plan and work schedule determining method provided by the embodiment of the present invention, and the division of the modules is not limited herein. It will be apparent to those skilled in the art that, in practical application, each step allocation in the work plan and work schedule determining method provided by the embodiment of the present invention may be completed by different modules, that is, the internal structure of the apparatus is divided into different modules, so as to complete all or part of the functions described above. The modules in the embodiment may be integrated in one processing unit, or each unit may exist alone physically, or two or more modules may be integrated in one unit, where the integrated units may be implemented in a form of hardware or a form of a software functional unit. In addition, the specific names of the modules are only for distinguishing from each other, and are not used to limit the protection scope of the present invention. The specific working process of the modules in the above apparatus may refer to the corresponding process in the foregoing method embodiment, which is not described herein again.
The work plan and work schedule determining apparatus is for executing the work plan and work schedule determining method provided by the embodiment of the present application, as shown in fig. 8, and includes:
an input module 801, configured to determine first service feature data and second service feature based on service data acquired from a service system;
a first decision module 802 comprising a first optimization model, a first proxy model; the input of the first proxy model and the first optimization model is first business characteristic data, and the output is a work plan; the first decision module is used for selecting any one of the first proxy model and the first optimization model to output a working plan;
a second decision module 803 comprising a second optimization model, a second proxy model; the input of the second agent model and the second optimization model is the second business characteristic data and the work plan output by the first decision module, and the output is the work schedule; the work schedule is a task distributed according to a work plan; the second decision module is used for selecting any one of the second agent model and the second optimization model to output the work schedule.
In one possible implementation, the first decision module 802 is configured to select to output the work plan using the first proxy model at the time of the first decision.
In the scheme, the proxy model is selected when deciding for the first time, so that the calculation cost is reduced, and the calculation efficiency is improved.
In one possible implementation, the second decision module 803 is configured to select to output the work schedule using the second proxy model.
In the scheme, the proxy model is selected when deciding for the first time, so that the calculation cost is reduced, and the calculation efficiency is improved.
In one possible implementation, the apparatus further includes:
a scheduling module, configured to determine a first scheduling policy and a second scheduling policy based on the work plan output by the first decision module 802 and the work schedule output by the second decision module 803; the first scheduling policy indicates whether to update the output of the first decision module 802, and when determining to update the output of the first decision module 802, a first proxy model or a first optimization model is selected; the second scheduling policy indicates whether to update the output of the second decision module 803, selecting a second agent model or a second optimization model when determining to update the output of the second decision module 803;
the first decision module 802 is configured to select, according to the first scheduling policy, a model specified by the first scheduling policy to output a work plan when determining to update the output of the first decision module 802;
And the second decision module 803 is configured to select, according to the second scheduling policy, a model specified by the second scheduling policy to output the work schedule when determining to update the output of the second decision module 803.
In one possible implementation, the first scheduling policy is to select a first optimization model; the second scheduling policy is to select a second proxy model;
when the output of the second decision module 803 is the output of the second proxy model, and the first scheduling policy is the output of the first decision module 802 not updated for the first time, the second scheduling policy is to select a second optimization model;
when the output of the second decision module 803 is the output of the second optimization model, and the first scheduling policy is the output of the first decision module 802 not updated for the first time, the second scheduling policy is to select a second proxy model;
the second scheduling policy is to select a second optimization model when the output of the first decision block 802 is not updated a plurality of times in succession; wherein i is a positive integer of 2 or more.
In this scenario, for the second decision module 803, once the output of the first decision module 802 is changed, a proxy model is first adopted; when the output of the first decision module 802 is unchanged, an optimization model is adopted for the first time, and if the effect is not ideal, the optimization module is used, so that the number of times of using the optimization model can be reduced as much as possible, the calculation cost is reduced to a certain extent, and the calculation efficiency is improved.
In a possible implementation manner, the scheduling module is further configured to determine that the work schedule output by the first decision model and the work schedule output by the second decision model are decision results when the first scheduling policy indicates that the output of the first decision module 802 is not updated and the second scheduling policy indicates that the output of the second decision module 803 is not updated.
In one possible implementation, the first optimization model outputs the work plan after running according to the first running time length, and the second optimization model outputs the work schedule after running according to the second running time length, and the apparatus further includes:
a scheduling module, configured to update the first operation duration based on at least the work plan output by the first decision module 802 when the first scheduling policy is to select the first optimization model and the second scheduling policy is to select the second proxy model;
a scheduling module, configured to, when the first scheduling policy does not update the output of the first decision module 802, select a second optimization model according to the second scheduling policy, and update the second running duration based at least on the working schedule output by the second decision module 803;
the scheduling module is configured to update the first operation duration and the second operation duration based on the work schedule output by the first decision module 802 and the work schedule output by the second decision module 803 when the first scheduling policy is to select the first optimization model and the second scheduling policy is to select the second optimization model.
In this solution, according to the output of the second decision module 803 and/or the first decision module 802, the operation duration of the optimization model is increased or decreased, so that on one hand, the reference value of the calculation result can be improved to a certain extent, and on the other hand, the calculation cost can be reduced to a certain extent, and the calculation efficiency can be improved.
Based on the same concept as the method embodiment of the present application, the embodiment of the present application also provides a server 120. Fig. 9 is a schematic structural diagram of a server 120 according to an embodiment of the present application.
As shown in fig. 9, the server 120 includes a processor 101, a memory 102, and a network interface 103.
The processor 101 may be a central processing unit (Central Processing Unit, CPU), but may also be other general purpose processors, digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), field programmable gate arrays (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or the like. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The nonvolatile memory may be a read-only memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an electrically Erasable EPROM (EEPROM), or a flash memory. The volatile memory may be random access memory (random access memory, RAM) which acts as an external cache. By way of example, and not limitation, many forms of RAM are available, such as Static RAM (SRAM), dynamic Random Access Memory (DRAM), synchronous Dynamic Random Access Memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous Link DRAM (SLDRAM), and direct memory bus RAM (DR RAM).
For example, the memory 102 may have stored thereon a computer program, and the processor 101 may implement the steps of the above-described embodiments of the work plan and work schedule determining method when executing the computer program, for example, the steps shown in fig. 4, 5a, 5b, 6a, and 6 b. Alternatively, the processor 101 may implement the functions of the modules in the above-described apparatus embodiments when executing a computer program. By way of example, a computer program may be divided into one or more modules/units, which may be a series of computer program instruction segments capable of performing a specified function, stored in the memory 102 and executed by the processor 101 to perform the present invention. For example, the computer program may be divided into an input module 801, a first decision module 802, a second decision module 803, the specific functions of each module being described above.
The network interface 103 is used for transmitting and receiving data, for example, data processed by the processor 101 is transmitted to other electronic devices, or data transmitted by other electronic devices is received.
Of course, only some of the components of the server 120 that are relevant to the present application are shown in fig. 9 for simplicity, components such as buses, input/output interfaces, etc. are omitted. In addition, the server 1200 may include any other suitable components depending on the particular application. It will be appreciated by those skilled in the art that fig. 9 is merely an example of a server 1200 and is not meant to be limiting as to an electronic device, and may include more or fewer components than shown, or may combine certain components, or different components, e.g., the server may also include a bus, etc.
The structure of the terminal device 110 is similar to that of the server 120 and may include more components than the server 120, such as a display, a mouse, a keyboard, a microphone, an earpiece, etc.
In addition to the methods, apparatus and electronic devices described above, embodiments of the present application may also provide a computer program product comprising computer program instructions which, when executed by a processor, cause the processor to perform the steps in the work schedule and work schedule determination method of the various embodiments of the present application described in the "methods" section of the specification. Wherein the computer program product may write computer program code for performing operations of embodiments of the present application in any combination of one or more programming languages, including an object oriented programming language such as Java, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. Wherein the computer program code may be in the form of source code, object code, executable files, or in some intermediate form, etc. The computer program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device or entirely on the remote computing device or server.
Furthermore, embodiments of the present application may also provide a computer-readable storage medium having stored thereon computer program instructions that, when executed by a processor, cause the processor to perform steps in a display control method based on various embodiments of the present disclosure described in the "method" section of the present specification. The computer readable storage medium may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may include, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium would include the following: an electrical connection having one or more wires, a portable disk, a hard disk, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. It should be noted that the computer readable medium contains content that can be appropriately scaled based on the requirements of jurisdictions in which the legislation and patent practice, such as in some jurisdictions, the computer readable medium does not include electrical carrier signals and telecommunication signals.
In the foregoing embodiments, the descriptions of the embodiments are emphasized, and in part, not described or illustrated in any particular embodiment, reference is made to the related descriptions of other embodiments.
It should be understood that the sequence number of each step in the foregoing embodiment does not mean that the execution sequence of each process should be determined by the function and the internal logic, and should not limit the implementation process of the embodiment of the present application.
The basic principles of the present application have been described above in connection with specific embodiments, however, it should be noted that the advantages, benefits, effects, etc. mentioned in the present application are merely examples and not intended to be limiting, and these advantages, benefits, effects, etc. are not to be considered as essential to the various embodiments of the present disclosure. Furthermore, the specific details disclosed herein are for purposes of illustration and understanding only, and are not intended to be limiting, since the disclosure is not necessarily limited to practice with the specific details described.
The block diagrams of the devices, apparatuses, devices, systems referred to in this disclosure are merely illustrative examples and are not intended to require or imply that the connections, arrangements, configurations must be made in the manner shown in the block diagrams. As will be appreciated by one of skill in the art, the devices, apparatuses, devices, systems may be connected, arranged, configured in any manner. Words such as "including," "comprising," "having," and the like are words of openness and mean "including but not limited to," and are used interchangeably therewith. The terms "or" and "as used herein refer to and are used interchangeably with the term" and/or "unless the context clearly indicates otherwise. The term "such as" as used herein refers to, and is used interchangeably with, the phrase "such as, but not limited to.
It is also noted that in the apparatus, devices and methods of the present disclosure, components or steps may be disassembled and/or assembled. Such decomposition and/or recombination should be considered equivalent to the present disclosure.
The foregoing description has been presented for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of the disclosure to the form disclosed herein. Although a number of example aspects and embodiments have been discussed above, a person of ordinary skill in the art will recognize certain variations, modifications, alterations, additions, and subcombinations thereof.
It will be appreciated that the various numerical numbers referred to in the embodiments of the present application are merely for ease of description and are not intended to limit the scope of the embodiments of the present application.

Claims (15)

1. A work plan and work schedule determination system, comprising:
the input module is used for determining first service characteristic data and second service characteristic based on the service data acquired from the service system;
the first decision module comprises a first optimization model and a first proxy model; the input of the first proxy model and the first optimization model is the first business characteristic data, and the output is a work plan; the first decision module is used for selecting any one of the first proxy model and the first optimization model to output a working plan;
The second decision module comprises a second optimization model and a second proxy model; the input of the second agent model and the second optimization model is the second business characteristic data and the working plan output by the first decision module, and the output is working schedule; the work schedule is a task distributed according to the work plan; the second decision module is used for selecting any one of the second agent model and the second optimization model to output a working schedule.
2. The system of claim 1, wherein the first decision module is configured to select to output a work plan using the first proxy model at a first decision; and/or the second decision module is used for selecting to output the work schedule by using the second agent model.
3. The system of claim 1, wherein the system further comprises:
the scheduling module is used for determining a first scheduling strategy and a second scheduling strategy based on the work plan output by the first decision module and the work schedule output by the second decision module; the first scheduling policy indicates whether to update the output of the first decision module, and when determining to update the output of the first decision module, the first proxy model or the first optimization model is selected; the second scheduling policy indicates whether to update the output of a second decision module, and the second agent model or the second optimization model is selected when determining to update the output of the second decision module;
The first decision module is used for selecting a model designated by the first scheduling policy to output a work plan when determining to update the output of the first decision module according to the first scheduling policy;
and the second decision module is used for selecting a model designated by the second scheduling policy to output working scheduling when determining to update the output of the second decision module according to the second scheduling policy.
4. The system of claim 3, wherein the first scheduling policy is to select the first optimization model; the second scheduling policy is to select the second agent model;
when the output of the second decision module is the output of the second proxy model and the output of the first decision module is not updated for the first time, the second scheduling strategy is to select the second optimization model;
when the output of the second decision module is the output of the second optimization model, and the output of the first decision module is not updated for the first time, the second scheduling strategy is to select the second agent model;
the second scheduling policy is to select the second optimization model when the output of the first decision module is not updated multiple times.
5. The system of claim 3, wherein the scheduling module is further configured to determine that the work schedule output by the first decision model and the work schedule output by the second decision model are decision results when the first scheduling policy indicates that the output of the first decision module is not updated and the second scheduling policy indicates that the output of the second decision module is not updated.
6. The system of claim 3, wherein the first optimization model outputs a work plan after being run for a first run length and the second optimization model outputs a work schedule after being run for the second run length, the system further comprising:
the scheduling module is configured to update the first operation duration at least based on a work plan output by the first decision module when the first scheduling policy is to select the first optimization model and the second scheduling policy is to select the second proxy model;
the scheduling module is configured to, when the first scheduling policy is not to update the output of the first decision module, and the second scheduling policy is to select the second optimization model, update the second running duration based at least on the working schedule output by the second decision module;
The scheduling module is configured to update the first operation duration and the second operation duration based on the work schedule output by the first decision module and the work schedule output by the second decision module when the first scheduling policy is to select the first optimization model and the second scheduling policy is to select the second optimization model.
7. A work plan and work schedule determination method, comprising:
determining first service feature data and second service features based on service data acquired from a service system;
selecting any one of a first proxy model and a first optimization model in a first decision module to output a work plan; the input of the first proxy model and the first optimization model is the first business characteristic data, and the output is a work plan;
selecting any one of a second agent model and a second optimization model in the second decision module to output a work schedule; the work schedule is a task distributed according to the work plan; the input of the second agent model and the second optimization model is the second business characteristic data and the working plan output by the first decision module;
And when the work schedule and the work schedule are determined to be not required to be updated, taking the work schedule output by the first decision model and the work schedule output by the second decision model as decision results.
8. The method of claim 7, wherein selecting any one of the first proxy model and the first optimization model in the first decision module to output the work plan comprises: when the first scheduling is performed, selecting to use the first proxy model to output a work plan; and/or the number of the groups of groups,
the selecting any one of the second agent model and the second optimization model in the second decision module to output the work schedule includes: and when the first scheduling is performed, selecting to use the second agent model to output a working plan.
9. The method of claim 7, wherein the method further comprises:
determining a first scheduling strategy and a second scheduling strategy based on the work plan output by the first decision module and the work schedule output by the second decision module; the first scheduling policy indicates whether to update the output of the first decision module, and when determining to update the output of the first decision module, the first proxy model or the first optimization model is selected; the second scheduling policy indicates whether to update the output of a second decision module, and the second agent model or the second optimization model is selected when determining to update the output of the second decision module;
According to the first scheduling strategy, when the output of the first decision module is determined to be updated, selecting a model designated by the first scheduling strategy to output a working plan;
and according to the second scheduling strategy, when the output of the second decision module is determined to be updated, selecting a model designated by the second scheduling strategy to output a working schedule.
10. The method of claim 9, wherein the first scheduling policy is to select the first optimization model; the second scheduling policy is to select the second agent model;
when the output of the second decision module is the output of the second proxy model and the output of the first decision module is not updated for the first time, the second scheduling strategy is to select the second optimization model;
when the output of the second decision module is the output of the second optimization model, and the output of the first decision module is not updated for the first time, the second scheduling strategy is to select the second agent model;
the second scheduling policy is to select the second optimization model when the output of the first decision module is not updated multiple times.
11. The method of claim 9, wherein the first optimization model operates according to a first operation duration and then outputs a work plan, and the second optimization model operates according to the second operation duration and then outputs a work schedule; the method further comprises the steps of:
The first scheduling strategy is used for selecting the first optimization model, the second scheduling strategy is used for selecting the second agent model, and the first operation duration is updated at least based on the work plan output by the first decision module;
the output of the first decision module is not updated in the first scheduling strategy, the second scheduling strategy is used for selecting the second optimization model, and the second operation duration is updated at least based on the work scheduling output by the second decision module;
and the first scheduling strategy is to select the first optimization model, the second scheduling strategy is to select the second optimization model, and the first operation duration is updated based on the work schedule output by the first decision module and the work schedule output by the second decision module.
12. An operation plan and operation schedule determining apparatus, comprising:
at least one memory for storing a program;
at least one processor for executing the memory-stored program, which processor is adapted to perform the method according to any of claims 7-11, when the memory-stored program is executed.
13. An operation plan and operation schedule determining apparatus, characterized in that the apparatus runs computer program instructions to perform the method according to any of claims 7-11.
14. A computer storage medium having instructions stored therein which, when executed on a computer, cause the computer to perform the method of any of claims 7-11.
15. A computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of any of claims 7-11.
CN202311080034.1A 2023-08-24 2023-08-24 Work plan and work schedule determining method, system and device Pending CN117196189A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311080034.1A CN117196189A (en) 2023-08-24 2023-08-24 Work plan and work schedule determining method, system and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311080034.1A CN117196189A (en) 2023-08-24 2023-08-24 Work plan and work schedule determining method, system and device

Publications (1)

Publication Number Publication Date
CN117196189A true CN117196189A (en) 2023-12-08

Family

ID=88998895

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311080034.1A Pending CN117196189A (en) 2023-08-24 2023-08-24 Work plan and work schedule determining method, system and device

Country Status (1)

Country Link
CN (1) CN117196189A (en)

Similar Documents

Publication Publication Date Title
Leng et al. Digital twin-driven joint optimisation of packing and storage assignment in large-scale automated high-rise warehouse product-service system
KR102184182B1 (en) Project/Task Intelligent Goal Management Method and Platform based on Super Tree
Helo et al. Cloud manufacturing system for sheet metal processing
Wang et al. Model construction of planning and scheduling system based on digital twin
Phanden et al. Integration of process planning and scheduling: a state-of-the-art review
Cheng et al. Hypernetwork-based manufacturing service scheduling for distributed and collaborative manufacturing operations towards smart manufacturing
Li et al. Production-intralogistics synchronization of industry 4.0 flexible assembly lines under graduation intelligent manufacturing system
Toptal et al. Distributed scheduling: a review of concepts and applications
CN111915410B (en) Intelligent management and control system for high-dynamic production logistics process
Leng et al. Cloud-edge orchestration-based bi-level autonomous process control for mass individualization of rapid printed circuit boards prototyping services
EP3188096A1 (en) Data analysis for predictive scheduling optimization for product production
CN108053047A (en) Cloud resources of production scheduling methods, devices and systems
Yang et al. Scheduling of field service resources in cloud manufacturing based on multi-population competitive-cooperative GWO
Feng et al. Using MLP networks to design a production scheduling system
Nie et al. A multi-agent and cloud-edge orchestration framework of digital twin for distributed production control
CN103500375A (en) EM-Plant-based MES (Manufacturing Execution Systems) dispatching control method
Ebrahimi et al. A mixed-model assembly line sequencing problem with parallel stations and walking workers: a case study in the automotive industry
Herrmann et al. Approaches of production planning and control under industry 4.0: A literature review
Firat et al. Optimizing the workload of production units of a make-to-order manufacturing system
Ren et al. Review on R&D task integrated management of intelligent manufacturing equipment
Dutta et al. Adaptive and noncyclic preventive maintenance to augment production activities
Khakifirooz et al. Scheduling in Industrial environment toward future: insights from Jean-Marie Proth
Ćwikła et al. Analysis of the possibility of SysML and BPMN application in formal data acquisition system description
Fiasché et al. A novel hybrid fuzzy multi-objective linear programming method of aggregate production planning
KR20120133362A (en) Optimized production scheduling system using loading simulation engine with dynamic feedback scheduling algorithm

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination