© J. Christopher Beck 20081 Lecture 6: Time/Cost Trade-off in Project Planning.

Slides:



Advertisements
Similar presentations
Outline LP formulation of minimal cost flow problem
Advertisements

1 LP Duality Lecture 13: Feb Min-Max Theorems In bipartite graph, Maximum matching = Minimum Vertex Cover In every graph, Maximum Flow = Minimum.
ECE Longest Path dual 1 ECE 665 Spring 2005 ECE 665 Spring 2005 Computer Algorithms with Applications to VLSI CAD Linear Programming Duality – Longest.
© J. Christopher Beck Lecture 7: Shifting Bottleneck.
© J. Christopher Beck Lecture 17: Tabu Search.
Evaluating Heuristics for the Fixed-Predecessor Subproblem of Pm | prec, p j = 1 | C max.
~1~ Infocom’04 Mar. 10th On Finding Disjoint Paths in Single and Dual Link Cost Networks Chunming Qiao* LANDER, CSE Department SUNY at Buffalo *Collaborators:
Introduction to Algorithms
WOOD 492 MODELLING FOR DECISION SUPPORT Lecture 22 Network Problems.
Contents College 4 §4.1, §4.2, §4.4, §4.6 Extra literature on resource constrained project scheduling (will be handed out)
IEOR Basic Project Scheduling. IEOR Project Scheduling zJobs subject to precedence constraints zJob on arc format (most common)
Lecture 10: Integer Programming & Branch-and-Bound
© J. Christopher Beck Lecture 12: Constraint Programming 2.
Math443/543 Mathematical Modeling and Optimization
© J. Christopher Beck Lecture 4: Project Planning 1.
Maximum Flows Lecture 4: Jan 19. Network transmission Given a directed graph G A source node s A sink node t Goal: To send as much information from s.
1 Set # 4 Dr. LEE Heung Wing Joseph Phone: Office : HJ639.
© J. Christopher Beck Lecture 18: Timetabling with Workforce Capacity.
ECE LP Duality 1 ECE 665 Spring 2005 ECE 665 Spring 2005 Computer Algorithms with Applications to VLSI CAD Linear Programming Duality.
Lecture outline Support vector machines. Support Vector Machines Find a linear hyperplane (decision boundary) that will separate the data.
Linear Programming – Max Flow – Min Cut Orgad Keller.
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
Linear Programming Models: Graphical Methods 5/4/1435 (1-3 pm)noha hussein elkhidir.
© J. Christopher Beck Lecture 19: Timetabling with Operator Constraints.
Project Management Chapter 8 (Crashing).
Section 2.9 Maximum Flow Problems Minimum Cost Network Flows Shortest Path Problems.
© J. Christopher Beck Lecture 5: Project Planning 2.
Lecture 16 Maximum Matching. Incremental Method Transform from a feasible solution to another feasible solution to increase (or decrease) the value of.
Review for E&CE Find the minimal cost spanning tree for the graph below (where Values on edges represent the costs). 3 Ans. 18.
Models in I.E. Lectures Introduction to Optimization Models: Shortest Paths.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Algorithms for the optimum communication spanning tree problem Prabha Sharma Ann Oper Res (2006) 143: /5/29 Presenter : Wei-Ni Chu, Chuan-Ju.
Lecture 9: Simplified Shifting Bottleneck
© J. Christopher Beck Lecture 25: Workforce Scheduling 3.
V. Cacchiani, ATMOS 2007, Seville1 Solving a Real-World Train Unit Assignment Problem V. Cacchiani, A. Caprara, P. Toth University of Bologna (Italy) European.
1 Iterative Integer Programming Formulation for Robust Resource Allocation in Dynamic Real-Time Systems Sethavidh Gertphol and Viktor K. Prasanna University.
© J. Christopher Beck Lecture 4: Program Evaluation and Review Technique (PERT)
Integer Programming (정수계획법)
© J. Christopher Beck Lecture 10: (Full) Shifting Bottleneck.
CSCI-256 Data Structures & Algorithm Analysis Lecture Note: Some slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved. 25.
Network Flow Problems Example of Network Flow problems:
Algorithm Design Methods 황승원 Fall 2011 CSE, POSTECH.
Homework - hints Problem 1. Node weights  Edge weights
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
A* optimality proof, cycle checking CPSC 322 – Search 5 Textbook § 3.6 and January 21, 2011 Taught by Mike Chiang.
1 1 Slide © 2008 Thomson South-Western. All Rights Reserved © 2011 Cengage Learning. All Rights Reserved. May not be scanned, copied or duplicated, or.
Review for E&CE Find the minimal cost spanning tree for the graph below (where Values on edges represent the costs). 3 Ans. 18.
Linear Programming Chapter 1 Introduction.
Introduction to Multiple-multicast Routing Chu-Fu Wang.
CS 312: Algorithm Design & Analysis Lecture #29: Network Flow and Cuts This work is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported.
ENGM 631 Maximum Flow Solutions. Maximum Flow Models (Flow, Capacity) (0,3) (2,2) (5,7) (0,8) (3,6) (6,8) (3,3) (4,4) (4,10)
Chapter 8 - Project Management1 Lecture 2 Today’s lecture covers the followings: 1.To study “project crashing” concept 2.LP formulation for project management.
1 Job Shop Scheduling. 2 Job shop environment: m machines, n jobs objective function Each job follows a predetermined route Routes are not necessarily.
TU/e Algorithms (2IL15) – Lecture 8 1 MAXIMUM FLOW (part II)
Job Shop Scheduling Contents 1. Problem Statement 2. Disjunctive Graph
Basic Project Scheduling
Lecture 8: Dispatch Rules
Lecture 11: Tree Search © J. Christopher Beck 2008.
Basic Project Scheduling
Chapter 8 - Project Management
1.3 Modeling with exponentially many constr.
Heuristics Definition – a heuristic is an inexact algorithm that is based on intuitive and plausible arguments which are “likely” to lead to reasonable.
Integer Programming (정수계획법)
3-3 Optimization with Linear Programming
Lecture 19-Problem Solving 4 Incremental Method
Interpreting Graphs of Functions
Lecture 9: Tabu Search © J. Christopher Beck 2005.
Integer Programming (정수계획법)
EE5900 Advanced Embedded System For Smart Infrastructure
Lecture 19 Linear Program
Presentation transcript:

© J. Christopher Beck Lecture 6: Time/Cost Trade-off in Project Planning

© J. Christopher Beck Outline Project Planning with Time/Cost Tradeoffs Linear and non-linear

© J. Christopher Beck Readings P Ch Slides borrowed from Twente & Iowa See Pinedo CD

© J. Christopher Beck Time/Cost Trade-Offs What if you could spend money to reduce the job duration More money  shorter processing time Run machine at higher speed

© J. Christopher Beck Linear Costs Money Processing time Marginal cost Cost to reduce job j by by 1 time unit

© J. Christopher Beck Problem Spend money to reduce processing times so as to minimize: “Overhead” cost Cost per activity

© J. Christopher Beck Solution Methods Objective: minimum cost of project Time/Cost Trade-off Heuristic Good schedules Works also for non-linear costs Linear programming formulation Optimal schedules Non-linear version not easily solved

© J. Christopher Beck Source (dummy) node Sink node Minimal cut set Cut set Sources, Sinks, & Cuts

© J. Christopher Beck Cuts Sets & Minimal Cut Sets Given a graph G(V,E) A cut set is a set of nodes such that in the graph formed by removing the nodes in S from G there is no path from the source to the sink A minimal cut set, R, is a cut set such that if you remove any node, a, from R, R \ {a} is not a cut set V is a set of nodes E is set of edges (arcs)

© J. Christopher Beck Is This a Cut Set? Is This a Minimal Cut Set?

© J. Christopher Beck Is This a Cut Set? Is This a Minimal Cut Set?

© J. Christopher Beck Is This a Cut Set? Is This a Minimal Cut Set?

© J. Christopher Beck Is This a Cut Set? Is This a Minimal Cut Set?

© J. Christopher Beck Is This a Cut Set? Is This a Minimal Cut Set?

© J. Christopher Beck Is This a Cut Set? Is This a Minimal Cut Set?

© J. Christopher Beck Step 1: Set all processing times at their maximum Determine all critical paths Construct the graph G cp of critical paths Time/Cost Trade-off Heuristic

© J. Christopher Beck Step 2: Determine all minimal cut sets in G cp Consider those sets where all processing times are larger than their minimum If no such set STOP; otherwise continue to Step 3 Time/Cost Trade-off Heuristic

© J. Christopher Beck Time/Cost Trade-Off Heuristic Step 3: For each minimum cut set: Compute the cost of reducing all processing times by one time unit. Take the minimum cut set with the lowest cost If this is less than the overhead per time unit go on to Step 4; otherwise STOP

© J. Christopher Beck Time/Cost Trade-Off Heuristic Step 4: Reduce all processing times in the minimum cut set by one time unit Determine the new set of critical paths Revise graph G cp and go back to Step 2

© J. Christopher Beck Example Jobs p max j p min j cajcaj cbjcbj cjcj Error in text

© J. Christopher Beck Warning: Example Unfortunately, the text is wrong for this example!

© J. Christopher Beck Step 1: Maximum Processing Times, Find G cp

© J. Christopher Beck Step 1: Maximum Processing Times, Find G cp Cost = overhead + job costs = c o * C max + Σc b j = 6 * = 560

© J. Christopher Beck c 1 =7 c 3 =4 c 6 =3c 9 =4 c 11 =2 c 12 =2 c 14 =8 Minimum cut set with lowest cost Cut sets: {1},{3},{6},{9}, {11},{12},{14}. Arbitrarily choose 12 Reduce p 12 from 8 to 7 1. Step 2 & 3: Min. Cut Sets in G cp & Lowest Cost

© J. Christopher Beck Step 4 & 1: Reduce p 12 by Cost = overhead + processing = c 0 * C max + Σjob costs = 6 * = 556

© J. Christopher Beck Step 2 & 3: Min. Cut Sets in G cp & Lowest Cost c 1 =7 c 3 =4 c 6 =3c 9 =4 c 11 =2 c 12 =2 c 14 =8 13 Cut sets: {1},{3},{6},{9}, {11},{12,13},{14} Why isn’t {12} a cut set? What is the cost of {12, 13}? c 13 =4 Minimum cut set with lowest cost

© J. Christopher Beck Step 4 & 1: Reduce p 11 by Cost = overhead + processing = c 0 * C max + Σjob costs = 6 * = 552

© J. Christopher Beck Step 2 & 3: Min. Cut Sets in G cp & Lowest Cost c 1 =7 c 3 =4 c 6 =3c 9 =4 c 11 =2 c 12 =2 c 14 = Min. cut sets! Where are they? Min cost min cut set: {2,11}: 4 Reduce Job 2 to 5 and Job 11 to 5 c 13 =4 Minimum cut set with lowest cost c 2 =2c 4 =3c 7 =4 c 10 =4

© J. Christopher Beck Step 4 & 1: Reduce p 2 & p 11 by Cost = overhead + processing = c 0 * C max + Σjob costs = 6 * = 550

© J. Christopher Beck Step 2 & 3: Min. Cut Sets in G cp & Lowest Cost c 1 =7 c 3 =4 c 6 =3c 9 =4 c 11 =2 c 12 =2 c 14 =8 13 Can’t reduce Job 2 anymore. Why? Min cost min cut set: {11,12}: 4 Reduce Job 11 to 4, Job 12 to 6 c 13 =4 Minimum cut set with lowest cost c 2 =2c 4 =3c 7 =4 c 10 =4

© J. Christopher Beck Step 4 & 1: Reduce p 11 and p 12 by Cost = overhead + processing = c 0 * C max + Σjob costs = 6 * = 548

© J. Christopher Beck Step 2 & 3: Min. Cut Sets in G cp & Lowest Cost c 1 =7 c 3 =4 c 6 =3c 9 =4 c 11 =2 c 12 =2 c 14 =8 13 Cutset: {6, 12}: 4 Reduce Job 6 to 11, Job 12 to 5 c 13 = c 2 =2c 4 =3c 7 =4 c 10 =4

© J. Christopher Beck Step 4 & 1: Reduce p 6 and p 12 by Cost = overhead + processing = c 0 * C max + Σjob costs = 6 * = 547

© J. Christopher Beck Step 2 & 3: Min. Cut Sets in G cp & Lowest Cost c 1 =7 c 3 =4 c 6 =3c 9 =4 c 11 =2 c 12 =2 c 14 =8 13 All cut sets either can’t be reduced (a job at p min ) or has a cost ≥ 6. So we’re done. c 13 = c 2 =2c 4 =3c 7 =4 c 10 =4

© J. Christopher Beck Example It would be very useful for you to work through this entire example on your own! Remember the book is wrong. You should use the slides.

© J. Christopher Beck Linear Programming Formulation The heuristic does not guarantee optimum See example You are responsible for the LP formulation! see the text!

© J. Christopher Beck Can Also Have Non-linear Costs Arbitrary function c j (p j ) → cost of setting job j to processing time p j LP doesn’t work! See Section 4.5 A question I like: Given processing times and c j (p j ), which algorithm would you use (heuristic or LP)?