CN115049201A - Job scheduling method and device, electronic equipment and storage medium - Google Patents

Job scheduling method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN115049201A
CN115049201A CN202210447947.1A CN202210447947A CN115049201A CN 115049201 A CN115049201 A CN 115049201A CN 202210447947 A CN202210447947 A CN 202210447947A CN 115049201 A CN115049201 A CN 115049201A
Authority
CN
China
Prior art keywords
job
resource
rescheduling
jobs
time
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
CN202210447947.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.)
Bank of China Financial Technology Co Ltd
Original Assignee
Bank of China Financial 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 Bank of China Financial Technology Co Ltd filed Critical Bank of China Financial Technology Co Ltd
Priority to CN202210447947.1A priority Critical patent/CN115049201A/en
Publication of CN115049201A publication Critical patent/CN115049201A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Data Mining & Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • General Factory Administration (AREA)

Abstract

The invention provides a job scheduling method, a job scheduling device, electronic equipment and a storage medium, wherein the method comprises the following steps: acquiring an initial operation scheduling plan and a resource interruption interval of a project to be processed; determining a rescheduling job set based on the starting time and the ending time corresponding to the resource interruption interval and the resource usage amount, the job starting time and the job ending time corresponding to each job in the job set; if the resource usage of all the jobs in the rescheduling job set does not meet the preset condition, determining a rescheduling job sequence based on the rescheduling job set and the influence degree of each job in the rescheduling job set on the immediate post job corresponding to each job; and adjusting the initial job scheduling plan of the project to be processed based on the rescheduling job sequence. The method and the device provided by the invention reduce the indirect change cost of the project to be processed and improve the production efficiency of the project to be processed.

Description

Job scheduling method, device, electronic equipment and storage medium
Technical Field
The present invention relates to the field of engineering management technologies, and in particular, to a job scheduling method and apparatus, an electronic device, and a storage medium.
Background
A production project for a large-scale device usually includes a plurality of jobs, each job has a corresponding timing and duration, and uses certain resources.
During the job of these projects, the resources in the production process are typically configured by means of manually making a job scheduling plan. In the actual production process, dynamic resource interruption may occur, so that the resource configuration of the project cannot adapt to the adjustment of the operation time sequence and the construction period due to the dynamic resource interruption, the utilization efficiency of resources is reduced, resource redundancy and waste are caused, the production efficiency of the whole project is reduced, and the production cost of the whole project is increased.
Disclosure of Invention
The invention provides a job scheduling method, a job scheduling device, electronic equipment and a storage medium, which are used for solving the technical problems that the job scheduling method in the prior art cannot cope with the situation of dynamic resource interruption, and is low in resource utilization rate, low in production efficiency and high in production cost.
The invention provides a job scheduling method, which comprises the following steps:
acquiring an initial operation scheduling plan and a resource interruption interval of a project to be processed;
determining a rescheduling job set based on the starting time and the ending time corresponding to the resource interruption interval and the resource usage amount, the job starting time and the job ending time corresponding to each job in the job set;
if the resource usage of all the jobs in the rescheduling job set does not meet the preset condition, determining a rescheduling job sequence based on the rescheduling job set and the influence degree of each job in the rescheduling job set on the immediate post job corresponding to each job;
adjusting the initial operation scheduling plan of the project to be processed based on the rescheduling operation sequence;
and the preset condition is that the resource usage of all the jobs in the rescheduling job set is less than or equal to the resource total upper limit corresponding to the resource interruption interval.
According to the job scheduling method provided by the present invention, before determining a rescheduled job sequence based on the rescheduled job set and the degree of influence of each job in the rescheduled job set on an immediately-after job corresponding to each job, the method includes:
if the interrupted unfinished operation exists in the rescheduling operation set, adjusting the operation starting time and the work period of the interrupted unfinished operation based on the starting time of the resource interruption interval and the operation ending time corresponding to the interrupted unfinished operation;
wherein the operation starting time of the interruption unfinished operation is less than the starting time of the resource interruption interval, and the operation finishing time of the interruption unfinished operation is greater than the starting time of the resource interruption interval.
According to the job scheduling method provided by the present invention, the determining a rescheduled job sequence based on the rescheduled job set and the degree of influence of each job in the rescheduled job set on an immediately subsequent job corresponding to each job includes:
determining the influence degree of each job on the immediately-after job corresponding to each job in the rescheduled job set based on the job starting time of the immediately-after job corresponding to each job, the construction period after the job starting time of each job is delayed to the ending time corresponding to the resource interruption interval, and the ending time of the resource interruption interval;
and based on the influence degree of each job on the immediately-after job corresponding to each job, performing ascending order arrangement on each job, and determining the rescheduling job sequence.
According to the job scheduling method of the present invention, the method of determining the degree of influence of each job on the immediately following job corresponding to each job based on the job start time of the immediately following job corresponding to each job in the rescheduled job set, the period after the job start time of each job is delayed to the end time corresponding to the resource interrupt section, and the end time of the resource interrupt section includes:
determining a job starting time of an immediately-after job corresponding to any job in the rescheduled job set, a construction period after the job starting time of the any job is delayed to an ending time corresponding to the resource interruption interval, and a difference value between the ending times of the resource interruption intervals;
and the difference value is used for representing the influence degree of any operation on the operation immediately after the operation corresponding to the operation.
According to the job scheduling method provided by the present invention, the adjusting the initial job scheduling plan of the to-be-processed project based on the rescheduled job sequence includes:
sequentially deleting the jobs ranked at the top based on the arrangement sequence of the jobs in the rescheduling job sequence, determining the resource usage amount of all the jobs in the rescheduling job sequence after deleting the jobs ranked at the top each time, and adjusting the job starting time of the deleted jobs to be the ending time of the resource interruption interval;
and if the resource usage of all the jobs in the rescheduling job sequence after the current deletion is executed is less than or equal to the resource total upper limit corresponding to the resource interruption interval, stopping the deletion, and adjusting the initial job scheduling plan of the project to be processed based on the rescheduling job sequence after the current deletion is executed.
According to the job scheduling method provided by the present invention, after the initial job scheduling plan of the to-be-processed item is adjusted, the method includes:
determining the resource cost of the project to be processed based on the unit price of each resource and the resource usage amount of all the jobs;
determining the rescheduling cost of the project to be processed based on the job end time of all jobs in the initial job scheduling plan and the actual job end time of all jobs after the initial job scheduling plan is adjusted;
determining the punishment cost of the project to be processed based on the actual construction period of the project to be processed after the initial job scheduling plan is adjusted and the specified total construction period of the project to be processed;
determining a cost of the project to be processed based on the resource cost, the rescheduling cost, and the penalty cost.
The invention provides a job scheduling device, comprising:
the system comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring an initial job scheduling plan and a resource interruption interval of a project to be processed;
a determining unit, configured to determine a rescheduling job set based on a start time and an end time corresponding to the resource interruption interval, and a resource usage amount, a job start time, and a job end time corresponding to each job in the job set;
a comparing unit, configured to determine a rescheduling job sequence based on the rescheduling job set and an influence degree of each job in the rescheduling job set on an immediate job corresponding to each job if resource usage of all jobs in the rescheduling job set does not meet a preset condition;
the adjusting unit is used for adjusting the initial job scheduling plan of the project to be processed based on the rescheduling job sequence;
and the preset condition is that the resource usage of all the jobs in the rescheduling job set is less than or equal to the resource total upper limit corresponding to the resource interruption interval.
The invention provides electronic equipment which comprises a memory, a processor and a computer program which is stored on the memory and can run on the processor, wherein the processor executes the program to realize the job scheduling method.
The present invention provides a non-transitory computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the job scheduling method.
The invention provides a computer program product comprising a computer program which, when executed by a processor, implements the job scheduling method.
The invention provides a job scheduling method, a job scheduling device, an electronic device and a storage medium, wherein a reschedule job set is determined according to a starting time and an ending time corresponding to a resource interruption interval, and a resource usage amount, a job starting time and a job ending time corresponding to each job in the job set; if the resource usage of all the jobs in the rescheduling job set does not meet the preset condition, determining a rescheduling job sequence according to the rescheduling job set and the influence degree of each job in the rescheduling job set on the post-tightening job corresponding to each job, and adjusting an initial job scheduling plan of a project to be processed; because the influence of each job on the operation after the operation is finished is considered, the number of the jobs needing to be rescheduled in the initial job scheduling plan when the resources are interrupted is reduced, the indirect change cost of the project to be processed is reduced, the utilization efficiency of the resources is improved, and the production efficiency of the project to be processed is improved.
Drawings
In order to more clearly illustrate the technical solutions of the present invention or the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
FIG. 1 is a flowchart illustrating a job scheduling method according to one embodiment of the present invention;
FIG. 2 is a second flowchart of the job scheduling method according to the present invention;
FIG. 3 is a schematic structural diagram of a job scheduling apparatus provided by the present invention;
fig. 4 is a schematic structural diagram of an electronic device provided in the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings, and it is obvious that the described embodiments are some, but not all embodiments of the present invention. All other embodiments, which can be obtained by a person skilled in the art without inventive step based on the embodiments of the present invention, are within the scope of protection of the present invention.
It should be noted that the terms "first", "second", etc. in the present invention are used for distinguishing similar objects, and are not necessarily used for describing a particular order or sequence. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the invention described herein are capable of operation in other sequences than those illustrated or described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
Fig. 1 is a flowchart illustrating a job scheduling method according to the present invention, and as shown in fig. 1, the method includes steps 110, 120, 130, and 140.
And step 110, acquiring an initial job scheduling plan and a resource interruption interval of the project to be processed.
Specifically, the items to be processed in the embodiment of the present invention may be production items of large equipment, such as assembly items of an aircraft.
The initial job scheduling plan is a job plan which is made when a project to be processed is started and comprises a plurality of jobs, and a job starting time, a job ending time and a resource usage amount which correspond to each job. The resource interruption interval is a time interval corresponding to the occurrence of the resource interruption event. The difference between the end time and the start time of the project is the project period, and the difference between the end time and the start time of the operation is the work period.
For example, for a project, its initial job schedule may include J jobs, with the job set denoted as J e {1, 2.,. J }, and J being the number of jobs. Each job j needs to use K different renewable resources, which can be reused, and the set of resource categories is represented as K e {1, 2., K }, where K is the number of the resource category. The work time of the item is discretized, the work time set is represented as T ═ 1, 2, a, T }, and T is the number of the work time. Setting the total construction period of the project as T 1 I.e. the time for completing the last operation must not exceed T 1
The resource interruption interval may be denoted as [ t ] ks ,t kf ]. Wherein, t ks Is the starting time, t, of the kth resource interrupt kf Is the ending time of the kth resource interrupt.
And step 120, determining a rescheduling job set based on the starting time and the ending time corresponding to the resource interruption interval and the resource usage amount, the job starting time and the job ending time corresponding to each job in the job set.
In particular, a resource interruption event may affect a portion of the job in the pending project. For example, if a certain kind of resource is needed while a certain job is in progress, when a resource interruption event occurs, the certain kind of resource may not be provided, so that the job may not be performed normally. Resource interruption events may cause the pending item to fail to execute according to the initial job scheduling plan, and therefore, the initial job scheduling plan needs to be adjusted.
A rescheduled job set refers to a set of jobs that are affected by a resource interrupt event. The rescheduled job set may be determined according to a start time and an end time corresponding to the resource interruption interval, and a resource usage amount, a job start time, and a job end time corresponding to each job in the job set.
For example, for job j in the initial job scheduling plan, the job start time is st j The operation end time is ft j The resource usage amount for the kth resource is r jk If st is j <t kf ,ft j >t ks And r is jk > 0, then it may be determined that job j is affected by a resource interrupt event. And sorting the jobs influenced by all the resource interruption events to obtain a rescheduled job set A.
Step 130, if the resource usage of all the jobs in the rescheduled job set does not meet the preset condition, determining a rescheduled job sequence based on the rescheduled job set and the influence degree of each job in the rescheduled job set on the immediate post job corresponding to each job; the preset condition is that the resource usage of all the jobs in the rescheduling job set is less than or equal to the resource total upper limit corresponding to the resource interruption interval.
Specifically, the adjustment of the job time of each job needs to be determined in consideration of the influence of each job on the entire to-be-processed item. In the prior art, a translation algorithm is usually adopted to solve the problem of resource interruption, that is, all affected jobs are translated backwards by the length of time for resource interruption. The solution cost generated by the algorithm is usually too high, which brings a part of unnecessary change cost and is not feasible in actual operation.
When the upper limit of the interrupt resource is not zero, a part of directly influenced jobs do not need to be rescheduled, even if the jobs need to use the interrupt resource in the execution process, the jobs are not limited by the upper limit of the resource interrupt in the execution process due to small usage amount, and therefore rescheduling is not needed. Therefore, rescheduled job selection needs to be considered.
When considering the re-scheduling problem, the variation cost is divided into a direct variation cost and an indirect variation cost. The direct fluctuating cost is a cost for directly raising the fluctuating cost due to moving a certain job, and the indirect fluctuating cost is a cost for moving a certain job so that the subsequent job thereof also needs to be moved. If a job to be rescheduled has several subsequent jobs, and the jobs are closely linked, that is, rescheduling of a single job will cause the start time of all subsequent jobs to change, which will bring huge indirect change cost, which is several times of direct change cost. Therefore, in view of the consideration of the indirect varying cost, the method provided by the embodiment of the invention aims to minimize the indirect varying cost from the viewpoint of the immediately following operation start time.
The immediately following job is a job immediately after any one job in the order of jobs. It is possible to measure whether the variation of the directly affected job has an effect on the job immediately after it. And preferentially scheduling the jobs with less influence on the jobs after the jobs are processed, so that the change cost of the whole project to be processed can be reduced.
Specifically, if the resource usage of all the jobs in the rescheduled job set is less than or equal to the resource total upper limit corresponding to the resource interruption interval, it indicates that the resource interruption event does not affect the jobs in the rescheduled job set. Therefore, it can be used as a preset condition for determining whether to reschedule each job in the rescheduled job set.
If the resource usage of all the jobs in the rescheduled job set does not meet the preset condition, the rescheduled job sequence can be determined according to the rescheduled job set and the influence degree of each job in the rescheduled job set on the immediately following job corresponding to each job.
The rescheduling job sequence is a job sequence obtained by reordering all jobs in the rescheduling job set.
And 140, adjusting the initial job scheduling plan of the project to be processed based on the rescheduling job sequence.
Specifically, after the rescheduled job sequence is obtained, the job start time and the job end time of each job in the initial job scheduling plan of the item to be processed may be adjusted according to the job start time and the job end time of each job in the rescheduled job sequence, so as to obtain a job scheduling plan meeting the requirements.
According to the job scheduling method provided by the embodiment of the invention, a rescheduling job set is determined according to the starting time and the ending time corresponding to the resource interruption interval, and the resource usage amount, the job starting time and the job ending time corresponding to each job in the job set; if the resource usage of all the jobs in the rescheduling job set does not meet the preset condition, determining a rescheduling job sequence according to the rescheduling job set and the influence degree of each job in the rescheduling job set on the post-tightening job corresponding to each job, and adjusting an initial job scheduling plan of a project to be processed; the influence of each job on the operation after the operation is finished is considered, so that the number of the jobs needing to be rescheduled in the initial job scheduling plan when the resources are interrupted is reduced, the indirect change cost of the project to be processed is reduced, the utilization efficiency of the resources is improved, and the production efficiency of the project to be processed is improved.
Based on the above embodiment, step 130 includes, before:
if the interrupted unfinished operation exists in the rescheduling operation set, adjusting the operation starting time and the work period of the interrupted unfinished operation based on the starting time of the resource interruption interval and the operation ending time corresponding to the interrupted unfinished operation;
the operation starting time of the interruption unfinished operation is less than the starting time of the resource interruption interval, and the operation finishing time of the interruption unfinished operation is greater than the starting time of the resource interruption interval.
Specifically, an interruption uncompleted job refers to a job that has not yet been completely completed at the start of the resource interruption. The uncompleted interrupt job can be obtained by comparing the job start time and the job end time of each job with the start time of the resource interrupt interval, and for example, if the job start time of any job is less than the start time of the resource interrupt interval and the job end time of the uncompleted interrupt job is greater than the start time of the resource interrupt interval, the job is an uncompleted interrupt job.
Before rescheduling all jobs in the rescheduled job set, the job start time should be re-determined for the interrupted uncompleted job in the rescheduled job set. The job starting time of the interruption unfinished job is adjusted to the starting time of the resource interruption interval, and the construction period is adjusted to the difference between the job ending time and the starting time of the resource interruption in the initial job scheduling plan.
For example, B indicates that the job set is rescheduled when the kth resource is interrupted. For the interruption unfinished job j in the set, the job start time st of the adjusted job j j ′=t ks And the construction period dur of the adjusted operation j j ′=ft j -t ks
Based on any of the above embodiments, step 130 includes:
determining the influence degree of each job on the immediately-after job corresponding to each job based on the job starting time of the immediately-after job corresponding to each job in the rescheduled job set, the construction period after the job starting time of each job is delayed to the ending time corresponding to the resource interruption interval, and the ending time of the resource interruption interval;
and based on the influence degree of each job on the immediately-after job corresponding to each job, performing ascending arrangement on each job, and determining a rescheduling job sequence.
Specifically, when each job in the rescheduled job set is rescheduled, the priority of rescheduling each job may be determined according to the degree of influence of each job on the immediately following job corresponding to each job. The priority determination method is that for the operation which does not affect the operation after the change, the operation is sorted from small to large, and the change cost is reduced as much as possible; and for the operation which can affect the operation after the resource interruption, the operation is ordered from small to large according to the possible effect, and the operation with the small effect is arranged as far as possible, so that the requirement of meeting the upper limit of the total amount of the resource after the resource interruption is met.
Based on any of the embodiments described above, determining the degree of influence of each job on the immediately following job corresponding to each job based on the job start time of the immediately following job corresponding to each job in the rescheduled job set, the period after the job start time of each job is delayed to the end time corresponding to the resource interruption interval, and the end time of the resource interruption interval includes:
determining the difference value between the job starting time of the immediately-after job corresponding to any job in the rescheduling job set, the construction period after the job starting time of any job is delayed to the ending time corresponding to the resource interruption interval, and the ending time of the resource interruption interval;
the difference value is used for representing the influence degree of any operation on the corresponding operation after the operation is finished.
Specifically, reschedule an immediately subsequent job j corresponding to any job j in the job set suc At the time of starting the operation of
Figure BDA0003616149970000111
A construction period dur after the delay from the job start time of the job to the end time corresponding to the resource interruption interval j ', and ending time t of resource interruption interval kf The difference ti can be determined and formulated as:
Figure BDA0003616149970000112
if there are a plurality of immediately following operations corresponding to any operation j,
Figure BDA0003616149970000113
select the earliest immediately following job j suc Operation start time of (2)
Figure BDA0003616149970000114
The difference is a time interval and can be used for representing the operation j to the operation j corresponding to the operation j immediately after the operation j suc The degree of influence of (c).
Considering that the difference ti may have a sign, the reschedule job set a may be divided into two subsets, respectively a according to the sign + And A -
For the object belonging to the subset A + In the first rescheduling job sequence A, the jobs in the first rescheduling job sequence A are arranged in a descending order + '; for a group belonging to subset A - In the second rescheduling job sequence A, the jobs in the second rescheduling job sequence A are arranged in descending order - ′。
Merging the first reschedule job sub-sequence A + ' and second reschedule job subsequence A - 'the first rescheduled job subsequence is preceded by a second rescheduled job subsequence, and a rescheduled job sequence a' is determined + ′,A - ′}。
Based on any of the above embodiments, step 140 includes:
sequentially deleting the jobs ranked at the top based on the arrangement sequence of the jobs in the rescheduling job sequence, determining the resource usage amount of all the jobs in the rescheduling job sequence after deleting the jobs ranked at the top each time, and adjusting the job starting time of the deleted jobs to be the ending time of the resource interruption interval;
and if the resource usage of all the jobs in the rescheduling job sequence after the current deletion is executed is less than or equal to the resource total upper limit corresponding to the resource interruption interval, stopping the deletion, and adjusting the initial job scheduling plan of the project to be processed based on the rescheduling job sequence after the current deletion is executed.
Specifically, the jobs ranked first may be deleted sequentially in the order of the jobs in the rescheduled job sequence. Only the top ranked jobs are deleted at a time, and the resource usage of all jobs in the job sequence is rescheduled after the top ranked jobs are deleted.
And if the resource usage of all the jobs in the rescheduling job sequence after the current deletion execution is less than or equal to the resource total upper limit corresponding to the resource interruption interval, indicating that each job in the rescheduling job sequence after the deletion can be completed by using the resource corresponding to the resource interruption interval, stopping the deletion at the moment, and taking the rescheduling job sequence after the current deletion execution as a final result to adjust the initial job scheduling plan of the project to be processed.
The deleted job in each deletion process is scheduled to be executed after the resource interruption interval, namely, the deleted job is adjusted to have the adjusted job starting time st j ′=t kf Adjusted operation end time ft j ′=st j ′+dur j ′。
Based on any of the above embodiments, step 140 includes, after:
determining the resource cost of the project to be processed based on the unit price of each resource and the resource usage amount of all the jobs;
determining the rescheduling cost of the project to be processed based on the job end time of all jobs in the initial job scheduling plan and the actual job end time of all jobs after the initial job scheduling plan is adjusted;
determining the punishment cost of the project to be processed based on the actual construction period of the project to be processed after the initial operation scheduling plan is adjusted and the specified total construction period of the project to be processed;
determining the cost of the project to be processed based on the resource cost, the rescheduling cost and the penalty cost.
Specifically, the to-be-processed item includes a plurality of jobs, each job having a certain duration. The project to be processed is restricted by three aspects, namely timing restriction, construction period restriction and resource restriction. The time sequence constraint means that different operations need to be performed according to a certain sequence, and the sequence cannot be randomly adjusted. A project time constraint means that a project needs to be completed within a specified time, i.e., all jobs within the project must be completed within a specified time. The resource constraint means that the number of resources that can be used by one project is limited, that is, there is an upper limit on the resources, and the sum of the resources used by all jobs performed at the same time cannot exceed the upper limit.
Unit price according to kth resource C k And resource usage R of all jobs corresponding to each time t tk Determining the resource cost Z of the project to be processed 1 Is formulated as:
Figure BDA0003616149970000131
according to the job end time ft of all the jobs in the initial job scheduling plan j And the actual job end time ft of all jobs after the initial job scheduling plan adjustment j ', determining the rescheduling cost Z of the item to be processed 2 Is formulated as:
Figure BDA0003616149970000132
where M' is the unit cost when the operation is varied.
Adjusting the actual construction period of the project to be processed according to the initial operation scheduling plan, and setting the total construction period T of the project to be processed 1 Determining a penalty cost Z for the project to be processed 3 Is formulated as:
Z 3 =M″·(st J ′-T 1 )
where M' is the unit penalty cost for a total period exceeding a given period, st J ' actual construction period of the project to be processed after the initial job scheduling plan is adjusted.
The cost Z of the pending item can be expressed as:
Z=Z 1 +Z 2 +Z 3
rescheduling the item to be processed is to minimize the cost Z of the item to be processed.
Based on any of the above embodiments, fig. 2 is a second schematic flow chart of the job scheduling method provided by the present invention, as shown in fig. 2, the method includes:
step one, selecting all directly affected operations. And (4) picking out all jobs which have requirements on the interrupted resources and have the execution time in the initial job scheduling plan within the resource interruption interval to form a set A. I.e., for j ∈ A, st is satisfied j <t kf ,ft j >t ks ,r jk >0;
And step two, executing the interruption of the operation. Dividing the operation which is not completely completed when the resource is interrupted in the set A into a set B, namely j belongs to B and satisfies st j <t ks <ft j ,r jk Is greater than 0. Uniformly changing the start time of the operation in the set B into the start time of resource interruption, and changing the construction period into the end time of the original plan minus the start time of the resource interruption, namely st j ′=t ks ,dur j ′=ft j -t ks ,j∈B;
And step three, calculating the service condition of the interrupted resource in the resource interruption interval, and judging whether the service condition meets the requirement of the upper limit of the resource. Namely R tk ≤UR tk
Figure BDA0003616149970000141
Wherein t is time, R tk Resource usage, UR, of kth resource for all jobs at time t tk The total resource amount of the kth resource at the time t is limited. If not, turning to the fourth step; otherwise, turning to the eleventh step;
step four, calculating the earliest starting time of the immediately following operation and the time interval ti between the earliest starting time and the earliest starting time if the operations in the set A are all postponed to the ending time of the resource interruption, as shown in a formula:
Figure BDA0003616149970000142
step five, dividing the operation in the set A into a positive subset and a negative subset according to a formula calculation result, wherein A + And A _
Step six, the positive number subset A + The operations in (1) are sorted from small to large according to the formula calculation result;
step seven, the negative number subset A - The operations in (1) are sorted from big to small according to the formula calculation result;
step eight, adding the ordered positive number subset and negative number subset, wherein the updating set A is an ordered set, the positive number subset is in front, the negative number subset is behind, namely A ═ A { (A {) + ,A - };
And step nine, taking out the first operation j in the set A and arranging the operation j to the ending time of the resource interruption. St' j =t kf ,ft′ j =st′ j +dur j ′;
Step ten, updating the set A and the initial scheduling scheme, deleting the rearranged jobs, and turning to the step three;
and step eleven, finishing a rescheduling scheme and calculating the total cost.
Based on any of the above embodiments, fig. 3 is a schematic structural diagram of a job scheduling apparatus provided by the present invention, and as shown in fig. 3, the apparatus includes:
an obtaining unit 310, configured to obtain an initial job scheduling plan and a resource interruption interval of a to-be-processed project;
a determining unit 320, configured to determine a rescheduling job set based on a start time and an end time corresponding to the resource interruption interval, and a resource usage amount, a job start time, and a job end time corresponding to each job in the job set;
a comparing unit 330, configured to determine a rescheduled job sequence based on the rescheduled job set and an influence degree of each job in the rescheduled job set on an immediately subsequent job corresponding to each job if resource usage of all jobs in the rescheduled job set does not satisfy a preset condition;
an adjusting unit 340, configured to adjust an initial job scheduling plan of the item to be processed based on the rescheduling job sequence;
the preset condition is that the resource usage of all the jobs in the rescheduling job set is less than or equal to the resource total upper limit corresponding to the resource interruption interval.
The job scheduling device provided by the embodiment of the invention determines a rescheduling job set according to the starting time and the ending time corresponding to the resource interruption interval, and the resource usage amount, the job starting time and the job ending time corresponding to each job in the job set; if the resource usage of all the jobs in the rescheduling job set does not meet the preset condition, determining a rescheduling job sequence according to the rescheduling job set and the influence degree of each job in the rescheduling job set on the post-tightening job corresponding to each job, and adjusting an initial job scheduling plan of a project to be processed; the influence of each job on the operation after the operation is finished is considered, so that the number of the jobs needing to be rescheduled in the initial job scheduling plan when the resources are interrupted is reduced, the indirect change cost of the project to be processed is reduced, the utilization efficiency of the resources is improved, and the production efficiency of the project to be processed is improved.
Based on any embodiment above, the apparatus further comprises:
a time adjusting unit, configured to adjust a job start time and a job completion time for interrupting the uncompleted job based on a start time of the resource interruption interval and a job completion time corresponding to the uncompleted job if there is an interrupted uncompleted job in the rescheduled job set;
the operation starting time of the interruption unfinished operation is less than the starting time of the resource interruption interval, and the operation finishing time of the interruption unfinished operation is greater than the starting time of the resource interruption interval.
Based on any of the embodiments described above, the comparing unit is specifically configured to:
determining the influence degree of each job on the immediately-after job corresponding to each job based on the job starting time of the immediately-after job corresponding to each job in the rescheduled job set, the construction period after the job starting time of each job is delayed to the ending time corresponding to the resource interruption interval, and the ending time of the resource interruption interval;
and based on the influence degree of each job on the immediately-after job corresponding to each job, performing ascending arrangement on each job, and determining a rescheduling job sequence.
Based on any of the above embodiments, the comparing unit is further specifically configured to:
determining the difference value between the job starting time of the immediately-after job corresponding to any job in the rescheduling job set, the construction period after the job starting time of any job is delayed to the ending time corresponding to the resource interruption interval, and the ending time of the resource interruption interval;
the difference value is used for representing the influence degree of any operation on the operation after the operation corresponding to the operation.
Based on any of the embodiments above, the adjusting unit is specifically configured to:
sequentially deleting the jobs ranked at the top based on the arrangement sequence of the jobs in the rescheduling job sequence, determining the resource usage amount of all the jobs in the rescheduling job sequence after deleting the jobs ranked at the top each time, and adjusting the job starting time of the deleted jobs to be the ending time of the resource interruption interval;
and if the resource usage amount of all the jobs in the rescheduling job sequence after the current deletion is executed is less than or equal to the resource total amount upper limit corresponding to the resource interruption interval, stopping the deletion, and adjusting the initial job scheduling plan of the project to be processed based on the rescheduling job sequence after the current deletion is executed.
Based on any of the above embodiments, the apparatus further comprises:
the cost determination unit is used for determining the resource cost of the project to be processed based on the unit price of each resource and the resource usage amount of all the jobs;
determining the rescheduling cost of the project to be processed based on the job end time of all jobs in the initial job scheduling plan and the actual job end time of all jobs after resource rescheduling;
determining the punishment cost of the project to be processed based on the actual construction period of the project to be processed after the resource rescheduling and the specified total construction period of the project to be processed;
determining the cost of the project to be processed based on the resource cost, the rescheduling cost and the penalty cost.
Based on any of the above embodiments, fig. 4 is a schematic structural diagram of an electronic device provided by the present invention, and as shown in fig. 4, the electronic device may include: a Processor (Processor)410, a communication Interface (Communications Interface)420, a Memory (Memory)430 and a communication Bus (Communications Bus)440, wherein the Processor 410, the communication Interface 420 and the Memory 430 are in communication with each other via the communication Bus 440. The processor 410 may call logical commands in the memory 430 to perform the following method:
acquiring an initial operation scheduling plan and a resource interruption interval of a project to be processed; determining a rescheduling job set based on the starting time and the ending time corresponding to the resource interruption interval and the resource usage amount, the job starting time and the job ending time corresponding to each job in the job set; if the resource usage of all the jobs in the rescheduling job set does not meet the preset condition, determining a rescheduling job sequence based on the rescheduling job set and the influence degree of each job in the rescheduling job set on the post-tightening job corresponding to each job; adjusting an initial job scheduling plan of the project to be processed based on the rescheduling job sequence; the preset condition is that the resource usage of all the jobs in the rescheduling job set is less than or equal to the resource total upper limit corresponding to the resource interruption interval.
In addition, the logic commands in the memory 430 may be implemented in the form of software functional units and stored in a computer readable storage medium when the logic commands are sold or used as independent products. Based on such understanding, the technical solution of the present invention or a part thereof which substantially contributes to the prior art may be embodied in the form of a software product, which is stored in a storage medium and includes several commands for enabling a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
The processor in the electronic device provided in the embodiment of the present invention may call a logic instruction in the memory to implement the method, and the specific implementation manner of the method is consistent with the implementation manner of the method, and the same beneficial effects may be achieved, which is not described herein again.
Embodiments of the present invention further provide a non-transitory computer-readable storage medium, on which a computer program is stored, where the computer program is implemented to perform the methods provided in the foregoing embodiments when executed by a processor, and a specific implementation manner of the method is consistent with the foregoing method implementation manner and can achieve the same beneficial effects, and details are not repeated herein.
Embodiments of the present invention provide a computer program product, which includes a computer program, and when being executed by a processor, the computer program implements the steps of the method.
The above-described embodiments of the apparatus are merely illustrative, and the units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware. With this understanding in mind, the above technical solutions may be embodied in the form of a software product, which can be stored in a computer-readable storage medium, such as ROM/RAM, magnetic disk, optical disk, etc., and includes commands for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the method according to the embodiments or some parts of the embodiments.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.

Claims (10)

1. A job scheduling method, comprising:
acquiring an initial operation scheduling plan and a resource interruption interval of a project to be processed;
determining a rescheduling job set based on the starting time and the ending time corresponding to the resource interruption interval and the resource usage amount, the job starting time and the job ending time corresponding to each job in the job set;
if the resource usage of all the jobs in the rescheduling job set does not meet the preset condition, determining a rescheduling job sequence based on the rescheduling job set and the influence degree of each job in the rescheduling job set on the immediate post job corresponding to each job;
adjusting the initial job scheduling plan of the project to be processed based on the rescheduling job sequence;
and the preset condition is that the resource usage of all the jobs in the rescheduling job set is less than or equal to the resource total upper limit corresponding to the resource interruption interval.
2. The method according to claim 1, wherein before determining the rescheduled job sequence based on the rescheduled job set and a degree of influence of each job in the rescheduled job set on an immediately following job corresponding to each job, the method comprises:
if the rescheduling job set has an interrupted unfinished job, adjusting the job starting time and the construction period of the interrupted unfinished job based on the starting time of the resource interruption interval and the job finishing time corresponding to the interrupted unfinished job;
wherein the operation starting time of the interruption unfinished operation is less than the starting time of the resource interruption interval, and the operation finishing time of the interruption unfinished operation is greater than the starting time of the resource interruption interval.
3. The job scheduling method according to claim 1, wherein the determining a rescheduled job sequence based on the rescheduled job set and a degree of influence of each job in the rescheduled job set on an immediately subsequent job corresponding to each job comprises:
determining the influence degree of each job on the immediately-after job corresponding to each job in the rescheduled job set based on the job starting time of the immediately-after job corresponding to each job, the construction period after the job starting time of each job is delayed to the ending time corresponding to the resource interruption interval, and the ending time of the resource interruption interval;
and based on the influence degree of each job on the immediately-after job corresponding to each job, performing ascending arrangement on each job, and determining the rescheduling job sequence.
4. The job scheduling method according to claim 3, wherein the determining of the degree of influence of each job on the immediately following job corresponding to each job based on a job start time of the immediately following job corresponding to each job in the rescheduled job set, a time limit after which the job start time of each job is delayed to an end time corresponding to the resource suspension section, and the end time of the resource suspension section comprises:
determining a difference value between a job starting time of an immediately-after job corresponding to any job in the rescheduled job set and a construction period after the job starting time of the any job is delayed to an ending time corresponding to the resource interruption interval and the ending time of the resource interruption interval;
and the difference value is used for representing the influence degree of any operation on the operation immediately after the operation corresponding to the operation.
5. The job scheduling method according to claim 1, wherein the adjusting the initial job scheduling plan of the to-be-processed item based on the rescheduled job sequence comprises:
sequentially deleting the jobs ranked at the top based on the ranking sequence of the jobs in the rescheduling job sequence, determining the resource usage amount of all the jobs in the rescheduling job sequence after deleting the jobs ranked at the top each time, and adjusting the job starting time of the deleted jobs to be the ending time of the resource interruption interval;
and if the resource usage of all the jobs in the rescheduling job sequence after the current deletion is executed is less than or equal to the resource total amount upper limit corresponding to the resource interruption interval, stopping the deletion, and adjusting the initial job scheduling plan of the project to be processed based on the rescheduling job sequence after the current deletion is executed.
6. The job scheduling method according to any one of claims 1 to 5, wherein after the adjustment of the initial job scheduling plan of the item to be processed, the method comprises:
determining the resource cost of the project to be processed based on the unit price of each resource and the resource usage amount of all the jobs;
determining the rescheduling cost of the project to be processed based on the job end time of all jobs in the initial job scheduling plan and the actual job end time of all jobs after the initial job scheduling plan is adjusted;
determining the punishment cost of the project to be processed based on the actual construction period of the project to be processed after the initial job scheduling plan is adjusted and the specified total construction period of the project to be processed;
determining a cost of the project to be processed based on the resource cost, the rescheduling cost, and the penalty cost.
7. A job scheduling apparatus comprising:
the system comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring an initial job scheduling plan and a resource interruption interval of a project to be processed;
a determining unit, configured to determine a rescheduling job set based on a start time and an end time corresponding to the resource interruption interval, and a resource usage amount, a job start time, and a job end time corresponding to each job in the job set;
a comparing unit, configured to determine a rescheduling job sequence based on the rescheduling job set and an influence degree of each job in the rescheduling job set on an immediately-after job corresponding to each job if resource usage of all jobs in the rescheduling job set does not satisfy a preset condition;
the adjusting unit is used for adjusting the initial job scheduling plan of the project to be processed based on the rescheduling job sequence;
and the preset condition is that the resource usage of all the jobs in the rescheduling job set is less than or equal to the resource total upper limit corresponding to the resource interruption interval.
8. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the job scheduling method according to any one of claims 1 to 6 when executing the program.
9. A non-transitory computer readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the job scheduling method according to any one of claims 1 to 6.
10. A computer program product comprising a computer program, wherein the computer program, when executed by a processor, implements a job scheduling method as claimed in any one of claims 1 to 6.
CN202210447947.1A 2022-04-26 2022-04-26 Job scheduling method and device, electronic equipment and storage medium Pending CN115049201A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210447947.1A CN115049201A (en) 2022-04-26 2022-04-26 Job scheduling method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210447947.1A CN115049201A (en) 2022-04-26 2022-04-26 Job scheduling method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN115049201A true CN115049201A (en) 2022-09-13

Family

ID=83158033

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210447947.1A Pending CN115049201A (en) 2022-04-26 2022-04-26 Job scheduling method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115049201A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116151599A (en) * 2023-04-21 2023-05-23 湖南维胜科技有限公司 Scheduling data processing method based on deep reinforcement learning
JP7313615B1 (en) * 2023-03-22 2023-07-25 コグニロボ株式会社 Program, manufacturing planning device, and manufacturing planning method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7313615B1 (en) * 2023-03-22 2023-07-25 コグニロボ株式会社 Program, manufacturing planning device, and manufacturing planning method
CN116151599A (en) * 2023-04-21 2023-05-23 湖南维胜科技有限公司 Scheduling data processing method based on deep reinforcement learning

Similar Documents

Publication Publication Date Title
CN115049201A (en) Job scheduling method and device, electronic equipment and storage medium
US8793693B2 (en) Apparatus and method for predicting a processing time of a computer
US20180356802A1 (en) Method and system for scheduling parallel processing machines based on hybrid shuffled frog leaping algorithm and variable neighborhood search algorithm
CN108776862B (en) Intelligent scheduling method supporting splitting of process task quantity
CN103679388B (en) Production scheduling method and production scheduling system
CN111984426B (en) Task scheduling method and device, electronic equipment and storage medium
CN110738413A (en) Multi-constraint scheduling calculation method and device for automatic aviation part machining production line
Rahman et al. Multiple-order permutation flow shop scheduling under process interruptions
CN105867998A (en) Virtual machine cluster deployment algorithm
CN111651864A (en) Event centralized emission type multi-heterogeneous time queue optimization simulation execution method and system
CN111274021A (en) GPU cluster task scheduling and distributing method
CN111105133B (en) Production scheduling method, computer device, and storage medium
CN117455222B (en) Solving method based on distributed heterogeneous flow shop group scheduling problem
CN108509603A (en) A kind of adaptive dynamic dispatching method and system of data warehouse
CN110264097A (en) More scientific workflows based on cloud environment concurrently execute dispatching method
CN114489942A (en) Application cluster-oriented queue task scheduling method and system
CN111930485B (en) Job scheduling method based on performance expression
CN116244050B (en) High-response-ratio-based pneumatic characteristic example scheduling method
CN110135685B (en) Method and device for distributing product design tasks
CN106897807A (en) A kind of business risk control method and equipment
CN111143210A (en) Test task scheduling method and system
CN116402303A (en) Active scheduling method for overcoming operation release disturbance in workshop
CN110084507A (en) The scientific workflow method for optimizing scheduling of perception is classified under cloud computing environment
CN115049200A (en) Job management method, apparatus, electronic device, and storage medium
CN108876157B (en) Deploy the method and its management system of resources of production

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