Ise480 sequencing and scheduling
This presentation is the property of its rightful owner.
Sponsored Links
1 / 24

ISE480 Sequencing and Scheduling PowerPoint PPT Presentation


  • 85 Views
  • Uploaded on
  • Presentation posted in: General

ISE480 Sequencing and Scheduling. Izmir University of Economics. Branch and Bound. ISE480 Sequencing and Scheduling 2012 – 2013 Fall semestre. Branch and Bound. Enumerative method Guarantees finding the best schedule Basic idea: Look at a set of schedules

Download Presentation

ISE480 Sequencing and Scheduling

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Ise480 sequencing and scheduling

ISE480 Sequencing and Scheduling

Izmir University of Economics

ISE480 2011 -2012 Fall Semestre


Branch and bound

Branch and Bound

ISE480 Sequencing and Scheduling

2012 – 2013 Fall semestre


Branch and bound1

Branch and Bound

  • Enumerative method

  • Guarantees finding the best schedule

  • Basic idea:

    • Look at a set of schedules

    • Develop a bound on the performance

    • Discard (fathom) if bound worse than best schedule found before (incumbent)

ISE480 Sequencing and Scheduling


Ok now what

OK, now what?

  • So we’ve got a IP formulation of the problem, how do we solve it?

    • Using standard IP solution techniques such as branch-and-bound

  • Doesn’t mean the problem is easy

  • Will now talk about branch-and-bound (B&B) which can be used to solve IPs and other hard problems

ISE480 Sequencing and Scheduling


Branch and bound2

Branch-and-Bound

  • Idea

    • Systematically search through possible variable values

    • Use heuristics to pick a decision to try (“branch”)

    • Use lower bounds on solutions to “bound” the search (fathom)

  • Creates a search tree

ISE480 Sequencing and Scheduling


B b search tree branching

Branch

a = 0

a = 1

b = 0

b = 1

b = 0

b = 1

c = 0

c = 1

c = 0

c = 1

c = 0

c = 1

c = 0

c = 1

B&B Search Tree: Branching

  • Imagine a problem with 3 variables

    • a, b, c є{0, 1}

100

90

110

115

80

90

100

110

ISE480 Sequencing and Scheduling


B b search tree bounding

a = 0

a = 1

b = 0

b = 1

b = 0

c = 0

c = 1

c = 0

Bound

B&B Search Tree: Bounding

  • Imagine I have a way to calculate a lower bound on the cost at each node

50

70

80

85

95

80

100

90

80

ISE480 Sequencing and Scheduling


Ise480 sequencing and scheduling

B&B

  • Branch: assign a heuristic value to a variable

    • Creates two subproblems

  • Bound: compare lower bound at node with best known solution

    • If LB > best, you can backtrack right away

ISE480 Sequencing and Scheduling


B b for ip

B&B for IP

  • Usually lower bound is found by solving the linear relaxation of the IP

    • LP formed by ignoring integral constraints

  • Branch on one of the integer variables with a non-integer value to be:

    • greater than or equal to the next highest integer, or

    • Less than or equal to the next lowest integer

ISE480 Sequencing and Scheduling


Classic result

Classic Result

  • The EDD rule is optimal for

  • If jobs have different release dates, which we denote

    then the problem is NP-Hard

  • What makes it so much more difficult?

ISE480 Sequencing and Scheduling


Ise480 sequencing and scheduling

1

2

3

0 5 10 15

Can we

improve?

ISE480 Sequencing and Scheduling


Delay schedule

Delay Schedule

EDD

Add a delay

1

3

2

0 5 10 15

What makes this problem hard is thatthe optimal schedule is not necessarilya non-delay schedule

ISE480 Sequencing and Scheduling


Final classic result

Final Classic Result

  • The preemptive EDD rule is optimal for the preemptive (prmp) version of the problem

  • Note that in the previous example, the preemptive EDD rule gives us the optimal schedule

  • Note that if rj = 0, then the above does not hold.

ISE480 Sequencing and Scheduling


Branch and bound3

Branch and Bound

  • The problem

    cannot be solved using a simple dispatching rule so we will try to solve it using branch and bound

  • To develop a branch and bound procedure:

    • Determine how to branch

    • Determine how to bound

ISE480 Sequencing and Scheduling


Ise480 sequencing and scheduling

Data

ISE480 Sequencing and Scheduling


Branch and bound4

Branch and bound

  • Enumeration in asearchtree

  • each node is a partial solution, i.e. a part of the solution space

Level 0

root node

Level 1 (n nodes)

child nodes

...

Level 2 (n*(n-1))

child nodes

...

ISE480 Sequencing and Scheduling


Branching

Branching

(•,•,•,•)

(1,•,•,•)

(2,•,•,•)

(3,•,•,•)

(4,•,•,•)

ISE480 Sequencing and Scheduling


Ise480 sequencing and scheduling

Branching

(•,•,•,•)

(1,•,•,•)

(2,•,•,•)

(3,•,•,•)

(4,•,•,•)

Discard immediately because

ISE480 Sequencing and Scheduling


Ise480 sequencing and scheduling

Branching

(•,•,•,•)

(1,•,•,•)

(2,•,•,•)

(3,•,•,•)

(4,•,•,•)

Need to develop lower bounds on

these nodes and do further branching.

ISE480 Sequencing and Scheduling


Bounding in general

Bounding (in general)

  • Typical way to develop bounds is to relax the original problem to an easily solvable problem

  • Three cases:

    • If there is no solution to the relaxed problem there is no solution to the original problem

    • If the optimal solution to the relaxed problem is feasible for the original problem then it is also optimal for the original problem

    • If the optimal solution to the relaxed problem is not feasible for the original problem it provides a bound on its performance

ISE480 Sequencing and Scheduling


Relaxing the problem

Relaxing the Problem

  • The problem

    is a relaxation to the problem

  • Not allowing preemption is a constraint in the original problem but not the relaxed problem

  • We know how to solve the relaxed problem (preemptive EDD rule)

ISE480 Sequencing and Scheduling


Bounding

Bounding

  • Preemptive EDD rule optimal for the preemptive version of the problem

  • Thus, solution obtained is a lower bound on the maximum delay

  • If preemptive EDD results in a non-preemptive schedule all nodes with higher lower bounds can be discarded.

ISE480 Sequencing and Scheduling


Lower bounds

Lower Bounds

  • Start with (1,•,•,•):

    • Job with EDD is Job 4 but

    • Second earliest due date is for Job 3

Job 1

Job 2

Job 3

Job 4

0 10 20

ISE480 Sequencing and Scheduling


Ise480 sequencing and scheduling

Branching

(•,•,•,•)

(1,•,•,•)

(2,•,•,•)

(3,•,•,•)

(4,•,•,•)

(1,2,•,•)

(1,3,•,•)

(1,3,4,2)

ISE480 Sequencing and Scheduling


  • Login