10
Bibliothèque JAVA de programmation chimique Cédric ANDREOLLI Chloé BOULANGER Olivier CLÉRO Antoine GUELLIER Sébastien GUILLOUX Arthur TEMPLÉ Projet 4INFO Encadrant : Jean-Louis Pazat Démonstration 05/2012

Démonstration 05/2012

  • Upload
    marnie

  • View
    32

  • Download
    0

Embed Size (px)

DESCRIPTION

Démonstration 05/2012. Sommaire. Exemples simples IndexProvider : Preuves de fonctionnalités Foxes’n Rabbits Vitrine technologique musicale. Utilisation de la bibliothèque. ReactionRule. Règle de réaction = classe implémentant l’interface ReactionRule Méthodes : - PowerPoint PPT Presentation

Citation preview

Page 1: Démonstration 05/2012

Bibliothèque JAVA de programmation chimique

Cédric ANDREOLLIChloé BOULANGEROlivier CLÉROAntoine GUELLIERSébastien GUILLOUXArthur TEMPLÉ

Projet 4INFO

Encadrant : Jean-Louis Pazat

Démonstration05/2012

Page 2: Démonstration 05/2012

2

Bibliothèque JAVA de programmation chimique – Démonstration

Sommaire

Exemples simplesIndexProvider : Preuves de fonctionnalitésFoxes’n RabbitsVitrine technologique musicale

Page 3: Démonstration 05/2012

3

Bibliothèque JAVA de programmation chimique – Démonstration

Utilisation de la bibliothèqueReactionRuleRègle de réaction = classe implémentant l’interface ReactionRule

Méthodes :- computeSelect() : conditions sur le choix des réactifs- computeReact() : réaction en elle-même

Solution- Ajout de réactifs avec add(Object o) (n’importe quel objet

Java, y compris des sous-solutions et des ReactionRule)- Lancement de la réaction : react()

Page 4: Démonstration 05/2012

4

Bibliothèque JAVA de programmation chimique – Démonstration

Exemples simplesNombres premiers

En entrée : une solution contenant des nombres de 2 à n

Réaction : – ComputeSelect : sélectionne les nombres divisibles entre

eux– ComputeReact : ajoute à la solution le nombre qui divise, et

n’ajoute pas celui qui est divisé

En sortie : ensemble des nombres premiers de 2 à n appartenant à l’intervalle [2;n]

Page 5: Démonstration 05/2012

5

Bibliothèque JAVA de programmation chimique – Démonstration

Exemples simplesSentence Creator

A wild Pikachu

SubjectType

Chloé Boulanger

The dog The cat VerbType

Is sexy and knows it

runs

appearseats

ChooseSubjectRR

PutWordsTogether

ChooseVerbRRChooseComplementRR

PrepositionType

inon

abovebelow

PlaceType

The roof The garden

The kitchen

Page 6: Démonstration 05/2012

6

Bibliothèque JAVA de programmation chimique – Démonstration

IndexProviderPreuves de fonctionnalité

L’IndexProvider : coeur et point sensible du problèmeFournit toutes les combinaisons possibles d’index des réactifs en solution

Nécessaire de vérifier que l’IndexProvider: - sélectionne des combinaisons valides- parcourt toutes les combinaisons possibles- fonctionne avec les SubSolutions

D’où réalisation de tests indispensable... qui a révélé de nombreux problèmes et bugs corrigés par la suite.

Page 7: Démonstration 05/2012

7

Bibliothèque JAVA de programmation chimique – Démonstration

Foxes’n RabbitsPrésentationSimulation d’une population de renards et de lapins

Règles- Chaque espèce peut se déplacer sur une case vide- Chaque espèce a une espérance de vie et finit par mourir naturellement- Chaque espèce peut se reproduire - Les lapins peuvent se faire manger par les renards

L’ensemble est géré par un système de probabilités- Probabilité de se faire manger, de se reproduire... qui diffère selon l’espèce

En théorie- Système aléatoire et indéterministe- Mais globalement stable et équilibré- Selon un bon paramétrage des différentes probabilités

Page 8: Démonstration 05/2012

8

Bibliothèque JAVA de programmation chimique – Démonstration

Vitrine technologique musicaleEléments de la réaction

CountNb

mesures restantes à

créer

BarNumberNuméro de la

mesure à créer

DegreeImplDegré de la mesure à

créer

Note1

ChordImpl1

ChordImpl2

BarNumber

Note2Note

3

Note1

ChordImpl1

BarNumber

Note2Note

3 Note4

Note5

Note1

ChordImpl1

BarNumber

Note2Note

3 Note4

Page 9: Démonstration 05/2012

9

Bibliothèque JAVA de programmation chimique – Démonstration

Vitrine technologique musicaleExemple de réaction : création du rythme de la mélodieRythmicRR prend les réactifs suivants :

MeasureNumber1

ChordImpl1

ChordImpl2

Pitch

MelodicRRmax = 0

activated = false

RythmicRRChordNumber = 1

max = 0

2

RythmPull

RythmPatternEEQ2

RythmPatternEEQQQ4

RythmPatternQQEEQ4

RythmPatternEQP2

A est pris par B comme réactif

A B

Page 10: Démonstration 05/2012

10

Bibliothèque JAVA de programmation chimique – Démonstration

Vitrine technologique musicaleExemple de réaction : création du rythme de la mélodieRythmicRR remet en solution les produits suivants :

MeasureNumber1

ChordImpl1

ChordImpl2

Pitch

MelodicRRmax = 5

activated = false

RythmicRRChordNumber = 2

max = 5

2

RythmPull

RythmPatternEEQ2

RythmPatternEEQQQ4

RythmPatternQQEEQ4

RythmPatternEQP2

NotePosition=0

NotePosition=1

NotePosition=2

NotePosition=3

NotePosition=4

NotePosition=5

B remet A en solutionB A