LA CRÉATION D’ALGORITHMES DANS LE DESIGN GÉNÉRATIF PATRICK DONALDSON
Bachelor thésis sur le design génératif et la place de l’ordinateur dans la création contemporaine
LA CRÉATION D’ALGORITHMES DANS LE DESIGN GÉNÉRATIF
LA CRÉATION D’ALGORITHMES DANS LE DESIGN GÉNÉRATIF PATRICK DONALDSON
Bachelor thésis sur le design génératif et la place de l’ordinateur dans la création contemporaine
6
DESCRIPTION
Le design assisté par ordinateur est apparu il y a déjà une quarantaine d’années maintenant et ne cesse de révolutionner le monde du design avec l’apparition de nouveaux outils virtuels plus étonnants les uns que les autres. La technologie a permis une grande amélioration dans le processus de création. Nous observons une accélération de la production ainsi que l’apparition de projets qui naguère semblaient impossibles. Malheureusement, nous sommes toujours limités par les outils virtuels proposés qui nous formatent à leur façon de fonctionner. En réponse à ce problème, une nouvelle méthode de création est apparue depuis peu et a déjà su faire ses preuves : le Design Génératif. Dans cet essai, j’explore ce nouveau domaine, ses répercutions sur le processus de création, ses possibilités et les questions soulevées. Ma recherche s’adresse autant aux graphistes qui sont bloqués, intimidés par les outils informatiques actuels qu’aux programmeurs à la créativité inassouvie. J’aimerais mettre en lumière la place de la programmation dans la création visuelle. Cela ouvre des portes autant aux graphistes qu’aux programmeurs qui peuvent trouver dans un métier comme dans l’autre de nouvelles possibilités.
7
Pour ma famille, qui a toujours soutenu mes idĂŠes les plus folles.
SOMMAIRE INTRODUCTION 14 Motivations 15 Le Design Génératif
DÉVELOPPEMENT 24 Le Processus de Design Classique 26 Le Processus du Design Génératif 33 Abstraction de l’Idée 39 Les Règles / Algorithmes 46 Formalisation en Code Source 49 Création par l’Ordinateur 53 L’Ordinateur, Simple Outil? 54 Le Dialogue Homme / Machine 56 Les Possibilités 57 L’Interactivité 57 La Création d’Outils Virtuels 68 La Place du Créateur 69 Le Mélange Créateur / Programmeur 70 L’Enseignement Open Source
10
CONCLUSION 78 79 80
Une Pensée Personnelle Le Futur du Design Assisté par Ordinateur Mon Projet
83 Remerciements 86 Bibliographie
11
12
INTRODUCTION
13
La principale question de cet essai est la suivante : Est - ce que le design génératif est une bonne solution pour les créateurs ? Mais à travers le texte, nous observerons plusieurs interrogations telles que : Comment le design a évolué à travers l’utilisation de l’informatique ? Comment le processus créatif est - il affecté ? Le designer est - il toujours seul auteur de ses concepts ? Qui est le véritable créateur ? Est - ce que la programmation est utile dans le design ? Est - ce seulement un outil ? Que va - t - il advenir de la place du design assisté par ordinateur dans le futur ?
MOTIVATIONS
Né d’un père programmeur, j’ai été plongé dès le plus jeune âge dans le monde de l’informatique. J’ai donc évolué avec la technologie autour de moi. Dès que j’ai pu, j’ai voulu faire mes propres créations sur l’ordinateur. Tout commence réellement avec un first person shooter (FPS), un jeu de tir que je suis parvenu à programmer en suivant des tutoriels, qui m’a fait découvrir les possibilités fascinantes du code informatique. Continuant ensuite mon éducation avec un baccalauréat scientifique, j’ai développé mon côté logique, ayant toujours l’envie d’utiliser du code informatique dans un coin de ma tête. Mais mon côté créatif en demandait : en arrivant à la Haute École d’Art et de Design à Genève, j’ai eu la chance de participer à un workshop dirigé par Douglas Edric Stanley qui utilisait le code informatique pour générer des images. C’est là que j’ai découvert le monde du design génératif et l’existence de logiciels tel que processing, qui sont dédiés à cette pratique. J’ai ensuite utilisé cet outil pour plusieurs projets personnels ainsi que des projets scolaires. À pré14
sent, j’aimerais partager ma passion pour cette nouvelle méthode de création, faire découvrir son fonctionnement et son potentiel.
LE DESIGN GÉNÉRATIF
Le design génératif est l’idée d’engendrer, de donner corps à un contenu en utilisant un système de règles. Ces règles sont des algorithmes qui régissent les lois d’un univers, qui formatent une entrée à une sortie désirée. En d’autres mots, il s’agit de prendre une entrée, de la faire passer dans un système où nous allons créer les règles qui va ensuite générer un contenu. Le design génératif est en fait indépendant de l’ordinateur, mais cette appellation n’apparaît que maintenant que cette méthode est combinée à la puissance informatique et c’est exactement cette union qui m’intéresse ici. Aujourd’hui, la majorité des designers ne savent pas utiliser au mieux leur machine. Cela peut paraître logique ; quel lien y a - t - il entre le design et la programmation ? De plus, l’éducation actuelle nous apprend à utiliser les outils virtuels offerts par les grandes institutions tels qu’ Adobe, Autodesk et autres mais ne nous poussent pas à créer les nôtres. En ce faisant, le designer se retrouve limité par ces outils. Dés que l’utilisateur ne trouve pas un outil pour une tâche bien particulière, il se retrouve bloqué et forcé d’improviser avec les outils disponibles. Au final, les mêmes logiciels qui sont censés libérer notre imagination la restreignent. “ La forme suit le logiciel ” est une devise qui représente bien le problème qui se présente.
15
“ Je pense qu’il y a une grande force d’homogénéisation que les logiciels imposent aux gens et qui limite leur façon de penser ce qui est possible sur ordinateur. ” - Golan Levin1
Dans les domaines créatifs, l’ordinateur est principalement utilisé aujourd’hui pour simuler au mieux des outils réels comme le crayon, la plume, la gomme, le pinceau… sans jamais vraiment arriver à reproduire cette touche de naturel, de réalisme. Que se passe - t - il quand nous voulons nous inspirer du vent, du mouvement des poissons ou autre ? Tout ce mouvement qu’engendre le design génératif essaye de se délier du besoin de reproduire la touche humaine et de définir la touche numérique. Il s’agit donc de programmer de nouveaux outils et des univers virtuels. La puissance de calcul des nouvelles machines permet la réalisation de nouvelles idées qui n’auraient jamais vu le jour. C’est le moyen d’expérimenter des principes, des simulations et d’explorer de nouvelles façons de procéder à la création visuelle, sonore, textuelle ou physique comme nous le montre le travail de Michael Hansmeyer (voir page 18 à 21). Le but du design génératif est d’automatiser le processus créatif et de proposer des solutions parfois inattendues de façon à ce que le créateur s’occupe du système et non pas du travail de réalisation. Pour cela, le créateur doit modifier sa façon d’appréhender un problème et doit apprendre un langage qui effraie souvent : le code source.
[1] Golan Levin, TED, L’art logiciel, 2004 [2] John Maeda, Design by Numbers, 2001, p. 157 16
“ Dessiner avec la souris sur l’écran d’ordinateur est très ludique, mais […] le tracé d’un trait au crayon ne se différencie nullement du même tracé avec la souris. Le véritable défi consiste à découvrir les propriétés intrinsèques du nouveau média et à savoir en quoi le tracé informatique ne pourrait jamais être dessiné, ni même être imaginé, sans ordinateur. ” - John Maeda2 17
20
Michael Hansmeyer a produit ces colonnes utilisant la répétition de division et de pliage de la surface des structures. En partant d’une colonne simple et lisse, il y applique un système d’algorithmes grâce à l’ordinateur qui les transforment. Son emploi de la récursivité donne naissance à des constructions visuellement prenante qui sont ensuite amené dans le monde réel avec l’impression en trois dimensions.
Source images : Michael Hansmeyer, Columns, 2010 21
22
DÉVELOPPEMENT
23
Le design génératif assisté par ordinateur se différencie par son processus de création ; étant donné qu’il faut programmer, les règles sont quelque peu différentes. Comparons les deux méthodes et voyons leurs avantages et inconvénients.
LE PROCESSUS DE DESIGN CLASSIQUE
Le processus conventionnel se voit utiliser des outils réels et virtuels tels que le crayon ou le crayon de Photoshop par exemple.
Cerveau
Main
Crayon
Dessin
Cerveau
Main
Crayon Virtuel
Dessin
En prenant l’exemple du dessin manuel, le cerveau transmet ses ordres à la main, la main manie le crayon, ce qui abouti à un dessin. Le créateur finit avec un travail figé qui nécessite de recommencer du début s’il n’est pas satisfait. C’est un travail difficile qui ne laisse pas beaucoup de place à l’erreur. Mais 24
cette difficulté permet aussi une authenticité et une impossibilité de plagiat. Avec l’outil virtuel, l’avantage est que le processus est accéléré mais il existe toujours certains problèmes incontournables. Certes le designer peut maintenant revenir en arrière, corriger les erreurs plus facilement, partager son travail mais du coup il se cantonne au fonctionnalité de l’outil et le risque de copie est d’autant plus présent. La méthode que nous en observons est la suivante: Une fois que le designer trouve l’inspiration, il passe directement sur le travail de la forme finale de son projet. Ensuite, il en juge la finalité et s’il n’est pas satisfait, il recommence la réalisation en tenant compte du travail précédent. Le rendu final n’est donc pas si modulable et ne permet pas un réel développement du projet. Suivant le temps nécessaire à la réalisation, le designer se retrouve obligé de sacrifier le développement de son concept au profit de sa réalisation. Il se retrouve aussi contraint de se plier au fonctionnement des outils qu’il choisit.
Idée Création du contenu Contenu Création du prochain contenu en se basant sur le rendu précédent Contenu
Schéma du processus classique
Répétition du processus jusqu’au rendu final
Contenu 25
LE PROCESSUS DE DESIGN GÉNÉRATIF
Avec le design génératif, le créateur remplace la main et le crayon par l’ordinateur. C’est en dirigeant l’ordinateur que le l’oeuvre est générée. De ce fait, le créateur n’affecte pas directement l’oeuvre elle - même, mais plutôt l’amont, les opérations qui la produisent.
Cerveau
Ordinateur
Dessin
Le processus commence également avec une inspiration, une idée, mais la suite est bien différente. Il faut traduire cette idée en une suite de règles et d’algorithmes qui vont être écrites sous forme de code source. Comme avant, le rendu est évalué mais, contrairement à la méthode traditionnelle, le créateur ne recommence pas du début. Il a la possibilité d’affecter les règles et les algorithmes ou même quelques paramètres de ces derniers. Ces étapes se répètent jusqu’au résultat voulu, le résultat s’affinant à chaque itération (voir page 28 à 31).
[3] Hartmut Bohnacker, Benedikt Gross, Julia Laub, Claudius Lazzeroni, Design Génératif : Concevoir, Programmer, Visualiser, 2011, p. 462 26
“ Contrairement au processus conventionnel, il ne s’agit pas de modifier manuellement l’image, mais d’intervenir sur l’abstraction sousjacente ou sur certains paramètres du programme.”
- Hartmut Bohnacker, Benedikt Gross, Julia Laub, Claudius Lazzeroni3 27
Markus Persson est à l’origine du jeu Minecraft, sortie en 2011. Le jeu est typé bac à sable (construction libre). Les mondes du jeu sont créer de façon générative, à partir d’une suite d’algorithmes, les éléments se placent, terrain, arbres, grottes… Sans cela, le jeu aurait eu beaucoup moins de succès. Si les joueurs ne pouvait qu’évoluer dans un monde bien défini, la monotonie aurait vite fait des ravages.
Source images : Markus Persson, Minecraft, 2011 31
Schéma du processus génératif4
Idée
Abstraction
Règles Algorithmes
Modification des règles
Formalisation en code source, définition des paramètres de départ Code source Interprétation par la machine, création du contenu Contenu
Modification du code source, des paramètres
Concepteur
Évaluation du rendu
Il y a clairement des avantages à ne pas recommencer depuis le début et à laisser à l’ordinateur plus d’autonomie. De plus, le processus génératif permet au créateur d’organiser le système, le niveau supérieur du travail et non pas le rendu final fixe. Le créateur n’est plus contraint par le fonctionnement des outils virtuels disponibles, à l’inverse, il les créés. Je vous propose maintenant de voir le fonctionnement des différentes étapes.
[4] Source : adapté de Hartmut Bohnacker, Benedikt Gross, Julia Laub, Claudius Lazzeroni, Design Génératif : Concevoir, Programmer, Visualiser, 2011, p. 461 32
ABSTRACTION DE L’IDÉE
“ Une idée n’est rien de plus qu’une combinaison nouvelle d’anciens éléments. ” - James Webb Young5
Souvent, le design génératif s’inspire du monde réel, des propriétés physiques, des mouvements, des croissances… La raison à cela est la partie clé de cette étape : il faut pouvoir traduire son idée en étapes claires et précises et en s’inspirant des règles déjà existantes, l’abstraction est plus simple. Cette première étape se résume à créer les règles et les algorithmes qui vont permettre d’aboutir à son idée. C’est la mise en place du fonctionnement de l’univers. En quelque sorte, c’est comme “ jouer à dieu ”. Il est souvent conseillé de mettre au clair les différentes parties de l’idée sur une feuille pour faciliter la création des algorithmes.
[5] James Webb Young, A technique for producing ideas, 2003, p. 10 33
En utilisant la danse comme source d’information, le studio berlinois Onformative a réalisé une vidéo nommée Unnamed Soundsculpture. Les positions de la danseuse sont enregistrées pour ensuite générer des grains de sables qui la remplacent. Le système s’occupe de calculer la position et de produire chaque image.
Source images : Onformative, Unnamed Soundsculpture, 2011 34
“ Malgré le lien étroit entre le développement de l’art génératif et l’évolution de l’ordinateur, les ordinateurs sont juste une commodité. Les vrais outils de l’art génératif, les constantes se cachant derrière les différents outils utilisables, sont les algorithmes.”
- Matt Pearson6 38
LES RÈGLES / ALGORITHMES
Tout d’abord, qu’est - ce qu’un algorithme ? Ils sont souvent comparés à une recette de cuisine. Nous prenons les ingrédients de base et les préparons de telle manière à aboutir à un repas. C’est une suite de pas qui aboutit à quelque chose. Prenez A
Mélangez avec B
Chauffez A + B
Comme le dit wikipédia7, un algorithme est une suite finie et non ambiguëe d’opérations ou d’instructions permettant de résoudre un problème. C’est le plan pour arriver à une fin désirée. Venant du mathématicien perse AlKhawarizmi connu comme étant le “ père de l’algèbre ”, les algorithmes sont aujourd’hui utilisés partout. Quand nous créons des algorithmes, nous faisons miroiter ce qui se passe dans nos têtes. C’est le processus de codifier les étapes auxquelles nous pensons et de les extérioriser pour qu’elles puissent ensuite être effectuées par l’ordinateur.
[6] Matt Pearson, Generative Art : a Practical Guide using Processing, 2011, p. 9 [7] Philippe Flajolet, Étienne Parizot, Wikipédia, Algorithme, 2014 39
Les algorithmes sont universels. Nous remarquons que même si la technologie évolue constamment, les algorithmes restent inchangés. Pour aider à mettre en place les algorithmes, voici une liste de cinq propriétés mise en place par Donald Knuth, professeur à l’université de Stanford : 1. La Finitude Un algorithme doit démarrer et s’arrêter. Les règles encapsulées doivent également aboutir dans un temps raisonnable. Cela dépend bien entendu de la nature de l’algorithme mais il est impossible qu’il dure une éternité. 2. La Qualité de définition Les actions de l’algorithme doivent être précises et non ouvertes à plusieurs interprétations. La suite d’étapes ne peut pas se répéter pour “ quelques ” tours, mais pour un nombre défini de tours (e.g. 2, 10, 984 ou un nombre aléatoire). 3. Les Entrées Les calculs commencent grâce à un état initial, l’algorithme requiert des valeurs, des quantités qui lui sont données avant qu’il ne commence son processus (e.g. une position, des couleurs…). 4. Les Sorties L’algorithme doit produire un résultat qui est directement lié à son ou ses Entrées. 5. L’efficacité Les opérations effectuées par l’algorithme doivent être simples, définissables en quelques mots. Ces étapes doivent être logiques par rapport aux Entrées.
“ Un algorithme doit être vu pour être cru, et le meilleur moyen d’apprendre de quoi il en retourne est de l’essayer. ” - Donald Knuth8 [8] Donald Knuth, The Art of Computer Programming Vol.1 : Fundamental Algorithms, 1973, p. 4 40
Certains problèmes se révèlent plus complexes que d’autres. Changer une suite de nombres en une suite de caractères est relativement simple, alors qu’implémenter les règles du génome humain et voir l’évolution d’une structure comporte beaucoup plus de complications (voir page 42 à 45). Divide ut regnes Ce genre de situation favorise une méthode appelée “ Diviser pour régner ”. Comme son nom l’indique, l’idée est de diviser le problème en sous - problèmes du même type. Il suffit ensuite de concevoir un algorithme qui lie les différents sous - algorithmes entre eux. Cette solution est très intelligente : elle permet d’attaquer le problème pas à pas et cela permet au programmeur d’avoir une suite d’étapes bien divisée, facile à comprendre et donne une certaine facilité dans la correction des erreurs. La prochaine étapes est celle qui fait fuir nombre de créateurs : il faut maintenant traduire les algorithmes définis en code source.
“ Un logiciel = Des algorithmes + Des donnés structurées. ” - Niklaus Wirth9
[9] Niklaus Wirth, Algorithms + Data Structures = Programs, 1976, couverture 41
Dans “ Fuel ”, un jeu développé par Asobo Studio, le joueur peut parcourir 14400 kilomètres au volant de son véhicule. Le titre a remporter le Guinness World Record 2009 pour l’aire de jeu la plus grande dans un jeu vidéo console. En effet, si le jeu utilisait un monde où les détails était géré manuellement, il serait impossible d’offrir autant de place à l’utilisateur sans une dizaine de CDs. Les développeurs ont donc mis en place une suite d’algorithmes qui permettent la création de l’univers en temps réel, ce qui leur a permis de générer un monde immense de 120 par 120 kilomètres.
Source images : Asobo Studio, Fuel, 2008 43
Michael Schmitz a travaillé sur l’identité visuelle de Max Planck Institute. La compagnie de recherche biologique travaille sur les cellules et la génétique. En s’inspirant de leur domaine de recherche, Michael a mis en place un logo évolutif qui se nourrit des informations de la compagnie : le nombre d’employés, les fonds… Chaque mois, un nouveau logo est généré et après avoir passé une épreuve de santé définit par quelques règles, les employés de la compagnie votent pour le prochain logo qui les représente.
GenoTyp de Michael Schmitz est un logiciel de typographie générative. Le projet s’inspire du génome humain pour modifier une typographie choisie. Génération par génération, les mutations affectent le squelette de la lettre et ensuite cette dernière passe une épreuve de santé pour voir si la mutation est bonne ou mauvaise.
Source images gauche : Michael Schmitz, Evolving Logo, 2006 Source images droite : Michael Schmitz, GenoTyp, 2004 45
FORMALISATION EN CODE SOURCE
Pour utiliser tous les avantages de l’ordinateur, il faut utiliser un langage spécialisé : le code informatique. Il existe des milliers de langages de programmation et de nouveaux sortent constamment. Ces langages sont une façon de dialoguer avec l’ordinateur. Ils sont rendus compréhensibles pour l’homme. Chaque langage informatique possède une syntaxe et une sémantique bien précise. Comparé aux langues humaines, il n’existe pas d’ambiguïté. Il n’est pas possible de créer un double sens avec le code informatique et si l’auteur du code commet une faute, l’ordinateur sera incapable de comprendre et produira des erreurs. En tant que développeur, il faut être le plus clair et le plus précis possible car l’ordinateur ne peut pas deviner une opération qui n’est pas clairement exprimée. Les premiers langages sont apparus au milieu du 20e siècle avec l’arrivée des premiers ordinateurs. Contrairement à ce que nous trouvons actuellement, le code source était constitué uniquement de 1 et de 0 (ce qui lui a donné son nom de langage binaire en raison de ce “ binôme ” de caractères). C’est le langage de la machine, nous admettrons qu’il est difficile à lire. Aujourd’hui, nous avons recourt à des langages qui permettent de contrôler l’ordinateur avec des mots plutôt qu’avec des suites binaires.
“ Les outils de programmation consistent maintenant, plus que jamais, à remplir des champs, ce qui facilite l’écriture de programmes mais conduit à la création de logiciels moins originaux et qui se ressemblent davantage les uns les autres. ” - John Maeda10
[10] John Maeda, Code de Création, 2000, p. 114 46
“ 01001000 01100101 01101100 01101100 01101111 00100000 01010111 01101111 01110010 01101100 01100100 00100001 ”
- Ordinateur 47
Nous remarquons que certains langages sont tellement simplifiés qu’il suffirait presque de remplir quelques champs et de choisir quelques options qui accélèrent l’écriture du programme. Mais comme l’explique John Maeda, en créant un outil pour écrire du code source, nous perdons un certain degré d’ouverture et de possibilités, ce qui restreint de nouveau le créateur. Il s’agit donc de choisir la bonne méthode pour la bonne tâche ou le bon langage pour le bon programme. Le langage informatique est souvent une barrière pour le créateur visuel. Cela nécessite un temps d’apprentissage, un temps qui peut parfois être long et douloureux. Mais son apprentissage est indéniablement facilité année après année avec les logiciels actuels et la récompense est largement rentable. Une fois que nous savons aiguiller l’ordinateur, tout devient possible.
“ Savoir programmer vous donne les pouvoirs magiques qui font faire à vos machines ce que vous voulez qu’elles fassent. ” - Evan Korth11
Peut - être que bientôt, grâce aux avancées du domaine informatique, il suffira de parler à l’ordinateur pour programmer, de décrire ce que nous voulons voir et il s’exécutera. Mais nous ne sommes pas encore là.
[11] Evan Korth, OffBook, Is Code the most important Language?, 2013 48
CRÉATION PAR L’ORDINATEUR
Il faut maintenant exécuter le programme et voir la magie opérer. Souvent, quand le programmeur lance son programme pour la première fois, il est loin du résultat final qu’il imaginait. Il s’agit maintenant de modifier les algorithmes ou les paramètres de ces derniers pour affiner le rendu. Au fur et à mesure des changements, le créateur se rapproche de sa vision initiale.
“ […] quand on a fini d’écrire, l’écriture elle - même se met à créer. Le code devient une machine, et il est fascinant de voir de quoi elle est capable. ” - John Simon12
Après plusieurs itérations du processus, le projet avance rapidement et voit une unicité indéniable par rapport à d’autres projets (voir page 50 à 53). La fin d’un projet peut facilement donner naissance à un autre et les idées se nourrir les unes les autres.
[12] John Simon, Jr., Code de Création, 2000, p. 46 49
Chaque montre produite par Montblanc comporte des caractéristiques bien spécifiques : les matériaux utilisés, la complexité, le poids… En reprenant ces informations, le studio Onformative a créé un système où les caractéristiques d’une montre vont générer un visuel qui accompagne la montre.
Source images : Onformative, Montblanc Generative Artwork, 2011 52
L’ORDINATEUR, SIMPLE OUTIL? “ Comme par le passé, la compétence en matière de conception reste du côté du concepteur, l’ordinateur assumant le rôle de l’assistant toujours disponible. ” - Hartmut Bohnacker, Benedikt Gross, Julia Laub, Claudius Lazzeroni13
L’outil est un instrument physique que l’homme utilise pour intervenir dans son environnement. Il améliore les capacités et permet de nouvelles actions autrement impossibles. Chaque outil permet d’améliorer notre intellect, et ce faisant, nous inventons constamment de nouveaux instruments et ainsi de suite. Tout outil est une extension de l’homme, soit de son corps, soit de son esprit. Dans le cas de l’ordinateur et ce à quoi il nous donne accès, nous pouvons le considérer comme une extension de la pensée. Comme le soutient Golan Levin: “ le langage est un outil, mais il a évolué pour devenir une partie de nous. ”14 Il suppose qu’un jour, l’informatique fera de même et vivra en symbiose avec l’homme.
[13] Hartmut Bohnacker, Benedikt Gross, Julia Laub, Claudius Lazzeroni, Design Génératif: Concevoir, Programmer, Visualiser, 2011, p. 463 [14] Golan Levin, Code de Création, 2000, p. 140 53
LE DIALOGUE HOMME / MACHINE
“ Si l’écriture est un véhicule de la pensée, le logiciel est un agent de la volonté. Quand il exécute ma volonté, le logiciel et moi - même formons une unité coextensive de pensée et d’intention. ” - Golan Levin15
L’ordinateur est un assistant actif dans la création. Grâce au créateur, une idée survient qui grâce à l’assistant, elle est exécutée. Mais cela va beaucoup plus loin : la création générative fait naître un réel dialogue entre l’homme et la machine, “ une unité coextensive de pensée et d’intention ”.
“ […] j’ai étudié les ordinateurs à tous les niveaux, […] et j’ai commencé à les voir plutôt comme des lieux spirituels de réflexion. ” - John Maeda16
L’ordinateur est peut - être là pour tout bêtement exécuter le code, mais ce faisant, il donne peut - être un résultat complètement inattendu. C’est ici que commence le dialogue. Comme si l’ordinateur avait un esprit propre, il propose des solutions auxquelles nous ne pensons peut - être pas, comme ses propres idées. Le créateur devient spectateur de son propre travail : il le découvre au moment où il lance le programme. Dans ce dialogue, l’ordinateur agit comme l’émetteur et le développeur comme le récepteur. Les rôles sont inversés. De ce fait, le créateur jongle constamment avec les rôles, chaque lancement du programme
[15] Golan Levin, Code de Création, 2000, p. 140 [16] John Maeda, TED, Comment l’art, la technologie et le design guident les dirigeants créatifs, 2012 54
générant de nouvelles pistes, de nouvelles idées. Grâce à cette discussion, l’idée est sans cesse améliorée, ainsi que le programme, jusqu’à trouver la version la plus parfaite à nos yeux.
“ Je suis dans un état constant de surprise et de découverte, car le programme exécute des compositions auxquelles je n’aurais jamais pensé, ou qui m’auraient demandé des heures si j’avais dû les exécuter à la main. ” - Joshua Davis17
[17] Joshua Davis, Code de Création, 2000, p. 142 55
LES POSSIBILITÉS
Le design génératif est une méthode de création qui permet un champs de possibilités immense. Il est désormais possible de transformer n’importe quelle information en une autre et par conséquence connecter n’importe quelle donnée à une autre. Que ce soit la position géographique avec le volume d’un son, la taille d’un cercle avec le mouvement des mains ou même la traduction de source visuelle en sculpture trois dimensionnelles. Voyons le schéma18 ci - dessous qui montre bien les variations possibles.
Valeur
Valeur
Texte
Texte
Image
Image
Son
Son
Vidéo
Vidéo
Donnée Statique
Système Génératif
Donnée
Donnée Dynamique
Modèle 3D
Interaction
Commande
…
…
Entrée
Sortie
[18] Source : adapté de Cedric Kiefer, Conference on Generative Design, 2012 56
Exemple d’utilisation
Excel Photoshop Illustrator After Effects Cinéma 4D 3DS Max Impression 3D Découpe laser Arduino Mur de DEL Projections Robots Musique …
L’INTERACTIVITÉ
Habituellement, quand nous exécutons le programme créé et qu’il ne nous donne pas quelque chose de satisfaisant, nous retournons au code pour changer quelques paramètres, exécutons à nouveau, et ainsi de suite. Mais il est possible d’aller plus loin et de mettre en place un “ GUI ”. Le GUI est une interface graphique pour l’utilisateur qui permet de faire apparaître des boutons, des réglettes et des curseurs pour changer des valeurs en direct. Le créateur évite donc de retourner à chaque fois dans le code pour changer les variables. Ce “ menu ” accélère encore plus le processus et permet de rajouter des fonctionnalités facilement. C’est ici que l’on trouve l’étape prochaine ; la création d’un véritable outil.
LA CRÉATION D’OUTILS VIRTUELS
En utilisant les outils virtuels à disposition, comme la barre d’outils d’Adobe, les designers rencontrent un problème. Tôt ou tard, les créations qui nous semblaient uniques sont dupliquées et imitées, tout le monde utilise les mêmes outils et finit par produire des travaux qui se ressemblent. Comme le soutient Kostas Terzidis, la question n’est plus d’avoir une recherche poussée ou de créer
57
une nouveauté, mais juste d’avoir un style différent des autres19 .
“ […] désormais, le créateur peut être son propre “ outil ”. En effet, tout programme génératif est aussi simultanément un outil logiciel personnalisé, […] ” - Hartmut Bohnacker, Benedikt Gross, Julia Laub, Claudius Lazzeroni20
Grâce à la programmation et au design génératif, certains designers sont en train de sortir de ce qui est prédéterminé par les grandes compagnies et poussent le monde du design en avant. C’est en augmentant les outils actuels, ou en créant les nôtres, que nous innovons vraiment. La programmation nous donne la possibilité de tout faire, pourquoi ne pas en profiter ? Au niveau de la communication visuelle, il est intéressant de voir que le rendu au client n’est peut - être plus une charte graphique papier mais plutôt un logiciel exécutable qui contient les règles de l’univers graphique codé à l’intérieur. De cette façon, le client ne pourra pas commettre d’erreur : il ne pourra plus qu’utiliser les algorithmes mis en place par le designer et créer ses propres idées sans s’éloigner de l’idée mère (voir page 60 à 65).
[19] Kostas Terzidis, Algorithms for Visual Design : Using the Processing Language, 2009, p. xx [20] Hartmut Bohnacker, Benedikt Gross, Julia Laub, Claudius Lazzeroni, Design Génératif : Concevoir, Programmer, Visualiser, 2011, p. 464 [21] John Simon, Jr., Code de Création, 2000, p. 46 58
“ La programmation créative permet de donner vie à ses propres modèles et d’inventer de nouveaux types de logiciels. ”
- John Simon, Jr. 21 59
L’identité visuelle de la Casa da Música réalisée par Stefan Sagmeister utilise un algorithme simple : en prenant une image, ce dernier génère le logo qui va apparaître sur celle - ci. Il a conçu un programme qui présente les possibilités générées à partir de positions très précises sur l’image.
Source images : Stefan Sagmeister, Casa da Música, 2007 61
Actelion Imagery Wizard est un logiciel complet créé par Onformative. C’est un outil pour l’identité visuelle d’une compagnie pharmaceutique. Prenant en compte l’idée de structure et de croissance, le programme permet de transformer de simples images. Le studio a créé des algorithmes qui formatent n’importe quelle image aux règles de leur identité.
Source images : Onformative, Actelion Imagery Wizard, 2011 65
Okdeluxe, un studio de designer londoniens ont mis au point un logiciel pour le logo de la conférence de changement climatique des Nations Unies à Copenhagen. Ils ont utilisé un algorithme d’émergence de façon à représenter des mouvements autour d’une sphère, comme la météo autour de la terre. Ces mouvements sont ensuite animés et utilisé dans des vidéos, ou exporter pour le support papier.
Source images : OkDeluxe, Cop15, 2009 66
LA PLACE DU CRÉATEUR
Beaucoup des tâches qui anciennement étaient manuelles sont maintenant automatisées grâce aux ordinateurs. Cela soulève chez certains le débat de la place du créateur et de son statut d’auteur. Qui est le réel innovateur ? Le designer utilisant l’outil pour son travail ou le programmeur ayant pensé à ses fonctions et l’ayant créé ? Certes, le designer va créer l’étonnement chez le spectateur, mais c’est seulement grâce aux possibilités fournies par l’outil. Dans ce cas, ne pourrait - on pas dire que le programmeur est le réel créateur ? Il semblerait qu’au final, le designer n’invente rien de nouveau, il réarrange tout simplement ce que le programmeur avait déjà mis en place au préalable.
“ Écrire des logiciels est fondamentalement un acte de création. Mais quelle sorte d’écriture est la programmation et quelle sorte d’auteur est le programmeur ? ” - John Simon, Jr. 22
En allant plus loin maintenant, quel est la part de création dans le design génératif ? Effectivement, nous pouvons supposer que si le créateur n’est pas directement impliqué dans la création de son oeuvre comme l’explique Matt Pearson, il n’est plus tant le créateur mais le curateur de son oeuvre :
“ La place de l’artiste dans le processus de production pourrait être plus proche de celle d’un curateur que d’un créateur. Vous créez un système, le modélisez, l’affinez, mais en fin de compte votre
[22] John Simon, Jr., Code de Création, 2000, p. 46 68
appropriation du travail produit pourrait être rien de plus que la fierté d’un parent pour le travail de sa progéniture. ” - Matt Pearson23
Mais comme il le soulève ensuite, ceci est totalement injuste. Le jugement esthétique n’est pas pris en compte par la machine. Les ordinateurs sont incapables de définir le “ beau ” humain. C’est ici que l’auteur du programme prend réellement sa place de créateur : il sélectionne grâce à son oeil ce qu’il considère être la ou les meilleures solutions, choisit quelles seront les prochaines modifications à effectuer dans le code pour arriver au résultat qu’il juge être le bon.
LE MÉLANGE CRÉATEUR / PROGRAMMEUR
Le problème avec la division entre les créateurs et les programmeurs, c’est que les programmeurs vont créer des outils qu’ils pensent vont contenter les créateurs et leur donner le bon moyen d’expression. Les créateurs ensuite se formatent en pensant que ces outils sont le seul moyen de faire et ne nécessitent aucune réflexion plus poussée. Nous ne pensons plus autrement et nous ne voyons jamais plus grand. Les programmeurs remplacent constamment toutes nos tâches manuelles, nous éloignant de la production même. Mais cela ne devrait pas nous effrayer, d’une part parce que c’est inévitable, et d’autre part l’apparition de ces nouveaux
[23] Matt Pearson, Generative Art : a Practical Guide using Processing, 2011, p. 4 69
outils nous rapproche lentement de ce que le design devrait vraiment être : la conceptualisation. Il faut maintenant regrouper les développeurs avec les créateurs ou même les éduquer aux deux domaines. En joignant programmeur et créateur, nous prenons contrôle de cette création d’outil, nous pouvons faire coexister la fonction de ce dernier avec l’intention du designer et de ce fait pouvons nous rapprocher de notre vrai rôle de conceptualiseur.
L’ENSEIGNEMENT OPEN SOURCE
La programmation peut paraître impossible à comprendre et à apprendre mais c’est en fait une langue beaucoup plus simple que nous le pensons. Surtout dans les conditions actuelles où nous avons accès à tellement d’informations grâce à Internet, nous pouvons tous bénéficier de cours et d’aide. Le monde de la programmation a connu un réel tremplin avec l’apparition de la Toile : les programmeurs du monde entier partagent leurs codes sources, leurs connaissances et s’entraident pour permettre à tout le monde d’avancer. Cela a permis l’émergence de l’open source ou code source ouvert, l’idée de partager son savoir et ses morceaux de codes. Grâce à cela, tout le monde peut donner vie à son projet. Il suffit de rechercher si quelqu’un a déjà rencontré les mêmes problèmes et s’inspirer de leur solution. Les grandes institutions ont aussi remarqué l’opportunité qui se présente et ont décidé d’en profiter. Les plus grands moteurs physiques sont maintenant mis à dispositions gratuitement pour voir ce qu’en font les créatifs et de voir des 70
choses que personne n’aurait pu imaginer avant. Il y a quelque chose d’extrêmement gratifiant à partager son programme et de voir ce que d’autres personnes en font. Dans le domaine des jeux vidéos, surtout indépendants, nous remarquons une volonté de revenir dans le passé et de créer des jeux qui ont du sens, une histoire poignante plutôt qu’un visuel réaliste avec le but de s’enrichir. Il est donc largement possible de donner un accès plus large à la programmation et à la créativité qui en ressort.
71
Scott Draves a réussi à renouveler l’idée d’interactivité avec son projet nommé “ Electric Sheep ”. C’est un travail abstrait qui fonctionne grâce à la participation de milliers de personnes autour du monde, il suffit d’installer le programme sur l’ordinateur et la prochaine fois qu’il se mettra en veille, il lancera “ Electric Sheep ”. Ce sont des animations artistiques qui sont créées et calculées avec la puissance des ordinateurs connectés par Internet. Nous pouvons regarder les animations, et si certains nous plaisent, nous pouvons leur donner un vote, leur permettant de vivre s’il est bon et de mourir s’il ne nous plait pas. Ces oeuvres fonctionnent donc grâce à la participation des utilisateurs et se retrouvent à être en quelque sorte l’oeuvre de tous.
Source images : Scott Draves, Electric Sheep, 1999 73
76
CONCLUSION
77
En conclusion, le design génératif est aujourd’hui une très bonne solution pour les créateurs. Étroitement lié aux nouvelles technologies, c’est un champs grandissant avec une infinité de possibilités et d’options. Il permet une accélération considérable du processus créatif, une originalité du contenu et une amélioration qualitative du résultat.
UNE PENSÉE PERSONNELLE
Je crois que le design génératif va permettre la production de meilleures créations. Il va aller au coeur de chaque projet en liant des données utiles et des principes directement concernés plutôt que de recréer quelque chose à l’aide d’outils qui n’y sont pas destinés. C’est un tout autre domaine que de créer ses propres outils. C’est un nouveau travail en soi, mais un travail qui se rentabilise grandement de par la capacité d’autonomie fournie et sa possibilité de réutilisation sur d’autres projets futurs. Dans le monde d’aujourd’hui, chaque créateur devrait voir la force dans le fait de créer ses propres outils, de les tailler pour ses besoins et de ne pas se laisser contraindre. Il ne faut pas conceptualiser en pensant aux outils disponibles mais conceptualiser en pensant aux outils qu’il va falloir créer.
78
LE FUTUR DU DESIGN ASSISTÉ PAR ORDINATEUR
Nous remarquons une curiosité constante de la part du designer génératif. À force de pousser plus loin chaque projet, la qualité des idées futures est toujours améliorée. La curiosité pousse à se demander quelle sera la prochaine étape. Comme le dit Kostas Terzidis, nous avons déjà eu une génération - I (Internet), quand allons - nous voir la naissance d’une génération - C (code) ?24 Si la frontière entre programmation et monde créatif est finalement brisée, nous verrons une libération des projets et une apparition de nouvelles façons de “ penser ” le design. Mais que se passera - t - il si l’ordinateur prend un jour la place du conceptualiseur ? Y aura - t - il encore une place pour le designer ?
“ Le nouveau designer construira l’outil qui permettra le meta - design, le design de façon indirecte. ” - Kostas Terzidis25
[24] Kostas Terzidis, Algorithms for Visual Design, p. xx [25] Kostas Terzidis, Algorithms for Visual Design, p. xxii 79
MON PROJET
Dans un domaine où les possibilités sont presque infinies, il est difficile de choisir vers quoi se tourner. Mais depuis que j’ai découvert le design génératif, j’aimerais mettre en place un projet qui me tient à coeur : il s’agit de générer des images en se basant sur le son. Ces visuels, produits en temps réel, pourraient être affectés par des mouvements de la part de l’utilisateur. Je compte m’adresser aux créateurs, aux développeurs mais surtout à ceux qui jonglent entre ces deux domaines. À travers ce projet, j’aimerais promouvoir les avantages qu’offre le design génératif. En utilisant à chaque fois une entrée sonore, je ferais varier les visuels et leurs réactions. De cette façon je pourrais illustrer l’idée de modularité des sorties et de modularité du projet même. Cette installation pourrait accompagner des musiques dans les soirées sous forme de projections, mais il serait aussi possible d’exporter des vidéos fixes. Ces vidéos peuvent ensuite être postées sur Internet de façon à promouvoir le travail. Il sera également possible d’imprimer les visuels créés. Le matériel nécessaire au projet est déjà en ma possession ; je compte faire usage du Leap Motion (un instrument qui détecte les mouvements et positions des mains), un projecteur et un ordinateur. La complexité du projet réside dans la programmation et le calibrage des appareils. Il faut que l’interaction avec l’utilisateur soit simple et intuitive.
80
81
82
REMERCIEMENTS Je tiens à diriger mes remerciements les plus sincères à toutes les personnes m’ayant inspiré et soutenu pour l’écriture de cette thèse, notamment : John Donaldson, Esther Lutz Donaldson, Geraldine Donaldson, Coline Gavard, Camille Rattoni, Pierre - Alain Giesser, Douglas Stanley, Pierre Rossel, Jérome Baratelli, Florence Marguerat, Myriam Poiatti, Martine Anderfuhren, Xavier Fragnière, Raphaël Henocq, Emina Boudemagh, Luc Grandjean, Thomas Roche, Saskia Vellas, Marina Buckel ainsi que les élèves de CV3 à la HEAD. Et bien sûr toutes personnes ayant simplement rendu ma journée plus joyeuse pendant cette période, cela m’a permis de continuer dans la bonne voie.
83
84
BIBLIOGRAPHIE
85
LIVRES
BOHNACKER Hartmut, GROSS Benedikt, LAUB Julia, LAZZERONI Claudius, 2010. Design Génératif, Concevoir Programmer Visualiser. Pyramyd. Paris : Pyramyd.
BENTLEY Peter, 1999. Evolutionary Design by Computers. Academic Press. San Francisco : Morgan Kaufmann Publishers.
KLANTEN Robert, 2009. Data Flow : Visualising Information in Graphic Design. Gestalten. Berlin : Die Gestalten Verlag.
KLANTEN Robert, 2010. Data Flow 2 : Visualising Information in Graphic Design. Gestalten. Berlin : Die Gestalten Verlag.
KNUTH Donald, 1973. The Art of Computer Programming Vol.1 : Fundamental Algorithms. Addison - Wesley Professional. Indianapolis : Addison - Wesley Professional.
MAEDA John, 1999. Design by Numbers. The MIT press. Cambridge : The MIT press.
MAEDA John, 2000. Maeda@Média : Journal d’un Explorateur du Numérique. Thames & Hudson. Londres : Thames & Hudson. 86
MAEDA John, 2004. Code de Création. Thames & Hudson. Londres : Thames & Hudson.
MIGNONNEAU Laurent, SOMMERER Christa, 2009. Interactive Art Research. Springer. Berlin : Springer - Verlag.
PEARSON Matt, 2011. Generative Art. Manning. États Unis : Manning Publications.
RENDGEN Sandra, 2012. Information Graphics. Taschen. Italy : Taschen.
SHIFFMAN Daniel, 2012. The Nature of Code. Amazon.co.uk. Marston Gate : Daniel Shiffman. Disponible à l’adresse : http://natureofcode.com/book/
TERZIDIS Kostas, 2009. Algorithms for Visual Design : Using the Processing Language. Wiley. Indianapolis : John Wiley & Sons.
TROIKA, FREYER Conny, NOEL Sebastien, RUCKI Eva, 2010. Digital by Design. Thames & Hudson. Londres : Thames & Hudson.
WEBB YOUNG James, 2003. A Technique For Producing Ideas. McGraw - Hill. Columbus : McGraw - Hill.
WIRTH Niklaus, 1976. Algorithms + Data Structures = Programs. Prentice Hall. New Jersey : Prentice Hall.
87
THÈSES
FISHER Thomas, HERR Christiane, 2001. Teaching Generative Design. Université Polytechnique de Hong Kong, Chine. Disponible à l’adresse : http://generativedesign.eu/on/cic/ga2001_PDF/fischer.pdf
GRUBER Florian, 2011. Introducing a Conceptual Framework for Generative Design Processes. Université de Technologie de Vienne, Autriche. Disponible à l’adresse : http://www.ambientartlab.at/wp-content/uploads/PAPER_GA2011_ final.pdf
VIDÉOS
HAVIV Guy, 2013. Webinar by Guy Haviv our Design Director about “ Generative Design and Design Hacking ” [vidéo]. Vimeo [en ligne]. [Consulté le 5 décembre 2013]. Disponible à l’adresse : https://vimeo.com/48858267
KIEFER Cedric, 2012. Conference on Generative Design [vidéo]. Vimeo [en ligne]. [Consulté le 5 décembre 2013]. Disponible à l’adresse : https://vimeo. com/48858267 88
LEVIN Golan, 2004. L’Art Logiciel [vidéo]. TED [en ligne]. [Consulté le 18 janvier 2014]. Disponible à l’adresse : http://www.ted.com/talks/golan_levin_on_ software_as_art.html
MAEDA John, 2012. Comment l’Art, la Technologie et le Design guident les dirigeants créatifs [vidéo]. TED [en ligne]. [Consulté le 18 janvier 2014]. Disponible à l’adresse : http://www.ted.com/talks/john_maeda_how_art_technology_and_ design_inform_creative_leaders.html
PBS Digital Studios, OffBook, 2011. Generative Art - Computers, Data, and Humanity [vidéo]. PBS [en ligne]. [Consulté le 20 janvier 2014]. Disponible à l’adresse : http://video.pbs.org/video/2170070010/
PBS Digital Studios, OffBook, 2013. The Art of Data Visualization [vidéo]. PBS [en ligne]. [Consulté le 20 janvier 2014]. Disponible à l’adresse : http://video.pbs. org/video/2365039781/
PBS Digital Studios, OffBook, 2013. The Art of Creative Coding [vidéo]. PBS [en ligne]. [Consulté le 20 janvier 2014]. Disponible à l’adresse : http://video.pbs. org/video/2322911761/
PBS Digital Studios, OffBook, 2013. How to be Creative [vidéo]. YouTube [en ligne]. [Consulté le 20 janvier 2014]. Disponible à l’adresse : http://www.youtube. com/watch?v=weIQIthC3Ks
PBS Digital Studios, OffBook, 2013. Is Code the Most Important Language in the World? [vidéo]. YouTube [en ligne]. [Consulté le 20 janvier 2014]. Disponible à l’adresse : http://www.youtube.com/watch?v=Vxv0-sggnqA 89
SITE WEB
FLAJOLET Philippe, PARIZOT Étienne, 2014. Algorithme [en ligne]. [Consulté le 12 février 2014]. Disponible à l’adresse : http://fr.wikipedia.org/wiki/Algorithme
HANSMEYER Michael, 2003. Computational Architecture [en ligne]. [Consulté le 12 février 2014]. Disponible à l’adresse : http://www.michael-hansmeyer. com/#1
KIEFER Cedric, LAUB Julia, 2008. Onformative [en ligne]. [Consulté le 5 janvier 2014]. Disponible à l’adresse : http://www.onformative.com/
90
RÉFÉRENCES IMAGES
p. 18 - 21 HANSMEYER Michael, 2010. Columns [en ligne]. [Consulté le 12 février 2014]. Disponible à l’adresse : http://www.michael-hansmeyer.com/projects/columns.html?screenSize=1&color=1 p. 28 - 31 PERSSON Markus, 2011. Minecraft [jeu vidéo]. Mojang. [Consulté le 10 février 2014]. Disponible à l’adresse : https://minecraft.net/ p. 34 - 37 KIEFER Cedric, LAUB Julia, 2012. Unnamed Soundsculpture [vidéo]. [Consulté le 5 janvier 2014]. Disponible à l’adresse : http://www.onformative.com/work/unnamed-soundsculpture/ p. 42 - 43 ASOBO Studio, 2009. Fuel [jeu vidéo]. Codemasters. [Consulté le 10 février 2014]. Disponible à l’adresse : http://www.ptitlu.org/blog/archives/232-Fuel-Il-est-libre-Mad-Max.html p. 44 SCHMITZ Michael, 2006. Evolving Logo [en ligne]. [Consulté le 13 février 2014]. Disponible à l’adresse : http://www.nextnature.net/2006/12/evolving-logo/ p. 45 SCHMITZ Michael, 2004. GenoTyp [logiciel]. [Consulté le 13 février 2014]. Disponible à l’adresse : http://www.puls-der-zeit.de/genotyp/flashdetect_alternate.html p. 50 - 53 KIEFER Cedric, LAUB Julia, 2011. Montblanc Generative Artworks [en ligne]. [Consulté le 5 janvier 2014]. Disponible à l’adresse : http://www.onformative.com/work/montblanc-artworks/ p. 60 - 61 SAGMEISTER Stefan, 2007. La Casa da Música [en ligne]. [Consulté le 4 janvier 2014]. Disponible à l’adresse : http://www.sagmeisterwalsh.com/work/project/casa-da-musica-identity/ p. 62 - 65 KIEFER Cedric, LAUB Julia, 2011. Actelion Imagery Wizard [en ligne]. [Consulté le 5 janvier 2014]. Disponible à l’adresse : http://www.onformative.com/work/actelion-imagery-wizard/ p. 66 - 67 OKDELUXE Studio, 2009. COP15 [en ligne]. [Consulté le 6 février 2014]. Disponible à l’adresse : http://www.okdeluxe.co.uk/cop15/index.html p. 72 - 75 DRAVES Scott, 1999. Electric Sheep [logiciel]. [Consulté le 20 janvier 2014]. Disponible à l’adresse : http://electricsheep.org/
91
Impressum Auteur, Conception, Mise en page : Patrick Donaldson Relecture : John, Esther & Géraldine Donaldson Coline Gavard Camille Rattoni Typographie : Univers Archer Impression : HEAD, Encyclopédie
© 2014 HEAD Patrick Donaldson