100 likes | 178 Views
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 :
E N D
Démonstration 05/2012
Sommaire Exemples simples IndexProvider : Preuves de fonctionnalités Foxes’nRabbits Vitrine technologique musicale
Utilisation de la bibliothèque ReactionRule Rè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()
Exemples simples Nombres 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]
above The roof below on in Chloé Boulanger The dog The cat A wildPikachu Is sexy and knowsit runs eats appears Sentence Creator Exemples simples SubjectType VerbType PlaceType PrepositionType ChooseVerbRR ChooseComplementRR ChooseSubjectRR PutWordsTogether The garden The kitchen
IndexProvider Preuves de fonctionnalité L’IndexProvider : coeur et point sensible du problème Fournit 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.
Foxes’nRabbits Présentation Simulation 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
Vitrine technologique musicale Eléments de la réaction Count Nb mesures restantes à créer BarNumber Numéro de la mesure à créer DegreeImpl Degré de la mesure à créer BarNumber BarNumber BarNumber ChordImpl2 Note4 Note2 Note1 Note2 Note3 Note3 Note5 Note3 Note4 Note1 Note2 Note1 ChordImpl1 ChordImpl1 ChordImpl1
Vitrine technologique musicale Exemple de réaction : création du rythme de la mélodie RythmicRR prend les réactifs suivants : MeasureNumber 1 ChordImpl 2 ChordImpl 1 Pitch 2 RythmicRRChordNumber = 1max = 0 RythmPull RythmPatternQQEEQ4 RythmPatternEEQ2 RythmPatternEEQQQ4 RythmPatternEQP2 MelodicRRmax = 0activated = false A B A est pris par B comme réactif
Vitrine technologique musicale Exemple de réaction : création du rythme de la mélodie RythmicRR remet en solution les produits suivants : MeasureNumber 1 ChordImpl 1 ChordImpl 2 Pitch 2 RythmPull RythmicRRChordNumber = 2max = 5 NotePosition=2 RythmPatternQQEEQ4 RythmPatternEQP2 RythmPatternEEQ2 RythmPatternEEQQQ4 NotePosition=1 NotePosition=3 NotePosition=4 NotePosition=5 NotePosition=0 MelodicRRmax = 5activated = false B A B remet A en solution