Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan...

36
Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. James B. Orlin Orlin MIT Sloan MIT Sloan School of School of Management Management Very Large- Scale Neighborhood Search For Timetabling Survey is joint with Carol Survey is joint with Carol Meyers Meyers

Transcript of Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan...

Page 1: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

Business Process ModelDevelopment – Phase 2 DiscussionAugust 19, 2002

James B. OrlinJames B. OrlinMIT Sloan School MIT Sloan School of Managementof ManagementVery Large-Scale

Neighborhood Search For Timetabling

Survey is joint with Carol MeyersSurvey is joint with Carol Meyers

Page 2: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

2

Overview

Very large-scale neighborhood (VLSN) search

The cyclic exchange neighborhood

Functional annealing

Optimized crossover for genetic algorithms

Other approaches to VLSN Search

Page 3: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

3

Neighborhood Search Algorithms

Start with a feasible solution x

Define a neighborhood of x

Identify an improved neighbor y

Replace x by y and repeat

xx

x

x

xx

x x

x x x

x

x

x

xx

xx

x

x

x xxxx

xx

x

x

x

x

x

x

xx

x

x

x

xx

x

x

xx

x x

x x x

x

x

x

xx

xx

x

x

x xxxx

xx

x

x

x

x

x

x

xx

x

x

x

xx

x

x

xx

x x

x x x

x

x

x

xx

xx

x

x

x xxxx

xx

x

x

x

x

x

x

xx

x

x

x

xx

x

x

xx

x x

x x x

x

x

x

xx

xx

x

x

x xxxx

xx

x

x

x

x

x

x

xx

x

x

x

……………..

Page 4: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

4

VLSN Search

Quality of the local optimal solution

Better as the size of the neighborhood increases

Running time increases with the increase in size

VLSN Search

Very large neighborhoods

Neighborhoods enumerated implicitly

Use of network/discrete optimization algorithms

Page 5: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

5

VLSN Search dates back a long way

If Simplex is viewed as a search technique, then

column generation is VLSN Search

Sending flows around cycles to find a min cost flow

is VLSN Search

Augmenting path algorithms are VLSN search

bipartite matching

non-bipartite matching

max flow

Page 6: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

6

Overarching Goal

Promoting VLSN Search

VLSN Search is a collection of tools that may be of

use in timetablingranges from very obvious approaches to some

subtle approachescan be combined with tabu search or other

heuristics it has only recently been used. There are many

more opportunities for use of VLSN search

Note: I am available to discuss ideas over the next

two days

Page 7: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

7

Surveys on VLSN Search

Ahuja, Ergun, Orlin, Punnen [2002], [2006]

Meyers and Orlin [2006]

Deĭneko and Woeginger [2000]

See also http://www.ise.ufl.edu/ahuja/

http://web.mit.edu/jorlin/www/

Page 8: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

8

The Cyclic Exchange

Neighborhood

Page 9: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

9

1

10

7

89

1112

14 1315

17 19

201816

3

2 4

5

6

Partitioning Problems

Given a set S of

20 objects.

Partition the set S

into four subsets,

S1, S2, S3, S4.

Find the partition

such that i c(Si) is

minimum.

S1 S2

S4S3

1 10

141920

8

13

1518

3 1112

17 16

45

7

92

6

Page 10: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

10

A Two-Exchange Neighborhood

Number of possible exchanges n2

1 10

1920

8

13

1518

1112

17 16

7

92

6

543

S4S3

S2S1 14

Page 11: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

11

A Multi-Exchange Neighborhood-I

A Cyclic Multi-Exchange

1 10

1920

8

13

1511

17 16

92

6

543

S1 S2

S4S3

Number of possible

exchanges K

nK!

K

14

1812

7

Page 12: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

12

A Multi-Exchange Neighborhood-II

A Path Multi-Exchange

1 10

1920

8

13

1518

11

17 16

92

6

5

43

S1 S2

S4S3

14

12

7

Page 13: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

13

Sizes of the Two Neighborhoods

Number of

Neighbors

Number of

Neighbors

n = 100, K = 10)

Two-

Exchanges n2 10,000

Multi-

Exchanges 3.63*1016

KnK!

K

Suppose that we can evaluate 1 million neighbors per second.

Estimated

CPU Time for

Enumeration

10-2 seconds

1,150 years

Page 14: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

14

Multi-Exchanges w.r.t a solution S

Directed Cycles in G(S)

Multi-exchanges are transformed into directed

cycles in an appropriately defined graph G(S),

called the improvement graph.

Enumerating Multi-Exchanges

Page 15: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

15

Improvement Graph

Improvement Graph G:

A node i for every item

i in partition.

An arc (i, j) signifies a

move of item i to the

subset containing item

j and item j leaving its

subset.

1 10

141920

8

1315

18

1112

17 16

7

926

543

S1 S2

S4 S3

1

19

20

10

146

7

9

2

17

12

4

16

11

5 15

3

18

13

8

Page 16: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

16

Improvement Graph (contd.)

Cost of the multi-exchange =

Cost of the directed cycle

Profitable multi-exchange =

a negative cost cycle

c14,7

c12,8

c8,14 c7,12

12

714

8

1 10

1920

13

1511

17 16

92

6

543

S1 S2

S4S3

14

812

7

18

Page 17: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

17

A Theorem on Improvement Graphs

Theorem. There is a one-to-one correspondence

between cyclic exchanges w.r.t S and subset-disjoint

cycles in G(S).

Page 18: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

18

The Generic Algorithm

Start with a feasible partition S = (S1,S2,.., Sk).

Construct the improvement graph G(S).

Repetitive Loop

Identify a negative-cost (subset-disjoint) cycle in

G(S)

Obtain the profitable multi-exchange w.r.t S

Perform the multi-exchange and update S

Update the improvement graph G(S)

Page 19: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

19

Uses of the Cyclic Exchange Neighborhood

Facility location problems Ahuja, Orlin, Pallottino, Scaparra and Scutella [2002]

Vehicle routing problems Agarwal, Ahuja, Laporte and Shen [2003]

Weapon-target assignment problem Ahuja, Kumar, Jha and Orlin [2003]

Examination Timetabling Abdullah, Ahmadi, Burke, Dror PATAT [2004]

Course Scheduling Jha PhD dissertation [2004]

Page 20: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

20

Examination SchedulingAbdullah, Ahmadi, Burke, Dror [2004]

No person scheduled for two exams in one period.

For each person, there is a penalty for exams that are close to each other.

Page 21: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

21

Examination SchedulingAbdullah, Ahmadi, Burke, Dror [2004]

Day 1

Period 1

Day K

Period 2

Period 3

Page 22: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

22

Some Empirical Results

Page 23: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

23

Course Timetabling : Jha, Ahuja [2004]

Assign subjects to time slots and classrooms

minimize student conflicts on class preferences

maximize professors’ preferences

The partitions are time slots.

Each cyclic exchange moves classes between the time slots.

M W F 10 AM T Th F 11 AM

M Th F 3 PM

Typically within a few percent of optimum on those problems solvable by IPs.

Page 24: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

24

Simulated Annealing

Simulated Annealing (in its usual form) is not a

good choice for VLSN Search

No. of

Neighbors

No. of Neighbors

n = 100, K = 10)

Two-

Exchanges n2 10,000

Multi-

Exchanges 3.63*1016

Choosing one of 1016 neighbors at random can lead to very slow convergence to the optimum.

Page 25: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

25

Functional Annealing

Sharma and Sukhapesna [2005 and 2006]

Iteratively perturb the objective function

The objective function converges to the correct

objective function

Combined with statistical learning, the authors

claim impressive results for the QAP.

Page 26: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

26

The Functioning Annealing Algorithm

Algorithm Functional annealing

begin

choose an initial solution x0 in F

set k = 0

while stopping criteria not met do

let c’ = c + w, where w is obtained using an exp dist

find an improved neighbor wrt c’

end

end

Page 27: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

27

GAs and Optimized Crossover

Give a very brief overview of GAs since the

audience already knows this stuff.

Then explain that one can in principle look for the

optimized crossover.

application to independent set (one slide) on

technique plus a slide on computational results

application to TSP (one slide)

possible application to timetabling

Page 28: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

Mutation

http://press2.nci.nih.gov/sciencebehind/cancer/images/cancer42.gif

Page 29: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

29

two chromosomes

a crossover (chiasma)

the chromosomes after recombination

http://www.emc.maricopa.edu/faculty/farabee/BIOBK/BioBookmeiosis.html

Crossovers

Page 30: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

30

The evolutionary process

maintain a population of individuals

the gene pool is renewed through mutations

Natural selection (better solutions are more likely to

be parents), and crossover (mixing of genes), leads

to improvements in successive generations

But, can we do better than nature? What if we

create optimal children?

Page 31: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

31

Optimized Crossover for Independent Sets

Agarwal, Orlin, Tai [1997]

1

8

23

4

5

67

Parent 1

1 2 3 4 5 6 7 8

0 1 0 0 1 0 0 1

1

8

23

4

5

67

Parent 2

1 2 3 4 5 6 7 8

1 0 0 1 0 1 0 0

1

8

23

4

5

67

Opt child

1 2 3 4 5 6 7 8

0 1 0 1 0 1 0 1

Page 32: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

32

A possible application to timetabling

Consider allocating subjects to time slots

The optimal crossover of two parents has the

following property:

if subject j is allocated to time slot s1 by parent 1 and

time slot s2 by parent 2, then in any child it is

allocated to time slot s1 or s2.

Questions to address Can one find the optimized crossover? How would one implement this as part of a GA? Would it work well in practice?

Page 33: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

33

Other Work on VLSN Search

Diameter of a Neighborhood

see e.g., Bozejko and Wodecki. PATAT06

Dominance [Punnen and Glover]

Extended Neighborhood [Orlin and Sharma]

Using Grammars to express neighborhoods

[Bompadre and Orlin]

Exponential Nbhds searchable in polynomial time

Page 34: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

34

A simple approach relying on IPs

If the original problem is formulated as an IP, then

one can have IP based neighborhoods.

ORIGINAL IP FOR SOME TIMETABLING PROBLEM

minimize cx

subject to x P

Suppose that x* is feasible but not optimal

LOCAL SEARCH

minimize cx

subject to || x – x* || K

x P

Page 35: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

35

Uses of the Simple IP Approach

Great for interactive scheduling (person – machine

scheduling.)

Can be used to modify the original problem and

specify that the solution is not too far away.

e.g., in exam scheduling, a user can require that a

subject’s exam move to a different period. The user

can then reoptimize subject to the constraint that at

most 10 other subjects change time slots.

Page 36: Business Process Model Development – Phase 2 Discussion August 19, 2002 James B. Orlin MIT Sloan School of Management Very Large-Scale Neighborhood Search.

36

Conclusion Slide

Some successful applications of VLSN search in

timetabling

Lots of successes for VLSN search in other

domains

Opportunities for more applications of VLSN search

in timetabling.