Programmation et indécidabilités dans les systèmes complexes

Un systeme complexe est un systeme constitue d'un ensemble d'entites quiinteragissent localement, engendrant des comportements globaux, emergeant dusysteme, qu'on ne sait pas expliquer a partir du comportement local, connu, desentites qui le constituent. Nos travaux ont pour objet de mieux cerner lesliens entre certaines proprietes des systemes complexes et le calcul. Parcalcul, il faut entendre l'objet d'etude de l'informatique, c'est-a-dire ledeplacement et la combinaison d'informations. A l'aide d'outils issus del'informatique, l'algorithmique et la programmation dans les systemes complexessont abordees selon trois points de vue. Une premiere forme de programmation,dite externe, consiste a developper l'algorithmique qui permet de simuler lessystemes etudies. Une seconde forme de programmation, dite interne, consiste adevelopper l'algorithmique propre a ces systemes, qui permet de construire desrepresentants de ces systemes qui exhibent des comportements programmes. Enfin,une troisieme forme de programmation, de reduction, consiste a plonger desproprietes calculatoires complexes dans les representants de ces systemes pouretablir des resultats d'indecidabilite -- indice d'une grande complexitecalculatoire qui participe a l'explication de la complexite emergente. Afin demener a bien cette etude, les systemes complexes sont modelises par desautomates cellulaires. Le modele des automates cellulaires offre une dualitepertinente pour etablir des liens entre complexite des proprietes globales etcalcul. En effet, un automate cellulaire peut etre decrit a la fois comme unreseau d'automates, offrant un point de vue familier de l'informatique, etcomme un systeme dynamique discret, une fonction definie sur un espacetopologique, offrant un point de vue familier de l'etude des systemesdynamiques discrets.Une premiere partie de nos travaux concerne l'etude de l'objet automatecellulaire proprement dit. L'observation experimentale des automatescellulaires distingue, dans la litterature, deux formes de dynamiques complexesdominantes. Certains automates cellulaires presentent une dynamique danslaquelle emergent des structures simples, sortes de particules qui evoluentdans un domaine regulier, se rencontrent lors de breves collisions, avant degenerer d'autres particules. Cette forme de complexite, dans laquelletransparait une notion de quanta d'information localisee en interaction, estl'objet de nos etudes. Un premier champ de nos investigations est d'etablir uneclassification algebrique, le groupage, qui tend a rendre compte de ce type decomportement. Cette classification met a jour un type d'automate cellulaireparticulier : les automates cellulaires intrinsequement universels. Un automatecellulaire intrinsequement universel est capable de simuler le comportement detout automate cellulaire. C'est l'objet de notre second champ d'investigation.Nous caracterisons cette propriete et demontrons son indecidabilite. Enfin, untroisieme champ d'investigation concerne l'algorithmique des automatescellulaires a particules et collisions. Etant donne un ensemble de particuleset de collisions d'un tel automate cellulaire, nous etudions l'ensemble desinteractions possibles et proposons des outils pour une meilleure programmationinterne a l'aide de ces collisions.Une seconde partie de nos travaux concerne la programmation par reduction. Afinde demontrer l'indecidabilite de proprietes dynamiques des automatescellulaires, nous etudions d'une part les problemes de pavage du plan par desjeux de tuiles finis et d'autre part les problemes de mortalite et deperiodicite dans les systemes dynamiques discrets a fonction partielle. Cetteetude nous amene a considerer des objets qui possedent la meme dualite entredescription combinatoire et topologique que les automates cellulaires. Unenotion d'aperiodicite joue un role central dans l'indecidabilite des proprietesde ces objets.