SlideShare a Scribd company logo
1 of 21
Download to read offline
Introduction to
Genetic Algorithms
Apr 25, 2018
© 2018 CloudBees, Inc. All Rights Reserved. 2
Outline
1. Company introduction
a. Jenkins
b. CloudBees
2. Genetic Algorithms (GA)
a. Introduction to optimization
b. Promise
c. History
d. Genesis
e. Concepts
f. Demo
g. Next steps
© 2018 CloudBees, Inc. All Rights Reserved. 3
Code & Commit Build & Config Scan & Test Release Deploy
Over 1.7 Million users 1400+ plugins cover
every stage of delivery
Jenkins is the Hub of Continuous Delivery
© 2018 CloudBees, Inc. All Rights Reserved. 4
! !
!
!
!
!
!
Jenkins potential Problems
Jenkins sprawl
Do you know who is using
Jenkins and where?
Stability / plugin quality
Do you have difficulty with upgrades and
plugin compatibility?
Lack of security
Can you control who is doing what
in Jenkins?
Impact of downtime
92% of Jenkins survey respondents say
Jenkins is mission critical. Is it for you?
Performance / scalability issues
Do you need your builds to run faster?
Do you need to run at scale?
Lack of monitoring
Would you like to measure performance
for both Jenkins and your builds?
No technical support
Need experts to call for
Jenkins Tech Support?
© 2018 CloudBees, Inc. All Rights Reserved. 5
Speed up and scale Jenkins
Optimized performance, shared
agent pools
CloudBees Jenkins Solutions Make Life Better
Manage Jenkins sprawl
With CloudBees Jenkins
Enterprise
Ensure stability
CloudBees Assurance Program ensures
Jenkins stability and verifies plugins
Apply security to Jenkins
With RBAC and folders for
managing your organization
Make Jenkins highly available
HA and cluster operations features
Monitoring and visualization
Operational and CD Pipeline insight
Expert technical support
CloudBees has the Jenkins
experts on staff
!
! !
!
!
!
!
Genetic Algorithms
© 2018 CloudBees, Inc. All Rights Reserved. 7
Introduction to mathematical optimization
• Gradient descent
• Follow the slope
• Stochastic walk
• Just random steps
• Hill climbing
• Mix of both
• Simulated annealing
• Ant colony algorithm
© 2018 CloudBees, Inc. All Rights Reserved. 8
Promise
• Solve complex problems using simple approach
• Quick approximation of the solution
• Can adapt to a changing environment
• Not requiring complex theory
© 2018 CloudBees, Inc. All Rights Reserved. 9
History
1859
1950
1975
1987
1991
“The Origin of species”, Charles Darwin
First idea using evolution, Alan Turing
First development, John Holland
“Genetic Algorithms in Search, Optimization, and Machine
Learning”, David Goldberg
European Conference on Artificial Life
© 2018 CloudBees, Inc. All Rights Reserved. 10
Genesis of Genetic Algorithms
• Root of the theory: “The Origin of the species”
• The nature selects the most adapted specimens
© 2018 CloudBees, Inc. All Rights Reserved. 11
Concepts of Genetic Algorithms
• Overview
Initial population
Selection
Reproduction /
Crossover
Mutation
Evaluation End
Good enough ?
No
New generation
© 2018 CloudBees, Inc. All Rights Reserved. 12
Concepts of Genetic Algorithms
• Genotype (DNA) vs Phenotype (expression of DNA)
• Selection strategy
• Random
▸ a.k.a. brute-force
• Roulette selection
▸ selection rate depends on their ranking / score
• Pareto
▸ 80% of the time, take the 20% best
• Tournament
▸ pick a subset of the population, take the best
© 2018 CloudBees, Inc. All Rights Reserved. 13
Concepts of Genetic Algorithms
• Selection strategy
• Fitness / adaptation score
▸ normalization
- distribution of the score among the population
▸ multi steps
- reach goal then optimize energy
▸ multi objectives
- maximize quantity and minimize price
▸ constraint satisfaction (penalty score)
- Knapsack problem
© 2018 CloudBees, Inc. All Rights Reserved. 14
Concepts of Genetic Algorithms
• Selection mechanism
• Reproduction / Crossover
▸ Single cut
- Take genes from A until a point, and rest from B
▸ Multiple cuts
▸ Mixing genes
- add quantity of A and B, xoring boolean genes, ...
▸ Random swap
- each gene can be taken from A or B
▸ Problem specific
© 2018 CloudBees, Inc. All Rights Reserved. 15
Concepts of Genetic Algorithms
• Mutation mechanism
• Genes encoding
▸ Binary
- Enable / disable feature
▸ Value
- Quantity, price, velocity, force
▸ Tree
- Operation per node
- Programming element per node
© 2018 CloudBees, Inc. All Rights Reserved. 16
Concepts of Genetic Algorithms
• Mutation mechanism
• Self-Mutation
▸ Ergodic / pseudo-ergodic hypothesis
- Any solution is reachable by one (or a limited amount of) mutation
▸ Percent to mutate genes individually
▸ Total number of mutation
▸ Multiple types of gene modification
- Swap gene / value
- Modify slightly value
- Simplify or expand node in tree
© 2018 CloudBees, Inc. All Rights Reserved. 17
Concepts of Genetic Algorithms
• Exploration vs Exploitation
• Exploration
▸ Testing large portion of the search space in the hope to find good area to refine
- In case of a plane crash at sea, it’s the satellite / aerial overflight to look for something in the
water
• Exploitation
▸ Refine process of a particularly small part of the search space
- It’s when we find some dark area in water that we need to investigate more
• The problem is how to divide time / resources between the two
© 2018 CloudBees, Inc. All Rights Reserved. 18
Concepts of Genetic Algorithms
• Effects of the genetic operators
• Selection alone
▸ Tend to have only the best individual and its clones
• Only selection and crossover
▸ Converge quickly to a good but suboptimal solution (pure exploitation)
• Mutation alone
▸ Random walk (pure exploration)
• Only selection and mutation
▸ Parallel hill climbing approach
© 2018 CloudBees, Inc. All Rights Reserved. 19
Demo
• Citation (Monkey typing)
• Function approximation
• TSP (Travelling salesman problem)
• Smart Rockets
© 2018 CloudBees, Inc. All Rights Reserved. 20
Possible next steps
• GA on GA
• Use GA to determine best parameters for GA
• Diploid instead of haploid
• Double sets of genes instead of just one set
• Real planning application
• Add constraints, real data
• Genetic programming
• Generate compilable code
• Neural network genetic architecture
© 2018 CloudBees, Inc. All Rights Reserved. 21
Thank You
https://gitlab.com/wadeck-public/genetik-presentation/wikis/List-of-runnable-demo

More Related Content

Similar to Introduction aux algorithmes génétiques

WIX3001 Lecture 6 Principles of GA.pptx
WIX3001 Lecture 6 Principles of GA.pptxWIX3001 Lecture 6 Principles of GA.pptx
WIX3001 Lecture 6 Principles of GA.pptxKelvinCheah4
 
OSDC 2018 | Apache Ignite - the in-memory hammer for your data science toolki...
OSDC 2018 | Apache Ignite - the in-memory hammer for your data science toolki...OSDC 2018 | Apache Ignite - the in-memory hammer for your data science toolki...
OSDC 2018 | Apache Ignite - the in-memory hammer for your data science toolki...NETWAYS
 
Interactive and reproducible data analysis with the open-source KNIME Analyti...
Interactive and reproducible data analysis with the open-source KNIME Analyti...Interactive and reproducible data analysis with the open-source KNIME Analyti...
Interactive and reproducible data analysis with the open-source KNIME Analyti...Greg Landrum
 
Master the RETE algorithm
Master the RETE algorithmMaster the RETE algorithm
Master the RETE algorithmMasahiko Umeno
 
Webinar: Deep Learning Pipelines Beyond the Learning
Webinar: Deep Learning Pipelines Beyond the LearningWebinar: Deep Learning Pipelines Beyond the Learning
Webinar: Deep Learning Pipelines Beyond the LearningMesosphere Inc.
 
Large Scale Data Mining using Genetics-Based Machine Learning
Large Scale Data Mining using Genetics-Based Machine LearningLarge Scale Data Mining using Genetics-Based Machine Learning
Large Scale Data Mining using Genetics-Based Machine Learningjaumebp
 
Willbros GITA Presentation on GIS-Based Risk Assessment
Willbros GITA Presentation on GIS-Based Risk AssessmentWillbros GITA Presentation on GIS-Based Risk Assessment
Willbros GITA Presentation on GIS-Based Risk AssessmentWillbros Group, Inc.
 
Clustering using GA and Hill-climbing
Clustering using GA and Hill-climbingClustering using GA and Hill-climbing
Clustering using GA and Hill-climbingFatemeh Karimi
 
Graph Gurus Episode 8: Location, Location, Location - Geospatial Analysis wit...
Graph Gurus Episode 8: Location, Location, Location - Geospatial Analysis wit...Graph Gurus Episode 8: Location, Location, Location - Geospatial Analysis wit...
Graph Gurus Episode 8: Location, Location, Location - Geospatial Analysis wit...TigerGraph
 
Tests Your Pipeline Might Be Missing
Tests Your Pipeline Might Be MissingTests Your Pipeline Might Be Missing
Tests Your Pipeline Might Be MissingGene Gotimer
 
Processing malaria HTS results using KNIME: a tutorial
Processing malaria HTS results using KNIME: a tutorialProcessing malaria HTS results using KNIME: a tutorial
Processing malaria HTS results using KNIME: a tutorialGreg Landrum
 
Automated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSUAutomated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSUCS, NcState
 
Container and Kubernetes without limits
Container and Kubernetes without limitsContainer and Kubernetes without limits
Container and Kubernetes without limitsAntje Barth
 
Triz Presentation
Triz PresentationTriz Presentation
Triz Presentationkrishnaheda
 
7 Habits for Big Data in Production - keynote Big Data London Nov 2018
7 Habits for Big Data in Production - keynote Big Data London Nov 20187 Habits for Big Data in Production - keynote Big Data London Nov 2018
7 Habits for Big Data in Production - keynote Big Data London Nov 2018Ellen Friedman
 
Forecasting at Scale with Marcello Tomasini
Forecasting at Scale with Marcello TomasiniForecasting at Scale with Marcello Tomasini
Forecasting at Scale with Marcello TomasiniInfluxData
 
Spark and Deep Learning Frameworks at Scale 7.19.18
Spark and Deep Learning Frameworks at Scale 7.19.18Spark and Deep Learning Frameworks at Scale 7.19.18
Spark and Deep Learning Frameworks at Scale 7.19.18Cloudera, Inc.
 
Lessons learned from designing QA automation event streaming platform(IoT big...
Lessons learned from designing QA automation event streaming platform(IoT big...Lessons learned from designing QA automation event streaming platform(IoT big...
Lessons learned from designing QA automation event streaming platform(IoT big...Omid Vahdaty
 
Production model lifecycle management 2016 09
Production model lifecycle management 2016 09Production model lifecycle management 2016 09
Production model lifecycle management 2016 09Greg Makowski
 

Similar to Introduction aux algorithmes génétiques (20)

WIX3001 Lecture 6 Principles of GA.pptx
WIX3001 Lecture 6 Principles of GA.pptxWIX3001 Lecture 6 Principles of GA.pptx
WIX3001 Lecture 6 Principles of GA.pptx
 
OSDC 2018 | Apache Ignite - the in-memory hammer for your data science toolki...
OSDC 2018 | Apache Ignite - the in-memory hammer for your data science toolki...OSDC 2018 | Apache Ignite - the in-memory hammer for your data science toolki...
OSDC 2018 | Apache Ignite - the in-memory hammer for your data science toolki...
 
Interactive and reproducible data analysis with the open-source KNIME Analyti...
Interactive and reproducible data analysis with the open-source KNIME Analyti...Interactive and reproducible data analysis with the open-source KNIME Analyti...
Interactive and reproducible data analysis with the open-source KNIME Analyti...
 
Master the RETE algorithm
Master the RETE algorithmMaster the RETE algorithm
Master the RETE algorithm
 
Webinar: Deep Learning Pipelines Beyond the Learning
Webinar: Deep Learning Pipelines Beyond the LearningWebinar: Deep Learning Pipelines Beyond the Learning
Webinar: Deep Learning Pipelines Beyond the Learning
 
Large Scale Data Mining using Genetics-Based Machine Learning
Large Scale Data Mining using Genetics-Based Machine LearningLarge Scale Data Mining using Genetics-Based Machine Learning
Large Scale Data Mining using Genetics-Based Machine Learning
 
Willbros GITA Presentation on GIS-Based Risk Assessment
Willbros GITA Presentation on GIS-Based Risk AssessmentWillbros GITA Presentation on GIS-Based Risk Assessment
Willbros GITA Presentation on GIS-Based Risk Assessment
 
Clustering using GA and Hill-climbing
Clustering using GA and Hill-climbingClustering using GA and Hill-climbing
Clustering using GA and Hill-climbing
 
Graph Gurus Episode 8: Location, Location, Location - Geospatial Analysis wit...
Graph Gurus Episode 8: Location, Location, Location - Geospatial Analysis wit...Graph Gurus Episode 8: Location, Location, Location - Geospatial Analysis wit...
Graph Gurus Episode 8: Location, Location, Location - Geospatial Analysis wit...
 
900 keynote abbott
900 keynote abbott900 keynote abbott
900 keynote abbott
 
Tests Your Pipeline Might Be Missing
Tests Your Pipeline Might Be MissingTests Your Pipeline Might Be Missing
Tests Your Pipeline Might Be Missing
 
Processing malaria HTS results using KNIME: a tutorial
Processing malaria HTS results using KNIME: a tutorialProcessing malaria HTS results using KNIME: a tutorial
Processing malaria HTS results using KNIME: a tutorial
 
Automated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSUAutomated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSU
 
Container and Kubernetes without limits
Container and Kubernetes without limitsContainer and Kubernetes without limits
Container and Kubernetes without limits
 
Triz Presentation
Triz PresentationTriz Presentation
Triz Presentation
 
7 Habits for Big Data in Production - keynote Big Data London Nov 2018
7 Habits for Big Data in Production - keynote Big Data London Nov 20187 Habits for Big Data in Production - keynote Big Data London Nov 2018
7 Habits for Big Data in Production - keynote Big Data London Nov 2018
 
Forecasting at Scale with Marcello Tomasini
Forecasting at Scale with Marcello TomasiniForecasting at Scale with Marcello Tomasini
Forecasting at Scale with Marcello Tomasini
 
Spark and Deep Learning Frameworks at Scale 7.19.18
Spark and Deep Learning Frameworks at Scale 7.19.18Spark and Deep Learning Frameworks at Scale 7.19.18
Spark and Deep Learning Frameworks at Scale 7.19.18
 
Lessons learned from designing QA automation event streaming platform(IoT big...
Lessons learned from designing QA automation event streaming platform(IoT big...Lessons learned from designing QA automation event streaming platform(IoT big...
Lessons learned from designing QA automation event streaming platform(IoT big...
 
Production model lifecycle management 2016 09
Production model lifecycle management 2016 09Production model lifecycle management 2016 09
Production model lifecycle management 2016 09
 

More from JUG Lausanne

Développer un moteur d'exécution symbolique en partant de rien
Développer un moteur d'exécution symbolique en partant de rienDévelopper un moteur d'exécution symbolique en partant de rien
Développer un moteur d'exécution symbolique en partant de rienJUG Lausanne
 
Reverse engineering Java et contournement du mécanisme de paiement inapp Android
Reverse engineering Java et contournement du mécanisme de paiement inapp AndroidReverse engineering Java et contournement du mécanisme de paiement inapp Android
Reverse engineering Java et contournement du mécanisme de paiement inapp AndroidJUG Lausanne
 
Exemple d'IOT et ML avec Android, Cassandra et Spark
Exemple d'IOT et ML avec Android, Cassandra et SparkExemple d'IOT et ML avec Android, Cassandra et Spark
Exemple d'IOT et ML avec Android, Cassandra et SparkJUG Lausanne
 
Play! chez Zaptravel - Nicolas Martignole - December 2012
Play! chez Zaptravel - Nicolas Martignole - December 2012Play! chez Zaptravel - Nicolas Martignole - December 2012
Play! chez Zaptravel - Nicolas Martignole - December 2012JUG Lausanne
 
Playframework Realtime Web - Guillaume Bort & Sadek Drobi - December 2012
Playframework Realtime Web - Guillaume Bort & Sadek Drobi - December 2012Playframework Realtime Web - Guillaume Bort & Sadek Drobi - December 2012
Playframework Realtime Web - Guillaume Bort & Sadek Drobi - December 2012JUG Lausanne
 
CloudBees - Sacha Labourey - May 2011
CloudBees - Sacha Labourey - May 2011CloudBees - Sacha Labourey - May 2011
CloudBees - Sacha Labourey - May 2011JUG Lausanne
 
Apache Camel - Stéphane Kay - April 2011
Apache Camel - Stéphane Kay - April 2011Apache Camel - Stéphane Kay - April 2011
Apache Camel - Stéphane Kay - April 2011JUG Lausanne
 
Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - Februar...
Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - Februar...Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - Februar...
Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - Februar...JUG Lausanne
 
OpenDS - Ludovic Poitou - December 2010
OpenDS - Ludovic Poitou - December 2010OpenDS - Ludovic Poitou - December 2010
OpenDS - Ludovic Poitou - December 2010JUG Lausanne
 
Spring Batch - Julien Jakubowski - November 2010
Spring Batch - Julien Jakubowski - November 2010Spring Batch - Julien Jakubowski - November 2010
Spring Batch - Julien Jakubowski - November 2010JUG Lausanne
 
Infinispan - Galder Zamarreno - October 2010
Infinispan - Galder Zamarreno - October 2010Infinispan - Galder Zamarreno - October 2010
Infinispan - Galder Zamarreno - October 2010JUG Lausanne
 
No Sql - Olivier Mallassi - September 2010
No Sql - Olivier Mallassi - September 2010No Sql - Olivier Mallassi - September 2010
No Sql - Olivier Mallassi - September 2010JUG Lausanne
 
Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010
Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010
Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010JUG Lausanne
 
Introduction à Scala - Michel Schinz - January 2010
Introduction à Scala - Michel Schinz - January 2010Introduction à Scala - Michel Schinz - January 2010
Introduction à Scala - Michel Schinz - January 2010JUG Lausanne
 
Introduction Groovy / Grails - Cyril Picat - December 2009
Introduction Groovy / Grails - Cyril Picat - December 2009Introduction Groovy / Grails - Cyril Picat - December 2009
Introduction Groovy / Grails - Cyril Picat - December 2009JUG Lausanne
 
Initiation aux tests fonctionnels - Philippe Kernevez - October 2009
Initiation aux tests fonctionnels - Philippe Kernevez - October 2009Initiation aux tests fonctionnels - Philippe Kernevez - October 2009
Initiation aux tests fonctionnels - Philippe Kernevez - October 2009JUG Lausanne
 
Sonar - Freddy Mallet - April 2009
Sonar - Freddy Mallet - April 2009Sonar - Freddy Mallet - April 2009
Sonar - Freddy Mallet - April 2009JUG Lausanne
 
Maven2 - Philippe Kernevez - March 2009
Maven2 - Philippe Kernevez - March 2009Maven2 - Philippe Kernevez - March 2009
Maven2 - Philippe Kernevez - March 2009JUG Lausanne
 
Introduction à Google Web Toolkit (GWT) - Philippe Kernevez - February 2009
Introduction à Google Web Toolkit (GWT) - Philippe Kernevez - February 2009Introduction à Google Web Toolkit (GWT) - Philippe Kernevez - February 2009
Introduction à Google Web Toolkit (GWT) - Philippe Kernevez - February 2009JUG Lausanne
 
XML & Java - Raphaël Tagliani - March 2008
XML & Java - Raphaël Tagliani - March 2008XML & Java - Raphaël Tagliani - March 2008
XML & Java - Raphaël Tagliani - March 2008JUG Lausanne
 

More from JUG Lausanne (20)

Développer un moteur d'exécution symbolique en partant de rien
Développer un moteur d'exécution symbolique en partant de rienDévelopper un moteur d'exécution symbolique en partant de rien
Développer un moteur d'exécution symbolique en partant de rien
 
Reverse engineering Java et contournement du mécanisme de paiement inapp Android
Reverse engineering Java et contournement du mécanisme de paiement inapp AndroidReverse engineering Java et contournement du mécanisme de paiement inapp Android
Reverse engineering Java et contournement du mécanisme de paiement inapp Android
 
Exemple d'IOT et ML avec Android, Cassandra et Spark
Exemple d'IOT et ML avec Android, Cassandra et SparkExemple d'IOT et ML avec Android, Cassandra et Spark
Exemple d'IOT et ML avec Android, Cassandra et Spark
 
Play! chez Zaptravel - Nicolas Martignole - December 2012
Play! chez Zaptravel - Nicolas Martignole - December 2012Play! chez Zaptravel - Nicolas Martignole - December 2012
Play! chez Zaptravel - Nicolas Martignole - December 2012
 
Playframework Realtime Web - Guillaume Bort & Sadek Drobi - December 2012
Playframework Realtime Web - Guillaume Bort & Sadek Drobi - December 2012Playframework Realtime Web - Guillaume Bort & Sadek Drobi - December 2012
Playframework Realtime Web - Guillaume Bort & Sadek Drobi - December 2012
 
CloudBees - Sacha Labourey - May 2011
CloudBees - Sacha Labourey - May 2011CloudBees - Sacha Labourey - May 2011
CloudBees - Sacha Labourey - May 2011
 
Apache Camel - Stéphane Kay - April 2011
Apache Camel - Stéphane Kay - April 2011Apache Camel - Stéphane Kay - April 2011
Apache Camel - Stéphane Kay - April 2011
 
Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - Februar...
Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - Februar...Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - Februar...
Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - Februar...
 
OpenDS - Ludovic Poitou - December 2010
OpenDS - Ludovic Poitou - December 2010OpenDS - Ludovic Poitou - December 2010
OpenDS - Ludovic Poitou - December 2010
 
Spring Batch - Julien Jakubowski - November 2010
Spring Batch - Julien Jakubowski - November 2010Spring Batch - Julien Jakubowski - November 2010
Spring Batch - Julien Jakubowski - November 2010
 
Infinispan - Galder Zamarreno - October 2010
Infinispan - Galder Zamarreno - October 2010Infinispan - Galder Zamarreno - October 2010
Infinispan - Galder Zamarreno - October 2010
 
No Sql - Olivier Mallassi - September 2010
No Sql - Olivier Mallassi - September 2010No Sql - Olivier Mallassi - September 2010
No Sql - Olivier Mallassi - September 2010
 
Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010
Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010
Java EE 6 & GlassFish V3 - Alexis Moussine-Pouchkine - May 2010
 
Introduction à Scala - Michel Schinz - January 2010
Introduction à Scala - Michel Schinz - January 2010Introduction à Scala - Michel Schinz - January 2010
Introduction à Scala - Michel Schinz - January 2010
 
Introduction Groovy / Grails - Cyril Picat - December 2009
Introduction Groovy / Grails - Cyril Picat - December 2009Introduction Groovy / Grails - Cyril Picat - December 2009
Introduction Groovy / Grails - Cyril Picat - December 2009
 
Initiation aux tests fonctionnels - Philippe Kernevez - October 2009
Initiation aux tests fonctionnels - Philippe Kernevez - October 2009Initiation aux tests fonctionnels - Philippe Kernevez - October 2009
Initiation aux tests fonctionnels - Philippe Kernevez - October 2009
 
Sonar - Freddy Mallet - April 2009
Sonar - Freddy Mallet - April 2009Sonar - Freddy Mallet - April 2009
Sonar - Freddy Mallet - April 2009
 
Maven2 - Philippe Kernevez - March 2009
Maven2 - Philippe Kernevez - March 2009Maven2 - Philippe Kernevez - March 2009
Maven2 - Philippe Kernevez - March 2009
 
Introduction à Google Web Toolkit (GWT) - Philippe Kernevez - February 2009
Introduction à Google Web Toolkit (GWT) - Philippe Kernevez - February 2009Introduction à Google Web Toolkit (GWT) - Philippe Kernevez - February 2009
Introduction à Google Web Toolkit (GWT) - Philippe Kernevez - February 2009
 
XML & Java - Raphaël Tagliani - March 2008
XML & Java - Raphaël Tagliani - March 2008XML & Java - Raphaël Tagliani - March 2008
XML & Java - Raphaël Tagliani - March 2008
 

Recently uploaded

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 

Recently uploaded (20)

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 

Introduction aux algorithmes génétiques

  • 2. © 2018 CloudBees, Inc. All Rights Reserved. 2 Outline 1. Company introduction a. Jenkins b. CloudBees 2. Genetic Algorithms (GA) a. Introduction to optimization b. Promise c. History d. Genesis e. Concepts f. Demo g. Next steps
  • 3. © 2018 CloudBees, Inc. All Rights Reserved. 3 Code & Commit Build & Config Scan & Test Release Deploy Over 1.7 Million users 1400+ plugins cover every stage of delivery Jenkins is the Hub of Continuous Delivery
  • 4. © 2018 CloudBees, Inc. All Rights Reserved. 4 ! ! ! ! ! ! ! Jenkins potential Problems Jenkins sprawl Do you know who is using Jenkins and where? Stability / plugin quality Do you have difficulty with upgrades and plugin compatibility? Lack of security Can you control who is doing what in Jenkins? Impact of downtime 92% of Jenkins survey respondents say Jenkins is mission critical. Is it for you? Performance / scalability issues Do you need your builds to run faster? Do you need to run at scale? Lack of monitoring Would you like to measure performance for both Jenkins and your builds? No technical support Need experts to call for Jenkins Tech Support?
  • 5. © 2018 CloudBees, Inc. All Rights Reserved. 5 Speed up and scale Jenkins Optimized performance, shared agent pools CloudBees Jenkins Solutions Make Life Better Manage Jenkins sprawl With CloudBees Jenkins Enterprise Ensure stability CloudBees Assurance Program ensures Jenkins stability and verifies plugins Apply security to Jenkins With RBAC and folders for managing your organization Make Jenkins highly available HA and cluster operations features Monitoring and visualization Operational and CD Pipeline insight Expert technical support CloudBees has the Jenkins experts on staff ! ! ! ! ! ! !
  • 7. © 2018 CloudBees, Inc. All Rights Reserved. 7 Introduction to mathematical optimization • Gradient descent • Follow the slope • Stochastic walk • Just random steps • Hill climbing • Mix of both • Simulated annealing • Ant colony algorithm
  • 8. © 2018 CloudBees, Inc. All Rights Reserved. 8 Promise • Solve complex problems using simple approach • Quick approximation of the solution • Can adapt to a changing environment • Not requiring complex theory
  • 9. © 2018 CloudBees, Inc. All Rights Reserved. 9 History 1859 1950 1975 1987 1991 “The Origin of species”, Charles Darwin First idea using evolution, Alan Turing First development, John Holland “Genetic Algorithms in Search, Optimization, and Machine Learning”, David Goldberg European Conference on Artificial Life
  • 10. © 2018 CloudBees, Inc. All Rights Reserved. 10 Genesis of Genetic Algorithms • Root of the theory: “The Origin of the species” • The nature selects the most adapted specimens
  • 11. © 2018 CloudBees, Inc. All Rights Reserved. 11 Concepts of Genetic Algorithms • Overview Initial population Selection Reproduction / Crossover Mutation Evaluation End Good enough ? No New generation
  • 12. © 2018 CloudBees, Inc. All Rights Reserved. 12 Concepts of Genetic Algorithms • Genotype (DNA) vs Phenotype (expression of DNA) • Selection strategy • Random ▸ a.k.a. brute-force • Roulette selection ▸ selection rate depends on their ranking / score • Pareto ▸ 80% of the time, take the 20% best • Tournament ▸ pick a subset of the population, take the best
  • 13. © 2018 CloudBees, Inc. All Rights Reserved. 13 Concepts of Genetic Algorithms • Selection strategy • Fitness / adaptation score ▸ normalization - distribution of the score among the population ▸ multi steps - reach goal then optimize energy ▸ multi objectives - maximize quantity and minimize price ▸ constraint satisfaction (penalty score) - Knapsack problem
  • 14. © 2018 CloudBees, Inc. All Rights Reserved. 14 Concepts of Genetic Algorithms • Selection mechanism • Reproduction / Crossover ▸ Single cut - Take genes from A until a point, and rest from B ▸ Multiple cuts ▸ Mixing genes - add quantity of A and B, xoring boolean genes, ... ▸ Random swap - each gene can be taken from A or B ▸ Problem specific
  • 15. © 2018 CloudBees, Inc. All Rights Reserved. 15 Concepts of Genetic Algorithms • Mutation mechanism • Genes encoding ▸ Binary - Enable / disable feature ▸ Value - Quantity, price, velocity, force ▸ Tree - Operation per node - Programming element per node
  • 16. © 2018 CloudBees, Inc. All Rights Reserved. 16 Concepts of Genetic Algorithms • Mutation mechanism • Self-Mutation ▸ Ergodic / pseudo-ergodic hypothesis - Any solution is reachable by one (or a limited amount of) mutation ▸ Percent to mutate genes individually ▸ Total number of mutation ▸ Multiple types of gene modification - Swap gene / value - Modify slightly value - Simplify or expand node in tree
  • 17. © 2018 CloudBees, Inc. All Rights Reserved. 17 Concepts of Genetic Algorithms • Exploration vs Exploitation • Exploration ▸ Testing large portion of the search space in the hope to find good area to refine - In case of a plane crash at sea, it’s the satellite / aerial overflight to look for something in the water • Exploitation ▸ Refine process of a particularly small part of the search space - It’s when we find some dark area in water that we need to investigate more • The problem is how to divide time / resources between the two
  • 18. © 2018 CloudBees, Inc. All Rights Reserved. 18 Concepts of Genetic Algorithms • Effects of the genetic operators • Selection alone ▸ Tend to have only the best individual and its clones • Only selection and crossover ▸ Converge quickly to a good but suboptimal solution (pure exploitation) • Mutation alone ▸ Random walk (pure exploration) • Only selection and mutation ▸ Parallel hill climbing approach
  • 19. © 2018 CloudBees, Inc. All Rights Reserved. 19 Demo • Citation (Monkey typing) • Function approximation • TSP (Travelling salesman problem) • Smart Rockets
  • 20. © 2018 CloudBees, Inc. All Rights Reserved. 20 Possible next steps • GA on GA • Use GA to determine best parameters for GA • Diploid instead of haploid • Double sets of genes instead of just one set • Real planning application • Add constraints, real data • Genetic programming • Generate compilable code • Neural network genetic architecture
  • 21. © 2018 CloudBees, Inc. All Rights Reserved. 21 Thank You https://gitlab.com/wadeck-public/genetik-presentation/wikis/List-of-runnable-demo