Loading in 2 Seconds...

Multi-Thread Integrative Cooperative Optimization for Rich VRP

Loading in 2 Seconds...

- 113 Views
- Uploaded on

Download Presentation
## Multi-Thread Integrative Cooperative Optimization for Rich VRP

**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

### Multi-Thread Integrative Cooperative Optimization for Rich VRP

### 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

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

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

Solvers: UTS

- Proposed by Cordeau et al. (1997, 2001)
- A fairly straightforward Tabu search procedure based on the GENI insertion procedure (Gendreau et al., 1992)
- Infeasible solutions w.r.t. capacity and route length:
- Allowed, but penalized with self-adjusting penalties
- Critical for a good performance!
- Handles time windows
- Can be generalized easily to deal with MDPVRP(TW)

Solvers: HAPGA

- New solver under development
- HAPGA: Hybrid Adaptive Penalties Genetic Algorithm
- A solver for the PVRP (and “equivalent” problems)
- Combines two threads of ideas:
- Prins’ (2002) memetic approach for the VRP
- Solution representation, population management, …
- Allowing infeasible solutions with respect to capacity and route length constraint violations
- With self-adjusting penalties as in UTS

The chromosome representation of VRP solutions is as giant TSP tour covering customers without delimiters!

- Solutions are

extracted from

chromosome

using a SPLIT

procedure (shortest path problem on an auxiliary graph)

- “Standard” crossover operators
- Solution enhancement through local search

HAPGA: Solution Representation

- To handle periods, HAPGA maintains two chromosomes for each solution:
- Route chromosome
- As in Prins’ approach
- Maintains for each “day” the sequence of customer visits
- “Days” are listed sequentially (with delimiters)
- Pattern chromosome
- Maintains for each customer the pattern chosen

(redundant information)

HAPGA: Solution Evaluation

- Prins and his co-authors:
- Enforce strict capacity and route duration constraints
- Allow to violate the fleet size constraint
- Easy SPP for SPLITTING giant tours
- In HAPGA:
- Capacity and route duration constraints are relaxed
- Fleet size is strict
- SPLIT (for each day) becomes an SPP with resource constraints
- Can be extended to effectively handle heterogeneous fleets!

HAPGA: Selection

- Each parent is selected through a binary tournament
- Select two individuals at random
- Keep the best one
- Poor individuals have a very low probability of reproducing

HAPGA: The PIX Crossover

- PIX: Periodic crossover with Insertions
- Creates a single offspring C from two parents P1 and P2
- For each day t in the planning horizon, we chose randomly to:
- Copy no customer visits from P1 into C
- Copy all customer visits of day t from P1into C
- Copy a substring of customer visits of day t from P1into C

HAPGA: The PIX Crossover

- Parent P2 is then scanned sequentially and visits to customers are added:
- On days where all visits from P1were not copied
- If they are allowed by some pattern for the customer considered
- If the total number of visits to a customer is not exceeded
- If some customers are missing visits, these are inserted in random order and at minimum cost after performing the SPLIT procedure

HAPGA: Education

- After creation, all children go through education
- Two local search procedures:
- Route improvement (RI)
- Applies separately to each day
- 8 different moves (insertions, swaps, 2-opt, 2-opt*)
- Pattern improvement (PI)
- Applied on an individual customer basis
- Simple descents
- Applied in RI, PI, RI sequence

HAPGA: Repair Phase

- Before education 30% of children (chosen randomly) are “repaired” :
- By setting their penalty weights very high
- Pushes them back to feasibility

HAPGA: Population Management

- Small population (10,000/n)
- A single child produced in each iteration
- Should replace the least “interesting” individual of the population
- Different ideas tried
- Experiments still under way
- Diversification: After 10,000 iterations without improvement, replace 90% of the population

HAPGA: Infeasibility Management

- The proportion ξ of feasible individuals is monitored
- Penalty coefficients are updated every 200 iterations
- If ξ≤ 0.2, both coefficients are increased by 20%.
- If ξ≥ 0.3, both coefficients are decreased by 15%.

A MDPVRPTW Implementation

- Three-population scheme:
- P0: “Global” population
- P1: Fixed patterns
- P2: Fixed depots
- UTS implementations for
- Integrator & Global Solver: MDPVRPTW
- The 2 Partial Solvers for “subproblems”
- Three copies of UTS for each population

A MDPVRPTW Implementation (2)

- Integrator: when idle
- Select random in best in each partial population
- Pairs → triplets (customer, depot, pattern) → build best routes (no change in pairs !)
- Guidance: send best on improvement
- Tested on instances created from the MDVRPTW and PVRPTW instances of Cordeau et al. (2001)

An Evolutionary ICS MDPVRP Illustration

- 3-population scheme as in other application
- HAPGA is used as Partial Solver, Global Solver and Integrator
- For each population, 3 solvers:
- 2 x HAPGA
- 1 x UTS
- When HAPGA is used as Partial Solver, education does not change the patterns corresponding to the “fixed” attributes

An Evolutionary ICS MDPVRP Illustration (2)

- Two Integrators: Random select in 25% best
- 2 parents extract depot and period patterns generate population evolve send best valid
- 100 couples: crossover + educate & repair send best (valid)
- Guiding migration on partial population stalling
- Random generation of partial population +
- Random select & migrate 1 complete in 25% best

Test Instances

- Derived from the set of instances used in the MDPVRPTW implementation.

PreliminaryResults

Gaps with respect to best known solutions:

Planning and Uncertainty

- Plan
- For a set of fixed routes that will be used repetitively some time later for a given amount of time
- Within an environment where there is variability of and uncertainty on future values of system characteristics – demand – at planning time
- Important characteristics of desired plan:
- Flexibility: Planned routes can be adapted easily to changes in the system environment (new information)
- Robustness: Planned routes do not need to be overly adjusted given changes in the environment

73

A Case Study – the FPLQ

- FPLQ assumes (by law) responsibility for the transportation of milk from farms to processing plants, producers assuming the costs
- FPLQ negotiates contracts with motor carriers within a provincial convention
- 3 main FPLQ processes
- Negotiation of contracts (year)
- Pickup photo (monthly adjustment)
- Assignment of routes (weekly adjustment)
- 1 carrier process (!!): operate routes

74

Planning at FPLQ

- Yearlynegotiation of contracts with carriers
- On forecasts of milk production at farms and milk demand at plants & last year plan
- Assign farms to carriers, build routes, assign routes to plants: depot farms plant
- May be more complicated than that …
- Price routes and negotiate rates with carriers
- Mediate between FPLQ and carriers
- Contracts generated:
- 97 carriers, 575 routes, 134 plants
- For a total of 77 050 rates (134 plants x 575 routes)

75

Adjusting the Plan

- The “pickup” photo – monthly
- Select a 2-day period
- Observe how routes are performed
- Obtain a detailed description of the quantity of milk picked and delivered
- From these observation adjustments are defined for the next month
- “Routing”, farm ↔ route/carrier

76

Adjusting the Plan (2)

- Assignment of routes – weekly
- Plants send week requirements
- Adjust the plan for next week
- Routes ↔ Plants
- Distribute the milk supply through the various plants in order to minimize transportation costs
- Balance (reconciliate) supply and demand

77

Adjusting the Plan (3)

- The two adjustment processes not yet completely defined
- But they indicate the FPLQ follows the standard practice of plan now and adjust later with revealed information
- The so-called a priori planning

78

Planning Processes

- A well-defined planning process
- Tools to build routes (with few attributes) “locally”
- No comprehensive planning methodology
- No capability for scenario/policy analysis
- No formal taking into account of future variability and uncertainty

79

Planned Work to Address Uncertainty

- Goals
- A “comprehensive” study of uncertainty and its impact on planning
- Develop stochastic programming models and methods to produce more flexible and robust plans
- Insight into form and characteristics of such plans and, possibly, develop simpler but as efficient solution approaches & policies
- For regular planning and strategic studies

80

Planned Work to Address Uncertainty (2)

- Sources of uncertainty
- Farm production volumes
- Plant requirements
- Travel and service times
- Disruptions
- Information process(es)
- Farm and plant (regular, uncoordinated) updates
- Actual availability at farms

81

Planned Work to Address Uncertainty (3)

- Recovery and adjustment practices = the recourse(s)
- The decision process(es)
- Independent participants – farms, plants
- Routes operated very independently – carriers
- Will the plan be permanently modified at some point in the future (when?, how?)?
- Modeling – stochastic programming
- Recourse formulations
- Decision stages: two or multiple
- Probabilistic constraints to bound the risk
- Solution methods – stochastic programming

82

ICS for Planning Under Uncertainty

- Adapting ICS: A rich research program
- Decomposition strategy
- Functional (attributes) decomposition
- Domain decomposition
- Scenario decomposition
- Which problems for the partial solvers?
- Which problems for integrators?
- Evolution & guidance?

83

Planned Work to Address Uncertainty(4)

- The value of explicit inclusion of uncertainty factor into planning models
- Insight into form and characteristics of “stochastic” solutions
- Deterministic solution methods building on this insight?
- “Solving” with a “few” appropriate scenarios? …

84

Conclusions & Perspectives

- Rich (combinatorial optimization) problems present interesting challenges and opportunities
- Parallel cooperation performs very well
- ICS appears promising when complexity grows
- Still a lot of work on all aspects of the approach and applications

Questions from the field: Did you know…

- One cow produces enough milk to satisfy the annual milk and dairy product needs of 30 people
- It takes 11 litres of milk to make 1 kilogram of cheese

Download Presentation

Connecting to Server..