IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve...
-
Upload
pierre-schaus -
Category
Education
-
view
248 -
download
1
description
Transcript of IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve...
![Page 1: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/1.jpg)
Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems
Pierre Schaus UCL, ICTEAM, Belgium
![Page 2: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/2.jpg)
Over-Constrained Problems
Demand
Tue Wed
>2=2
>1>2
>3>1
Mon
Usually render the problem
over-constrained
gcc1 gcc2 gcc3
![Page 3: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/3.jpg)
Relaxation = Violation Variables in Constraints (Petit & Régin)
soft-gcc(...,
o1)
soft-gcc(...,
o2)
soft-gcc(...,
o3)
Demand
Tue Wed
>2=2
>1>2
>3>1
Mon
![Page 4: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/4.jpg)
Aggregation of violations
• Many possibilities
• Most intuitive one:
o1+o2+o3+...
![Page 5: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/5.jpg)
Minimize sum of violation variables o1+o2+o3+...
Desired Properties :
A: o1+o2+o3+... should be small
not easy to reached with CP
B: o1+o2+o3+... should be balanced
A: o1+o2+o3+... should be small
![Page 6: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/6.jpg)
Major Weakness of CP =
![Page 7: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/7.jpg)
Weak filtering of sum (bound-consistency)
large BnB search tree
small fraction of it is explored with DFS
bad solutions
![Page 8: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/8.jpg)
Solution = Large Neighborhood Search
LNS = LS using CP for neighborhood exploration
![Page 9: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/9.jpg)
LNS (Shaw 98)
1 3 5 6 2 9 1 8 3 1 0 4.. .. .. .. .. .. .. .. .. .. .. ..
Find Initial Solution with CP
Bound = 100
Decision Variables
![Page 10: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/10.jpg)
LNS (Shaw 98)
1 3 5 6 2 9 1 8 3 1 0 4
Relax* (randomly) this solution
.. .. .. .. ..Bound = 100
*aka fragment selection
![Page 11: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/11.jpg)
LNS (Shaw 98)
1 3 5 6 2 9 1 8 3 1 0 4
Optimize this partial solution with CP
.. .. .. .. ..7 8 1 4 3Bound = 96
![Page 12: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/12.jpg)
LNS (Shaw 98)
1 3 7 6 2 8 1 8 1 4 0 3
relax randomly
Bound = 96 .. .. .. .. ..
![Page 13: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/13.jpg)
LNS (Shaw 98)
1 3 5 6 2 9 1 8 3 1 0 4
re-optimize
.. .. .. .. ..7 8 1 4 3Bound = 85 .. .. .. .. ..3 2 10 3 1
![Page 14: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/14.jpg)
LNS (Shaw 98)
1 3 5 6 2 9 1 8 3 1 0 4
.. .. .. .. ..
7 8 1 4 3
.. .. .. .. ..
3 2 10 3 1
.. .. .. .. .. .. .. .. .. .. .. ..
initialrelaxoptimize
relaxoptimize
...
![Page 15: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/15.jpg)
From a CP Model to a LNS Model
CP Model
Relaxation Procedure+ = LNS Model
Which decision Variables should be relaxed for next restart
![Page 16: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/16.jpg)
Minimize sum of violation variables o1+o2+o3+...
Desired Properties :
A: o1+o2+o3+... should be small
B: o1+o2+o3+... should be balancedB: o1+o2+o3+... should be balanced
![Page 17: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/17.jpg)
12 2 2
1 1 1
4
o1 o2 o3 o4 o1 o2 o3 o4
o1+o2+o3+o4 = 7
unbalancedbalanced
How to avoid this ?
![Page 18: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/18.jpg)
Dynamically Change the Objective (at each LNS restart)
![Page 19: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/19.jpg)
Focus on worse objective at each LNS restart
!
o1 o2 o3 o4
![Page 20: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/20.jpg)
!
o1 o2 o3 o4
Focus on worse objective at each LNS restart
![Page 21: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/21.jpg)
!
o1 o2 o3 o4
Focus on worse objective at each LNS restart
![Page 22: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/22.jpg)
!
o1 o2 o3 o4
Focus on worse objective at each LNS restart
![Page 23: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/23.jpg)
In practice …
• Objective configuration changed at each LNS restarts.
• Each objective can be configured differently
Strong = must decrease Weak = cannot increase No = unrestricted
filtering
![Page 24: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/24.jpg)
3 Filtering modes Weak, Strong, No - Filtering
!
o1 o2 o3 o4StrongStrongWeak No
!
Strong: must decrease Weak: cannot increase No: unrestricted
![Page 25: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/25.jpg)
Good idea: o1+o2+o3+o4 in Strong
o1 o2 o3 o4StrongStrongWeak No
o1+o2+o3+o4Strong
Ensures at least same filtering as original one
![Page 26: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/26.jpg)
o1 Strong o2 Weak o3 No
objective value
timerestart i
o1 Weak o2 No o3 Strong
restart i+1
New solution found during BnB DFS
![Page 27: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/27.jpg)
From a LNS-CP Model to a Variable-Objective LNS Model
= LNS ModelCP Model
Relaxation Procedure+ VO-LNS
Modelobjective
configuration+set objectives into
Strong/Weak/No filtering mode
![Page 28: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/28.jpg)
Experimental Result
• Artificial over-constrained problems
• Over-Constraint timetabling application
![Page 29: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/29.jpg)
Artificial Over-Constrained Problem
Random Domain: 5 values on [1..15]
every values 1..15 should appear exactly once
on each column
oj
every values 1..15 should appear exactly
once on each rowoi
violation = sum of excess &
shortage of each value
![Page 30: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/30.jpg)
LNS Relaxations
most violated line*
oi
10% of variables (randomly) = 10% of variables (randomly) + most violated line/column
*tabu mechanism for diversification
R1 R2
![Page 31: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/31.jpg)
o1 , o2 , ... , o30 : No
otot : Strong
Standard minimization of sum, does not try to balance violations
Objective Configurations
o1 , o2 , ... , o15 , o16 , ... , o30 , otot
o1 , o2 , ... , o30 : Weak
otot : Strong, oi: Strong
oi
The most violated row/column in current
solutions
C1 C2
![Page 32: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/32.jpg)
Experiments LNS
400 Restarts, 50 Failure Limit
!
• Setting A: R1 & C1
• random relax, standard minimization
• Setting B: R2 & C1
• structured relaxation, standard minimization
• Setting C: R2 & C2
• structured relaxation, variable objective (VO-LNS)
![Page 33: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/33.jpg)
LNS
VO-LNS Decrease faster
& better sum of violations
![Page 34: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/34.jpg)
Balancing Property
Better total violation
Better total balancing
VO-LNS
![Page 35: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/35.jpg)
Real Life - Timetabling Hospitality Management School
Gro
ups
Weeks
![Page 36: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/36.jpg)
Real Life - Timetabling Hospitality Management School
Gro
ups
Weeks
Groups of 20 students must be scheduled over semester
![Page 37: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/37.jpg)
Real Life - Timetabling Hospitality Management School
Gro
ups
Weeks
Two activities/ Week to decide Morning & Afternoon
AM PM
![Page 38: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/38.jpg)
Real Life - Timetabling Hospitality Management School
Gro
ups
Weeks
For each group: cardinality requirement on activity types
> 2x A1 = 1x A2
…
![Page 39: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/39.jpg)
Real Life - Timetabling Hospitality Management School
Gro
ups
Weeks
Restriction on activity patterns
A1 is scheduled only 4 consecutive times, …
![Page 40: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/40.jpg)
Real Life - Timetabling Hospitality Management School
Gro
ups
Weeks
Demand over activities specific for each weak
A1 scheduled between 2 and 3 times A2 scheduled between 1 and 2 times
…
soft-gcc
![Page 41: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/41.jpg)
Real Life - Timetabling Hospitality Management School
Violations of cardinality requirements
![Page 42: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/42.jpg)
LNS Relaxations
Gro
ups
Weeksmost violated
weeks
some groups
some random slots
![Page 43: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/43.jpg)
Results: 1000 LNS Restarts
same LNS relaxation
![Page 44: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/44.jpg)
VO-LNS is faster
number of exhausted searchWhy ?
!
Because most of the LNS searches complete before the failure limit
![Page 45: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/45.jpg)
Balance 10 runs x 5 instances
![Page 46: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/46.jpg)
OscaRSCALA IN OPERATIONAL RESEARCH
Open-Source Implementation
https://bitbucket.org/oscarlib/oscar
![Page 47: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/47.jpg)
Take away messages
• Minimizing sum objective (in over-constrained problems) with CP is hard
• LNS is powerful to diversify search space
• Changing dynamically the objective can
• Fasten and improve LNS
• Better balance violations
variable objective LNS
![Page 48: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/48.jpg)
Future Work
• Automatic objective configuration
• Population of solutions (different configurations)
• More problems (just in time scheduling)
![Page 49: IACTAI13 Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems (Pierre Schaus)](https://reader033.fdocuments.in/reader033/viewer/2022052905/5585ddf4d8b42ab1518b4c8c/html5/thumbnails/49.jpg)
Variable Objective Large Neighborhood Search: A practical approach to solve over-constrained problems
Pierre Schaus UCL, ICTEAM, Belgium