diff --git a/readme.md b/readme.md index 638aa24..39cd3c5 100644 --- a/readme.md +++ b/readme.md @@ -16,43 +16,43 @@ Face à la difficulté de calculer l'évolution des systèmes complexes définis L'emploi des gem-graph est guidé par les choix suivants: -1. Représenter l'espace -2. Un espace discret (non continu) -3. Un espace uniforme et cartésien -4. A cet espace est superposé un graphe géométrique qui permet d'éditer des liens entre des unités de l'espace. Ces liens permettent de dessiner +* Représenter l'espace +* Un espace discret (non continu) +* Un espace uniforme et cartésien +* A cet espace est superposé un graphe géométrique qui permet d'éditer des liens entre des unités de l'espace. Ces liens permettent de dessiner - des objets (parties connexes isolées du graphe), - des situations (positions relatives des objets) et - des ensembles de symboles, appelés 'scripts', qui sont écrits dans l'espace en utilisant des flèches. -5. Un automate (un ensemble d'états et de transitions) peut réécrire ce graphe et en gérer les versions successives (l'histoire de la simulation) +* Un automate (un ensemble d'états et de transitions) peut réécrire ce graphe et en gérer les versions successives (l'histoire de la simulation) - L'utilisation de flèches plutôt que des lignes et la possibilité d'en superposer un nombre quelconque aident à optimiser cet automate. -6. Tous les états sont des états de l'espace, c'est à dire des représentations approximatives (ou 'dessins') d'un espace réel. - - Des scripts (ex: noms, balises, adresses, cf. §4) peuvent être associés aux dessins pour faciliter l'identification des objets et des situations. -7. Les réécritures sont locales, asynchrones et aléatoires: +* Tous les états sont des états de l'espace, c'est à dire des représentations approximatives (ou 'dessins') d'un espace réel. + - Des scripts (ex: noms, balises, adresses,...) peuvent être associés aux dessins pour faciliter l'identification des objets et des situations. +* Les réécritures sont locales, asynchrones et aléatoires: - Le calcul est effectué par des threads opérant chacun indépendemment dans un espace local préalablement préempté. - L'étendue de cet espace local dépend des règles de transition: aucune flèche définie par ces règles ne peut sortir de cet espace. - L'emplacement et l'orientation de chaque nouvel espace local sont choisis (au hasard ou par un autre algorithme) dans l'espace global. - Si l'ensemble des conditions de plusieurs règles est identique, l'une d'entre elles est choisie (au hasard ou par un autre algorithme). - Une fois le calcul effectué, son résultat est validé puis intégré à l'état global puis la préemption est levée. -8. La topologie, la dimension, la magnitude et la granularité de l'espace ne sont pas prédéfinies. Ce sont des paramètres choisis par le concepteur du modèle. +* La topologie, la dimension, la magnitude et la granularité de l'espace ne sont pas prédéfinies. Ce sont des paramètres choisis par le concepteur du modèle. - Plusieurs granularités peuvent coexister localement dans un même espace global. Elles peuvent être définies par des représentations vectorielles. -9. Les transitions sont toutes les combinaisons d'un seul type de transition élémentaire. Une transition élémentaire associe: +* Les transitions sont toutes les combinaisons d'un seul type de transition élémentaire. Une transition élémentaire associe: - Une seule condition (combien de flèches y a-t-il à cet endroit? à comparer à un nombre prédéfini) - Une seule assignation (écrire un nombre 'n' de flèches à cet endroit) -10. Les informations statiques (états) et les informations dynamiques (transitions) sont strictement séparées. - - Cette séparation permet d'écrire les règles de transition exclusivement comme des associations de transitions élémentaires (cf. §9). +* Les informations statiques (états) et les informations dynamiques (transitions) sont strictement séparées. + - Cette séparation permet d'écrire les règles de transition exclusivement comme des associations de transitions élémentaires. - Cette conformité d'écriture et l'uniformité des règles qui en résulte est la condition de leur traitement algorithmique. - Les règles de transition peuvent ainsi être automatiquement évaluées, comparées, représentées, éditées. -11. Les règles de transition peuvent être regroupées en arbres. +* Les règles de transition peuvent être regroupées en arbres. - La structure de ces arbres diffère selon leur fonction (exécution du calcul, classification par l'utilisateur,...). - Ces arbres peuvent être édités. -12. Un gem-graph peut être associé à d'autres modèles représentant des bosons et/ou de fermions dans un espace en fonction du temps. +* Un gem-graph peut être associé à d'autres modèles représentant des bosons et/ou de fermions dans un espace en fonction du temps. - Après superposition des temps et espaces de ces modèles à ceux du gem-graph, leurs variables locales intensives (températures, pressions, concentrations, débits, flux, section efficace, etc ...) peuvent être lues et écrites par le gem-graph au moyen de conditions et d'actions spécifiques. - Ces lectures / écritures permettent la cohérence de l'ensemble des modèles pendant la durée du calcul. -13. Plusieurs modèles de gem-graph peuvent être additionnés (états et transitions) si leurs paramètres d'espace et de temps sont compatibles. - - L'addition de leurs états et celle de leurs règles sont des processus distincts qui peuvent être assistés par des algorithmes spécifiques de merging. -14. Des graphes non géométriques peuvent être extraits d'un gem-graph afin de faciliter son évaluation et son optimisation (ex: pour applications de l'IA) +* Plusieurs modèles de gem-graph peuvent être additionnés (états et transitions) si leurs paramètres d'espace et de temps sont compatibles. + - L'addition de leurs états et celle de leurs règles sont des processus distincts qui peuvent être assistés par des algorithmes de merging spécifiques. +* Des graphes non géométriques peuvent être extraits d'un gem-graph afin de faciliter son évaluation et son optimisation (ex: pour applications de l'IA) ---