SLIDE 1 SET PARTITIONING
Denis Khryashchev
SLIDE 2
INTRODUCTION
SLIDE 3
INTRODUCTION
SLIDE 4
PROBLEM STATEMENT
SLIDE 5
NUMBER OF PARTITIONS
SLIDE 6
MATHEMATICAL STATEMENT
SLIDE 7
MATRIX REPRESENTATION
SLIDE 8
MATRIX REPRESENTATION
SLIDE 9
MATRIX REPRESENTATION
SLIDE 10
MATRIX REPRESENTATION
SLIDE 11
MATRIX REPRESENTATION
SLIDE 12
MATRIX REPRESENTATION
SLIDE 13
MATRIX REPRESENTATION
SLIDE 14
PARTITION SOLUTION
SLIDE 15
PARTITION SOLUTION
SLIDE 16
GENETIC ALGORITHM
SLIDE 17
GENETIC THINKING FOR PARTITIONS
SLIDE 18
GENETIC EXAMPLE
SLIDE 19
GENETIC EXAMPLE
SLIDE 20 SEQUENTIAL GENETIC ALGORITHM
- 1. Initialization creates a starting
population of a given size.
- 2. Evaluation assesses if the current
population is “solution-like”.
- 3. Local search heuristics improves
convergence of solution by selecting better candidates.
- 4. Mutation modifies the species of the
population randomizing them.
- 5. Crossover combines two parents
exchanging and scrambling their bits together to create a new species.
SLIDE 21
COMPUTATIONAL COMPLEXITY
SLIDE 22
NAÏVE PARALLEL SOLUTION
SLIDE 23
THE ISLAND MODEL ALGORITHM
Separate and isolated subpopulations evolve independently in parallel. Occasionally, fit species (strings) migrate between subpopulations. The algorithm is programmed using a single-program multiple data (SPMD) model. The processors “synchronize” exchanging fit strings. The path to parallelism is the expansion of the original algorithm with a migration of the species between the islands.
SLIDE 24
THE ISLAND MODEL EXAMPLE
SLIDE 25
THE ISLAND MODEL EXAMPLE
SLIDE 26 THE ALGORITHM
- 1. When a fit species appeared or
enough time passed since the last migration it’s time to migrate.
- 2. The top species migrate to the
neighboring populations with send_string().
- 3. At the same time the current
population welcomes new migrants with recv_string().
- 4. The less fit species replaced with
the new ones.
SLIDE 27
THE PARALLELIZATION
SLIDE 28
COMPUTATIONAL COMPLEXITY
SLIDE 29
COST OPTIMAL?
SLIDE 30
THANK YOU !
Questions ?