300 likes | 320 Views
Some Topics in OR. (1) Linear programming (LP) -Transportation problem( cost, time) -Assignment problem, travelling salesman problem and knapsack problem -Integer LP (2) Non Linear programming (NLP) (3) Dynamic programming (DP) (4) Game Theory
E N D
(1) Linear programming (LP) -Transportation problem( cost, time) -Assignment problem, travelling salesman problem and knapsack problem -Integer LP (2) Non Linear programming (NLP) (3) Dynamic programming (DP) (4) Game Theory (5) Project Scheduling by PERT and CPM (6) Inventory Model (7) Queuing Theory (8) Simulation
(9) Machine Scheduling Problem (10) Reliability Theory (11) Genetic Algorithms and Local Search (12) Multi Criteria Problems (13) Control Problems * The Future of OR * Math. Model of problem in OR * Methods of Solutions in OR * Difficulties in OR - P_ Type Problem - NP_ Hard Problem - Open Problem
General Idea of the Problem* Allocation of Resources* Allocation of Time Slots* Constraints* Optimization
Definition of the Problem* J = { J1 , … , Jn }* M = { M1 , … Mm}* Schedule – Mapping of jobs to machines and processing times* The Schedule is subject to feasibility constraints and optimization objectives
Schedule ConstraintsEach machine can only process one job at a time . * * Each job can only be processed by one machine at any time * Once a machine has started processing a job , it will continue running on that job until the job is finished.
Classification of Problems* Single – machine problems* Multi – machine problems* Single – stage problems* Multi – stage problems
Other Concepts* Processing time pi* Release dates ri* Due dates di* Weights wi* Setup times tij* Precedence constraints
Classification of Single Stage Multi – Machine Problems* Parallel Machine Problems- Identical parallel machine problems- Uniform parallel machine problems- Unrelated parallel machine problems
Classification of Multi - Stage Multi – Machine Problems* Flow Shop Problems* Open Shop Problems* Job Shop Problems* Group Shop Environment
DefinitionsCompletion Time Ci is earliest time at which Ji is completely processed. Lateness Li : = Ci - diTardiness Ti : = max { Ci – di , 0 }Earliness Ei : = max { di – Ci , 0 }
Objective Functions Two types of objective functions are most common: *bottleneck objective functions max {fj(Cj) | j= 1, ... , n}, and *sum objective functions S fj(Cj) = f1(C1) + f2(C2) + ... ... + fn(Cn) .
Objective Functions Cmax and Lmaxsymbolizethe bottleneck objective functions with fj(Cj) = Cj (makespan)and fj(Cj) = Cj - dj (maximum lateness), respectively. Common sum objective functions are: *S Cj (mean flow-time) and S wj Cj (weighted flow-time)
Classification of Scheduling Problems Classes of scheduling problems can be specified in terms of the three-field classification a | b | g where *a specifies the machine environment, *bspecifiesthe job characteristics, and *g describes the objective function(s).
Machine Environment To describe the machine environment the following symbols are used: *1 single machine *P parallel identical machines *Q uniform machines *R unrelated machines *MPM multipurpose machines *J job-shop *F flow-shop *O open-shop The above symbols are used if the number of machines is part of the input. If the number of machines is fixed to m we write Pm, Qm, Rm, MPMm, Jm, Fm, Om.
Job Characteristics *pmtn preemption *rj release times *dj deadlines *pj = 1 or pj = p or pj {1,2} restricted processing times *prec arbitrary precedence constraints *intree (outtree) intree (or outtree) precedences *chains chain precedences *series-parallel a series-parallel precedence graph
Objective Functions* Maximum Completion Time ( makespan )Cmax := max { C1 , … , Cn }* Sum of the ( weighted ) completion times Wi * Ci∑* Total Weighted TardinessTi *Wi ∑
Objective Functions *S Uj (number of late jobs) and S wjUj (weighted number of late jobs) where Uj= 1 if Cj> djand Uj= 0 otherwise. *S Tj (sum of tardiness) and S wjTj (weighted sum of tardiness) where the tardiness of job j is given by Tj = max { 0, Cj- dj}.
Examples *1 | prec; pj = 1 | S wjCj *P2 | | Cmax *P | pj = 1; rj | S wjUj *R2 | chains; pmtn | Cmax *J3 | n = 3 | Cmax *F | pij = 1; outtree; rj| S Cj *Om | | pj = 1 | S Tj
Complexity Theory Polynomial algorithms Classes P and NP NP- complete and NP- hard problems
How to Live with NP - hard Scheduling Problems? Small sized problems can be solved by *Mixed integer linear programming *Dynamic programming *Branch and bound methods To solve problems of larger size one has to apply *Approximation algorithms *Heuristics
Machine Scheduling Example 6 13 A 2 7 21 3 machines and 7 jobs job times are [6, 2, 3, 5, 10, 7, 14] possible schedule B 3 13 C time ----------->
Machine Scheduling Example 6 13 A 2 7 21 B 3 13 C time -----------> Finish time = 21 Objective: Find schedules with minimum finish time.
LPT Schedules Longest Processing Time first. Jobs are scheduled in the order 14, 10, 7, 6, 5, 3, 2 Each job is scheduled on the machine on which it finishes earliest.
LPT Schedule 14 16 A 10 15 B 7 13 16 [14, 10, 7, 6, 5, 3, 2] C Finish time is 16!
LPT Schedule *LPT rule does not guarantee minimum finish time schedules. *(LPT Finish Time)/(Minimum Finish Time) <= 4/3 - 1/(3m) where m is number of machines. *Usually LPT finish time is much closer to minimum finish time. *Minimum finish time scheduling is NP-hard.
Other Types of Scheduling Problems *Due-date scheduling *Batching problems *Multiprocessor task scheduling *Cyclic scheduling *Scheduling with controllable data *Shop problems with buffers *Inverse scheduling *No-idle time scheduling *Multi-criteria scheduling *Scheduling with no- available constraints There are other classes of scheduling problems. Some of them are .
Other Types of Scheduling Problems Scheduling problems are also discussed in connection with other areas: *Scheduling and transportation *Scheduling and game theory *Scheduling and location problems *Scheduling and supply chains
Applications *Production scheduling *Robotic cell scheduling *Computer processor scheduling *Timetabling *Personnel scheduling *Railway scheduling *Air traffic control *etc.