A Grid-enabled Branch and Bound Algorithm for Solving

Download Report

Transcript A Grid-enabled Branch and Bound Algorithm for Solving

A Grid-enabled Branch and Bound
Algorithm for Solving Challenging
Combinatorial Optimization
Problems
Authors: M. Mezmaz, N. Melab and
E-G. Talbi
Presented by Saad Alhowaimel
Table of Content
• Introduction
• The Proposed Approach: Concepts and
Operators
• The Proposed Grid-enabled Parallel B&B
• Experimentation
Introduction
• The problem is NP-hard and complex.
• The Branch and Bound reduce the computation time, but not
exploring time.
• B&B components:
–
–
–
–
branching
Bounding
selection
elimination
• Parallelism on gird:
–
–
–
–
load balancing
fault tolerance
termination detection
global information sharing
The Proposed Approach: Concepts and
Operators
• Construct a permutation tree and explore it using a DFS strategy
• List of active nodes.
– Explored but not yet visited
– Cover all the nodes which can be potentially explored from each node
of the list.
– Algorithm stops once the list of active nodes becomes empty
– Used for exploration.
• Interval
– Optimize communication
– Check-pointing operations
• Fold operator
– Deduces an interval from a list of active nodes
• Unfold operator.
– Deduces a list of active nodes from an interval
The Proposed Approach: Concepts and
Operators
• Node weight:
The Proposed Approach: Concepts and
Operators
• Node Number:
The Proposed Approach: Concepts and
Operators
• Node range:
The Proposed Approach: Concepts and
Operators
• Fold Operator:
– deduces an interval from a list of active nodes
The Proposed Approach: Concepts and
Operators
• Fold Operator:
The Proposed Approach: Concepts and
Operators
• Unfold Operator:
– Deduces a list of active node form an interval.
The Proposed Grid-enabled Parallel
B&B
• Farmer-Worker Approach:
– Farmer
• One processor play the role of frame
• Keep a copy of all unexplored intervals
– Worker
• All other processors.
• Each process explores an
Interval
Both worker and farmer mange the best solution found so far
The Proposed Grid-enabled Parallel
B&B
• Fault Tolerance:
– The coordinator manages a possible failure of the
farmer by periodically saving in tow files.
– INTERVALS:
• It has a copy of all the intervals.
– SOLUTION:
• It has the global best solution.
– The Updating process
• Let [A,B[ be an interval being explored in a B&B process, and
[A’,B’[ its copy in INTERVALS
• Exploring increase A and branching decrease B’.
The Proposed Grid-enabled Parallel
B&B
• Load Balance:
– The coordinator assign an interval to B&B process
using two operator:
• Selection operator:
– select an interval from INTERVALS
• Partitioning operator:
– divide an interval [A,B[ to [A,C[ and [C,B[.
– The holder process keeps[A,C[ and requesting process keeps [C,B[
– The partitioning point C depend on the power and availability of
the processors.
– At the beginning C is equal to A.
– Any interval that smaller than parameterized threshold is
duplicated which speed up the search in termination phase.
The Proposed Grid-enabled Parallel
B&B
• Termination Detection:
– At the beginning INTERVALS has only one interval.
– During exploration the number of B&B process is
equal to the number of interval while its size
continuously decreases.
– The INTERVALS size is the sum of all the length of
its interval.
– Any empty interval (the beginning is higher than
the end) is removed automatically.
– The algorithm stop once the INTERVALS is empty.
The Proposed Grid-enabled Parallel
B&B
• Solution Sharing:
– The solution sharing is done by using SOLUTION.
– It contains the global optimal solution.
– Each B&B process manages its own local optimal
solution.
– The objective: is to reflect any improvement of any
local optimal solution in all the other B&B processes.
• A B&B process initializes its local optimal solution by
SOLUTION.
• Immediately informs the coordinator each time its local
solution is improved
• Regularly reads SOLUTION to update its local optimal
solution.
Experimentation
• The permutation flow-shop problem.
– One of the important problem in industrial areas.
– the problem is
– Where:
• The position of the machines is fixed.
• A machine can handle only one job at a time.
Experimentation
• The experimentation on grid .
– A problems of 50 jobs on 20 machines (Ta0561)
– This instance has never been solved optimally.
– The best known solution of Ta056 has a cost of 3681
with (near-optimal resolution method).
– It is made up of 1889 processors belonging to 9
clusters.
– Three clusters belong to three different education
departments of University de Lille.
– Six clusters belong Grid’5000
Experimentation
• Experiment Result.
– Two runs have been performed, and the optimal solution is
found with a cost equal to 3697.
– First experiment:
• The upper bound set with 3681
• average of processors 500 with a peak of 1245 processors.
• Experiment time One month and three weeks
– Second experiment:
•
•
•
•
•
•
The upper bound set with 3680
average of processors 328 with a peak of 1195 processors.
Experiment time is 25 days.
More than 2 million check pointing operations
About 6 billion nodes were explored.
a cumulative computation time of about 22 years..
Questions?