Lucy
Librairie d'Algorithme Génétique
Quentin Frery
Eric Allard
ISEN
CIR3
Projet Java 2013
1
Lucy : 3.2 millions AJC Mélanie : 1983
160 000
Générations
Introduction
2
L'évolution des espèces
Introduction
Charles Darwin
3
Les algorithmes génétiques
Introduction
Résoudre des problèmes
d'optimisation
4
Lucy est :
Une librairie d'algorithme génétique
Introduction
- En java
- S'adapte à tout problème
d'optimisation
- Interfa...
Contraintes techniques
Introduction
6
Plan
1. Conception
○ Modèle
○ Contrôleur
○ Vue
2. Opérateurs de sélection et critères d'arrêt
3. Résoudre un problème avec...
Conception
8
Structure générale
Conception
9
Modèle
Conception
10
Contrôleur
Conception
11
Vue
Conception
12
Conception
Vue
13
Opérateurs de sélection et critères
d'arrêt
14
Operateur de sélection
1 2 3 4 6 7
Roue de la fortune Tournoi Rang
15
Critère d'arrêt
Evolution Génération Temps
16
Resoudre un problème avec Lucy
17
TSP
18
TSP
19
TSP
public class TSP extends GeneticProblem {
List<TSPCity> cities;
public TSP(int citiesSize){
super(FitnessFunctionFacto...
Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005
TSP - Croisement
Parent ...
Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005
TSP - Croisement
Parent ...
Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005
TSP - Croisement
Parent ...
Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005
TSP - Croisement
Parent ...
Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005
TSP - Croisement
Parent ...
Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005
TSP - Croisement
Parent ...
TSP - Mutation
Avant mutation :
Après mutation : 1 2 5 4 3 6 7 8
1 2 3 4 5 6 7 8
27
Démonstration
28
Conclusion
Lucy a été :
-Un projet intéressant et stimulant
-3000 lignes de code
-Une occasion d'apprendre de nouveaux out...
Prochain SlideShare
Chargement dans…5
×

Lucy - Librairie d'Algorithme Génétique

1 509 vues

Publié le

Réalisation d'une librairie java permettant de résoudre n'importe quel problème d'optimisation grâce à des algorithmes génétiques. Elle comporte entre autre une interface graphique générique pouvant afficher l’évolution des solutions au problème donné.

Technologies utilisées : Java, Genetics Algorithms, Redmine, Maven Swing

Publié dans : Technologie
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 509
Sur SlideShare
0
Issues des intégrations
0
Intégrations
30
Actions
Partages
0
Téléchargements
39
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Lucy - Librairie d'Algorithme Génétique

  1. 1. Lucy Librairie d'Algorithme Génétique Quentin Frery Eric Allard ISEN CIR3 Projet Java 2013 1
  2. 2. Lucy : 3.2 millions AJC Mélanie : 1983 160 000 Générations Introduction 2
  3. 3. L'évolution des espèces Introduction Charles Darwin 3
  4. 4. Les algorithmes génétiques Introduction Résoudre des problèmes d'optimisation 4
  5. 5. Lucy est : Une librairie d'algorithme génétique Introduction - En java - S'adapte à tout problème d'optimisation - Interface graphique 5
  6. 6. Contraintes techniques Introduction 6
  7. 7. Plan 1. Conception ○ Modèle ○ Contrôleur ○ Vue 2. Opérateurs de sélection et critères d'arrêt 3. Résoudre un problème avec Lucy 4. Démonstration 7
  8. 8. Conception 8
  9. 9. Structure générale Conception 9
  10. 10. Modèle Conception 10
  11. 11. Contrôleur Conception 11
  12. 12. Vue Conception 12
  13. 13. Conception Vue 13
  14. 14. Opérateurs de sélection et critères d'arrêt 14
  15. 15. Operateur de sélection 1 2 3 4 6 7 Roue de la fortune Tournoi Rang 15
  16. 16. Critère d'arrêt Evolution Génération Temps 16
  17. 17. Resoudre un problème avec Lucy 17
  18. 18. TSP 18
  19. 19. TSP 19
  20. 20. TSP public class TSP extends GeneticProblem { List<TSPCity> cities; public TSP(int citiesSize){ super(FitnessFunctionFactory.createFitnessFunction("Inverse")); this.addCrossoverOperator(new TSPCrossover()); this.addMutationOperator(new TSPMutation()); this.cities = new LinkedList<TSPCity>(); this.initCities(citiesSize); } @Override public Entity createEntity() { } @Override public View createView(String name) { } } 20
  21. 21. Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005 TSP - Croisement Parent 1 : Parent 2 : Enfant 1 : 1 2 3 4 5 6 7 8 8 5 2 1 3 6 4 7 1 21
  22. 22. Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005 TSP - Croisement Parent 1 : Parent 2 : Enfant 1 : 1 2 3 4 5 6 7 8 8 5 2 1 3 6 4 7 1 8 22
  23. 23. Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005 TSP - Croisement Parent 1 : Parent 2 : Enfant 1 : 1 2 3 4 5 6 7 8 8 5 2 1 3 6 4 7 1 7 8 23
  24. 24. Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005 TSP - Croisement Parent 1 : Parent 2 : Enfant 1 : 1 2 3 4 5 6 7 8 8 5 2 1 3 6 4 7 1 4 7 8 24
  25. 25. Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005 TSP - Croisement Parent 1 : Parent 2 : Enfant 1 : 1 2 3 4 5 6 7 8 8 5 2 1 3 6 4 7 1 5 2 4 3 6 7 8 25
  26. 26. Documentation : International Conference on Computer Systems and Technologies - CompSysTech’ 2005 TSP - Croisement Parent 2 : Parent 1 : Enfant 1 : Enfant 2 : 8 5 2 1 3 6 4 7 1 2 3 4 5 6 7 8 1 5 2 4 3 6 7 8 8 2 3 1 5 6 4 7 26
  27. 27. TSP - Mutation Avant mutation : Après mutation : 1 2 5 4 3 6 7 8 1 2 3 4 5 6 7 8 27
  28. 28. Démonstration 28
  29. 29. Conclusion Lucy a été : -Un projet intéressant et stimulant -3000 lignes de code -Une occasion d'apprendre de nouveaux outils et libraries 29

×