Un singe peut-il apprendre à programmer? Une génération de babouins spécialisés nous attend?

Si 100 singes, tapant furieusement, finissent par écrire un sonnet shakespearien, combien de primates faudrait-il pour écrire le code?



image



En 2003, une startup américaine d'Iowa Primate Programming Inc. (PPI) a annoncé que les programmeurs de l'entreprise - chimpanzés, babouins, gibbons et gorilles - effectueront tout le travail de l'équipe informatique, mais à moindre coût. Le chimpanzé Mitch, par exemple, a suivi un cours JSP et s'est spécialisé dans Crystal Reports, VB3, VB6 - 93 cents de l'heure. Orangutan Cloyd a terminé sa formation ASP.NET et propose des services XML et Web à 1,10 $ l'heure.



Bien essayé les gars, mais vous ne pouvez pas voir les professionnels de l'informatique primates envahir le monde. La start-up Monkey s'est terminée de la même manière que 90% de toutes les startups... Peut-on vraiment apprendre aux singes à programmer? La question n'est pas aussi absurde que cela puisse paraître. Pour comprendre comment y répondre, vous devez aborder des domaines de connaissance tels que la théorie du calcul, la théorie des langages formels et la linguistique évolutionniste.



Communication avec les animaux - plus vraisemblablement non que oui



Les liens étroits entre les langues naturelles et formelles ne font aucun doute. Peut-être devrions-nous commencer par apprendre au primate à garder une conversation simple? Et puis il s'agit de programmation. La première difficulté survient immédiatement lorsque vous essayez de parler à n'importe quel animal - ils produisent des sons différemment. Contrairement aux humains, les animaux n'ont presque aucun contrôle sur les sons parlés et n'échangent pas de détails spécifiques dans le processus de communication. Par exemple, le gazouillis d'un oiseau en général ne signifie rien de plus que «Je vais bien, la vie est belle». L'appareil vocal des singes n'est pas non plus adapté pour reproduire les sons de la parole humaine. (1)



Mais peut-être vaut-il la peine d'essayer la communication non verbale? De nombreux chercheurs ont tenté avec plus ou moins de succès d'apprendre aux primates à exprimer leurs pensées et leurs sentiments par des gestes. L'un des sujets les plus connus de ce genre d'expériences est le chimpanzé Nim Chimpsky, qui, sous la direction de linguistes de l'Université de Columbia, a maîtrisé plus de 125 gestes. En conséquence, le projet a été reconnu comme un échec: il ne maîtrisait pas la langue dans la mesure qui est inhérente à une personne. Il pouvait utiliser des phrases déjà apprises à l'aide de gestes et en répéter de nouvelles après une personne, mais il ne les formait pas lui-même selon les règles de la syntaxe et de la grammaire. Sa plus longue phrase était quelque chose comme " Donne-moi une orange pour manger une orange pour moi pour manger une orange donne-moi toi ." Toutes ses déclarations profondément philosophiques peuvent être lues ici .



image



Nim Chimpsky parle à ses professeurs



Les animaux comme imitateurs astucieux



Noam Chomsky, un linguiste américain, après qui le primat bavard de Neem a été nommé, a inventé le terme «grammaire générative» (ou générativisme ), qui désigne un ensemble de règles par lesquelles une phrase grammaticalement correcte est formée dans n'importe quelle langue. Selon les vues de Chomsky, les règles grammaticales sous-jacentes à toute langue sont innées et inhérentes uniquement aux humains . Inutile de s'attarder sur ces idées en détail, puisqu'elles ont déjà été décrites sur Habré, par exemple, ici . En d'autres termes, Chomsky pense que la grammaire générative en tant qu'ensemble général de règles est déjà intégrée au cerveau humain dès la naissance.... Cette capacité humaine innée de parler n'importe quel langage naturel et la capacité d'utiliser des langages formels, tels que la programmation, sont étroitement liées. Jusqu'à présent, aucune expérience n'a confirmé la capacité d'un animal humanoïde à maîtriser le génératifisme. Cela signifie-t-il que nous ne verrons jamais le singe évoquer le code du programme?



Pour tester cela expérimentalement, il faut surmonter de nombreuses difficultés: l'une d'entre elles est le désir de l'animal de copier des motifs et de mémoriser des solutions toutes faites sans y penser. Le physicien Richard Feynman a décrit ce problème très précisément dans son livre "Vous plaisantez bien sûr, M. Feynman":



«En 1937, le zoologiste Paul Thomas Young . : , , , , . , , . , . , . — . , , , , . . — . , . … . , , , cela rend la parole juste devant elle . Le scientifique a recouvert le sol du couloir des rats avec du sable, et alors seulement les rats ont cessé de répéter les actions de routine. Le mérite de Young, entre autres, est de montrer avec quelle prudence tous les facteurs doivent être pris en compte lors de l'organisation d'une expérience de ce genre avec des animaux. "


Et ce ne sont que des rats. Le singe, pour obtenir de la nourriture, aura recours à des chaînes complexes d'actions de routine. La tâche de l'expérimentateur sera de s'assurer que l'animal résout vraiment le problème, et non comment Nim utilise sa mémoire et ses indices environnementaux pour trouver une réponse appropriée.



Une expérience hypothétique avec une machine à palindrome



Imaginons que nous ayons des possibilités techniques et autres pour mener une telle expérience. Il sera basé, par exemple, sur le langage des palindromes - des chaînes qui peuvent être lues de manière égale dans les deux sens - comme l'un des langages de base les plus simples de la grammaire sans contexte. Si un animal n'apprend pas à construire des palindromes, les chances qu'il soit capable d'écrire un programme dans le langage le plus simple tendent à zéro.



image

Ce sont tous des palindromes - langue



Nous avons une machine avec des boutons, chaque bouton a une sorte de symbole - disons des icônes de fruits: orange, banane, poire, pêche, etc. La machine est programmée de telle manière que lorsqu'elle est composée de symboles palindromes, elle distribue de la nourriture. En appuyant successivement sur «banane», «pomme», «pêche», «pomme», «banane», vous pouvez gagner le déjeuner, mais les combinaisons «banane», «pomme», «pomme», «pêche» ne donneront rien. Vous pourriez penser à une meilleure récompense pour les longs palindromes. De plus, nous avons également besoin d'un signal de terminaison de ligne - par exemple, un rétroéclairage et un signal sonore, qui éteindra les boutons pendant quelques secondes si la combinaison de touches composée n'est pas un palindrome. Enfin, le plus important est d'expliquer à l'animal ce que nous attendons réellement de lui. Et ce n'est peut-être que le problème principal - est-il nécessaire d'expliquer à l'avance au primate,qu'est-ce qu'un palindrome? Une telle expérience ne serait-elle pas juste un test de cette compréhension, et non un moyen d'apprendre à un singe à résoudre les problèmes assignés? La meilleure façon de tester toutes ces suppositions est de mener une expérience dans la réalité. Quand quelqu'un réussit, faites-le nous savoir.



Ce qui empêche les animaux d'écrire des programmes



La communication n'est pas la tâche la plus difficile que nous et les animaux résolvons de différentes manières. La reconnaissance faciale, par exemple, est une tâche encore plus difficile, que nos deux espèces peuvent néanmoins gérer. Mais les voitures nous sont bien inférieures à cet égard. Les programmes informatiques réussissent assez bien à créer des textes significatifs selon les règles des langages naturels, mais avec la reconnaissance faciale, tout n'est pas aussi radieux. Probablement, les animaux sont encore capables de résoudre des problèmes comparables en complexité à l'écriture de programmes, c'est juste que ces capacités ont évolué dans d'autres domaines non linguistiques. Par exemple, les porcs, comme les humains, s'intéressent aux jeux vidéo et peuvent en profiter. Et les singes peuvent contrôler mentalement des appareils assez complexes.



image

L'intrigue de "Peppa Pig", apparemment, est tirée de la vie réelle.



Nous ne pouvons évaluer les capacités mentales des animaux que par les critères de communication et de maîtrise des langues formelles et naturelles, en négligeant leurs autres capacités.



Il y a au moins deux choses qui nous permettent de programmer. Le premier est la capacité de penser, qui couvre un large éventail de raisonnements, de la compréhension des causes et des effets à la preuve mathématique de formules complexes. De toute évidence, cette capacité, bien que sous une forme tronquée, est présente chez les animaux. La deuxième chose est la capacité de communiquer, y compris la capacité de porter des jugements abstraits et probabilistes sur le monde. L'absence de ces propriétés clés ne donne pas aux animaux la possibilité de créer leurs propres programmes. Ils ont d'énormes ressources mentales pour mémoriser les actions et comparer avec les modèles existants, mais ils n'ont pas encore appliqué ces capacités à des raisonnements complexes, similaires à ceux des humains. Et ce n'est pas un fait que cela se produira un jour.



«Les babouins ont été choqués et confus par les programmes Java IDE, SunONE et Visual Age. Aucun des babouins n'a jamais réussi à maîtriser le langage de programmation Java. Cependant, la plupart des babouins ont appris le langage de programmation Visual Basic 3.0 avec facilité. Les babouins ont pu modifier indépendamment les paramètres du programme et même modifier les paramètres des attributs de fichier. Certains chercheurs ont fait valoir que Visual Basic est trop facile pour les babouins. Ils insistent pour que les singes suivent un autre cours de programmation Java. Cependant, pour la plupart des babouins et des chimpanzés, tout composant Java, selon les scientifiques, provoque du stress » (2) .


Hélas, alors que de telles déclarations se situent quelque part entre le trolling de la communauté scientifique et la campagne de relations publiques originale d'une startup singe.



Article préparécrazytosser00 et talkjulyabasé sur des matériaux de théorangeduck. Merci à l'auteur du site pour ses idées.



All Articles