Genetic.io Genetic Algorithms in all their shapes and forms ! - - PowerPoint PPT Presentation

genetic io
SMART_READER_LITE
LIVE PREVIEW

Genetic.io Genetic Algorithms in all their shapes and forms ! - - PowerPoint PPT Presentation

Genetic.io Genetic Algorithms in all their shapes and forms ! Genetic.io Make something of your big data Julien Sebrien Self-taught, passion for development. Java, Cassandra, Spark, JPPF . @jsebrien, julien.sebrien@genetic.io


slide-1
SLIDE 1

Genetic.io

Genetic Algorithms in all their shapes and forms !

Genetic.io

Make something of your big data

slide-2
SLIDE 2

Genetic.io

  • Self-taught, passion for development.
  • Java, Cassandra, Spark, JPPF

.

  • @jsebrien, julien.sebrien@genetic.io
  • Distribution of IT solutions (SaaS, On Premise) allowing the

implementation of evolutionary algorithms (genetics, ant colonies, etc.) to optimize business processes.

  • Natively distributed architecture.
  • Multi-platform (Windows, Unix, Mac), polyglot (Java, Scala,

Python, Javascript, R).

Genetic.io

Make something of your big data

Julien Sebrien

slide-3
SLIDE 3

Ant colony Simulated annealing Difgerential evolution Particle swarm optimization Genetic Algorithms Memetic Algorithms And all their variants...

Genetic.io

Make something of your big data

Evolutionary computation

slide-4
SLIDE 4

Applications

  • Inspired by natural physical mechanisms.
  • Generate high-quality solutions for optimization and search

problems by relying on bio-inspired operators such as mutation, crossover and selection.

Make something of your big data

Evolutionary Algorithms

Marketing

T

  • urism marketing :

https://goo.gl/aCc9SJ Genetic algorithms 'naturally select' better satellite

  • rbits :

https://goo.gl/eauC32

Astronautics

And others : Imagery, Linguistics: https://en.wikipedia.org/wiki/List_of_genetic_algorithm_applications

Genetic.io

slide-5
SLIDE 5

Genetic Algorithms

slide-6
SLIDE 6

Workfmow

Make something of your big data

Genetic.io

slide-7
SLIDE 7

Selection

Make something of your big data

Several selection method exist: Roulette Wheel, T

  • urnament,

Ranking, etc. Roulette Wheel example :

 Parents are selected according to their fjtness.  The fjttest individuals have a greater chance of survival than weaker ones.  Selection probability:

Genetic.io

slide-8
SLIDE 8

Crossover

Make something of your big data

Parent 1 Parent 2 Child 1 Child 2

1 crossover point 1 crossover point

Genetic.io

slide-9
SLIDE 9

Mutation

Make something of your big data

  • Injects diversity into the population, reducing the risk of

stagnation within a local optimum.

  • Mutation rate generally between 1 and 5%.

child

Genetic.io

slide-10
SLIDE 10

Evaluation

Make something of your big data

  • T

akes a candidate solution to the problem as input and produces as output how “fjt” or how “good” the solution is with respect to the problem in consideration.

  • The assigned score is ideally independent of other individuals in

the population.

  • This function should be carefully implemented in order to

increase the probability of convergence of the algorithm.

Genetic.io

slide-11
SLIDE 11

T ermination

Make something of your big data

The algorithm ends if one of the following termination conditions is satisfjed :

  • A maximum number of generations is reached.
  • A candidate has a fjtness score greater than or equal to a

previously defjned threshold.

  • The algorithm has been running for too long.
  • Etc.

Genetic.io

slide-12
SLIDE 12
slide-13
SLIDE 13

« TOBEORNOTTOBE » use case

Modelization:

  • Initial genome consisting of a sequence of 13 characters,

generated randomly. Fitness function:

  • Sum of the difgerences between the letter of the genome and

the target letter, at each position:

Make something of your big data

Genetic.io

Score = 131

Genome T arget Gap (absolute value)

slide-14
SLIDE 14

Execution

Make something of your big data

Genetic.io

slide-15
SLIDE 15

« Smart Rockets » use case

slide-16
SLIDE 16

« Smart Rockets » use case

Modelization: A sequence of 300 acceleration vectors in a 2D plane. Fitness function:

  • The closer an individual is to his target at the end of his

movement, the higher will be his score.

  • An individual's score will be severely penalized if he touches the
  • bstacle during his movement.
  • Score = 1/ R (with R = remaining distance from target) ; If

Obstacle hit, Score = Score / 10 !

Make something of your big data

Genetic.io

slide-17
SLIDE 17

Execution

Make something of your big data

Genetic.io

slide-18
SLIDE 18

T

  • urist sites

location

  • ptimization
slide-19
SLIDE 19

Selection of tourist sites

Modelization:

  • A sequence of bits, representing the presence of an agency on a site:

010100001

Make something of your big data

Genetic.io

slide-20
SLIDE 20

Selection of tourist sites

Fitness function:

  • Depends on the following variables:
  • The number of tourist sites.
  • The number of competitors in the territory in question.
  • The number of geographical areas within the territory concerned.
  • The number of categories of households.
  • The average expenditure of an individual in category k, for a tourist product or

service.

  • The number of k categories of households located in an area i.
  • Subjective measures of attraction of a site j.
  • The subjective measures of attraction of the services ofgered on each site.
  • The transport time from an area i to a site j.
  • Transport time from an area i to an existing tourist location.

Make something of your big data

Genetic.io

slide-21
SLIDE 21

Selection of tourist sites

Objective: maximize

Make something of your big data

Genetic.io

slide-22
SLIDE 22

Execution

Make something of your big data

Genetic.io

slide-23
SLIDE 23

The Mona Lisa evolution

slide-24
SLIDE 24

The Mona Lisa evolution

Make something of your big data

Method:

  • Random generation of polygons

DNA:

  • Image pixels (int array)

Fitness:

  • Calculation of color difgerences

for each component (R,G,B) Score =

Genetic.io

slide-25
SLIDE 25

Fonctions de test

Snakes and neural networks

slide-26
SLIDE 26

Snakes and neural networks

Vision 240 degrees, divided into 16 parts Three types of objects encountered:

  • Wall
  • Food
  • Himself!

=> 48 input neurons

slide-27
SLIDE 27

Snakes and neural networks

Inputs Outputs (angle = output 1 – output 2)

slide-28
SLIDE 28

Snakes and neural networks

DNA : Fitness : 20 . Size + 5 . Health (ie. Dead or Alive!)

slide-29
SLIDE 29

Antenna of NASA's ST5 mission

slide-30
SLIDE 30

Antenna of NASA's ST5 mission

Make something of your big data

Objective:

  • Optimize the design and effjciency of

antennas placed on orbiting satellites

Constraints:

  • VSWR < 1,2 (Voltage Standing Wave

Ratio) at transmission frequency (8470 Mhz), VSWR < 1,5 at reception fréquency (7209,125 Mhz)

  • Input Impedance at 50 Ohms
  • Mass < 165g, contained in cylinder of

diameter / height < 15,24 cm

Genetic.io

slide-31
SLIDE 31

Antenna of NASA's ST5 mission

Make something of your big data

Fitness function:

Minimize: With: (Voltage Standing Wave Ratio) = , (« refmected wave », « forward wave ») : the sum of the penalties calculated for each angle : take into account the smoothing of gains

Genetic.io

slide-32
SLIDE 32

Antenna of NASA's ST5 mission

Make something of your big data

Advantages :

  • Better consumption, manufacturing time, performance, complexity, reliability
  • Improved effjciency by 93%, for 2 QHA (quadrifjlar helix antenna)

Genetic.io

slide-33
SLIDE 33

Ant colony algorithm

slide-34
SLIDE 34
  • the ant can only visit each city once
  • the more a city is far away, the less likely it is to be chosen

("visibility")

  • the greater the intensity of the pheromone trail on the ridge

between two cities, the more likely the path will be chosen

  • once the path has been completed, the ant deposits more

pheromones on all the edges traveled if the path is short

  • the pheromone tracks evaporate at each iteration

Geneticio

Make something of your big data

Ant colony algorithm

slide-35
SLIDE 35

Geneticio

Make something of your big data

Ant colony algorithm

Initial Path New Pheromone Reinforced Path Path fjnally adopted by the colony

slide-36
SLIDE 36

Simulated annealing

slide-37
SLIDE 37
  • Generating an initial temperature, and a random solution.
  • Iterations until a satisfactory solution is obtained, or the

temperature falls suffjciently.

  • Generating a New Solution from the Modifjed Current.
  • Replacement of the current solution by the new solution according

to the measured energies:

newEnergy < energy ? true : Math.exp((energy - newEnergy) / temperature) > Math.random()

  • T

emperature decreases with each iteration temp *= 1-coolingRate;

coolingRate = 0.003 Geneticio

Make something of your big data

Simulated annealing

slide-38
SLIDE 38

T est functions

slide-39
SLIDE 39

Sphere

Make something of your big data

Minimum: Formula:

Genetic.io

slide-40
SLIDE 40

Rosenbrock

Make something of your big data

Formula: Minimum:

Genetic.io

slide-41
SLIDE 41

Rastrigin

Make something of your big data

Formula: Minimum:

Genetic.io

slide-42
SLIDE 42

Clever Algorithms (Jason Brownlee):

https://users.info.uvt.ro/~dzaharie/ma2016/books/CleverAlgorithms_Brownlee_2011.pdf

The nature of code (Daniel Shifgman):

http://natureofcode.com/book/

Genetic Algorithms in Search, Optimization, and Machine Learning (David E. Goldberg):

https://www.amazon.com/Genetic-Algorithms-Optimization-Machine-Learning/dp/0201157675

Make something of your big data

Bibliography

Genetic.io

slide-43
SLIDE 43

Demo ! genetic.io/demo Twitter ! @geneticio

Genetic.io

Questions?