Professional Documents
Culture Documents
A Parallel P2P Branch and Bound Algorithm for Computational Grids A. Bendjoudi, N. Melab and E-G. Talbi
abendjoudi@cerist.dz, {melab, talbi}@lifl.fr
CEntre de Recherche sur lInformation Scientifique et Technique CERIST Laboratoire des Systmes Informatiques LSI
Universit A/Mira de Bjaa cole doctorale dinformatique
Outline
Motivation and Objectives Parallel B&B for large scale computing (ParallelBB) Implementation on top of ProActive (P2PBB) Performance Evaluation Conclusion et Perspectives
Branching
Bounding
Compute the estimated optimal solution (lower bound) P0 of the considered problem and compare to the best known solution (upper bound).
Elimination
Identify nodes which dont lead to The best solution and eliminate them
Selection
Br an
ch ing
Sub-problem
Selection
Exploration strategy (best first search, depth first search, best bound,)
Elimination
Solutions
Optimal solution
Motivations
High-dimensional and complex optimization problems in many areas of industrial concern B&B most known algorithm for an exact resolution of COPs
Implicit enumeration of the search space Choice of a good lower bound improves its performances These two factors are not sufficient
Parallelization of B&B
Parallel exploration of the B&B search tree allows to provide optimal solutions but requires a huge amount of resources for large problems
Objectives
Parallel B&B Algorithms developed with Master/Worker paradigm
All communications inter-workers transit via Master Process Good strategy (for reduced set of workers) Maste Bottleneck r Gap : Creating bottlenecks on Master process
on (large scale deployment) Direct Communications Inter-Workers Fault tolerance Dynamic availability of peers
Wor ker Wor ker
Wor ker
Wor ker
New solution
Outline
Motivations Parallel B&B for large scale computing (ParallelBB) Implementation on top of ProActive (P2PBB) Performance Evaluation Conclusion et Perspectives
Wor ker
Wor ker
Wor ker
New solution
Wor ker
ParallelBB Operations
Branching
k depends on problem size (PS) and number of workers (#W). PS>> k >> ; #W >> k>> Manager
Selection Communications
Worker/Worker (upper bound ) Worker/Manager (final solution ) Manager/Worker (data, task, initial upper bound, list of workers)
Workers
K levels
New Solution
Manager: Exploration in depth with priority to most promising node (priority-based queue) Manager: BFS (reversed priority-based stack)
Outline
Motivations Parallel B&B for large scale computing (ParallelBB) Implementation on top of ProActive (P2PBB) Performance Evaluation Conclusion et Perspectives
P2PBB an active application P2P version of ParallelBB on a P2P platform (ProActive) Developed with two AOs
ProActive provides bbWorkers recovered over the whole network and detected by bbManager by consulting XML deployment descriptor file.
Computing
Distribution of computation
bbManager sends tasks (passive objects) waits for futures of objects (result done by a bbWorker in the future)
Fault Tolerance
bbManager uses ProActive listeners and implements nodeCreated method of ProActive to take into account new peers connections (new bbWorkers) With ProActive two types of servers are created
Resource server which returns a free node that can host the recovered AO Fault tolerance servers for the check points storage, the localization of AOs and failure detection.
With P2PBB when a peer (bbWorker) fails, bbManager sends its part of calculation to others and it recovers only the first solution
Outline
Motivations Parallel B&B for large scale computing (ParallelBB) Implementation on top of ProActive (P2PBB) Performance Evaluation Conclusion et Perspectives
Performance Evaluation
Preliminary experiments on 06, 20, 50 upon cluster at Lille of GRID5000 (http://www.grid5000.fr) All processes run with lowest priority Parallel (with/without communications between workers Taillards benchmarks (Ta20-05-02, Ta20-05-03, Ta20-10-01,Ta20-10-02)
Each machine can not be simultaneously assigned to two jobs (colors) Jobs (colors) must be scheduled in the same order on all machines Cmax: Makespan (Total completion time)
4 jobs on 3 machines M1 M2 M3
Two parallel modes are more efficient than the serial one. #computing machines >> performance >> Best solutions are found using 50 machines Parallel mode with communication are more efficient than without communication one Solving Ta_3 on 50 machines (more than 18 times more efficient than using 6 machines)
Time (/30min)
Conclusion
Parallel Branch and Bound Algorithm for COPs (ParallelBB)
Master/Worker Direct Communication between workers Application to a PFS problem
Perspectives
Consider other complex problems Q3AP (Quadratic three-dimensional Assignment Problems) Improve performances of ParallelBB with:
Injection of initial solution obtained with metaheuristic (hybridization) Load balancing of the tasks generated by the algorithm Several forms of tasks granularity