Title: An ordering Genetic Algorithm for Assembly Planning
1An ordering Genetic Algorithm for Assembly
Planning
- P. De Lit, P. Latinne, B. Rekiek, A. Delchambre
- Department of Applied Mechanics
- Université Libre de Bruxelles
2What will we talk about ?
- Presentation of the problem
- Ordering Genetic Algorithms
- Precedence constraints
- Sequence evaluation
- Conclusions
3What will we talk about ?
- Presentation of the problem
- Ordering Genetic Algorithms
- Precedence constraints
- Sequence evaluation
- Conclusions
4We aim to determine assembly plans
- From the links between the componentsLijcouple
of connected components, possible assembly
directions - Interference matrices
DATA
5Our illustrative example
- n components (7)
- m links (10)
- Precedence constraints between the links
6Some links are implicitly defined
- Implicit links arise when assembling two
subassemblies or a component to a subassembly
gen. support (2)
cover (1)
Smouse 6 5 8 7 3 2 4 9 0 1
6
5
circuit/ cable (3)
3
buttons (0)
- By realizing link 7, link 3 is implicitly defined
ball support (5)
ball (4)
7
8
7Identification and management of the subassemblies
- A group vector keeps trace of the pertaining from
a part to the several subassemblies, indexed from
n (number of components) to 2n-1
Smouse 6 5 8 7 3 2 4 9 0 1
8What will we talk about ?
- Presentation of the problem
- Ordering Genetic Algorithms
- Precedence constraints
- Sequence evaluation
- Conclusions
9What are Genetic Algorithms ?
- Inspired from evolution of species in Nature
(objective function acts as environment) - Maintain a population of solutions
- Work with a representation of the solutions
(chromosomes) - New solutions created by combining the best
members of the population (heredity) - New solutions replace the worst members of the
population (survival of the fittest)
10The whole thing in a nutshell
11Ordering problems
The order between the objects is important
Objects to order
An ordering
Two other solutions
12The OGA encoding
- Each gene in the chromosome codes a link
- Sequence is read from the left to the right
Smouse 6 5 8 7 3 2 4 9 0 1
13PMX Crossover
P1
P2
7
4
0
6
2
1
5
3
14What will we talk about ?
- Presentation of the problem
- Ordering Genetic Algorithms
- Precedence constraints
- Sequence evaluation
- Conclusions
15Chromosomes need to be repaired after the
crossover
- Univocal validation function V repairs the
chromosome
Possible chromosome encoding
GA population
V
V
Valid solutions
16Sequence is validated thanks to the precedence
constraints
gen. support (2)
cover (1)
9
2
6
circuit/ cable (3)
17Each link in a chromosome receives a precedence
value ?ij
where Lxy is the set of links that must
precede Lij ?xy is the set of precedence values
associated to Lxy M is a chosen number greater
than m
- Links with a higher ?ij are performed first
18Computation of the ?
L12 (9) must be preceded by L13 (2) and L23 (6)
The ? are computed recursively
- If ?13 is not known, ?12 cannot be computed
19Links are ordered according to their precedence
values ?
- If two values are equal, the first link in the
sequence to repair is placed first - Example from
?13 ?23 9 and ?12 5 yields
20Seemingly correct sequences may be incorrect
because of implicit links
- Suppose 3 must precede 9 (and sequence is correct
according to the ?)
gen. support (2)
cover (1)
9
2
6
5
circuit/ cable (3)
- Because of the implicit linksthe sequence is not
valid
buttons (0)
4
21Repair mechanism for implicit links
- The liaison implying invalid links is delayed
(placed in a FIFO with the links on which it has
a precedence constraint) - Next link is analyzed
- As soon as a link of the original sequence is
validated, we try to put a link in the FIFO in
the sequence under construction - If this is not possible, we go to the next link
of the original sequence
22Example of implicit link treatment
Smouse3 6 5 2 8 7 3 4 9 0 1
- 2 is put on the stack 6 5 ...
- 8 does not implies invalid links 6 5 8 ... and
2 cannot be placed in the sequence - 7 does not implies invalid links 6 5 8 7... and
2 cannot be placed in the sequence - 3 does not implies invalid links 6 5 8 7 3 ...
- 2 is placed in the sequence 6 5 8 7 3 2 ...
Finally, Smouse 6 5 8 7 3 2 4 9 0 1
23Sequence decoding
Smouse 6 5 7 8 3 2 4 9 0 1
DATA
24What will we talk about ?
- Presentation of the problem
- Ordering Genetic Algorithms
- Precedence constraints
- Sequence evaluation
- Conclusions
25Individuals are evaluated thanks to several
criteria
- Number of turnings
- Stability
- Parallelism
- Early or late components
- ...
We need a method to compare the plans
26Number of turnings
- When connecting a component to a subassembly, we
check check if the direction of insertion has
changed - When connecting two new components, a handability
index is used - When connecting two subassemblies, the first is
considered to go on the second
27Stability and parallelism
- We compute the stability of the subassemblies
along the axes thanks to contact matrices - Stability is checked each time a link is
performed, and instabilities are summed - Parallelism index is incremented when two new
parts or subassemblies are assembled
28How to make the comparison ?
Classical aggregation
PrometheeII method
- w1 x c1 w2 x c2 ...
- Lack of coherence in the aggregation of several
not comparable criteria - Yields an absolute fitness for the individuals
- Multi-criteria decision aid method
- Coherent weights are given to each criterion
- Yields a relative fitness of the individuals in
the population
29What will we talk about ?
- Presentation of the problem
- Ordering Genetic Algorithms
- Precedence constraints
- Sequence evaluation
- Conclusions
30Let us conclude
- An Ordering Genetic algorithm is used to
construct the assembly plans - Precedence constraints are taken into account to
generate valid solutions - The plans are evaluated thanks to a multicriteria
decision-aid method (PrometheeII)
31screws 1 2 (6)
1
0
5
3
(7)
ball support (5)
ball (4)
7
8
(9)
32(No Transcript)