Vous avez probablement déjà entendu parler du célèbre biologiste Charles Darwin, l’homme derrière la théorie de l’évolution. Brièvement, cette théorie veut qu’une caractéristique avantageuse se conserve d’une génération à l’autre. Prenons un exemple un peu loufoque pour illustrer le concept! Si j’ai deux lièvres en forêt, un de couleur brune et un de couleur rose bonbon, le lièvre brun se camouflera plus facilement et échappera mieux aux prédateurs que le lièvre rose. Par conséquent, il vivra plus longtemps et pourra se reproduire davantage, au contraire du lièvre rose. La quantité de lièvre rose diminuera donc, jusqu’à ce que cette caractéristique soit complètement éliminée, au profit de la couleur brune! C’est de cette façon que nous évoluons depuis toujours, en conservant des caractéristiques gagnantes et en perdant les moins avantageuses.

Mais quel est le lien avec l’informatique ?! Les ordinateurs sont des machines très puissantes, capables de faire des choses incroyables, notamment des calculs. Et oui, les ordinateurs sont bien meilleurs en calculs que la majorité de la population. Ne pensez tout de même pas qu’ils font tout ça tout seul! S’ils peuvent faire autant de prouesses avec les chiffres, c’est qu’ils ont d’abord été programmés. À la base, des algorithmes sont créés et testés. Ceux-ci en faisant une série de calculs permettent d’arriver à un résultat! Mais comment s’assurer que notre algorithme nous donnera la meilleure des réponses, dans toutes les situations possibles? ! En utilisant la théorie de Darwin!

L’algorithme tente de résoudre un problème, par exemple, la célèbre question « Qu’est-ce qu’on mange pour souper? ». Ensuite, une multitude de solutions sont possibles (laissez aller votre imagination!). Les solutions seront ensuite sélectionnées selon leur capacité à se reproduire. Par exemple, un repas qui risque d’être populaire et d’être recuisiné la semaine suivante l’emportera plus facilement. Ensuite, les repas sélectionnés vont donner naissance à une deuxième génération de repas, ayant les caractéristiques des premiers repas (comme les parents et les enfants) nous nous approchons tranquillement du repas final!

Maintenant, comme il y a toujours place à l’amélioration, l’algorithme va modifier des ingrédients de façon aléatoire dans nos repas les plus prometteurs. Les modifications peuvent être très petites, par exemple, modifier la quantité de sel. Cela ne change pas le repas, mais permet de l’amener plus près de la perfection. Une fois les modifications faites, les repas seront de nouveau sélectionnés, puis de nouveau modifiés, jusqu’à ce que LE souper parfait soit finalement trouvé!

C’est bien beau tout ça, mais vous vous doutez bien que ces algorithmes ne servent pas réellement à nous trouver un souper. Par exemple, ceux-ci sont utilisés dans la création de jeux vidéo, pour la gestion des horaires de travail, en robotique, ainsi que dans les logiciels des voitures autonomes! Si vous vous sentez l’âme artistique, vous pouvez même utiliser ces algorithmes évolutionnaires pour créer (picbreeder.org)!

Pour lire l’article complet, c’est ici !

Vulgarisation par Ariane Langlois

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l’aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s