22es Journées de l'Association Francophone d'Informatique Graphique, Arles 2009 Art, algorithmes, autonomie. Pierre Berger Résumé Tant l'inédit que la résonance, sauf aux plus bas niveaux, semblent radicalement impossibles à programmer. Nos expériences avec le logiciel Roxame ont cependant ouvert quelques voies et donné quelques résultats qui justifient la poursuite de ces recherches, que l'on peut considérer comme un cas particulier d'intelligence artificielle. Une partie des résultats est communicable à tout artiste qui le souhaite, y compris sous forme de codes. L'association Les Algoristes a pour vocation de faciliter les échanges et si possible de les concrétiser dans des projets collectifs. 1. Introduction Aider l'artiste à créer en lui donnant des outils puissants. Lui ouvrir de nouveaux espaces avec le multimédia et les réseaux... nul n'y trouve à redire, sinon les nostalgiques du temps passé. En revanche, demander à un ordinateur, un robot ou un programme de se comporter comme un artiste, voilà un projet qui dérange, pour toutes sortes de raisons. L'art, c'est en quelque sorte le dernier refuge de l'humain dans notre monde de machines, l'artiste est le héros qui nous préserve de la robotisation générale et globalisante du monde. Un « système artiste », c'est une grenade lancée dans le dernier bunker de la résistance au réductionnisme voire du post-humanisme. C'est un saut dans l'« uncanny valley » qui sépare les machines des humains. Les opposants lancent : Nous avons choisi d'explorer cette piste. Le projet, commencé il y dix ans, vise à réaliser un « système artiste », comme on disait un « système expert », créant des oeuvres sans intervention humaine et en particulier de son auteur. Le projet a réussi dans une certaine mesure : d'une part il a souvent surpris son auteur (et pas seulement pas ses bogues), d'autre part il a produit des oeuvres suffisamment présentables pour être acceptées dans des salons d'arts plastiques. Ces résultats prouvent la possibilité d'un tel système, mais surtout, et c'est le thème de cet exposé, ils permettent d'en percevoir un peu mieux le « comment ». 2 L'inédit, l'incertain, l'imprévisible Écoutons un sociologue qui vient de consacrer un lourd ouvrage à la création artistique : L'hypothèse de départ est donc simple : le travail artistique est modelé par l'incertitude. L'activité de l'artiste chemine selon un cours incertain, et son terme n'est ni défini ni assuré. Si elle était programmable, elle dériverait d'une bonne spécification des problèmes à résoudre, de consignes précises à respecter, de connaissances à mettre en oeuvre sans difficulté, de règles bien définies de choix et d'optimisation des choix à respecter. Et son évaluation serait aisée, parce que le résultat pourrait être rapporté au but qui était spécifié par une programmation efficace de l'action. Mais c'est l'incertitude sur le cours de l'activité et son résultat qui est la condition de l'invention originale et de l'innovation à plus longue portée. [Menger] Comment programmer l'incertain ? Le moyen qui vient le premier à l'esprit est l'appel au hasard. Qu'est-ce à dire ? Entre bien d'autres, la définition de Wikipédia convient à notre propos : « Dans le langage ordinaire, le mot hasard est utilisé pour exprimer un manque apparent, sinon de causes, au moins de connaissance des causes d'un événement... Dans une perspective déterministe, la notion de hasard est uniquement liée à l'incapacité à appréhender complètement certains phénomènes dans leur complexité naturelle et donc à les prévoir infailliblement. » Tout le sel de la question tient dans le mot « naturel ». Que peut-être la « nature » pour un système informatique ? La nature la plus proche, ce sont les défauts ou les irrégularités même du système matériel et du logiciel, d'autant moins prévisible qu'il est grand et qu'il incorpore de vastes volumes d'algorithmes et de fichiers, comme le prouve la présence des procédures try/catch, par exemple ; ce peut être l'état de l'horloge système, au centième de seconde, peu prévisible pour un programme de niveau élevé qui marche sur un cycle de plusieurs secondes au moins. Et n'oublions pas les virus, source fondamentale, et fascinante, d'aléas. Il est dommage que l'on n'ait pas réussi à les utiliser de manière intéressante (sauf quelques exemples, très limités, d'« art viral »). C'est ensuite l'environnement extérieur, imprévisible par le programme : lecture de luminosités, de température, micros et caméra. Une solution radicale est proposée par le CERN avec ses modules Quantis, disponibles sous forme d'une clé USB. Ce sont aussi, et c'est par là que commence le programmeur, des algorithmes génératifs dont la complexité dépasse la capacité d'appréhension d'un être humain ; à commencer par les algorithmes de pseudo hasard. Ils sont faciles à écrire, mais un être humain ne peut pas faire les opérations correspondantes, en tous cas dans un temps raisonnable. Et, dans bien des cas (mais pas toujours), ils suffisent à générer un hasard dont les régularités inévitables resteront imprévisibles. Mais aux procédures peuvent se conjuguer des ressources internes « passives », en quantité suffisante pour que personne, ni même le créateur du système, ne puisse tout à fait s'en souvenir en détail : images, vidéos, musique, textes, voire « données » au sens traditionnel du terme (tableaux de chiffre sur l'économie, par exemple, ou pourquoi pas sur le cours mondial des oeuvres d'art...). Et l'on va pratiquement à l'infini si ces ressources peuvent se trouver sur Internet, ou si les systèmes sont interactifs. Enfin, on finira peut-être par détecter, voire mesurer et modéliser ce qu'on pourrait appeler la relativité digitale, ou une sorte de principe d'incertitude à la Heisenberg ou Gödel, qui atteindrait tout système digital au-delà d'une certaine dimension, et même sans faire intervenir les limites de capacité (bruit de calcul dans les filtres, voir par exemple le classique [Bellanger]), de fiabilité des matériels, ou les aléas consubstantiels aux machines quantiques. Voir ici par exemple Bailly et Longo, qui appellent de leurs voeux un « grand théorème négatif » [Bailly] Pour formaliser cette imprévisibilité, on pourrait ici se référer aux automates finis, dont l'effet sur l'extérieur pour s'exprimer sous la forme O = f(I,E) : les sorties sont fonction des entrées et de l'état du système. L'imprévisibilité de la sortie, ce que perçoit le spectateur, peut venir :
3 La résonance Trouver de l'incertain n'est donc pas un problème. D'ailleurs il suffit d'allumer son téléviseur sans brancher d'antenne ! Ce qui compte, c'est générer de l'imprévisible intéressant, qui évoque en nous une résonance plaisante, ou « édifiante », voire « apaisante ». Autrement dit, pour ne pas employer le mot « beau » qui est actuellement strictement tabou, il faut élaborer des critères esthétiques programmables. Où les trouver, et comment les programmer ? En matière d'arts plastiques, ne comptons pas sur les critiques d'art pour nous les fournir ! La critique technique, analytique, a radicalement disparu. Il y a une crise de la critique comme une crise de l'art (la littérature est très vaste, voir [Jimenez][Miller] entre bien d'autres). Il ne subsiste que le binaire « j'aime/j'aime pas » du commun des mortels, qui se traduit dans la presse par « j'en parle/je n'en parle pas ». A fortiori, les critères quantitatifs sont exclus... sauf la cote des oeuvres et des artistes dans les grandes ventes. [Robertson]. Pourtant, les appareils de photo numériques, par exemple, ne cessent d'intégrer des critères esthétiques à leur fonctionnement :
N'en déplaise aux esthètes et aux théoriciens, il est donc possible de programmer quelques règles esthétiques de base. Roxame nous a conduits, empiriquement, à mettre au point un « optimum de complexité » rudimentaire. Nous n'entrerons pas ici dans les vastes débats que ce terme implique (voir entre autres [Aho], [Delahaye] ou, sur un autre terrain, « La méthode » d'Edgar Morin). Nous nous contentons de compter le nombre de pixels qui diffèrent de leurs voisins à droite et au dessus. L'expérience montre que deux tiers de pixels différents donnent les meilleurs résultats à un niveau intermédiaire de l'oeuvre (avant les phases de dégradé et de rendu). Mais quand, dans quelle phase du processus appliquer ces règles ? Ex_ante : filtres et générateurs La première solution est d'appliquer des critères au début du processus, au plus près de la naissance du flux aléatoire. Nous pouvons distinguer plusieurs approches complémentaires. La première cadre le flux, y introduit des contraintes ; on peut par exemple générer mathématiquement des surfaces géométriques dans la « neige » du bruit blanc. Si l'on emporte une caméra « dans la nature », le cadrage s'applique à sa position, à sa focale, au choix des lieux et des objets : la forêt voisine si on aime le sous-bois, dans la chambre de sa meilleure amie si on aime les « académies » (et qu'elle aime aussi). On peut aussi découper intelligemment des tranches de roche dans certaines carrières italiennes (paesinas). Toutes ces méthodes se regroupent sous le concept général de filtre. Mais la simplicité apparente de ce concept est un peu trompeuse, tant il peut être étendu, de la bonnes vieille « bonnette » de la photographie d'hier jusqu'au traitement du signal et à tout le traitement d'images. Quand le filtre n'est plus d'ordre limité, appliquant une transformation simple pixel par pixel (filtre sans mémoire), il devient à la limite « créatif », ou « génétique », avec les convolutions et déconvolutions, les opérations morphogéométriques etc. Le filtre met en jeu une mémoire de plus en plus grande, pour travailler sur des groupes de pixels importants avec des fonctions complexes. À la limite, le processus de filtrage tient compte pour chaque pixel de toute l'image et de la totalité du système. La deuxième solution ex_ante consiste à projeter le flux aléatoire dans une panoplie d'algorithmes génératifs, le hasard intervenant alors pour choisir parmi ces algorithmes (formes, couleurs) et parmi les paramètres qui les régissent ; on peut même faire aller le hasard un peu en profondeur, par exemple pour donner un caractère « naturel » à un tracé de trait. Dès avant l'apparition de l'ordinateur sont apparus plusieurs codes de ce type : [Schillinger] pour la musique et quelques formes, Calliope[Ducrocq] pour le texte et la pixelisation des images. Enfin, dans les années 1970, les diverses versions d'Aaron [McCorduck] puis les productions des algoristes. Quelques algorithmes génératifs dans Roxame (extraits du dictionnaire, voir plus bas) : form list CF_ arrow.tr ellipse line quad octagon letters rectangle pixel triangle Plutôt que de filtre, on pourrait décrire cette solution comme la transformation du flux aléatoire par un jeu de prismes et de mécanismes. En pratique, c'est ce jeu algorithmique qui s'assimile le flux, faisant appel, au moment qui lui conviennent, aux bits suivants du flux aléatoire, que ce soit bit par bit (booléens), par caractères ou groupes de caractères (nombres, mots) ou par paquets plus lourds (bitmaps, textures, images). Ces algorithmes, ces processus, impliquent toujours peu ou prou des paramètres numériques, porteurs du « tuning ». Ils sont essentiels dans le caractère « esthétique » de la création, et leur détermination peut représenter un travail considérable d'essais et de mises au point. Mais leur existence même est en général masquée par les artistes eux-mêmes, soit qu'ils n'aiment pas vraiment les nombres, soit qu'ils préfèrent garder leurs secrets de fabrique. Dans quelques cas, ces paramètres sont eux-mêmes sacralisés : nombre d'or, ou formules plus globales comme « l'homme est la mesure de toutes choses » (Protagoras). Quelques auteurs les explicitent, comme Le Corbusier avec son « Modulor » (1943). Les musiciens font ici exception, avec la prolifération de leurs... mesures ! En matière d'arts numériques, ces paramètres sont multiples, et cachés dans le fond des codes : nombre d'itérations d'une boucle, relation à la taille de l'écran, palettes de couleurs, choix de positions et de proportions et, dès qu'il s'agit d'oeuvres animées ou interactives, durées et rythmes. Ex_post : mesure et sémantique Cette approche est symétrique de la précédente. On laisse le processus génératif avancer et on évalue le résultat. A minima, on attend la fin de l'oeuvre, et on la considère comme bonne ou mauvaise. On programme le « j'aime, j'aime pas ». Un peu plus finement, on procède à un classement (ranking) et on détruit, met de côté, met en avant ou diffuse en fonction du classement. Rien n'empêche d'avoir plusieurs systèmes d'évaluation, correspondant à différents types de « goûts » pour ne pas dire de « marchés ». Parmi les critères que nous avons testés, la « complexité » citée plus haut est efficace en fin d'oeuvre. Par exemple, si on lance le programme tourner de façon autonome et donc générer un grand nombre d'oeuvres (mettons une centaine au cours d'une nuit), il est bien pratique de mettre automatiquement de côté les images toutes blanches ou toutes noires. Mais il faut appliquer ici le critère des deux tiers en finesse, car des algorithmes de rendu peuvent fortement rapprocher des 100 %, et certaines formes de stylisation peuvent au contraire aller vers des images très « simples » (mais elles exigent en général une haute résolution, ce qui est une autre façon d'accroître la « complexité »). Parmi les autres critères que nous avons testés, citons :
Le dernier point n'a été qu'effleuré, mais c'est pourtant le plus prometteur, surtout pour les arts plastiques. En effet, en général, un spectateur apprécie d'autant plus une oeuvre qu'elle évoque pour lui des objets connus, qu'il « y voit quelque chose » (Ce n'est pas bon quand « on n'y voit rien », selon le titre d'un ouvrage récent [Arasse]). Ce critère sémantique était hors de portée tant que les algorithmes de vision restaient lourds et peu efficaces. Ils deviennent aujourd'hui faciles d'accès (par exemple avec Open CV), et se répandent jusque dans les machines de jeu (Nintendo DSi par exemple, avec des applications impressionnantes bien que ludiques). Il est d'autant plus intéressant qu'il permet entre images et texte une relation de génération réciproque. Il sera intéressant de développer (ou de voir apparaître) des logiciels de description d'image, qui pourront inclure des volets d'évaluation. Ces descriptions auront, pour la création artistique, un double avantage :
Au-delà de la sémantique « froide » (mots évoqués par une image), se profile une sémantique « chaude », avec ses émotions, ses intentions (et les difficultés rencontrées à les traduire dans des oeuvres) et même ses motivations. Ces termes, pour le moins étrangers au paradigme informatique traditionnel, sont maintenant utilisés de manière opérationnelle par les roboticiens. Voir par exemple [Bisognin] pour l'émotion, [Clodic] pour l'intention, avec un commentaire par la philosophe [Pacherie] et même [McFarland] pour la motivation). Nous n'en avons pas exploré les possibilités dans Roxame, mais la représentation artistique des émotions devient un domaine substantiel de développement. Les robots en sont souvent le support, soit matériellement pour étudier l'importance des expressions dans le dialogue homme-machine Mais pourquoi attendre la fin de cycle de création d'une oeuvre pour l'évaluer ? Il est souvent intéressant d'évaluer la création en cours de route, et de créer ainsi des boucles d'essai-correction visant cybernétiquement une valeur cible, par exemple la complexité, particulièrement facile à encadrer par des panoplies d'algorithmes de « complexification » ou de simplification. Ces méthodes peuvent être combinées, notamment dans l'« art génératif » [Lioret] inspirés tant par la recherche opérationnelle [Siarry] que par la modélisation de la vie et des processus darwiniens de combinaison aléatoire et de sélection (les critères de « fitness » jouant le rôle de critères « esthétique ») [Whitelaw]. Citons aussi, pour honorer l'histoire, les démarches de [Schillinger]. 4. Structurer pour mieux intéresser La montée vers de véritables résonances inédites passe par la construction progressive de « systèmes » qui développent leur complexité de manière de plus en plus puissante, structurée, Dans ce développement, les systèmes deviennent à la fois de plus en plus aléatoires (au sens du hasard ci-dessus) et de plus en plus « intéressants » parce qu'ils ne révèlent pas les évolutions plus ou moins browniennes d'un dispositif simpliste mais le développement et le comportement structuré d'« êtres » (par exemple des « painting beings », selon [Lioret]). Ces architectures conjuguent deux structures de base, la séquence et la boucle. La séquence globale conduit du début de l'oeuvre, de la « page blanche » à l'oeuvre achevée (en tous cas pour les créations plastiques traditionnelles ; pour les oeuvres de performance, on pourrait dire « de processus », il y a au départ la structuration même du fonctionnement de l'oeuvre). Elle peut se décomposer en nombreuses sous-séquences. Une séquence créative n'est pas réversible. Il peut y avoir des retours en arrière, des repentirs (undo/redo), mais l'on va toujours en complexité croissante. La séquence peut conduire à un cul-de-sac, et il faut repartir d'une page blanche. Typiquement une oeuvre peinte commence par la construction d'un modèle, d'une construction générale (composition au sens traditionnel, que l'on pourrait décrire comme la construction d'un complexe simplicial), qui s'affine et se précise (esquisse, passage aux formes complètes ), assemble éventuellement des composants de plusieurs origines (compositing) et se termine par un rendu, une touche finale, avec les textures et les éclairages (rendering). Cette linéarité s'intègre des boucles, par exemple :
Comment organiser tout cela ? Classiquement, les séquences et les boucles associées se disposent en couches. Au niveau le plus global, s'affrontent deux types d'architectures, défendues parfois avec passion par certains artistes (et plus généralement par certains informaticiens, sans parler des politiques) :
D'esprit opposé, ces deux approches peuvent se combiner. Dans un système robotique, par exemple, il peut être opportun de se contenter d'algorithmes impératifs à bas niveau (pilotage élémentaire des moteurs) et de faire en revanche un large appel au connexionisme au niveau le plus élevé, celui des intentions et des émotions. Les développeurs peuvent ici trouver des inspirations aussi bien chez les roboticiens que chez les psychosociologues, qui recourent de plus en plus aux mêmes concepts : comportements, hiérarchies, langages. (Comparer par exemple [Kaufmann] et [Mourioux]). Noter que, sur les architectures de robots, il n'existe pas actuellement, à notre connaissance, de bon ouvrage de synthèse, ni en français, ni en anglais). 5. Le dictionnaire, une forme d'architecture Roxame a eu besoin, dès le départ, d'un système de commandes pour écrire des processus de création, des styles, en quelque sorte. Le premier germe (1990, Turbo C) se limitait à quelques lettres saisies en ligne de commande
Puis le développement a suivi les voies habituelles de la généricité et l'orthogonalité, pour rendre indépendants formes et couleurs, puis formes et positions... Il est toujours possible de faire fonctionner le programme de cette façon : h h v v red paint circle green rectangle Le système s'enrichissant, il devenait indispensable de pouvoir stocker de tels « scripts », et de pouvoir les appeler à la demande, soit en ligne de commande, soit en fonctionnement autonome répétitif. D'où l'idée d'un fichier persistant de chaînes de caractères, puis finalement d'un dictionnaire, assorti de catégories syntaxiques pour en diversifier l'analyse par un petit parser. Dans le cas particulier de Roxame, au fil de son développement, le dictionnaire a fini par jouer un rôle central. La boucle principale de fonctionnement ne fait pratiquement qu'y renvoyer void draw() { Le premier wordtobedone est la session a_day, qui lance une boucle d'exécution de work, chaque work commençant par une mise en place d'en environnemnt de base (page blanche, couleur terre de sienne, etc.), exécution proprement dite, action, puis phases terminales : nommage de l'oeuvre, stockage d'un fichier de description pouvant contenir une analyse critique assez étoffée), stockage de l'oeuvre proprement dite. L'intérêt d'un tel dictionnaire est de tout rattacher
Voici des exemples des principales catégories syntaxiques du dictionnaire (chaque terme est suivi de sa catégorie puis de sa « définition ») brown color 119 45 37 La suite des développements nous a conduits à mettre en place des structures annexes, notamment pour faire des présentations, ou pour écrire sous forme séparée des scripts trop longs pour tenir commodément dans une macro-instructions. Le dictionnaire donne aussi un accès direct à des ressources internes, actuellement des images et des textes quelconques, pourquoi pas bientôt des ressources Internet. Cela fait encore un langage de plus... pourquoi ne pas se satisfaire des nombreux langages disponibles ? Ce point n'est pas critique pour nous (et de meilleures solutions naîtront sans doute des réflexions des Algoristes). 6. Boucles externes : développement et monde de l'Art Toute activité artistique fonctionne en boucle : création, présentation au public, reconnaissance et critique par ce public, changement (progrès ou simplement exploration de nouveaux domaines) du projet créatif. Dans le cas d'un système autonome, la boucle se dédouble. À un premier niveau, le système produit des oeuvres (ou effectue des performances) et peut tenir compte des réactions du public, de même que Google adapte ses prestations au ranking des documents ; cela peut inclure des dispositifs d'apprentissage ; l'étendue de ce « public » est elle-même plus ou moins large, depuis le cercle de l'atelier, de l'école, des confrères, de quelques galeristes amis jusqu'au plus large marché de l'art, et à la limite, l'inscription dans le « grand récit » du progrès de l'art (si l'on est « moderne ») ou de ses évolutions non orientées (si l'on est « postmoderne »). Selon [Menger], il est dans la nature de l'art que ces boucles incluent des rétroactions positives qui déterminent le sort des artistes et qui, dans quelques cas, les élèvent aux niveaux supérieurs de la renommée... et de la cote. Une partie de ces procédures pourraient s'automatiser. À un deuxième niveau, c'est l'auteur du programme qui en poursuit le développement, ou qui en construit de nouveaux, de manière à produire toujours de l'inédit, à toujours surprendre son public :
Une part du progrès passe par l'internalisation des ressources, par le passage du « sampling » au procédural. Voir par exemple [Ebert] pour les textures, ou le récent piano Roland V pour les timbres musicaux. En fait y a-t-il une frontière bien nette entre les deux, comme entre bitmap et vectoriel ? Ce pourrait être un champ de réflexion théorique, débouchant même sur des constants numériques. On peut déplorer que les artistes de ces spécialités travaillent le plus souvent seuls, sans trop s'intéresser aux travaux des anciens, et sans aucun souci de la postérité de leur travail. Même dans le monde spécialisé des algoristes, qui connaît les noms de Schillinger ou de Ducrocq, voire d'Howard Cohen ? Dommage, car les voies à explorer sont multiples, et plus complémentaires que concurrentes. C'est la raison qui nous a conduit à créer, avec quelques amis, l'association Les Algoristes, reprenant le mot américain lancé par Jean-Pierre Hébert pour son groupe d'artistes américains [Algorists]. Il est d'ailleurs membres fondateur de l'association. La coopération entre artistes numériques n'est pas des plus aisées :
Nous ne désespérons pas qu'au fil de ses projets collectifs (Primeval, Alkwarel), l'association débouche sur des oeuvres aussi novatrices que collectives. À moins que, ou en même temps que, se développe une nouvelle tendance, inspirée par le post-modernisme japonais [Azuma], ne débouche sur une création par composants, l'oeuvre finale (et l'auteur) laissant défensivement la place à chaque spectateur, assemblant les composants au gré de ses goûts et de ses désirs, et créant finalement la résonance imprévisible par le remix permanent d'une immense base de ressources artistiques. Pierre Berger Cet exposé a été présenté aux 22es Journées de l'Association Francophone d'Informatique Graphique, Arles 2009 Références [Aho] Alfred Aho , John Hopcroft John and Jeffrey Ullman : The design and analysis of computer algorithms. Addison-Wesley, 1976. [Algoristes] Site HTML : http://les-algoristes.org. [Algorists] : http://hebert.kitp.ucsb.edu/studio/algorists.html [Arasse] Daniel Arasse : On n'y voit rien. Folio essais 2000. [Azuma] Hiroki Azuma : Génération Otaku, les enfants de la postmodernité. Hachette Littératures 2008. [Bailly] Francis Bailly et Giuseppe Longo : Mathématiques et sciences de la nature. La singularité physique du vivant. Hermann 2006. [Balpe] Jean-Pierre Balpe : Initiation à la génération de textes en langue naturelle. Exemples de programmes en Basic. Eyrolles, Paris, 1986. [Bellanger] Maurice Bellanger : Traitement numérique du signal. Théorie et pratique Masson 1987. [Bisognin] Luca Bisognin et Sylvie Prety : Émotions et systèmes multi-agents, une architecture d'agent émotionnel. Leibnitz-Imag, équipe Magma, [Breazeal] Cynthia L. Breazeal : Designing sociable robots. MIT Press, 2002. [Brinkmann] Ron Brinkmann : The art and science of digital compositing. Morgan-Kaufmann, 1999 [Clodic] A. Clodic, V. Montreuil, R. Alami et R. Chatila : Une architecture décisionnelle pour l'interaction homme-robot. LAAs. [Cohen] Harold Cohen : Coloring without seeing, a problem in machine creativity [Cohen] Harold Cohen : The further expoits of Aaron, painter [Delahaye] Jean-Paul Delahaye : Information, complexité et hasard. Hermès. 2e édition 1999. [Ducrocq] Albert Ducrocq : L'Ère des Robots. Julliard, 1953 [Ebert] David S. Ebert, F. Kenton Musgrave, Darwyn Peachey, Ken Perlin and Steven Workey : Texturing and modeling, a procedural approach. Morgan Kaufman 2003 [Elam] Kimberly Elam : Geometry of Design. Princeton Architectural Press 2001. French translation : Géométrie du design. Eyrolles 2005. [Jimenez] Marc Jimenez : Qu'est-ce que l'esthétique. Gallimard 1997 [Kaufmann] Jean-Claude Kaufmann : Ego. Pour une sociologie de l'individu. Nathan 2001 [Le Meur] Anne-Sarah Le Meur : « Body, numbers, light. color phenomena of Eye-Ocean, experimenta virtuail image », in the proceedings of Laval Virtual Virtual reality international conference, 2009. http://www.laval.Virtual.org. [Lioret] Alain Lioret. Émergences de nouvelles esthétiques du mouvement. L'Harmattan, coll. Champs visuels, 2004. [McCorduck] Pamela McCorduck : Aaron's code. Metaart, artificial intelligence and the work of Harold Cohen. Freeman 1991 [McFarland] David McFarland and Thomas Bösser : Intelligent behavior in animals and robots. MIT Press 1993. [Menger] Pierre-Michel Menger : Le travail créateur. S'accomplir dans l'incertain. Gallimard/Le Seuil, 2009 [Millet] Catherine Millet : L'art contemporain, histoire et géograhie. Flammarion, 2006. [Mourioux] Gilles Mourioux : Architecture fonctionnelle pour les robots. JJC/LVR 19/02/2004. [Pacherie] Élisabeth Pacherie : Le robot n'a que des intentions simples. Interview par Azar Khalatbari. Science et avenir, no 724, juin 2007. [Rancière] Jacques Rancière : Malaise dans l'estshétique. Galilée 2004. [Robertson] Iain Robertson ed. : Understanding international art markets and management. Routledge 2005 [Schillinger] Joseph Schillinger : The mathematical basis of the arts. Philosophical library, New York, 1948 ___________________ |