evolution programs for various discrete problems 報告者:王 敬 育

Click here to load reader

Post on 20-Dec-2015

234 views

Category:

Documents


2 download

TRANSCRIPT

  • Slide 1
  • Evolution Programs for Various Discrete Problems
  • Slide 2
  • Scheduling(1/13) Example Assume there are three orders o 1 o 2 and o 3 For each order the parts and the number of units to be produced are o 1 30 * part a o 2 45 * part b o 3 50 * part c
  • Slide 3
  • Scheduling(2/13) Each part has one or more alternative process plans a plan # 1 a (opr 2 opr 2 opr 9 ) a plan # 2 a (opr 1 opr 3 opr 7 opr 8 ) a plan # 3 a (opr 5 opr 6 ) b plan # 1 b (opr 2 opr 6 opr 7 ) b plan # 2 b (opr 1 opr 9 )
  • Slide 4
  • Scheduling(3/13) Each operation requires some times on one or more machines these are opr 1 (m 1 10) (m 3 20) opr 2 (m 2 20) opr 3 (m 2 20) (m 3 30) opr 4 (m 1 10) (m 2 30) (m 3 20) opr 5 (m 1 10) (m 3 230)
  • Slide 5
  • Scheduling(4/13) opr 6 (m 1 40) opr 7 (m 3 20) opr 8 (m 1 50) (m 2 30) (m 3 10) opr 9 (m 2 20) (m 3 40) finally each machine has its setup time necessary for changes in operation m 1 3 m 2 5 m 3 7
  • Slide 6
  • Scheduling(5/13) However most operators (mutations crossovers) applied to such a message would result in illegal schedules Davis encoding/decoding strategy m 1 (40 o 3 o 1 o 2 wait idle ) This representation guarantees a legal schedule
  • Slide 7
  • Scheduling(6/13) The operators wee problem specific (they were derived from deterministic methods) run-idle this operator is applied to preference lists of the machines that have been waiting for more than an hour It inserts the idle as the second member of the preference list and reset the first member (time) of the preference list to 60(minutes)
  • Slide 8
  • Scheduling(7/13) scramble the operator scramble the members of a preference list crossover the operator exchanges preference list for selected machines The probability of run-idle was set to the percentage of the time the machine spent waiting divided by the total time of the simulation
  • Slide 9
  • Scheduling(8/13) TSP Davis represented an ordering as a list of nodes and use two operators the order- based crossover and scramble sublist mutation Even mutation which should carry out a local modification of a chromosome seems to be problem dependent
  • Slide 10
  • Scheduling(9/13) The scramble sublist mutation selects a sublist of nodes from a parent and scrambles it in the offspring P = (2 4 | 7 1 4 8 | 3 5 9) may produce the offspring O = (2 4 | 4 8 1 7 | 3 5 9)
  • Slide 11
  • Scheduling(10/13) In general and for the scheduling problems in particular this is the direction to follow to incorporate the problem specific knowledge not only in operators but in the chromosome structures as well
  • Slide 12
  • Scheduling(11/13) Compare three representations from the simplest (o 1 ) (o 2 ) (o 3 ) The intermediate (o 1 plan # 1 a ) (o 2 plan # 2 b ) (o 3 plan # 3 a ) The most complex (o 1 ) (o 2 ) (o 3 )
  • Slide 13
  • Scheduling(12/13) The operators themselves must be adjusted to suit the domain requirements The chromosome representation should contain all the information that pertain to the optimization problem In summary it is possible to classify all GA- based approaches as various scheduling problems on the basis of chromosome representations These fall into two categories
  • Slide 14
  • Scheduling(13/13) indirect representations 1. performed by a special decoder (schedule builder) 2. these representations can be divided into domain independent and problem-specific representations direct representation usually this representation requires some problem-specific operators
  • Slide 15
  • The timetable problem(1/4) example a list of teachers {T 1 T m } a list of time intervals (hours) {H 1 H n } a list of classes {C 1 C k }
  • Slide 27
  • Partitioning objects and graphs works as follows (121333112 1 2 3) and (233514226 2 3 4 5 6) two crossing sites are selected (at random) for each group part of the chromosomes (121333112 1 |2 3|) and (233514226 2|3 4 |5 6) Then it becomes ( 2 2 2 1 3 1 3 2 4 2 5 2 6 2 ) After eliminating conflicts the offspring chromosome has the following shape
  • Slide 28
  • Partitioning objects and graphs (2 2 2 1 ? 3 1 3 1 3 1 2 2 2 2 2 1 2 2 2 1 3 1 ) After translate (1 2 ? 3 3 3 1 1 2 1 2 3) Falkenauer used the first fit descending heuristic to insert missing objects If there is no room for the object number 3 in any of the three bins in the above chromosome it necessary to create an additional bin
  • Slide 29
  • Partitioning objects and graphs (1 2 4 3 3 3 1 1 2 1 2 3 4)
  • Slide 30
  • Path planning in a mobile robot environment The Evolutionary Navigator (EN) unifies off-line and on-line planning with a simple map of high fidelity and an efficient planning algorithm off-line planner search for the optimal global path from the start to the destination on-line planner handling possible collisions or previously unknown objects by replacing a part of the original path by the optimal subtour
  • Slide 31
  • Path planning in a mobile robot environment The EN procedure see p.255 Fig.11.1 FEG oFf-line Evolutionary alGorithm generates a near-optimal global path See Fig.11.2 NEG oN-line Evolutionary alGorithm generate local paths to deal with unexpected collisions and objects
  • Slide 32
  • Path planning in a mobile robot environment For NEG and FEG the difference is only the parameters they use ex. population_size number of generation maximum length of a chromosome Note that both EFG and NEG do global planning even if NEG usually generates a local path it operates on the updated global map
  • Slide 33
  • Path planning in a mobile robot environment Chromosome are ordered lists of path nodes Each of the path nodes apart from the pointer to the next node consists of x and y coordinates of an intermediate knot point along the path and a Boolean variable b which indicates whether the given node is feasible or not x1x1 y1y1 b1b1 xnxn ynyn bnbn
  • Slide 34
  • Path planning in a mobile robot environment If the node is feasible b is set to TRUE; otherwise FALSE The fitness (the total path cost) of a chromosome p = is determined by two separate evaluation functions (feasible and infeasible individuals)
  • Slide 35
  • Path planning in a mobile robot environment For a feasible path p Path_Cost(p) = w d dist(p) + w s smooth(p) + w c clear(p) w d w s w c normalize the total cost of a path dist(p) = d( m i m i+1 ) is the distance between knot points m i and m i+1 the function dist(p) return total length of the path p
  • Slide 36
  • Path planning in a mobile robot environment smooth(p) = max s(m i ) where s(m i ) = i min{d( m i-1 m i ) d( m i m i+1 } The function return the largest curvature of p at a knot point
  • Slide 37
  • Path planning in a mobile robot environment clear(p) = c i where c i = d i if d i otherwise a(- d i ) d i is the minimum distance between the segment (m i m i+1 ) of the path and all known objects define a safe distance and a is a coefficient The function returns the largest number which measures clearance between all segments of p and the objects
  • Slide 38
  • Path planning in a mobile robot environment For an infeasible path p Path_Cost(p) = ++ the number of intersections of the path p with all walls of the objects average number of intersections per infeasible segment provides the cost of the worst feasible path in the current population
  • Slide 39
  • Path planning in a mobile robot environment crossover similar to the classical one-point crossover widely used in GA Mutation_1 x= x - (t x-a) if r = 0 x +(t b-x) if r = 1 Mutation_2 x= x - (t x-a) if r = 0 x +(t b-x) if r = 1
  • Slide 40
  • Path planning in a mobile robot environment insertion inserts a new node into the existing path deletion delete a node from the path smooth smooth a part of the path by cutting sharp turns swap select chromosome into two parts (the splitting point is determined at random) and swaps these parts