870 likes | 1.03k Views
Multi-Thread Integrative Cooperative Optimization for Rich VRP. Teodor Gabriel Crainic, Gloria Cerasela Crişan , Nadia Lahrichi , Michel Gendreau , Walter Rei , Thibaut Vidal. DOMinant 2009, Molde, Norway. Multi-Thread Integrative Cooperative Optimization for Rich VRP.
E N D
Multi-Thread Integrative Cooperative Optimization for Rich VRP Teodor Gabriel Crainic, Gloria CeraselaCrişan, Nadia Lahrichi, Michel Gendreau, Walter Rei, Thibaut Vidal DOMinant 2009, Molde, Norway
Multi-Thread Integrative Cooperative Optimization for Rich VRP Teodor Gabriel Crainic, Gloria CeraselaCrişan, Nadia Lahrichi, Michel Gendreau, Walter Rei, Thibaut Vidal DOMinant 2009, Molde, Norway
Plan • Our research program: Addressing comprehensively rich (combinatorial optimization) (planning) problems • Goals, objectives, inspiration / fundamental ideas • The Integrative Cooperative Search approach • Rich VRP: Concept and literature review • Applying ICS to rich VRP • The current application: MDPVRP • Planning and uncertainty • Perspectives
Our Research Program • Planning and management of complex systems • Transportation, logistics, telecommunications, … • Design, scheduling, routing, … • Combinatorial optimization problems • Mix-integer formulations • Formally hard problems • Large instances • Plan now, repetitively execute later: uncertainty • More complex modeling and algorithmic issues
Our Research Program (2) • Need “good” solutions in “reasonable” computing times • Exact methods for reduced complexity/dimensions • Decomposition, enumeration, bounds, cuts, … • Heuristics and meta-heuristics • Parallel computation • Cooperative search • The problem-solving paradigms evolve, however
Rich Problem Setting • Large number of interacting attributes (characteristics) • Larger than in “classical” (“academic”) settings • Problem characterization • Objectives • Uncertainty • That one desires to (must ) address simultaneously
Design of Wireless Networks • Simultaneously • Determine the appropriate number of base stations • Location • Height & power • Number of antennas/station • Tilt & orientation of each antenna • Optimize cost, coverage & exposure to electrosmog
Rich VRP • Vehicle routing in practice • Attributes of several generic problems • Complex “cost” functions
Actual Rich VRP Applications at FPLQ • Coalition of all dairy farmers • A number of processing plants • Transportation centrally negotiated and managed • Carrier contracting:assign farms to carriers and plants+ route construction (strategic/tactic) • Operational route adjustments
Multiple Routing Attributes • Time windows • Vehicle capacities • Route duration & length • Topology of routes • Multi-compartment • Multi-depot • Multiple periods • Complex cost functions • Pick up at farmers • Deliveries at plants (very different in capacities) • Mixing pickups and deliveries (sometimes) • Multiple tours • … • Planning now by FDLQ, execute repetitively later by carriers
Object and Goals of the Research Program • Models and methods for addressing “rich” problems • Combinatorial optimization • Planning • Uncertainty • Operations management and plan adjustment • Applications to routing and (service) design
What Methodology for Rich Problems? • Simplify (!!) • Series of simpler problems • Simultaneous handling of multiple attributes • A more complex problem to address! • Propose a “new” approach
Sources of Inspiration • Decomposition • Major methodological tool in optimization • Domain decomposition in parallel computation • Solution reconstruction? “Partition” modification? • Simplification • Fixing part of a rich problem may yield a case easier to address • Cooperative (parallel) meta-heuristics successful in harnessing the power of different algorithms • Guidance mechanisms
Sources of Inspiration (3) • VRPTW(Berger & Barkaoui, 2004) • Evolved two populations • Minimize total travel time • Minimize temporal violations
Cooperative Multi-search • Several independent ([meta-]heuristic or “exact”) search threads work simultaneously on several processors & exchange informationwith the common goal of solving a given problem instance • Exchange meaningful information in a timely manner • What information? • Between what processes?When & how? • What does one do with imported/exchanged data? • Most successful: asynchronous direct/indirect exchanges
Controlled Direct Exchange Mechanisms Search r Search k Search j Search i Search l Search h
Direct Exchange Mechanisms: Diffusion Search r Search j Search k Search l Search i Search h
Indirect, Memory-based Exchange Mechanisms Search j Search k Memory, Pool Reference Set Elite Set Data Warehouse Search l Search i
Memory-based Mechanisms • No direct exchanges among searches • Data is deposited and extracted from the common repository structure according to each method’s own logic • Asynchronous operations and process independence easy to enforce • Easy to keep track of exchanged data • Dynamic and adaptive structure • Exchanged information may be manipulated to build new/global data and search directions = guidance
Sources of Inspiration (4) • VRPTW(Le Bouthiller et al. 2005) • Parallel cooperative guided meta-heuristic • Two different tabu searches • Two GA (simple) crossover • Education through post-optimisation • Communications though a central memory (pool) • Patterns of arcs in good/average/bad solutions in memory and their evolution • Particular phases and guidance based on patterns
Sources of Inspiration (5) • Wireless network design (Crainic et al. 2006) • Parallel cooperative guided meta-heuristic • Several tabu searches work on parts of the search space to optimize relative to certain attributes only • A genetic algorithm to combine partial solutions • Communications though a central memory (pool) • Particular phases and guidance
ICS Fundamental Ideas & Concepts • Decomposition by attribute • Concurrent population evolution • Solver specialization • Cooperation with self-adjusting and guidance features
Shared-Memory ICS Integrator Integrator Partial Solutions (set A) Partial Solutions (set B) CompleteSolutions Global Search Coordinator Partial Solvers (set A) Partial Solvers (set B) Partial Solver (set A) Partial Solver (set B)
Decomposition by Attribute • Simpler settings by fixing (ignoring) variables or constraints • “Eliminating” variables or constraints might yield the same sub-problems but impair the reconstruction of solutions • Yields • Well-addressed, “classical” variants with state-of-the-art algorithms • Formulations amenable to efficient algorithmic developments • Our idea: be opportunistic!
Decomposition by Attribute (2) • Each subproblem = Particular fixed attribute set • Addressed using effective specialized methods→ Partial Solvers • Partial Solvers focus on the unfixed attributes → Partial Solutions • Multiple search threads • One or several methods for each subproblem • Meta-heuristic or exact • Central-memory cooperation
Decomposition by Attribute (3) • Issues and challenges • Homogeneous vs. heterogeneous population • Purposeful evolution of partial solutions • Reconstruction & improvement of complete solutions
Reconstructing Complete Solutions • Recombining Partial Solutions to yield complete ones • Search threads / operators → Integrators • Select and forward • Population-based, evolutionary methods: GA & Path Relinking • Mathematical programming-based models
Reconstructing Complete Solutions (2) • Issues and challenges • Selection of partial solutions for combination • Which subproblems? • What quality? • What diversity? • Selection of complete solutions for inclusion in the central-memory population • What quality? • What diversity?
Integrative Crossover Partial solution selection operators Integrative crossover operators Mutation/Education Admissible selection operators partial solutions partial solutions complete solutions complete solutions complete solutions population P of complete solutions population P’ of elite partial solutions
Improving Complete Solutions • Search threads – Solvers • Evolve & improve complete solution population • These are difficult problems! • If they were “easy”, we would not need ICS! • Should modify solutions in ways partial solvers would not do • Post-optimization certainly interesting • Large neighbourhoods for “few” iterations • Select few solutions and solve and exact problem • Local branching on variables from different attribute, … sets
Purposeful Evolution • Current processes • Partial Solvers work on particular subproblems defined exogenously ↔ • Initial entering communication • Intra Partial Solver exchanges & evolution through central-memory cooperation • Integrators extract & combine Partial Solutions ↔ • One-way communicationsPartial solutions Integrator Complete-solution pool
Purposeful Evolution – Current Processes • No communications among Partial Solvers on different attribute sets • No communications from Complete-solution pool to Integrators and Partial Solvers • No modifications to subproblem definition(values of attributes in corresponding sets) no feed back
Purposeful Evolution – Issues • Reconstruct / approximate global status of the search • Information exchange mechanisms • Guidance for Partial Solvers & global search • Evolve toward high-quality complete solutions • In absence of a mathematical framework • Apply cooperation principles • Avoid “heavy-handed” process control • A “richer” role for the Global Search Coordinator
Global Search Coordinator – Monitoring • Pools / populations • Complete solutions (direct) • Partial solutions (& integrators) (direct or indirect) • Exchanges / communications (possibly)
Global Search Coordinator – Monitoring (2) • Classical (central) memory statistics • A “richer” memory through analysis of solutions & communications • Quality of solution & evolution of population • Impact on population (quality & diversity) • Presence of solutions or solution elements in various types/classes of solutions • Arcs, routes • Good, average, poor solutions • Solutions with particular attribute sets, …
Global Search Coordinator – Monitoring (3) • The process – Partial Solver, Integrator, Solver – that produced the solution • Search space covering • Attribute values (combinations of) corresponding to visited search space regions(how often, quality measure) • …
Global Search Coordinator – Guidance • Partial Solvers cooperate and communicate according to their own internal logic • Based on monitoring results, “instructions” (solutions, often) are sent GSC → Partial Solver (pool) or Integrator • Enrich quality or diversity • Modify the values of the fixed attributes Moving the search to a different region • Modify the sets of attributes defining the partition • Modify parameter values or method or replace method
ICS Concurrent Evolution Selective migration Guiding migration Evolution Integrative evolution set S1 of partial solvers set S2 of partial solvers set S3 of partial solvers population P1 of partial solutions population P2 of partial solutions population P3 of partial solutions population P of complete solutions population P’ of elite partial solutions set S of solvers global monitoring& guidance set I of integrators global evolution guiding-migration operators
Zoom on Partial Solver Organization GA1 partial solver GA2 partial solver TS1 partial solver TS2 partial solver population Piof partialsolutions Legend Selective migration Evolution Guiding migration
Rich VRP • A concept that has emerged in the last decade or so • To focus attention on problems that are closer to the real problems encountered in practical settings • Some references: • Two SINTEF working papers by Bräysy, Gendreau, Hasle, and Løkketangen • Special issue of CEJOR (2006) edited by Hartl, Hasle, and Janssens • Several recent papers dealing with specific Rich VRPs
Rich VRP: Supply Side Extensions • Heterogeneous fleet • Variable travel times • Multiple routes • Multiple depots • Location-routing • Multi-compartment • Complex cost structure • Loading constraints
Rich VRP: Demand Side Extensions • Presence of backhauls • Pickup and delivery • Split deliveries • Periodic problems • Inventory routing • Dynamic and stochastic problems • Compatibility issues • Loading constraints
MDPVRP and MDPVRPTW • Multiple depots • With given number of homogeneous vehicles at each depot • Periodic problem • Planning horizon of t “days” (periods) • For each customer: a list of acceptable visit day “patterns” • Each customer must be assigned to a single depot and a single pattern and routes must be constructed for each depot/pattern, in such a way that the total cost of all the resulting routes is minimized.
MDPVRP and MDPVRPTW: Literature Review • Integrated approach (Parthanadee and Logendran, 2006) • Complex variant of MDPVRPTW • Customers may be served from different depots on different days • Tabu Search in which depot and pattern changes are made • Much more extensive literature exists on the MDVRP and the PVRP (and their variants with time windows).
An Important Property • Any instance of the MDVRP(TW) can be transformed into an instance of the PVRP(TW) • By clever redefinition of the allowed patterns • Distances to customers, however, become day-dependent • Similarly, any instance of the MDPVRP(TW) can be transformed into a (much) larger instance of the PVRP(TW) →One can use the same solution procedure to solve the PVRP(TW), the MDVRP(TW) and the MDPVRP(TW)!
An Important Property (2) • The previous property leads to a natural decomposition of the MDPVRP(TW) into two subproblems: • PVRP(TW) → Fix depot assignments • MDVRP(TW)→ Fix pattern assignments • We can use the same solvers as Partial Solvers for the two subproblems and as Global Solver.
Solvers • Currently, we use two solvers: • A local search solver based on the Unified Tabu Search (UTS) procedure of Cordeau et al. (2001) • This solver handles instances with or without time windows • A new population search solver (HAPGA) • This solver only handles instances without time windows (for the time being)
Solution Representation • For each customer: • Depot assignment • Pattern assignment • For each depot and each day: • The routes that are performed • Some solvers (HAPGA) also use a different representation at some stages of the solution process