production scheduling. useful tools to assist in production scheduling assignment problem (which job...

24
Production Scheduling Production Scheduling

Upload: andrew-carter

Post on 17-Dec-2015

217 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Production Scheduling Production Scheduling

Page 2: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Useful tools to assist in Useful tools to assist in production schedulingproduction scheduling

Assignment problem (which job to which Assignment problem (which job to which work center?)work center?)

Sequencing rules (which job to process Sequencing rules (which job to process next?)next?)

Next Best rule (minimize setup costs)Next Best rule (minimize setup costs) Sequencing through two successive work Sequencing through two successive work

centers (minimize the completion time for centers (minimize the completion time for the last job through the process)the last job through the process)

Page 3: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Assignment problemAssignment problem

Objective is to minimize total process timeObjective is to minimize total process time Number of jobs to be loaded = number of Number of jobs to be loaded = number of

work centers or machineswork centers or machines Each machine is assigned one and only one Each machine is assigned one and only one

jobjob Linear programming problemLinear programming problem

– Objective function (maximize or minimize) subject Objective function (maximize or minimize) subject to constraint conditionsto constraint conditions

– Manual solution procedureManual solution procedure– Excel SolverExcel Solver

Page 4: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Example of assignment Example of assignment problemproblem

The metalworking work center of a job shop has been The metalworking work center of a job shop has been assigned the task of processing four orders. Four assigned the task of processing four orders. Four machines in the work center are all capable of machines in the work center are all capable of processing any of the orders. The foreman must processing any of the orders. The foreman must decide which job to allocate to each machine.decide which job to allocate to each machine.

machine machine 11

machine machine 22

machine machine 33

machine machine 44

job 1job 1 13 min13 min 1616 2121 1414

job 2job 2 1717 1313 1919 1414

job 3job 3 1212 1616 2020 1616

job 4job 4 2020 1212 1717 1111

Page 5: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Manual solution procedure to Manual solution procedure to assignment problemassignment problem

(1) Column reduction: Subtract the lowest (1) Column reduction: Subtract the lowest cost in each column from every cost element cost in each column from every cost element in that column. Do this for every column. This in that column. Do this for every column. This new matrix of opportunity costs is now used new matrix of opportunity costs is now used in the next step.in the next step.

(2) Row reduction: Subtract the lowest cost in (2) Row reduction: Subtract the lowest cost in each row from every cost element in that each row from every cost element in that row. Do this for every row. This new matrix of row. Do this for every row. This new matrix of opportunity costs is now used in the next opportunity costs is now used in the next step.step.

Page 6: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Manual solution procedure to Manual solution procedure to assignment problem (cont.)assignment problem (cont.)

(3) Cover the zeroes: Cover all the zero (3) Cover the zeroes: Cover all the zero elements in the matrix with horizontal and/or elements in the matrix with horizontal and/or vertical lines. Find the minimum number of vertical lines. Find the minimum number of lines necessary to cover all zeroes. If the lines necessary to cover all zeroes. If the number of lines required is equal to the number of lines required is equal to the number of machines available, an optimal number of machines available, an optimal solution has been reached. The optimal solution has been reached. The optimal assignments are found by examining the assignments are found by examining the zero elements in the matrix. If the number of zero elements in the matrix. If the number of lines is fewer than the number of machines, lines is fewer than the number of machines, proceed to step (4).proceed to step (4).

Page 7: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Manual solution procedure to Manual solution procedure to assignment problem (cont.)assignment problem (cont.)

(4) Create new zeroes: Begin with the matrix (4) Create new zeroes: Begin with the matrix from step (3). Find the smallest uncovered from step (3). Find the smallest uncovered cost element (not covered by a line) and cost element (not covered by a line) and subtract it from all uncovered cost elements, subtract it from all uncovered cost elements, including itself; add it to all cost elements at including itself; add it to all cost elements at the line intersections. All other cost elements the line intersections. All other cost elements remain unchanged. Now erase all horizontal remain unchanged. Now erase all horizontal and vertical lines and return to step (3).and vertical lines and return to step (3).

Page 8: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Excel solution to assignment Excel solution to assignment problemproblem

Load Excel Solver (click on “File” tab and go to Load Excel Solver (click on “File” tab and go to “Options,” choose “Add-ins” from the left menu, “Options,” choose “Add-ins” from the left menu, select “Solver Add-in” and then click the “go” select “Solver Add-in” and then click the “go” button, check “Solver Add-in” in the checkbox)button, check “Solver Add-in” in the checkbox)

Solver is now available under the “Data” tabSolver is now available under the “Data” tab Define changing cellsDefine changing cells Calculate total cost (or profit)Calculate total cost (or profit) Set up resource usageSet up resource usage Set up Solver Parameters (Target Cell, Max/Min, Set up Solver Parameters (Target Cell, Max/Min,

Changing Cells, Constraints, and Options)Changing Cells, Constraints, and Options) For metalworking center example For metalworking center example

Microsoft Excel Worksheet

Page 9: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Another assignment problem Another assignment problem exampleexample

Merchants Bank has four new tellers (A-D) with varying skills Merchants Bank has four new tellers (A-D) with varying skills who are to be assigned to the main bank or one of the branches who are to be assigned to the main bank or one of the branches (locations 1-4). The criterion for assigning tellers to locations is (locations 1-4). The criterion for assigning tellers to locations is minimized customer waiting time. An index of customer waiting minimized customer waiting time. An index of customer waiting time is shown in the table below for each of the four locations time is shown in the table below for each of the four locations and varying teller skills. Make teller assignments such that the and varying teller skills. Make teller assignments such that the overall waiting time will be minimized. What is the total waiting overall waiting time will be minimized. What is the total waiting time for the optimal assignment?time for the optimal assignment?

teller teller AA

teller teller BB

teller teller CC

teller teller DD

location 1location 1 40 min40 min 6060 5050 3030

location 2location 2 6060 3030 6060 5050

location 3location 3 6060 3030 4040 6060

location 4location 4 5050 6060 3030 6060

Page 10: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Other applications of linear Other applications of linear programmingprogramming

Transportation problem Transportation problem

Objective function subject to resource Objective function subject to resource constraintsconstraints

Reports (Answer, Sensitivity, or Limits) can be Reports (Answer, Sensitivity, or Limits) can be generated by clicking on any of the choices in generated by clicking on any of the choices in the windowthe window

Microsoft Excel Worksheet

Microsoft Excel Worksheet

Page 11: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

SequencingSequencing

Which job to process next?Which job to process next? Methodology to followMethodology to follow

– Shortest processing time: select the job having the Shortest processing time: select the job having the least processing timeleast processing time

– Earliest due date: select the job that is due the Earliest due date: select the job that is due the soonestsoonest

– First-come, first served: select the job that has First-come, first served: select the job that has been waiting the longest for this workstationbeen waiting the longest for this workstation

– First-in-system, first-served: select the job that has First-in-system, first-served: select the job that has been in the shop the longestbeen in the shop the longest

– Slack per remaining operations: select the job with Slack per remaining operations: select the job with the smallest ratio of slack to operations remaining the smallest ratio of slack to operations remaining to be performedto be performed

Page 12: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Performance evaluation criteriaPerformance evaluation criteria

Choice of sequencing methodology to choose Choice of sequencing methodology to choose is dependent on the performance evaluation is dependent on the performance evaluation criteria to be appliedcriteria to be applied– Total job completion timeTotal job completion time– Avg job completion timeAvg job completion time– Avg job waiting timeAvg job waiting time– Avg job latenessAvg job lateness– Avg number of jobs in the systemAvg number of jobs in the system– Avg number of jobs waitingAvg number of jobs waiting– Set-up costsSet-up costs– In-process inventory costsIn-process inventory costs

Page 13: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Sequencing exampleSequencing example

Five jobs waiting, one workstation/machineFive jobs waiting, one workstation/machine

job (in order of job (in order of arrival)arrival)

job time job time (days)(days)

due datedue date

AA 44 66

BB 1717 2020

CC 1414 1818

DD 99 1212

EE 1111 1212

Page 14: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Sequencing example evaluationSequencing example evaluation

Using shortest processing timeUsing shortest processing time– Sequence is A-D-E-C-BSequence is A-D-E-C-B– Construct timelineConstruct timeline– Total job completion time: 55 daysTotal job completion time: 55 days– Avg job completion time: Avg job completion time:

(4+13+24+38+55)/5 = 26.8 days/job(4+13+24+38+55)/5 = 26.8 days/job– Avg job waiting time: (0+4+13+24+38)/5 = 15.8 Avg job waiting time: (0+4+13+24+38)/5 = 15.8

days/jobdays/job– Avg job lateness: (0+1+12+20+35)/5 = 13.6 days/jobAvg job lateness: (0+1+12+20+35)/5 = 13.6 days/job– Avg number of jobs in the system: Avg number of jobs in the system:

(4x5+9x4+11x3+14x2+17x1)/55 = 2.44 jobs(4x5+9x4+11x3+14x2+17x1)/55 = 2.44 jobs– Avg number of jobs waiting: Avg number of jobs waiting:

(4x4+9x3+11x2+14x1)/55 = 1.44 jobs(4x4+9x3+11x2+14x1)/55 = 1.44 jobs

Page 15: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Sequencing example evaluation Sequencing example evaluation (cont.)(cont.)

Using earliest due date: could be same sequence Using earliest due date: could be same sequence as shortest processing time, A-D-E-C-Bas shortest processing time, A-D-E-C-B

Using first-come, first servedUsing first-come, first served– Total job completion time: 55 daysTotal job completion time: 55 days– Avg job completion time: Avg job completion time:

(4+21+35+44+55)/5 = 31.8 days/job(4+21+35+44+55)/5 = 31.8 days/job– Avg job waiting time: (0+4+21+35+44)/5 = 20.8 Avg job waiting time: (0+4+21+35+44)/5 = 20.8

days/jobdays/job– Avg job lateness: (0+1+17+32+43)/5 = 18.6 days/jobAvg job lateness: (0+1+17+32+43)/5 = 18.6 days/job– Avg number of jobs in the system: Avg number of jobs in the system:

(4x5+17x4+14x3+9x2+11x1)/55 = 2.89 jobs(4x5+17x4+14x3+9x2+11x1)/55 = 2.89 jobs– Avg number of jobs waiting: Avg number of jobs waiting:

(4x4+17x3+14x2+9x1)/55 = 1.89 jobs(4x4+17x3+14x2+9x1)/55 = 1.89 jobs

Page 16: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Comparison of SPT, EDD, and Comparison of SPT, EDD, and FCFSFCFS

““For jobs to be processed in one work center, it For jobs to be processed in one work center, it (shortest processing time rule) is consistently superior (shortest processing time rule) is consistently superior to other rules; it is optimal for minimizing avg. (job) to other rules; it is optimal for minimizing avg. (job) completion time, avg. number of jobs in the system, completion time, avg. number of jobs in the system, and avg. job lateness.” (Adam and Ebert, page 493)and avg. job lateness.” (Adam and Ebert, page 493)

evaluation criteriaevaluation criteria SPTSPT EDDEDD FCFSFCFS

total job completion time (days)total job completion time (days) 5555 same same as SPTas SPT

5555

avg job completion time avg job completion time (days/job)(days/job)

26.826.8 31.831.8

avg job waiting time (days/job)avg job waiting time (days/job) 15.815.8 20.820.8

avg job lateness (days/job)avg job lateness (days/job) 13.613.6 18.618.6

avg number of jobs in system avg number of jobs in system (jobs)(jobs)

2.442.44 2.892.89

avg number of jobs waiting avg number of jobs waiting (jobs)(jobs)

1.441.44 1.891.89

Page 17: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Setup cost minimizationSetup cost minimization

Next Best approach – given that a job (job i) Next Best approach – given that a job (job i) is being processed, select next the is being processed, select next the unassigned job (job j) for which the setup unassigned job (job j) for which the setup cost is minimizedcost is minimized

Page 18: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Next Best rule exampleNext Best rule example

Assuming A is being processed, the NB approach asks Assuming A is being processed, the NB approach asks “What next?”“What next?”

Setup costs ($):Setup costs ($):

PredecessorPredecessor

Job iJob iFollower Job jFollower Job j

AA BB CC DD EE

AA -- 2929 2020 1818 2424

BB -- -- 1414 1919 1515

CC -- 3535 -- 3737 2626

DD -- 1515 1010 -- 1010

EE -- 1818 1616 4040 --

Page 19: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

The least costly sequence?The least costly sequence?

Two sequences possible using NB approach:Two sequences possible using NB approach:– A-D-C-E-B ($18+$10+$26+$18=$72)A-D-C-E-B ($18+$10+$26+$18=$72)– A-D-E-C-B ($18+$10+$16+$35=$79)A-D-E-C-B ($18+$10+$16+$35=$79)

Enumeration of all 24 possible sequences yields an Enumeration of all 24 possible sequences yields an optimal solution of A-D-E-B-C with a cost of $18+$10+optimal solution of A-D-E-B-C with a cost of $18+$10+$18+$14=$60$18+$14=$60

NB approach is a heuristic – a rule or a set of rules that NB approach is a heuristic – a rule or a set of rules that generally leads to the optimal solution, but does not generally leads to the optimal solution, but does not guarantee the optimal solutionguarantee the optimal solution

Assuming the NB approach and say, SPT, sequences do Assuming the NB approach and say, SPT, sequences do not coincide then one must consider relative importance not coincide then one must consider relative importance placed on costs of machine setup (NB) versus the value placed on costs of machine setup (NB) versus the value of gaining overall shop effectiveness and customer of gaining overall shop effectiveness and customer satisfaction (SPT)satisfaction (SPT)

Page 20: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Sequencing through two work Sequencing through two work centerscenters

All jobs have to be processed through two All jobs have to be processed through two successive work centerssuccessive work centers

Jobs must be processed in the same order on Jobs must be processed in the same order on both work centersboth work centers

The following is an optimal procedure to The following is an optimal procedure to minimize the completion time for the last job minimize the completion time for the last job through the process through the process

Page 21: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Sequencing through two work Sequencing through two work centers examplecenters example

Processing times (days):Processing times (days):

JobJobWork Center 1Work Center 1

(sheet metal)(sheet metal)Work Center 2Work Center 2

(paint)(paint)

AA 44 55

BB 1717 77

CC 1414 1212

DD 99 22

EE 1111 66

Page 22: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Sequencing through two work Sequencing through two work centers procedurecenters procedure

(1) Determine the minimum of all processing (1) Determine the minimum of all processing timestimes

(2) If the minimum is associated with work (2) If the minimum is associated with work center 1, place the corresponding job in the center 1, place the corresponding job in the earliest available position in the sequenceearliest available position in the sequence

(3) If the minimum is associated with work (3) If the minimum is associated with work center 2, place the corresponding job in the center 2, place the corresponding job in the latest remaining position in the sequencelatest remaining position in the sequence

(4) Cross out the times of the job just assigned (4) Cross out the times of the job just assigned across all work centers to omit that job from across all work centers to omit that job from further considerationfurther consideration

(5) Now return to step (1) and repeat the (5) Now return to step (1) and repeat the procedure by identifying the minimum of all procedure by identifying the minimum of all remaining process timesremaining process times

Page 23: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

A second example of A second example of sequencing through two work sequencing through two work centerscenters Data Systems, Inc., processes all incoming jobs through Data Systems, Inc., processes all incoming jobs through

two successive work centers, A and B (each job goes first two successive work centers, A and B (each job goes first through A, then through B). Five jobs await processing through A, then through B). Five jobs await processing (see below). Assign a job sequence that minimizes the (see below). Assign a job sequence that minimizes the completion time of the last job processed. What is the completion time of the last job processed. What is the total flow time for this sequence?total flow time for this sequence?

JobJob SS TT UU VV WW

Processing time in A Processing time in A (minutes)(minutes) 1414 33 2222 3131 77

Processing time in B Processing time in B (minutes)(minutes) 88 99 44 1717 1212

Page 24: Production Scheduling. Useful tools to assist in production scheduling Assignment problem (which job to which work center?) Assignment problem (which

Summary of sequencing Summary of sequencing methodsmethods

“… “… an abundance of sequencing methods is an abundance of sequencing methods is available and they can affect shop available and they can affect shop performance in different ways. … in choosing performance in different ways. … in choosing among these methods, you should carefully among these methods, you should carefully evaluate them in terms of the criteria that evaluate them in terms of the criteria that are of greatest importance for your are of greatest importance for your organization’s competitive posture.”organization’s competitive posture.”