WO2020062047A1 - 更新调度规则的方法、设备、***、存储介质和终端 - Google Patents

更新调度规则的方法、设备、***、存储介质和终端 Download PDF

Info

Publication number
WO2020062047A1
WO2020062047A1 PCT/CN2018/108384 CN2018108384W WO2020062047A1 WO 2020062047 A1 WO2020062047 A1 WO 2020062047A1 CN 2018108384 W CN2018108384 W CN 2018108384W WO 2020062047 A1 WO2020062047 A1 WO 2020062047A1
Authority
WO
WIPO (PCT)
Prior art keywords
scheduling
work
rule
rules
training data
Prior art date
Application number
PCT/CN2018/108384
Other languages
English (en)
French (fr)
Inventor
李婧
陈雪
Original Assignee
西门子股份公司
李婧
陈雪
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 西门子股份公司, 李婧, 陈雪 filed Critical 西门子股份公司
Priority to CN201880096166.4A priority Critical patent/CN112514352A/zh
Priority to PCT/CN2018/108384 priority patent/WO2020062047A1/zh
Publication of WO2020062047A1 publication Critical patent/WO2020062047A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • This application relates to the field of scheduling control. Specifically, the present application relates to a method, a device, a system, a storage medium, and a terminal for updating a scheduling rule.
  • Scheduling software is widely used in manufacturing environments.
  • the dispatcher 2 also known as scheduler or production manager
  • the dispatcher 2 is responsible for analyzing work and processing 1 including orders 11, (manufacturing) process information 13 and warehouse information 15 and so on, and divides work J into operations. And scheduling information O & S, and then calculate the appropriate schedule of available resources 3 to perform these operations.
  • the resource 3 includes a machine 31, a production line 33, a robot 35, an automatic guided transport vehicle (AGV) 37, and the like.
  • AGV automatic guided transport vehicle
  • optimization algorithms have been developed, such as general algorithms, simulated annealing, and tabu search.
  • these optimization algorithms are difficult to implement or adjust, and the calculations are too complex to be used in real-time systems.
  • these algorithms are more suitable for solving scheduling problems in a static environment. In a static environment, the known amount of work and the corresponding preparation time are fixed before the actual scheduling is performed. However, in practical applications, manufacturing often faces dynamic environmental issues, and work is continuously revealed during the execution process.
  • the embodiments of the present application provide a method, a device, a system, a storage medium, and a terminal for updating a scheduling rule, so as to at least solve the problem that it is difficult to optimize the scheduling rule in a dynamically changing environment in the prior art.
  • a method for updating a scheduling rule including: obtaining a job to be performed; obtaining a scheduling rule set, and the scheduling rule set includes distributing operations included in the work to a system capable of performing the operation to be performed.
  • Multiple scheduling rules of the device distributing operations to devices capable of performing operations according to the scheduling rules; obtaining the system status of the system when the device performs the operation; generating a quality index based on the system status, the quality index represents an evaluation of the quality of the system's execution
  • Generate training data based on scheduling rules, system status, and quality index
  • perform machine learning based on training data to generate meta-rules, which represent scheduling rules that should be used in different system states
  • the method further includes before obtaining the work to be performed: obtaining the type of work, the type of work at least representing the operations included in the work, the device in the system capable of performing the operation, and the time for the device to perform the operation; and
  • the job type generates at least one job of the type of job to be performed.
  • generating training data includes: determining whether the quality index is smaller than a threshold by comparing the quality index with a preset threshold; if the quality index is smaller than the threshold, according to a scheduling rule and a system state corresponding to the quality index
  • a data table is generated as training data, where the data table includes system status, variables of the system status recorded over time, and corresponding scheduling rules.
  • performing machine learning based on the training data includes: determining an implicit relationship between the quality of the work performed by the system and the system state according to the machine learning algorithm and the training data, and the implicit relationship is used to generate a meta-rule.
  • updating a scheduling rule in a scheduling rule set includes generating an update rule according to a meta-rule, and the update rule represents a scheduling rule to be adopted in a specific system state; and applying the update rule and the scheduling rule to an operation together Distribution.
  • an optimized scheduling rule is generated based on the machine learning results, so that the scheduling rule includes an update rule that can be dynamically scheduled according to the environment.
  • distributing an operation to a device capable of performing the operation includes: generating a distribution sequence of the distribution operation according to a scheduling rule; and distributing the operation according to the distribution sequence.
  • the quality index is a weighted value of a plurality of attributes related to the quality of performing work.
  • scheduling performance is analyzed based on multiple parameters that affect quality.
  • the method further includes: after generating the training data, storing the training data in a database.
  • the training data is used for subsequent machine learning or other uses.
  • a device for updating a scheduling rule including: a scheduling unit configured to: obtain a job to be performed; obtain a scheduling rule set, and the scheduling rule set includes distributing operations included in the work to Multiple scheduling rules for devices capable of performing operations in the system to perform work; distributing operations to devices capable of performing operations according to the scheduling rules; training units, the training units include: predictor attribute modules, configured to obtain system execution on devices System status during operation; a quality assessment module configured to generate a quality index based on the system status, the quality index representing an evaluation of the quality of the work performed by the system; and a data conversion module configured to generate based on scheduling rules, system status, and quality index Training data; and a learning unit configured to: perform machine learning based on the training data to generate meta-rules, which represent scheduling rules that should be adopted under different system states; and update the scheduling rules in the scheduling rule set according to the meta-rules.
  • the work is distributed according to existing scheduling rules
  • the devices in the system perform the operation of the work, obtain the system status for evaluating the quality of the work performed according to the existing scheduling rules, and generate training data to obtain various existing
  • the effect of the scheduling rules and the corresponding system status on the quality of the execution of the work, the existing scheduling rules are updated, so that the scheduling based on the scheduling unit by the scheduling unit can be dynamically adjusted according to the environment.
  • the device further includes: a job generation unit configured to: obtain a job type, the job type at least indicating an operation included in the job, a device capable of performing the operation in the system, and a time when the device performs the operation, and Generate at least one job of the type of job to be performed based on the job type.
  • a job generation unit configured to: obtain a job type, the job type at least indicating an operation included in the job, a device capable of performing the operation in the system, and a time when the device performs the operation, and Generate at least one job of the type of job to be performed based on the job type.
  • the device further includes a database configured to store training data.
  • the training data is used for subsequent machine learning or other uses.
  • a system for updating scheduling rules including: a work system to perform work, the work system including equipment for performing work operations; and a device for updating scheduling rules, the equipment includes: A scheduling unit is configured to: obtain work to be performed; obtain a scheduling rule set, the scheduling rule set includes a plurality of scheduling rules that distribute operations included in the work to devices capable of performing operations in the work system; and distribute the operations to the scheduling rules according to the scheduling rules Equipment capable of performing operations; training unit, the training unit includes: a predictor attribute module configured to obtain a system state of the working system when the device performs an operation; a quality assessment module configured to generate a quality index according to the system state, and the quality index represents Evaluation of the quality of work performed by the work system; and a data conversion module configured to generate training data based on scheduling rules, system status, and quality index; and a learning unit configured to perform machine learning based on the training data to generate meta-rules, Meta-rules represent different system states Scheduling rules
  • the work is distributed according to existing scheduling rules
  • the devices in the system perform the operation of the work, obtain the system status for evaluating the quality of the work performed according to the existing scheduling rules, and generate training data to obtain various existing
  • the effect of the scheduling rules and the corresponding system status on the quality of the execution of the work, the existing scheduling rules are updated, so that the scheduling based on the scheduling rules can be dynamically adjusted according to the environment.
  • a storage medium is also provided, and the storage medium includes a stored program, wherein, when the program runs, the device where the storage medium is located is controlled to execute any of the foregoing methods.
  • a processor is further provided.
  • the processor is configured to run a program, and the method executes any of the foregoing methods when the program is run.
  • a terminal including: one or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to Executed by one or more processors, and one or more programs include a method for performing any of the above.
  • a computer program product is also provided.
  • the computer program product is tangibly stored on a computer-readable medium and includes computer-executable instructions that, when executed, cause at least one processor The method of performing any of the above.
  • the rule-based scheduling algorithm is designed to select the next job to be processed from the jobs waiting in the queue for service. They can handle dynamic environments and are relatively easy to implement. Simulation has proven to be an important strategic tool for evaluating different rules applied to the scheduler to find optimized rules for simulation scenarios.
  • This application is capable of establishing a systematic self-learning scheduling rule method in a simulation tool.
  • the technical solution of this application can also be applied in real scenarios to update and optimize scheduling rules according to the operation of real systems and devices.
  • the application can also generate a large amount of training data on the performance of rule-based scheduling decisions and their corresponding system states.
  • a method of machine learning is used to explore the implicit relationship between scheduling performance and system state (represented by predictor attributes).
  • the discovered implicit relationship becomes the "meta-rule" of scheduling.
  • This rule can dynamically adjust scheduling decisions based on the state of the system, for example, selecting an appropriate scheduling rule based on the state of the system. Therefore, the scheduler is trained to be able to dynamically adjust the scheduling rules according to the state of the system.
  • a technical solution is provided for learning the relationship between the system status and scheduling performance based on the training data based on the scheduling rules to update the scheduling rules, so as to at least solve the technical problem that it is difficult to find an optimized scheduling rule in a dynamic environment.
  • the technical effect of efficient job distribution in a dynamic environment is presented.
  • Figure 1 is a schematic diagram of a scheduler distributing work to resources
  • FIG. 2 is a flowchart of a method for updating a scheduling rule according to an embodiment of the present application
  • FIG. 3 is a flowchart of a method of generating work according to an exemplary embodiment of the present application.
  • FIG. 4 is a flowchart of a method for generating training data according to an exemplary embodiment of the present application
  • FIG. 5 is a schematic diagram of an exemplary decision tree of a method for updating a scheduling rule according to an embodiment of the present application
  • FIG. 6 is a block diagram of a device for updating a scheduling rule according to an embodiment of the present application.
  • FIG. 7 is a block diagram of a device for updating a scheduling rule according to an exemplary embodiment of the present application.
  • FIG. 8 is a block diagram of a system for updating a scheduling rule according to an embodiment of the present application.
  • FIG. 9 is a schematic diagram of an allocation operation according to an embodiment of the present application.
  • Some simulation tools include optimization algorithms such as linear / integer programming or meta-heuristic algorithms such as genetic algorithms and tabu search to solve scheduling problems.
  • optimization algorithms such as linear / integer programming or meta-heuristic algorithms such as genetic algorithms and tabu search to solve scheduling problems.
  • optimization solutions are often difficult to implement and optimize, and are too computationally complex to use in real-time systems.
  • rule-based scheduling uses predefined scheduling rules, such as priority levels, to prioritize work to be processed. They are easy to implement and greatly reduce computing requirements, but their scheduling performance is generally low.
  • Applying machine learning methods can discover implicit scheduling rules from optimization or meta-heuristic algorithms.
  • the learning process includes: a) running an optimization algorithm to calculate the optimal scheduling decision; b) using simulation to find the optimal scheduling decision; c) applying a machine learning algorithm to retrieve the implicit knowledge.
  • the problems with these methods are: 1) focus only on job-shop scheduling problems (JSSP), which is only a specific scheduling problem (sub-problem) compared to the technical framework according to this application; 2 ) Reliance on optimization algorithms to generate schedules.
  • JSSP job-shop scheduling problems
  • the implementation and optimization of the optimization algorithm for each training instance has high complexity.
  • Predictor attributes need to be constructed manually.
  • This application proposes a method for learning meta-rules and explores the relationship between the scheduling performance of various scheduling rules and their system state.
  • FIG. 2 is a flowchart of a method for updating a scheduling rule according to an embodiment of the present application. As shown in FIG. 2, a method for updating a scheduling rule according to an embodiment of the present application is described in combination with the following content.
  • step S201 the work to be performed is acquired.
  • a job is a job performed by the system, for example, a job generated by an order received by a production system, or a job generated in a simulation system.
  • the scheduling performance of the distribution work when the real system or the simulation system performs the work is analyzed.
  • the acquired work will be assigned to the production equipment on the site or mapped to the simulation equipment in the simulation system, depending on whether to use the method to obtain data about scheduling from the field or use simulation technology to obtain data from the simulation equipment.
  • a scheduling rule set is obtained, and the scheduling rule set includes a plurality of scheduling rules that distribute operations included in the work to devices that can perform the operations in the system to perform the work.
  • the scheduling rule set is stored in advance, or it can be obtained or determined based on input.
  • the scheduling rule set includes multiple scheduling rules, such as priority rules and random rules, and may also include other rules for scheduling.
  • the scheduling rule indicates that specific operations among multiple operations included in a certain job should be performed by corresponding devices capable of performing operations under some specific conditions.
  • step S205 the operation is distributed to the devices capable of performing the operation according to the scheduling rule. If the operation of the work is performed by the field device, the operation is distributed to the field device for real operation. If a simulation system is used, the work is distributed to a simulation device, such as a simulation device in which the field device is mapped in the simulation system, to perform the simulation process.
  • a simulation device such as a simulation device in which the field device is mapped in the simulation system
  • step S207 a system state of the system when the device performs an operation is acquired.
  • a real system performs operations on its equipment
  • a corresponding system state is generated, or when a simulated system performs a simulation operation, predictor attributes are generated to represent the system state.
  • predictor attributes are generated to represent the system state.
  • the simulation process after the recording operation is distributed to the simulation device, the system state in the simulation system when the simulation device performs the operation.
  • the system status is, for example and not limited to, the number of unfinished work in the system, the current load of the equipment concerned, the percentage of work that is relatively close to the completion date, the average remaining time to the due date, and the relatively long time required to process One or more of the percentage of the work, the difference between the maximum processing time and the average processing time, the difference in processing time between the two operations, and so on.
  • These system states reflect the system attributes or scheduling performance of interest, and can be selected and set according to actual needs.
  • an exemplary system state can be represented by the following attributes:
  • X1 the current load on the device of interest
  • X2 the number of outstanding tasks in the system
  • X6 the difference between the maximum remaining processing time and the average remaining processing time
  • X7 The difference in processing time between the two operations to be compared.
  • Data for these attributes is recorded over time to continuously represent the state of the system.
  • different system state attributes can be selected for better use in updating scheduling rules.
  • a quality index is generated according to the state of the system, and the quality index represents an evaluation of the quality of the work performed by the system.
  • the quality of the work reflects the quality of the work performed by the system, and can represent the quality of the scheduling decisions made according to the corresponding dispatching rules, such as, but not limited to, the efficiency of the work after it is distributed to specific equipment according to the specific scheduling rules.
  • the quality of the work is determined according to the scheduling goals. For example, if the speed of the system's work is concerned, the quality of the work considered is the preparation time and duration of the work, and the quality is evaluated to generate a quality index.
  • step S211 training data is generated according to the scheduling rule, the system state, and the quality index.
  • training data is obtained after obtaining the corresponding system status and quality index, which indicates the system status recorded over time after the operation is distributed to the device according to the specific scheduling rule and the evaluation of the quality of the work performed according to the scheduling rule (scheduling performance evaluation of).
  • step S213 machine learning is performed according to the training data to generate meta-rules, and the meta-rules represent scheduling rules that should be adopted in different system states.
  • the goal to learn is to determine which scheduling rule is more appropriate in a particular system state.
  • FIG. 5 is a schematic diagram of an exemplary decision tree of a method for updating a scheduling rule according to an embodiment of the present application.
  • the decision tree C5.0 is used as a learning mechanism to obtain hidden knowledge from the simulation results.
  • the meta-rule knowledge shown in Figure 5 for example, X1 ⁇ X7 represent the state in the system. According to the state of the system, the meta-rule can guide the scheduler to apply scheduling based on the state. Rules R1 to Rm.
  • the system enters state X2; if the correlation value of X1 is greater than threshold A, the system maintains state X1. Then, if the correlation value of the state X2 is less than or equal to the threshold B1, the system enters the state X3, and the scheduler applies the scheduling rule R1. If the correlation value of X1 is within the interval of the thresholds B1 and B2, the system enters the state X5, and the scheduler applies the rule R2. If the correlation value of X1 is greater than the threshold B2, a scheduling decision is made by the scheduler, and the system enters state X6 after the scheduling decision is made, and the scheduler will apply the corresponding rule.
  • the method for guiding the scheduler to apply the rules is only exemplarily described above, and different state sequences correspond to different rules R1 to Rm, so that the rule set of the scheduler can be continuously improved.
  • step S215 the scheduling rules in the scheduling rule set are updated according to the meta-rules.
  • the predetermined scheduling rule is updated to obtain a new scheduling rule, or to modify the original scheduling rule for the scheduling process of subsequent work distribution, or to further update the scheduling rule to obtain a more optimized scheduling rule .
  • the data used to update the scheduling rule adopts a predicted value, a quality index value, and a rule obtained each time it is recorded.
  • the work is distributed according to existing scheduling rules
  • the devices in the system perform the operation of the work, obtain the system status for evaluating the quality of the work performed according to the existing scheduling rules, and generate training data to obtain various existing
  • the effect of the scheduling rules and the corresponding system status on the quality of the execution of the work, the existing scheduling rules are updated, so that the scheduling based on the scheduling rules can be dynamically adjusted according to the environment.
  • FIG. 3 is a flowchart of a method of generating a job according to an exemplary embodiment of the present application.
  • a method for generating a job according to an exemplary embodiment of the present application includes performing step S301 before acquiring a job to be performed, and acquiring a job type.
  • the job type at least indicates operations included in the job and devices capable of performing operations in the system. And when the device performs the operation.
  • step S303 is performed to generate at least one job of a job type to be performed according to the job type.
  • the method for generating work according to the exemplary embodiment of the present application is performed before the method for updating scheduling rules shown in FIG. 2.
  • the arrival event can follow a probability distribution, such as a uniform or Poisson distribution.
  • Table 1 An example of the work is shown in Table 1:
  • Job 1 is generated based on "Job Type: Production X”
  • Job 2 is generated based on "Job Type: Assembly Y”. Jobs 1 and 2 are sent to the device to perform the corresponding operations.
  • Type of work Examples of production X are as follows:
  • FIG. 9 is a schematic diagram of an allocation operation according to an embodiment of the present application.
  • production X ⁇ operation 1, operation 2, operation 3, operation 5 ⁇ .
  • the sequence of operations shown here is only schematic, and a series of operations may include more operations or fewer operations, depending on how many operations are included in the job.
  • the resources shown in this example for performing operations include M1, M2, M3, M4, M5, M6, and M7.
  • the resource can include more or fewer devices.
  • operation 1 can be performed by devices M1, M3, and M6, and the execution process is P11, P13, and P16, and operation 2 and operation 3 are performed after completion; operation 2 can be performed by devices M2 and M4, and the execution process is P22.
  • P24 perform operations 3 and 5 after completion; operation 3 can be performed by devices M1, M3, and M6, the execution process is P31, P33, and P36, and operation 5 is performed after completion; operation 5 can be performed by devices M3 and M7,
  • the execution processes are P53 and P57, respectively.
  • the mapping of operations to devices is shown in the example above.
  • a series of work can be generated and distributed to the simulation device.
  • the simulation device can execute the simulation process and obtain the simulation processing result.
  • FIG. 4 is a flowchart of a method of generating training data according to an exemplary embodiment of the present application.
  • generating training data according to an exemplary embodiment of the present application includes: Step S401: determining whether the quality index is smaller than a threshold by comparing the quality index with a preset threshold. A threshold is determined in advance, which is used to distinguish data that is intended to be used for generating training data and data that is not to be used for generating training data.
  • step S403 is performed.
  • a data table is generated as training data according to the scheduling rule and system state corresponding to the quality index, where the data table includes system state, system state variables recorded over time, and corresponding scheduling. rule.
  • This setting can be made to select data with a quality index less than a threshold to generate training data. For example, for the quality of the work “the shortest time to complete a task”, the quality index means “time to complete”, and the quality index is less than a predetermined threshold, indicating that the work is performed more efficiently according to the rule, so the corresponding data is used for Generate training data to obtain optimized scheduling rules.
  • the predetermined threshold is determined according to the scheduling performance concerned by the evaluation.
  • the quality index can be used as the quality index.
  • the quality index is less than the threshold, the system is explained.
  • the resource utilization rate is high, the quality of scheduling decisions is good, the work can be performed more efficiently according to the corresponding rules, and the corresponding data is used to generate training data.
  • the quality index may also be greater than the threshold.
  • the purpose is to determine that the quality of the scheduling decision is high by comparing the quality index with the threshold, for example, the quality of the scheduling decision is higher than a preset threshold or expectation.
  • the training data includes the scheduling rules and the system status using the scheduling rules. These data are recorded in the form of data tables to clearly indicate the system status, the variables of the system status recorded over time, and the corresponding scheduling rules to facilitate the machine learning process. deal with.
  • Table 2 is an exemplary data table, and attribute X is a predictor attribute of the simulation system representing the state of the system:
  • Attribute X 1 0.5 0.8 ... 0.2 Attribute X 2 3 2 ... 1 Attribute X 3 0.1 0.3 ... 0.1 Attribute X 4 30. 10 ... 3 ... ... ... ... Attribute X 7 4 0 ... 10 rule# r 1 r 2 ... r 1
  • performing machine learning based on the training data includes determining an implicit relationship between the quality of system execution work and the system state according to the machine learning algorithm and the training data. Used to generate meta rules. For example, in step S213, a machine learning algorithm is used to process the training data to obtain hidden knowledge. For example, in a specific system state, a specific scheduling rule is adopted. In this way, learning which system state will correspond to what kind of work quality or scheduling performance is used as the basis for optimizing scheduling rules.
  • updating the scheduling rule in the scheduling rule set includes generating an update rule according to the meta-rule
  • the update rule represents a scheduling rule to be adopted in a specific system state
  • the update rule and the scheduling Rules apply collectively to the distribution of operations.
  • an optimized scheduling rule is generated based on the machine learning results, so that the scheduling rule includes an update rule that can be dynamically scheduled according to the environment.
  • distributing an operation to a device capable of performing the operation includes: generating a distribution sequence of the distribution operation according to a scheduling rule; and distributing the operation according to the distribution sequence.
  • the scheduling rules the devices to perform the operations and the order of the operations to be performed are determined, and in this manner, the operations are distributed to the devices capable of performing the operations to perform work in the system.
  • the quality index is a weighted value of a plurality of attributes related to the quality of performing work. If multiple attributes need to be considered for the scheduling target, a weighted manner is used to quantify the importance of the pre-selected attributes.
  • the quality index can be a weighted function of multiple objective functions.
  • the exemplary objective functions f 1 and f 2 are:
  • the final quality index represents the scheduling performance considering multiple scheduling targets. In this way, scheduling performance is analyzed based on multiple attributes that affect quality.
  • the method further includes: after generating the training data, storing the training data in a database.
  • training data is recorded in the database in the form of ⁇ predictor attributes, rules ⁇ , and a module performing machine learning can call the data therein. In this way, the training data is used for subsequent machine learning or other uses.
  • FIG. 6 is a block diagram of a device for updating a scheduling rule according to an embodiment of the present application.
  • the device 6 for updating scheduling rules according to an embodiment of the present application includes: a scheduling unit 61 configured to: obtain work to be performed; obtain a schedule rule set, and the schedule rule set includes distributing operations included in the work to Multiple scheduling rules for devices capable of performing operations in the system to perform work; distributing operations to devices capable of performing operations according to the scheduling rules; training unit 63, the training unit includes: a predictor attribute module 631, configured to obtain the system The system state when the device performs operations; the quality evaluation module 633 is configured to generate a quality index based on the system state, and the quality index indicates the evaluation of the quality of the work performed by the system; and the data conversion module 635 is configured to be based on the scheduling rules and system status Generating training data with the quality index; and a learning unit 65 configured to: perform machine learning
  • the device 6 for updating a scheduling rule may be embedded in a simulation tool and used to run in a simulation system.
  • the training unit 63 is responsible for recording relevant system states in the simulation, constructing training data for subsequent learning algorithms, and the predictor attribute module 631 calculates a set of variables representing each system state.
  • the quality evaluation module 633 evaluates the obtained system state after each scheduling decision.
  • the data conversion module 635 further converts the collected simulation data into suitable training data as the input of the subsequent learning unit 65.
  • the learning unit 65 uses a set of existing machine learning algorithms to mine implicit knowledge from the accumulated training data, that is, the implicit relationship between the scheduling performance and the system state (represented by predictor attribute variables). The discovered "meta-rule" will be provided to the scheduling unit 61.
  • the scheduling unit 61 will dynamically customize the scheduling decision according to the system state, which is superior to the conventional scheduling rules.
  • the device 6 for updating the scheduling rule according to the embodiment of the present application executes the method for updating the scheduling rule according to the embodiment of the present application, and the specific content is not described again.
  • the work is distributed according to existing scheduling rules
  • the devices in the system perform the operation of the work, obtain the system status for evaluating the quality of the work performed according to the existing scheduling rules, and generate training data to obtain various existing
  • the effect of the scheduling rules and the corresponding system status on the quality of the execution of the work, the existing scheduling rules are updated, so that the scheduling based on the scheduling unit by the scheduling unit can be dynamically adjusted according to the environment.
  • FIG. 7 is a block diagram of an apparatus for updating a scheduling rule according to an exemplary embodiment of the present application.
  • the device (6) further includes: a job generating unit 67 configured to: obtain a job type, the job type at least indicates an operation included in the job, and an operation that can be performed in the system The device and the time it takes for the device to perform operations, and generate at least one job of the type of job to be performed according to the job type, capable of generating a large number of jobs for the scheduling unit 61 for obtaining training data based on the scheduling rule.
  • the device (6) further includes a database (69) configured to store training data and use the training data for subsequent machine learning or other uses.
  • FIG. 8 is a block diagram of a system for updating a scheduling rule according to an embodiment of the present application.
  • a system 8 for updating scheduling rules according to an embodiment of the present application includes: a work system 10 to perform work, and the work system 10 includes a device 101 for performing work operations; and a device 6 for updating a scheduling rule.
  • the device 6 includes a scheduling unit 61 configured to: obtain work to be performed; obtain a scheduling rule set including a plurality of scheduling rules that distribute operations included in the work to devices capable of performing operations in the work system; and according to the scheduling The rule distributes operations to devices capable of performing operations; the training unit 63, the training unit 63 includes: a predictor attribute module 631 configured to obtain a system state of the work system when the device performs the operation; a quality evaluation module 633, configured to The system state generates a quality index, the quality index represents an evaluation of the quality of the work performed by the work system; and the data conversion module 635 is configured to generate training data according to the scheduling rule, the system state, and the quality index; and the learning unit 65 is configured to: Machine learning based on training data to generate meta-rules, which represent different The scheduling rules that should be used in the system state; and the scheduling rules in the scheduling rule set are updated according to the meta-rules.
  • the training unit 63 includes: a predictor attribute module 631 configured to obtain
  • the work is distributed according to existing scheduling rules
  • the devices in the system perform the operation of the work, obtain the system status for evaluating the quality of the work performed according to the existing scheduling rules, and generate training data to obtain various existing
  • the effect of the scheduling rules and the corresponding system status on the quality of the execution of the work, the existing scheduling rules are updated, so that the scheduling based on the scheduling rules can be dynamically adjusted according to the environment.
  • the present application may also be implemented in the form of a program.
  • a storage medium is also provided.
  • the storage medium includes a stored program, and when the program runs, the device where the storage medium is located is controlled to execute the foregoing method.
  • a processor is further provided.
  • the processor is configured to run a program, and the method is executed when the program is run.
  • a terminal is further provided, including: one or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be controlled by one or more It is executed by one processor, and one or more programs are included for performing the above method.
  • a computer program product is also provided.
  • the computer program product is tangibly stored on a computer-readable medium and includes computer-executable instructions. When executed, the computer-executable instructions cause at least one processor to perform the foregoing method. .
  • the technical solution according to the present application can be implemented on a computer in a software and program manner to optimize scheduling rules.
  • the scheduling unit can make scheduling decisions more efficiently. Meta-rules will guide the scheduling unit to apply the most appropriate scheduling rules based on the state of the system.
  • the scheduling unit in the trained simulation system calculates the system state through the predictor, and dynamically selects the most suitable scheduling rule according to the system state.
  • the training process can be continued in a framework with more data to determine optimized scheduling rules.
  • This application uses a learning structure in a simulation tool so that the knowledge discovered can be used to continuously improve the performance of the scheduler.
  • the embedded learning framework can train schedulers and identify optimized scheduling rules through simulation data. This system creates a new value proposition for existing simulation tools, reducing the barriers and labor required to develop advanced schedulers.
  • This application builds fewer new modules in the simulation tool, and implements an automatic collection, construction, and storage system of training data during the knowledge learning process.
  • the system can also enable new business models in the future, such as sharing simulation results to train different schedulers.
  • the disclosed technical content can be implemented in other ways.
  • the device embodiments described above are only schematic.
  • the division of the unit or module is only a logical function division.
  • there may be another division manner such as multiple units or modules or components. It can be combined or integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, modules or units, and may be electrical or other forms.
  • the units or modules described as separate components may or may not be physically separated, and the components displayed as units or modules may or may not be physical units or modules, which may be located in one place, or may be distributed to On multiple network elements or modules. Some or all of the units or modules may be selected according to actual needs to achieve the objective of the solution of this embodiment.
  • each functional unit or module in each embodiment of the present application may be integrated into one processing unit or module, or each unit or module may exist separately physically, or two or more units or modules may be integrated into one Unit or module.
  • the above-mentioned integrated unit or module can be implemented in the form of hardware or in the form of software functional unit or module.
  • the integrated unit When the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it may be stored in a computer-readable storage medium.
  • the technical solution of the present application is essentially a part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium. , Including a number of instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in the embodiments of the present application.
  • the foregoing storage media include: U disks, Read-Only Memory (ROM), Random Access Memory (RAM), mobile hard disks, magnetic disks, or optical disks, and other media that can store program codes .

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请涉及更新调度规则的方法、设备、***、存储介质和终端。该方法包括:获取要执行的工作;获取调度规则集,调度规则集包括将工作包括的操作分发给要执行工作的***中能执行操作的设备的多个调度规则;根据调度规则将操作分发给能执行操作的设备;获取***在设备执行操作时的***状态;根据***状态生成质量指数,质量指数表示对***执行工作的质量的评估;根据调度规则、***状态和质量指数生成训练数据;根据训练数据进行机器学习,生成元规则,元规则表示不同***状态下应采用的调度规则;以及根据元规则更新调度规则集中的调度规则。本申请通过学习框架训练调度程序,识别优化的调度规则,减化了开发优化调度程序的复杂性。

Description

更新调度规则的方法、设备、***、存储介质和终端 技术领域
本申请涉及调度控制领域。具体地,本申请涉及更新调度规则的方法、设备、***、存储介质和终端。
背景技术
调度软件广泛应用于制造环境中。如图1所示,调度器2(dispatcher,也称为scheduler或production manager)负责分析工作与处理1包括的订单11、(制造)工艺信息13和仓库信息15等工作,将工作J分为操作和调度信息O&S,然后计算执行这些操作的可用的资源3的适当调度。例如,资源3包括机器31、生产线33、机器人35,自动引导运输车(AGV)37等。
为了实现用于制造应用的优化的调度程序,已经开发了许多算法。例如,开发了优化算法(启发式),如通用算法、模拟退火和禁忌搜索。然而,这些优化算法很难实现或调整,而且计算太复杂,无法在实时***中使用。此外,这些算法更适合解决在静态环境中的调度问题,在静态环境中,已知的工作数量和相应的准备时间在实际调度执行之前都是固定的。然而,在实际应用中,制造常常面临动态变化的环境问题,工作在执行过程中连续显现出来。
发明内容
本申请实施例提供了更新调度规则的方法、设备、***、存储介质和终端,以至少解决现有技术中难以在动态变化的环境中优化调度规则的问题。
根据本申请实施例的一个方面,提供了更新调度规则的方法,包括:获取要执行的工作;获取调度规则集,调度规则集包括将工作包括的操作分发给要执行工作的***中能执行操作的设备的多个调度规则;根据调度规则将操作分发给能执行操作的设备;获取***在设备执行操作时的***状态;根据***状态生成质量指数,质量指数表示对***执行工作的质量的评估;根据调度规则、***状态和质量指数生成训练数据;根据训练数据进行机器学习,生成元规则,元规则表示不同***状态下应采用的调度规则;以及根据元规则更新调度规则集中的调度规则。
以这样的方式,根据已有的调度规则分发工作,***中的设备执行工作的操作, 获取***状态用于评估根据已有的调度规则执行工作的质量,生成训练数据,从而获得各种已有的调度规则与对应***状态对执行工作的质量的影响,更新已有的调度规则,使基于调度规则的调度能够根据环境动态调整。
根据本申请的示例性实施例,该方法还包括在获取要执行的工作前:获取工作类型,工作类型至少表示工作包括的操作、***中能执行操作的设备以及设备执行操作的时间;以及根据工作类型生成要执行的工作类型的至少一个工作。
以这样的方式,能够生成大量工作用于获取基于调度规则的训练数据。
根据本申请的示例性实施例,生成训练数据包括:通过将质量指数与预设的阈值进行比较,确定质量指数是否小于阈值;如果质量指数小于阈值,则根据质量指数对应的调度规则和***状态生成数据表作为训练数据,其中,数据表包括***状态、随时间记录的***状态的变量以及对应的调度规则。
以这样的方式,选择全部数据中能够有效用于提升调度性能的训练数据。
根据本申请的示例性实施例,根据训练数据进行机器学习包括:根据机器学习算法和训练数据确定***执行工作的质量与***状态之间的隐式关系,隐式关系用于生成元规则。
以这样的方式,学习何种***状态将对应于何种工作质量或调度性能,作为优化调度规则的基础。
根据本申请的示例性实施例,更新调度规则集中的调度规则包括:根据元规则生成更新规则,更新规则表示在具体***状态下要采用的调度规则;以及将更新规则与调度规则共同应用于操作的分发。
以这样的方式,根据机器学习结果生成优化的调度规则,使调度规则中包括能够根据环境动态调度的更新规则。
根据本申请的示例性实施例,将操作分发给能执行操作的设备包括:根据调度规则生成分发操作的分发序列;以及根据分发序列分发操作。
以这样的方式,将操作分发到能执行操作的设备以在***中执行工作。
根据本申请的示例性实施例,质量指数是与执行工作的质量相关的多个属性的加权值。
以这样的方式,以多个影响质量的参数为基础分析调度性能。
根据本申请的示例性实施例,该方法还包括:在生成训练数据后,将训练数据存 储在数据库中。
以这样的方式,将训练数据用于后续的机器学习或者其他使用中。
根据本申请实施例的另一方面,还提供了更新调度规则的设备,包括:调度单元,被配置为:获取要执行的工作;获取调度规则集,调度规则集包括将工作包括的操作分发给要执行工作的***中能执行操作的设备的多个调度规则;根据调度规则将操作分发给能执行操作的设备;训练单元,训练单元包括:预测器属性模块,被配置为获取***在设备执行操作时的***状态;质量评估模块,被配置为根据***状态生成质量指数,质量指数表示对***执行工作的质量的评估;以及数据转换模块,被配置为根据调度规则、***状态和质量指数生成训练数据;以及学习单元,被配置为:根据训练数据进行机器学习,生成元规则,元规则表示不同***状态下应采用的调度规则;以及根据元规则更新调度规则集中的调度规则。
以这样的方式,根据已有的调度规则分发工作,***中的设备执行工作的操作,获取***状态用于评估根据已有的调度规则执行工作的质量,生成训练数据,从而获得各种已有的调度规则与对应***状态对执行工作的质量的影响,更新已有的调度规则,使调度单元基于调度规则的调度能够根据环境动态调整。
根据本申请的示例性实施例,该设备还包括:工作生成单元,被配置为:获取工作类型,工作类型至少表示工作包括的操作、***中能执行操作的设备以及设备执行操作的时间,以及根据工作类型生成要执行的工作类型的至少一个工作。
以这样的方式,能够为调度单元生成大量工作用于获取基于调度规则的训练数据。
根据本申请的示例性实施例,该设备还包括:数据库,被配置为存储训练数据。
以这样的方式,将训练数据用于后续的机器学习或者其他使用中。
根据本申请实施例的另一方面,还提供了更新调度规则的***,包括:要执行工作的工作***,工作***包括用于执行工作的操作的设备;以及更新调度规则的设备,设备包括:调度单元,被配置为:获取要执行的工作;获取调度规则集,调度规则集包括将工作包括的操作分发给工作***中能执行操作的设备的多个调度规则;根据调度规则将操作分发给能执行操作的设备;训练单元,训练单元包括:预测器属性模块,被配置为获取工作***在设备执行操作时的***状态;质量评估模块,被配置为根据***状态生成质量指数,质量指数表示对工作***执行工作的质量的评估;以及数据转换模块,被配置为根据调度规则、***状态和质量指数生成训练数据;以及学习单元,被配置为:根据训练数据进行机器学习,生成元规则,元规则表示不同***状态下应采用的调度规则;以及根据元规则更新调度规则集中的调度规则。
以这样的方式,根据已有的调度规则分发工作,***中的设备执行工作的操作,获取***状态用于评估根据已有的调度规则执行工作的质量,生成训练数据,从而获得各种已有的调度规则与对应***状态对执行工作的质量的影响,更新已有的调度规则,使基于调度规则的调度能够根据环境动态调整。
根据本申请实施例的另一方面,还提供了存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述任意一项的方法。
根据本申请实施例的另一方面,还提供了处理器,处理器用于运行程序,其中,程序运行时执行上述任意一项的方法。
根据本申请实施例的另一方面,还提供了终端,包括:一个或多个处理器,存储器,以及一个或多个程序,其中,一个或多个程序被存储在存储器中,并且被配置为由一个或多个处理器执行,一个或多个程序包括用于执行上述任意一项的方法。
根据本申请实施例的另一方面,还提供了计算机程序产品,计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,计算机可执行指令在被执行时使至少一个处理器执行上述任一项的方法。
以这样的方式,根据本申请的技术方案能够以软件和程序的方式在计算机上实现,优化调度规则。
基于规则的调度算法旨在从队列中等待服务的工作中选择要处理的下一个工作。它们可以处理动态环境,并且相对容易实现。仿真已被证明是一种重要的战略工具,用于评估应用于调度程序的不同规则,以便为模拟场景找到优化的规则。本申请能够在仿真工具中建立***性的自学习调度规则的方法。此外,本申请的技术方案也能够在真实场景中应用,以根据真实***和设备的运行来更新和优化调度规则。而且,本申请还能够产生大量有关基于规则的调度决策的性能及其相应***状态的训练数据。在本申请中,采用机器学习的方法,探索调度性能与***状态(用预测器属性表示)之间的隐式关系。所发现的隐性关系成为调度的“元规则”,使用该规则可以根据***状态动态调整调度决策,例如,根据***状态选择合适的调度规则。因此,调度程序被训练成能够根据***状态动态调整调度规则。
在本申请实施例中,提供了根据基于调度规则的训练数据学习***状态与调度性能的关系以更新调度规则的技术方案,以至少解决难以在动态环境中找到优化的调度规则的技术问题,实现了在动态环境中高效实现工作分发的技术效果。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是调度器将工作分发给资源的示意图;
图2是根据本申请实施例的更新调度规则的方法的流程图;
图3是根据本申请示例性实施例的生成工作的方法的流程图;
图4是根据本申请示例性实施例的生成训练数据的方法的流程图;
图5是根据本申请实施例的更新调度规则的方法的示例性决策树的示意图;
图6是根据本申请实施例的更新调度规则的设备的框图;
图7是根据本申请示例性实施例的更新调度规则的设备的框图;
图8是根据本申请实施例的更新调度规则的***的框图;
图9是根据本申请实施例的分配操作的示意图。
附图标号说明:
1,工作与处理;
11,订单;
13,工艺信息;
15,仓库信息;
J,工作,
O&S,操作和调度信息,
2,调度器;
3,资源;
31,机器;
33,生产线;
35,机器人;
37,自动引导运输车;
S201~S215:步骤;
S301~S303:步骤;
S401~S403:步骤;
X1~X7:状态;
R1~Rm:规则;
6,更新调度规则的设备;
61,调度单元;
63,训练单元;
631,预测器属性模块;
633,质量评估模块;
635,数据转换模块;
65,学习单元;
67,工作生成单元;
69,数据库;
8,更新调度规则的***;
10,工作***;
101,用于执行工作的操作的设备;
M1~M7,作为资源的设备
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这 样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或模块或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块或单元。
一些仿真工具包括优化算法,如线性/整数规划或元启发式算法,如遗传算法和禁忌搜索,以解决调度问题。然而,这些算法所处理的静态环境中的工作是已知数量的,这很难满足实际情况下的动态需求。在实际情况下,工作可能在执行过程中不断显现出来。此外,优化解决方案通常很难实现和优化,而且计算上过于复杂,无法在实时***中使用。相比之下,基于规则的调度使用预定义的调度规则,例如优先级级别,对等待处理的工作进行优先排序。它们易于实现,并且大大减少了计算需求,但是它们的调度性能普遍偏低。
应用机器学习方法可以从优化或元启发式算法中发现隐式调度规则。学习的过程包括:a)运行优化算法来计算最优调度决策;b)使用仿真寻找优选调度决策;c)应用机器学习算法来检索隐式知识。这些方法存在的问题在于;1)只关注工作车间调度问题(job-shop scheduling problem,JSSP),与根据本申请的技术框架相比,它仅是一个特定的调度问题(sub-problem);2)依赖优化算法生成调度,对每个训练实例进行优化算法的实现和配置复杂度高,3)需要人工构建预测器属性;4)缺乏***的仿真工具学习处理自动化方法。本申请提出学习元规则的方法,探索了各种调度规则的调度性能与其***状态之间的关系。
此外,仿真中还没有***的方法从仿真案例中提取隐含的知识规则来持续改进调度程序。通常,调度器依赖于工程师的专业知识来手工编写仿真工厂案例的代码。现有的仿真工具中没有嵌入的能够自动积累和利用仿真结果数据进行知识学习的框架来提高调度性能。
根据本申请实施例,提供了更新调度规则的方法。图2是根据本申请实施例的更新调度规则的方法的流程图。如图2所示,结合如下内容描述根据本申请实施例的更新调度规则的方法。
在步骤S201,获取要执行的工作。工作是由***执行的工作,例如是由生产***接收的订单生成的工作,也可以是仿真***中生成的工作。在根据本申请的实施例中,分析真实的***或者仿真***执行工作时对分发工作的调度性能。获取的工作将被分配给现场的生产设备或者被映射到仿真***中的仿真设备,这取决于在该方法的使用 中是从现场获得有关调度的数据还是利用仿真技术从仿真设备获取数据。
接下来,在步骤S203,获取调度规则集,调度规则集包括将工作包括的操作分发给要执行工作的***中能执行操作的设备的多个调度规则。调度规则集是预先存储的,也可以是基于输入获取或者确定的。例如,调度规则集中包括多个调度规则,例如包括优先级规则和随机规则等,也可以包括其他用于调度的规则。调度规则表示对于某一个工作包括的多个操作中的具体各个操作,应当在一些具体条件下由能够执行操作的对应设备执行。
接下来,在步骤S205,根据调度规则将操作分发给能执行操作的设备。如果由现场设备执行工作的操作,则将操作分发给现场设备,进行真实的操作。如果采用仿真***,则将工作分发给仿真设备,例如现场设备在仿真***中映射的仿真设备,以执行仿真过程。
接下来,在步骤S207,获取***在设备执行操作时的***状态。真实***在其设备执行操作时,会产生对应的***状态,或者仿真***在执行仿真操作时,产生预测器属性以表示***状态。获取设备执行操作时的***状态,为后续的算法提供训练数据。例如,记录在操作的执行过程中,以一定的时间间隔记录***状态,或者记录特定时间的***状态。对于仿真过程,记录操作被分发给仿真设备后,仿真设备执行操作时仿真***中的***状态。***状态例如且不限于是***中未完成的工作的数量、所关心的设备的当前负载、完成日相对临近的工作所占的百分比、到到期日的平均剩余时间、需要相对长的时间处理的工作所占的百分比、最大处理时间和平均处理时间的差、两个操作的处理时间的差异等之中的一个或多个。这些***状态反映了所关注的***属性或调度性能,可以根据实际需要进行选择和设置。
例如,示例性***状态可以由如下的属性表示:
X1:所关心的设备上的当前负载;
X2:***中未完成工作的数量;
X3:应完成日期相对较近的工作所占的百分比;
X4:到到期日的平均剩余时间;
X5:处理时间相对较长的工作所占的百分比;
X6:最大剩余处理时间和平均剩余处理时间之间的差异;
X7:待比较的两种操作的处理时间差异。
……
随时间记录这些属性的数据以持续表示***状态。出于不同的分析目的,可以选择不同的***状态的属性,以更好地用于更新调度规则。
接下来,在步骤S209,根据***状态生成质量指数,质量指数表示对***执行工作的质量的评估。工作的质量反映了***执行工作的质量,能够表示根据对应调度规则分发操作做出的调度决策的质量,例如且不限于根据具体调度规则将工作的操作分发给具体设备来执行后效率的高低、***资源占用率的高低、工作的准备时间或平均持续时间的长短等。工作的质量根据调度目标确定,例如若关心***执行工作的速度,则考虑的工作的质量为工作的准备时间和持续时间,对该质量进行评估,生成质量指数。
接下来,在步骤S211,根据调度规则、***状态和质量指数生成训练数据。对于调度规则,获取对应的***状态和质量指数后建立训练数据,表示根据具体的调度规则分发操作给设备后,随时间记录的***状态以及对根据该调度规则执行工作的质量的评估(调度性能的评估)。
接下来,在步骤S213,根据训练数据进行机器学习,生成元规则,元规则表示不同***状态下应采用的调度规则。采用步骤S211中生成的训练数据进行机器学习以探索调度规则与***状态之间的关系,进一步分析以根据该关系生成元规则,其表示在何种***状态应当采用何种调度规则以实现特定调度目标。例如,可以***现有的数据挖掘和机器学习算法的集合,如决策树C5.0、人工神经网络(ANN),从累积的模拟数据中学习模式和隐含知识。要学习的目标是确定在特定***状态下哪个调度规则更合适。从训练数据中提取该知识将允许生成元规则,在任何给定的时间为任何一组工作选择不同的调度规则。图5是根据本申请实施例的更新调度规则的方法的示例性决策树的示意图。如图5所示,使用决策树C5.0作为学习机制,从仿真结果中获取隐含的知识。通过将C5.0算法应用到训练数据,最终可以得到如图5所示的元规则知识,例如,X1~X7表示***中的状态,根据***的状态,元规则能够引导调度器根据状态应用调度规则R1~Rm。例如,如果状态X1的相关值小于等于阈值A,***进入状态X2;若X1的相关值大于阈值A,***维持状态X1。接着,如果状态X2的相关值小于等于阈值B1,***进入状态X3,调度器应用调度规则R1。若X1的相关值在阈值B1和B2的区间内,***进入状态X5,调度器应用规则R2。若X1的相关值大于阈值B2,则通过调度器做出调度决策,***在调度决策做出后进入状态X6,调度器将应用对应的规则。如上仅示例性示出引导调度器应用规则的方法,不同的状态顺序对应于不同的规则R1~Rm,从而可以不断改进调度程序的规则集。
接下来,在步骤S215,根据元规则更新调度规则集中的调度规则。经过如上步骤,对预定的调度规则进行更新,获得新的调度规则,或者修改原有调度规则,用于后续的工作分发的调度过程,或者用于进一步更新调度规则,以获得更优化的调度规则。在根据本申请的更新调度规则的方法中,用于更新调度规则的数据采用了每次记录时获取的预测值、质量指数值和规则。以这样的方式,根据已有的调度规则分发工作,***中的设备执行工作的操作,获取***状态用于评估根据已有的调度规则执行工作的质量,生成训练数据,从而获得各种已有的调度规则与对应***状态对执行工作的质量的影响,更新已有的调度规则,使基于调度规则的调度能够根据环境动态调整。
根据本申请示例性实施例提供了生成工作的方法。图3是根据本申请示例性实施例的生成工作的方法的流程图。如图3所示,根据本申请示例性实施例的生成工作的方法包括在获取要执行的工作前执行步骤S301,获取工作类型,工作类型至少表示工作包括的操作、***中能执行操作的设备以及设备执行操作的时间。然后进行步骤S303,根据工作类型生成要执行的工作类型的至少一个工作。根据本申请示例性实施例的生成工作的方法在根据图2所示的更新调度规则的方法之前进行,当更新调度规则的方法基于仿真***进行时,可以为仿真***生成大量工作的数据以用于生成训练数据。对于动态工作到达过程,到达事件可遵循概率分布,如均匀分布或泊松分布。工作的一个实例如表1所示:
工作1 工作2
工作类型:生产X 工作类型:组装Y
数量:10 数量:5
到达时间:T1 到达时间:T2
到期时间:T3 到期时间:T4
优先级:0 优先级:1
…… ……
表1
工作1根据“工作类型:生产X”来生成,工作2根据“工作类型:组装Y”来生成。工作1和工作2被发送给设备执行对应的操作。工作类型:生产X的实例如下:
根据本申请实施例示出分配操作的过程。图9是根据本申请实施例的分配操作的示意图。如图9所示,在该示例中,操作序列包括操作1、操作2、操作3和操作5, 例如,工作类型:生产X={操作1,操作2,操作3,操作5}。此处示出的操作序列仅仅是示意性的,操作系列可以包括更多操作或者更少操作,取决于工作所包括的操作的多少。
本示例中示出的用于执行操作的资源包括M1、M2、M3、M4、M5、M6和M7。根据不同的设备情况,资源可以包括更多或者更少设备。本示例中,操作1能够由设备M1、M3和M6执行,执行过程分别为P11、P13和P16,完成后执行操作2和操作3;操作2能够由设备M2和M4执行,执行过程分别为P22和P24,完成后执行操作3和操作5;操作3能够由设备M1、M3和M6执行,执行过程分别为P31、P33和P36,完成后执行操作5;操作5能够由设备M3和M7执行,执行过程分别为P53和P57,操作与设备的映射如上示例所示。
根据如上工作类型能够生成一系列如上所述的工作,分发给仿真设备。仿真设备可以执行仿真过程,得到仿真的处理结果。
根据本申请示例性实施例提供了生成训练数据的方法。图4是根据本申请示例性实施例的生成训练数据的方法的流程图。如图4所示,根据本申请示例性实施例生成训练数据包括:步骤S401,通过将质量指数与预设的阈值进行比较,确定质量指数是否小于阈值。预先确定阈值,该阈值用于区分想要用于生成训练数据的数据和不考虑用于生成训练数据的数据。接下来进行步骤S403,如果质量指数小于阈值,则根据质量指数对应的调度规则和***状态生成数据表作为训练数据,其中,数据表包括***状态、随时间记录的***状态的变量以及对应的调度规则。可以进行这样的设置,选择质量指数小于阈值的数据生成训练数据。例如,对于“完成任务的最短时间”这一工作的质量,质量指数表示“完成时间”,该质量指数小于预定的阈值,说明根据该规则较高效地执行了工作,因此将对应的数据用于生成训练数据,以获取优化的调度规则。应理解,预定的阈值是根据评估所关心的调度性能决定的,若关心***资源利用率,则可以采用“资源空闲时间的平均持续时间”作为质量指数,当该质量指数小于阈值时,说明***资源利用率高,调度决策的质量好,根据对应规则能够更高效执行工作,将对应的数据用于生成训练数据。根据具体选择的质量指数所表示的不同内容,质量指数也可以大于阈值,目的在于通过质量指数与阈值的比较确定调度决策的质量高,例如调度决策的质量高于预设的阈值或期望。训练数据包括调度规则、采用该调度规则的***状态,将这些数据以数据表的形式记录下来,以清晰表示***状态、随时间记录的***状态的变量以及对应的调度规则,便于机器学习过程的处理。
表2是示例性的数据表,属性X是表示***状态的仿真***的预测器属性:
训练数据 时间0时的 时间1时的 时间x时的
 
属性X 1 0.5 0.8 0.2
属性X 2 3 2 1
属性X 3 0.1 0.3 0.1
属性X 4 30. 10 3
属性X 7 4 0 10
规则# r 1 r 2 r 1
表2
以这样的方式,选择全部数据中能够有效用于提升调度性能的训练数据。
根据本申请的示例性实施例,在获得有效的训练数据后,根据训练数据进行机器学习包括根据机器学习算法和训练数据确定***执行工作的质量与***状态之间的隐式关系,隐式关系用于生成元规则。例如在步骤S213中,采用机器学习算法对训练数据进行处理,获取隐含的知识,如在具体***状态,采用具体调度规则。以这样的方式,学习何种***状态将对应于何种工作质量或调度性能,作为优化调度规则的基础。
根据本申请的示例性实施例,在获得元规则后,更新调度规则集中的调度规则包括根据元规则生成更新规则,更新规则表示在具体***状态下要采用的调度规则,以及将更新规则与调度规则共同应用于操作的分发。以这样的方式,根据机器学习结果生成优化的调度规则,使调度规则中包括能够根据环境动态调度的更新规则。
根据本申请的示例性实施例,将操作分发给能执行操作的设备包括:根据调度规则生成分发操作的分发序列;以及根据分发序列分发操作。根据调度规则,确定要执行操作的设备以及要执行的操作的顺序,以这样的方式,将操作分发到能执行操作的设备以在***中执行工作。
根据本申请的示例性实施例,质量指数是与执行工作的质量相关的多个属性的加权值。若对于调度目标需要考虑多个属性,则采用加权的方式量化预先选定的属性重要性。如质量指数可以是多个目标函数的加权函数。例如,示例性目标函数f 1和f 2是:
f 1:工作交付时间的平均持续时间
f 2:资源空闲时间的平均持续时间
加权质量指数函数可以是:f=w 1f 1+w 2f 2,w 1和w 2是根据要考虑的属性的重要性预先确定的。下游决策可能会显著影响计算出的质量指数,因此,在评价质量指数时应考虑这一因素。最终的质量指数表示了考虑多个调度目标的调度性能。以这样的方式,以多个影响质量的属性为基础分析调度性能。
根据本申请的示例性实施例,该方法还包括:在生成训练数据后,将训练数据存储在数据库中。例如,将训练数据以{预测器属性,规则}的形式记录在数据库中,执行机器学习的模块可以调用其中的数据。以这样的方式,将训练数据用于后续的机器学习或者其他使用中。
根据本申请实施例,还提供了更新调度规则的设备。图6是根据本申请实施例的更新调度规则的设备的框图。如图6所示,根据本申请实施例的更新调度规则的设备6包括:调度单元61,被配置为:获取要执行的工作;获取调度规则集,调度规则集包括将工作包括的操作分发给要执行工作的***中能执行操作的设备的多个调度规则;根据调度规则将操作分发给能执行操作的设备;训练单元63,训练单元包括:预测器属性模块631,被配置为获取***在设备执行操作时的***状态;质量评估模块633,被配置为根据***状态生成质量指数,质量指数表示对***执行工作的质量的评估;以及数据转换模块635,被配置为根据调度规则、***状态和质量指数生成训练数据;以及学习单元65,被配置为:根据训练数据进行机器学习,生成元规则,元规则表示不同***状态下应采用的调度规则;以及根据元规则更新调度规则集中的调度规则。根据本申请实施例的更新调度规则的设备6可以嵌入到仿真工具中,用于在仿真***中运行。训练单元63负责记录仿真中的相关的***状态,为后续的学习算法构建训练数据,预测器属性模块631计算代表每个***状态的一组变量。质量评估模块633在每次调度决策后对得到的***状态进行评价。最后,数据转换模块635将采集的仿真数据进一步转换为合适的训练数据,作为后续学习单元65的输入。学习单元65采用现有机器学习算法的集合,从累积的训练数据中挖掘隐式知识,即,调度性能与***状态之间的隐式关系(用预测器属性变量表示)。发现的“元规则”将被提供给调度单元61,使用该规则,调度单元61将根据***状态动态定制调度决策,并且优于常规调度规则。根据本申请实施例的更新调度规则的设备6执行如上根据本申请实施例的更新调度规则的方法,其具体内容不再赘述。
以这样的方式,根据已有的调度规则分发工作,***中的设备执行工作的操作,获取***状态用于评估根据已有的调度规则执行工作的质量,生成训练数据,从而获得各种已有的调度规则与对应***状态对执行工作的质量的影响,更新已有的调度规 则,使调度单元基于调度规则的调度能够根据环境动态调整。
图7是根据本申请示例性实施例的更新调度规则的设备的框图。如图7所示,根据本申请的示例性实施例,该设备(6)还包括:工作生成单元67,被配置为:获取工作类型,工作类型至少表示工作包括的操作、***中能执行操作的设备以及设备执行操作的时间,以及根据工作类型生成要执行的工作类型的至少一个工作,能够为调度单元61生成大量工作用于获取基于调度规则的训练数据。
如图7所示,根据本申请的示例性实施例,该设备(6)还包括:数据库(69),被配置为存储训练数据,将训练数据用于后续的机器学习或者其他使用中。
根据本申请实施例的另一方面,还提供了更新调度规则的***。图8是根据本申请实施例的更新调度规则的***的框图。如图8所示,根据本申请实施例的更新调度规则的***8包括:要执行工作的工作***10,工作***10包括用于执行工作的操作的设备101;以及更新调度规则的设备6,设备6包括:调度单元61,被配置为:获取要执行的工作;获取调度规则集,调度规则集包括将工作包括的操作分发给工作***中能执行操作的设备的多个调度规则;根据调度规则将操作分发给能执行操作的设备;训练单元63,训练单元63包括:预测器属性模块631,被配置为获取工作***在设备执行操作时的***状态;质量评估模块633,被配置为根据***状态生成质量指数,质量指数表示对工作***执行工作的质量的评估;以及数据转换模块635,被配置为根据调度规则、***状态和质量指数生成训练数据;以及学习单元65,被配置为:根据训练数据进行机器学习,生成元规则,元规则表示不同***状态下应采用的调度规则;以及根据元规则更新调度规则集中的调度规则。以这样的方式,根据已有的调度规则分发工作,***中的设备执行工作的操作,获取***状态用于评估根据已有的调度规则执行工作的质量,生成训练数据,从而获得各种已有的调度规则与对应***状态对执行工作的质量的影响,更新已有的调度规则,使基于调度规则的调度能够根据环境动态调整。本申请实施例的更新调度规则的***执行的操作参考如上内容,在此不再赘述。
应理解,本申请的技术方案能够在真实***和仿真***中实施。当在真实***中实施时,可以从现场或者数据库中获取执行操作和***状态的历史数据,而在仿真***中,则可以通过仿真过程获得训练所需的数据。
本申请还可以以程序的形式实施,根据本申请实施例,还提供了存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述方法。根据本申请实施例,还提供了处理器,处理器用于运行程序,其中,程序运行时执行上述方法。根据本申请实施例,还提供了终端,包括:一个或多个处理器,存储器,以 及一个或多个程序,其中,一个或多个程序被存储在存储器中,并且被配置为由一个或多个处理器执行,一个或多个程序包括用于执行上述方法。根据本申请实施例,还提供了计算机程序产品,计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,计算机可执行指令在被执行时使至少一个处理器执行上述的方法。以这样的方式,根据本申请的技术方案能够以软件和程序的方式在计算机上实现,优化调度规则。
通过从大量仿真数据中学习到的知识,调度单元可以更有效地做出调度决策。元规则将指导调度单元根据***状态应用最合适的调度规则。经训练的仿真***中的调度单元通过预测器计算***状态,根据***状态动态选择最适合的调度规则。训练过程可以在具有更多数据的框架中持续进行,以确定优化的调度规则。
本申请在仿真工具中使用学习结构,以便能够使用发现的知识持续改进调度程序的性能。该嵌入式学习框架可以训练调度程序,通过仿真数据识别优化的调度规则。该***为现有的仿真工具创造了新的价值主张,减少开发高级调度程序的障碍以及人力。
本申请在仿真工具中构建了较少的新模块,实现了知识学习过程中训练数据的自动收集、构建和存储***。该***还可以在未来实现新的业务模式,例如共享仿真结果,以训练不同的调度程序。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元或模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或模块或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元或模块可以是或者也可以不是物理上分开的,作为单元或模块显示的部件可以是或者也可以不是物理单元或模块,即可以位于一个地方,或者也可以分布到多个网络单元或模块上。可以根据实际的需要选择其中的部分或者全部单元或模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元或模块可以集成在一个处理单元或模块中,也可以是各个单元或模块单独物理存在,也可以两个或两个以上单元或模块集 成在一个单元或模块中。上述集成的单元或模块既可以采用硬件的形式实现,也可以采用软件功能单元或模块的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (16)

  1. 更新调度规则的方法,其特征在于,包括:
    获取要执行的工作;
    获取调度规则集,所述调度规则集包括将所述工作包括的操作分发给要执行所述工作的***中能执行所述操作的设备的多个调度规则;
    根据所述调度规则将所述操作分发给能执行所述操作的设备;
    获取所述***在所述设备执行所述操作时的***状态;
    根据所述***状态生成质量指数,所述质量指数表示对所述***执行所述工作的质量的评估;
    根据所述调度规则、所述***状态和所述质量指数生成训练数据;
    根据所述训练数据进行机器学习,生成元规则,所述元规则表示不同***状态下应采用的调度规则;以及
    根据所述元规则更新所述调度规则集中的调度规则。
  2. 根据权利要求1所述的方法,其特征在于,在获取要执行的工作前:
    获取工作类型,所述工作类型至少表示所述工作包括的操作、所述***中能执行所述操作的设备以及所述设备执行所述操作的时间;以及
    根据所述工作类型生成要执行的所述工作类型的至少一个工作。
  3. 根据权利要求1或2所述的方法,其特征在于,生成训练数据包括:
    通过将所述质量指数与预设的阈值进行比较,确定所述质量指数是否小于所述阈值;
    如果所述质量指数小于所述阈值,则根据所述质量指数对应的所述调度规则和所述***状态生成数据表作为所述训练数据,其中,所述数据表包括所述***状态、随时间记录的所述***状态的变量以及对应的所述调度规则。
  4. 根据权利要求1或2所述的方法,其特征在于,根据所述训练数据进行机器学习包括:
    根据机器学习算法和所述训练数据确定所述***执行所述工作的质量与所述 ***状态之间的隐式关系,所述隐式关系用于生成所述元规则。
  5. 根据权利要求1或2所述的方法,其特征在于,更新所述调度规则集中的调度规则包括:
    根据所述元规则生成更新规则,所述更新规则表示在具体***状态下要采用的所述调度规则;以及
    将所述更新规则与所述调度规则共同应用于所述操作的分发。
  6. 根据权利要求1或2所述的方法,其特征在于,将所述操作分发给能执行所述操作的设备包括:
    根据所述调度规则生成分发所述操作的分发序列;以及
    根据所述分发序列分发所述操作。
  7. 根据权利要求1或2所述的方法,其特征在于,所述质量指数是与执行所述工作的质量相关的多个属性的加权值。
  8. 根据权利要求1或2所述的方法,其特征在于,还包括:
    在生成所述训练数据后,将所述训练数据存储在数据库中。
  9. 更新调度规则的设备,其特征在于,包括:
    调度单元(61),被配置为:
    获取要执行的工作;
    获取调度规则集,所述调度规则集包括将所述工作包括的操作分发给要执行所述工作的***中能执行所述操作的设备的多个调度规则;
    根据所述调度规则将所述操作分发给能执行所述操作的设备;
    训练单元(63),所述训练单元包括:
    预测器属性模块(631),被配置为获取所述***在所述设备执行所述操作时的***状态;
    质量评估模块(633),被配置为根据所述***状态生成质量指数,所述质量指数表示对所述***执行所述工作的质量的评估;以及
    数据转换模块(635),被配置为根据所述调度规则、所述***状态和所述质量指数生成训练数据;以及
    学习单元(65),被配置为:
    根据所述训练数据进行机器学习,生成元规则,所述元规则表示不同***状态下应采用的调度规则;以及
    根据所述元规则更新所述调度规则集中的调度规则。
  10. 根据权利要求9所述的设备,其特征在于,还包括:
    工作生成单元(67),被配置为:
    获取工作类型,所述工作类型至少表示所述工作包括的操作、所述***中能执行所述操作的设备以及所述设备执行所述操作的时间,以及
    根据所述工作类型生成要执行的所述工作类型的至少一个工作。
  11. 根据权利要求9所述的设备,其特征在于,还包括:
    数据库(69),被配置为存储所述训练数据。
  12. 更新调度规则的***,其特征在于,包括:
    要执行工作的工作***(10),所述工作***(10)包括用于执行工作的操作的设备(101);以及
    更新调度规则的设备(6),所述设备(6)包括:
    调度单元(61),被配置为:
    获取要执行的工作;
    获取调度规则集,所述调度规则集包括将所述工作包括的操作分发给所述工作***中能执行所述操作的设备的多个调度规则;
    根据所述调度规则将所述操作分发给能执行所述操作的设备;
    训练单元(63),所述训练单元包括:
    预测器属性模块(631),被配置为获取所述工作***在所述设备执行所述操作时的***状态;
    质量评估模块(633),被配置为根据所述***状态生成质量指数,所述质量指数表示对所述工作***执行所述工作的质量的评估;以及
    数据转换模块(635),被配置为根据所述调度规则、所述***状态和所 述质量指数生成训练数据;以及
    学习单元(65),被配置为:
    根据所述训练数据进行机器学习,生成元规则,所述元规则表示不同***状态下应采用的调度规则;以及
    根据所述元规则更新所述调度规则集中的调度规则。
  13. 存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至8中任意一项所述的方法。
  14. 处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至8中任意一项所述的方法。
  15. 终端,包括:一个或多个处理器,存储器,以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行权利要求1至8中任意一项所述的方法。
  16. 计算机程序产品,所述计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行根据权利要求1至8中任一项所述的方法。
PCT/CN2018/108384 2018-09-28 2018-09-28 更新调度规则的方法、设备、***、存储介质和终端 WO2020062047A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201880096166.4A CN112514352A (zh) 2018-09-28 2018-09-28 更新调度规则的方法、设备、***、存储介质和终端
PCT/CN2018/108384 WO2020062047A1 (zh) 2018-09-28 2018-09-28 更新调度规则的方法、设备、***、存储介质和终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/108384 WO2020062047A1 (zh) 2018-09-28 2018-09-28 更新调度规则的方法、设备、***、存储介质和终端

Publications (1)

Publication Number Publication Date
WO2020062047A1 true WO2020062047A1 (zh) 2020-04-02

Family

ID=69949503

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/108384 WO2020062047A1 (zh) 2018-09-28 2018-09-28 更新调度规则的方法、设备、***、存储介质和终端

Country Status (2)

Country Link
CN (1) CN112514352A (zh)
WO (1) WO2020062047A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4089494A1 (de) * 2021-05-12 2022-11-16 Multivac Sepp Haggenmüller GmbH & Co. KG Selbstlernende lebensmittelverarbeitungsvorrichtung und verfahren
CN117331291A (zh) * 2023-12-01 2024-01-02 上海红岩临芯半导体科技有限公司 涂胶显影设备单元均衡流片的调度方法及***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103217960A (zh) * 2013-04-08 2013-07-24 同济大学 一种半导体生产线动态调度策略自动选择方法
CN105045243A (zh) * 2015-08-05 2015-11-11 同济大学 一种半导体生产线动态调度装置
US20160071044A1 (en) * 2014-09-05 2016-03-10 Amadeus S.A.S. Flight schedule optimization
CN106610641A (zh) * 2015-11-26 2017-05-03 四川用联信息技术有限公司 针对动态作业车间调度问题的基于局部搜索遗传编程算法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8762304B2 (en) * 2009-11-03 2014-06-24 Hewlett-Packard Development Company, L.P. Policy scheduling
US20150046279A1 (en) * 2012-09-12 2015-02-12 Salesforce.Com, Inc. Auction-based resource sharing for message queues in an on-demand services environment
CN106802553B (zh) * 2017-01-13 2019-10-11 清华大学 一种基于强化学习的铁路机车运行操控***混合任务调度方法
CN108305671B (zh) * 2018-01-23 2021-01-01 深圳科亚医疗科技有限公司 由计算机实现的医学图像调度方法、调度***及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103217960A (zh) * 2013-04-08 2013-07-24 同济大学 一种半导体生产线动态调度策略自动选择方法
US20160071044A1 (en) * 2014-09-05 2016-03-10 Amadeus S.A.S. Flight schedule optimization
CN105045243A (zh) * 2015-08-05 2015-11-11 同济大学 一种半导体生产线动态调度装置
CN106610641A (zh) * 2015-11-26 2017-05-03 四川用联信息技术有限公司 针对动态作业车间调度问题的基于局部搜索遗传编程算法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4089494A1 (de) * 2021-05-12 2022-11-16 Multivac Sepp Haggenmüller GmbH & Co. KG Selbstlernende lebensmittelverarbeitungsvorrichtung und verfahren
CN117331291A (zh) * 2023-12-01 2024-01-02 上海红岩临芯半导体科技有限公司 涂胶显影设备单元均衡流片的调度方法及***
CN117331291B (zh) * 2023-12-01 2024-03-19 上海红岩临芯半导体科技有限公司 涂胶显影设备单元均衡流片的调度方法及***

Also Published As

Publication number Publication date
CN112514352A (zh) 2021-03-16

Similar Documents

Publication Publication Date Title
Wang et al. An improved particle swarm optimization algorithm for dynamic job shop scheduling problems with random job arrivals
Shahrabi et al. A reinforcement learning approach to parameter estimation in dynamic job shop scheduling
Jakobović et al. Evolving priority scheduling heuristics with genetic programming
Wang et al. A holonic approach to flexible flow shop scheduling under stochastic processing times
US11010696B2 (en) Job allocation
Wang et al. A proactive manufacturing resources assignment method based on production performance prediction for the smart factory
CN114072766A (zh) 用于数字劳动力智能编排的***和方法
US11693392B2 (en) System for manufacturing dispatching using deep reinforcement and transfer learning
US20210073745A1 (en) System and method of scheduling work within a workflow with defined process goals
Nguyen et al. Genetic programming for job shop scheduling
Guo et al. A hybrid intelligent model for order allocation planning in make-to-order manufacturing
CN110389816A (zh) 用于资源调度的方法、装置以及计算机程序产品
Mahnam et al. Single machine scheduling with unequal release times and idle insert for minimizing the sum of maximum earliness and tardiness
Cheng et al. Learning-based metaheuristic for scheduling unrelated parallel machines with uncertain setup times
WO2020062047A1 (zh) 更新调度规则的方法、设备、***、存储介质和终端
CN113657634A (zh) 银行网点排队等待时长预测方法及装置
Renna et al. A game theory model based on Gale-Shapley for dual-resource constrained (DRC) flexible job shop scheduling
Shen An uncertain parallel machine problem with deterioration and learning effect
Cao et al. Concrete plant operations optimization using combined simulation and genetic algorithms
Kamali et al. An immune-based multi-agent system for flexible job shop scheduling problem in dynamic and multi-objective environments
Wang et al. Real-time decision support with reinforcement learning for dynamic flowshop scheduling
CN115237592B (zh) 隐私感知的混合云服务流程调度方法
Karthikeyan et al. Solving flexible job-shop scheduling problem using hybrid particle swarm optimisation algorithm and data mining
Sundar et al. Multi-objective genetic algorithm for the optimized resource usage and the prioritization of the constraints in the software project planning
Asadi-Zonouz et al. A hybrid unconscious search algorithm for mixed-model assembly line balancing problem with SDST, parallel workstation and learning effect

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18935483

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18935483

Country of ref document: EP

Kind code of ref document: A1