← Back to Patent Explorer
US4896269A Expired / Lapsed US ⏱️ 0.0 years remaining

Job shop scheduling and production method and apparatus

Assignee: General Electric Co
•
Filing: 1988-02-29
•
Granted: 1990-01-23
•
Expires: 2008-02-29
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for the efficient scheduling of a first plurality of jobs and the performance of the jobs on a second plurality of processing machines uses various heuristic rules in order to meet scheduling objectives. Initially, each job is scheduled on the machines without regard to the scheduling of any other job. Job scheduling conflicts are then identified and a priority index for each conflict is computed. For each job step involved in the highest priority conflict, a flexibility index is computed. Based on the flexibility index, the highest priority conflict is resolved by relaxing one or more steps of one or more jobs. If the conflicts have not been resolved at this stage, control returns to the step of identification of all remaining job scheduling conflicts. Upon resolution of all conflicts, an overall schedule of all jobs on all machines may be displayed. Additionally, the jobs are then performed on the machines based upon the final, conflict free schedule.

Inventors

  • 👤 David W. Tong

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-06 17:26
CPC Classifications
G; G06; G06Q; G06Q10/00; G06Q10/06; G05; G05B; G05B19/00; G05B19/02; G05B19/418; G05B19/41865; G05B2219/00; G05B2219/30; G05B2219/34; G05B2219/34418

Claims Analysis

Total Claims: 20
Claim 1
Independent Claim 383 words
A method for performing a first plurality of production jobs on a second plurality of machines, each said job comprising a sequence of job steps to be respectively performed in a predetermined sequence on said machines, each said job step having a predetermined performance duration, each said job having a total processing time that is the sum of the performance durations of its respective steps and a due time measured relative to an arbitrary schedule start time, said method comprising the steps of: (a) initially scheduling each said job for performance on said machines without regard to the scheduling of any other ones of said jobs, the initial scheduling for each said job being the tightest possible schedule for that job; (b) identifying all job scheduling conflicts, each said conflict being the scheduling of more than one said job step on the same machine at the same time; (c) computing a priority index for each said conflict in accordance with the equation: PI=PRP×MDF×PSL where: PI=conflict priority index; PRP=product of the job process time/job due time ratios of the jobs in said conflict; MDF=demand factor of the machine on which said conflict occurs; PSL=sum of the performance durations of the job steps constituting said conflict; (d) selecting a highest priority conflict having the largest computed priority index; (e) computing, for each job step constituting said highest priority conflict, a flexibility index in accordance with the equation: FI=ST-SF where: FI=job step flexibility index; ST=job slack time; SF=job shift factor; (f) holding fixed in time in said schedule within said highest priority conflict the job step having the lowest computed flexibility index while relaxing in time each remaining job step in said highest priority conflict until that conflict is resolved; (g) relaxing, for each said job a step of which was relaxed to resolve said highest priority conflict, the steps succeeding the relaxed step only to the extent necessary to assure the steps of said job remain in said predetermined sequence; (h) returning to step (b) if there remain any scheduling conflicts; (i) providing a final, conflict free schedule for the performance of said first plurality of jobs on said second plurality of machines; and (j) performing said first plurality of production jobs on said second plurality of machines based on said final, conflict free schedule.
Claim 2
Independent Claim 383 words
A method for performing a first plurality of production jobs on a second plurality of machines, each said job comprising a sequence of job steps to be respectively performed in a predetermined sequence on said machines, each said job step having a predetermined performance duration, each said job having a total processing time that is the sum of the performance durations of its respective steps and a due time measured relative to an arbitrary schedule start time, said method comprising the steps of: (a) initially scheduling each said job for performance on said machines without regard to the scheduling of any other ones of said jobs, the initial scheduling for each said job being the tightest possible schedule for that job; (b) identifying all job scheduling conflicts, each said conflict being the scheduling of more than one said job step on the same machine at the same time; (c) computing a priority index for each said conflict in accordance with the equation: PI=PRP×MDF×PSL where: PI=conflict priority index; PRP=product of the job process time/job due time ratios of the jobs in said conflict; MDF=demand factor of the machine on which said conflict occurs; PSL=sum of the performance durations of the job steps constituting said conflict; (d) selecting a highest priority conflict having the largest computed priority index; (e) computing, for each job step constituting said highest priority conflict, a flexibility index in accordance with the equation: FI=ST-SF where: FI=job step flexibility index; ST=job slack time; SF=job shift factor; (f) holding fixed in time in said schedule within said highest priority conflict the job step having the lowest computed flexibility index while relaxing in time each remaining job step in said highest priority conflict until that conflict is resolved; (g) relaxing, for each said job a step of which was relaxed to resolve said highest priority conflict, the steps succeeding the relaxed step only to the extent necessary to assure the steps of said job remain in said predetermined sequence; (h) returning to step (b) if there remain any scheduling conflicts; (i) providing a final, conflict free schedule for the performance of said first plurality of jobs on said second plurality of machines; and (j) performing said first plurality of production jobs on said second plurality of machines based on said final, conflict free schedule.
Claim 3
Dependent Claim 24 words
The method of claim 1 wherein in step (a) the initial scheduling of each said job can include jobs commencing after said start time.
Claim 4
Dependent Claim 76 words
The method of claim 1 wherein time on said job schedule is divided into equal time increments measured from said start time, the performance duration of each said job step being equal to the duration of said equal time increments within which it can be performed, so that each said job step is scheduled to commence at the beginning of one of said time increments and end at the end of one of said time increments.
Claim 5
Dependent Claim 19 words
The method of claim 1 wherein said performance duration of each said job step includes a machine set-up time.
Claim 6
Independent Claim 453 words
A method of production using digital computing apparatus to prepare a job schedule for each of a first plurality of production jobs on a second plurality of machines, each said job comprising a sequence of job steps to be respectively performed in a predetermined sequence on said machines, each said job step having a predetermined performance duration, each said job having a total processing time that is the sum of the performance durations of its respective steps and a due time measured relative to an arbitrary schedule start time, said method comprising the steps of: (a) inputting to said computing apparatus as data for each said job: (i) the sequence of steps associated therewith; (ii) the identity of the machine on which each said job step is to be performed; (iii) the performance duration of each said job step; and (iv) the due time (b) operating said digital computing apparatus to perform the steps of: initially scheduling each said job for performance on said machines without regard to the scheduling of any other ones of said jobs, the initial scheduling for each said job being the tightest possible schedule for that job; identifying all job scheduling conflicts, each said conflict being the scheduling of more than one said job step on the same machine at the same time; computing a priority index for each said conflict in accordance with the equation: PI=PRP×MDF×PSL where: PI=conflict priority index; PRP=product of the job process time/job due time ratios of the jobs in said conflict; MDF=demand factor of the machine on which said conflict occurs; PSL=sum of the performance durations of the job steps constituting said conflict; selecting a highest priority conflict having the largest computed priority index; computing, for each job step constituting said highest priority conflict, a flexibility index in accordance with the equation: FI=ST-SF where: FI=job step flexibility index; ST=job slack time; SF=job shift factor; holding fixed in time in said schedule within said highest priority conflict the job step having the lowest computed flexibility index while relaxing in time each remaining job step in said highest priority conflict until that conflict is resolved; relaxing, for each said job a step of which was relaxed to resolve said highest priority conflict, the steps succeeding the relaxed step only to the extent necessary to assure the steps of said job remain in said predetermined sequence; returning to the scheduling conflicts identifying step if there remain any scheduling conflicts; and providing a representation of a final, conflict free schedule for the performance of said first plurality of jobs on said second plurality of machines; and (c) performing said first plurality of production jobs on said second plurality of machines based on said final, conflict free schedule.
Claim 7
Independent Claim 453 words
A method of production using digital computing apparatus to prepare a job schedule for each of a first plurality of production jobs on a second plurality of machines, each said job comprising a sequence of job steps to be respectively performed in a predetermined sequence on said machines, each said job step having a predetermined performance duration, each said job having a total processing time that is the sum of the performance durations of its respective steps and a due time measured relative to an arbitrary schedule start time, said method comprising the steps of: (a) inputting to said computing apparatus as data for each said job: (i) the sequence of steps associated therewith; (ii) the identity of the machine on which each said job step is to be performed; (iii) the performance duration of each said job step; and (iv) the due time (b) operating said digital computing apparatus to perform the steps of: initially scheduling each said job for performance on said machines without regard to the scheduling of any other ones of said jobs, the initial scheduling for each said job being the tightest possible schedule for that job; identifying all job scheduling conflicts, each said conflict being the scheduling of more than one said job step on the same machine at the same time; computing a priority index for each said conflict in accordance with the equation: PI=PRP×MDF×PSL where: PI=conflict priority index; PRP=product of the job process time/job due time ratios of the jobs in said conflict; MDF=demand factor of the machine on which said conflict occurs; PSL=sum of the performance durations of the job steps constituting said conflict; selecting a highest priority conflict having the largest computed priority index; computing, for each job step constituting said highest priority conflict, a flexibility index in accordance with the equation: FI=ST-SF where: FI=job step flexibility index; ST=job slack time; SF=job shift factor; holding fixed in time in said schedule within said highest priority conflict the job step having the lowest computed flexibility index while relaxing in time each remaining job step in said highest priority conflict until that conflict is resolved; relaxing, for each said job a step of which was relaxed to resolve said highest priority conflict, the steps succeeding the relaxed step only to the extent necessary to assure the steps of said job remain in said predetermined sequence; returning to the scheduling conflicts identifying step if there remain any scheduling conflicts; and providing a representation of a final, conflict free schedule for the performance of said first plurality of jobs on said second plurality of machines; and (c) performing said first plurality of production jobs on said second plurality of machines based on said final, conflict free schedule.
Claim 8
Dependent Claim 28 words
The method of claim 5 wherein in step (a) the data further includes a time at which each said job is to commence in the initial scheduling thereof.
Claim 9
Dependent Claim 76 words
The method of claim 5 wherein time on said job schedule is divided into equal time increments measured from said start time, the performance duration of each said job step being equal to the duration of said equal time increments within which it can be performed, so that each said job step is scheduled to commence at the beginning of one of said time increments and end at the end of one of said time increments.
Claim 10
Dependent Claim 19 words
The method of claim 5 wherein said performance duration of each said job step includes a machine set-up time.
Claim 11
Dependent Claim 392 words
Apparatus for performing a first plurality of production jobs on a second plurality of machines, each said job comprising a sequence of job steps to be respectively performed in a predetermined sequence on said machines, each said job step having a predetermined performance duration, each said job having a total processing time that is the sum of the performance durations of its respective steps and a due time measured relative to an arbitrary schedule start time, said apparatus comprising: means for initially scheduling each said job for performance on said machines without regard to the scheduling of any other ones of said jobs, the initial scheduling for each said job being the tightest possible schedule for that job; means for identifying all job scheduling conflicts, each said conflict being the scheduling of more than one said job step on the same machine at the same time; means for computing a priority index for each said conflict in accordance with the equation: PI=PRP×MDF×PSL where: PI=conflict priority index; PRP=product of the job process time/job due time ratios of the jobs in said conflict; MDF=demand factor of the machine on which said conflict occurs; PSL=sum of the performance durations of the job steps constituting said conflict; means for selecting a highest priority conflict having the largest computed priority index; means for computing, for each job step constituting said highest priority conflict, a flexibility index in accordance with the equation: FI=ST-SF where: FI=job step flexibility index; ST=job slack time; SF=job shift factor; means for holding fixed in time in said schedule within said highest priority conflict the job step having the lowest computed flexibility index while relaxing in time each remaining job step in said highest priority conflict until that conflict is resolved; means for relaxing, for each said job a step of which was relaxed to resolve said highest priority conflict, the steps succeeding the relaxed step only to the extent necessary to assure the steps of said job remain in said predetermined sequence; means for continuing to resolve scheduling conflicts until all conflicts are resolved; means for providing a representation of a final, conflict free schedule for the performance of said first plurality of jobs on said second plurality of machines; and means for performing said first plurality of production jobs on said second plurality of machines based on said final, conflict free schedule.
Claim 12
Dependent Claim 392 words
Apparatus for performing a first plurality of production jobs on a second plurality of machines, each said job comprising a sequence of job steps to be respectively performed in a predetermined sequence on said machines, each said job step having a predetermined performance duration, each said job having a total processing time that is the sum of the performance durations of its respective steps and a due time measured relative to an arbitrary schedule start time, said apparatus comprising: means for initially scheduling each said job for performance on said machines without regard to the scheduling of any other ones of said jobs, the initial scheduling for each said job being the tightest possible schedule for that job; means for identifying all job scheduling conflicts, each said conflict being the scheduling of more than one said job step on the same machine at the same time; means for computing a priority index for each said conflict in accordance with the equation: PI=PRP×MDF×PSL where: PI=conflict priority index; PRP=product of the job process time/job due time ratios of the jobs in said conflict; MDF=demand factor of the machine on which said conflict occurs; PSL=sum of the performance durations of the job steps constituting said conflict; means for selecting a highest priority conflict having the largest computed priority index; means for computing, for each job step constituting said highest priority conflict, a flexibility index in accordance with the equation: FI=ST-SF where: FI=job step flexibility index; ST=job slack time; SF=job shift factor; means for holding fixed in time in said schedule within said highest priority conflict the job step having the lowest computed flexibility index while relaxing in time each remaining job step in said highest priority conflict until that conflict is resolved; means for relaxing, for each said job a step of which was relaxed to resolve said highest priority conflict, the steps succeeding the relaxed step only to the extent necessary to assure the steps of said job remain in said predetermined sequence; means for continuing to resolve scheduling conflicts until all conflicts are resolved; means for providing a representation of a final, conflict free schedule for the performance of said first plurality of jobs on said second plurality of machines; and means for performing said first plurality of production jobs on said second plurality of machines based on said final, conflict free schedule.
Claim 13
Dependent Claim 21 words
The apparatus of claim 9 wherein the initial scheduling of each said job can include jobs commencing after said start time.
Claim 14
Dependent Claim 76 words
The apparatus of claim 9 wherein time on said job schedule is divided into equal time increments measured from said start time, the performance duration of each said job step being equal to the duration of said equal time increments within which it can be performed, so that each said job step is scheduled to commence at the beginning of one of said time increments and end at the end of one of said time increments.
Claim 15
Dependent Claim 19 words
The apparatus of claim 9 wherein said performance duration of each said job step includes a machine set-up time.
Claim 16
Dependent Claim 392 words
Apparatus for performing a first plurality of production jobs on a second plurality of machines, each said job comprising a sequence of job steps to be respectively performed in a predetermined sequence on said machines, each said job step having a predetermined performance duration, each said job having a total processing time that is the sum of the performance durations of its respective steps and a due time measured relative to an arbitrary schedule start time, said apparatus comprising: programmed digital computing apparatus for performing the steps of: (a) initially scheduling each said job for performance on said machines without regard to the scheduling of any other ones of said jobs, the initial scheduling for each said job being the tightest possible schedule for that job; (b) identifying all job scheduling conflicts, each said conflict being the scheduling of more than one said job step on the same machine at the same time; (c) computing a priority index for each said conflict in accordance with the equation: PI=PRP×MDF×PSL where: PI=conflict priority index; PRP=product of the job process time/job due time ratios of the jobs in said conflict; MDF=demand factor of the machine on which said conflict occurs; PSL=sum of the performance durations of the job steps constituting said conflict; (d) selecting a highest priority conflict having the largest computed priority index; (e) computing, for each job step constituting said highest priority conflict, a flexibility index in accordance with the equation: FI=ST-SF where: FI=job step flexibility index; ST=job slack time; SF=job shift factor; (f) holding fixed in time in said schedule within said highest priority conflict the job step having the lowest computed flexibility index while relaxing in time each remaining job step in said highest priority conflict until that conflict is resolved; (g) relaxing, for each said job a step of which was relaxed to resolve said highest priority conflict, the steps succeeding the relaxed step only to the extent necessary to assure the steps of said job remain in said predetermined sequence; (h) returning to step (b) if there remain any scheduling conflicts; (i) providing a representation of a final, conflict free schedule for the performance of said first plurality of jobs on said second plurality of machine; and means for performing said first plurality of production jobs on said second plurality of machines based on said final, conflict free schedule.
Claim 17
Dependent Claim 392 words
Apparatus for performing a first plurality of production jobs on a second plurality of machines, each said job comprising a sequence of job steps to be respectively performed in a predetermined sequence on said machines, each said job step having a predetermined performance duration, each said job having a total processing time that is the sum of the performance durations of its respective steps and a due time measured relative to an arbitrary schedule start time, said apparatus comprising: programmed digital computing apparatus for performing the steps of: (a) initially scheduling each said job for performance on said machines without regard to the scheduling of any other ones of said jobs, the initial scheduling for each said job being the tightest possible schedule for that job; (b) identifying all job scheduling conflicts, each said conflict being the scheduling of more than one said job step on the same machine at the same time; (c) computing a priority index for each said conflict in accordance with the equation: PI=PRP×MDF×PSL where: PI=conflict priority index; PRP=product of the job process time/job due time ratios of the jobs in said conflict; MDF=demand factor of the machine on which said conflict occurs; PSL=sum of the performance durations of the job steps constituting said conflict; (d) selecting a highest priority conflict having the largest computed priority index; (e) computing, for each job step constituting said highest priority conflict, a flexibility index in accordance with the equation: FI=ST-SF where: FI=job step flexibility index; ST=job slack time; SF=job shift factor; (f) holding fixed in time in said schedule within said highest priority conflict the job step having the lowest computed flexibility index while relaxing in time each remaining job step in said highest priority conflict until that conflict is resolved; (g) relaxing, for each said job a step of which was relaxed to resolve said highest priority conflict, the steps succeeding the relaxed step only to the extent necessary to assure the steps of said job remain in said predetermined sequence; (h) returning to step (b) if there remain any scheduling conflicts; (i) providing a representation of a final, conflict free schedule for the performance of said first plurality of jobs on said second plurality of machine; and means for performing said first plurality of production jobs on said second plurality of machines based on said final, conflict free schedule.
Claim 18
Dependent Claim 25 words
The apparatus of claim 13 wherein in programmed step (a) the initial scheduling of each said job can include jobs commencing after said start time.
Claim 19
Dependent Claim 76 words
The apparatus of claim 13 wherein time on said job schedule is divided into equal time increments measured from said start time, the performance duration of each said job step being equal to the duration of said equal time increments within which it can be performed, so that each said job step is scheduled to commence at the beginning of one of said time increments and end at the end of one of said time increments.
Claim 20
Dependent Claim 19 words
The apparatus of claim 13 wherein said performance duration of each said job step includes a machine set-up time.

References Cited (Backward Citations)

US3703725A Cited
US4661912A Cited
US4698766A Cited
US4646238A Cited
US4700295A Cited
US4648023A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1993-01-22 1993-07-24 1994-01-23 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1997-01-22 1997-07-24 1998-01-23 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2001-01-22 2001-07-24 2002-01-23 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag