|
Alors, ça roupille ? C'est la rentrée !... par ins174 le
[Aller à la fin] |
| Actualités | |
Il y a presque une semaine, dans l'article D'accord ? par Chessisfun, Perestroïka vous posait la question subsidiaire suivante :
"l'homme comprend alors que la machine n'applique que de bêtes algorithmes"... en êtes-vous tous convaincus ?
Qu'est-ce qui définit pour vous une réelle compréhension du jeu ?Que je complétais par ceci (Pour les intégristes de la supériorité biologique): - Quels seraient les paramètres de la "compréhension" humaine du jeu que ne pourrait jamais posséder une simulation ?
- Si vous en trouvez, ceux-ci ne sont-ils pas en dernier ressort eux-mêmes des algorithmes ? Depuis, plus rien ! Silence radio sur FE ! Aucune réaction !
Personne n'a rien à dire ? ça vous rend muets comme des carpes ?
J'ai du mal à y croire.
|
|
Désespérant... désespéré je suis yvap... je vais me pendre avec le câble réseau ! L'énergie est pompée par les littreux d'à-côté... Moi je suis persuadéqu'un jour viendra (je plagie régicide mais c'est pour la bonne cause)où la machine composera du Céline en veux-tu en voilà et toc.
|
|
Sans passer ... pour un partisan de la superiorite des machines, je pense qu'il faut se poser la question de ce qu'est reellement la "comprehension du jeu". Je me souviens de predictions et de projections dans l'avenir faites par des "gourous" de l'intelligence artificielle dans les annees 80, en ce qui concerne la faculte qu'auraient des machines (des softs en fait) de faire de la traduction automatique, du resume de texte, de jouer a des jeux de strategie... et je relis toujours avec grand plaisir ces articles, car bon nombre de ces predictions se sont averees completement deconnantes. A mon sens, la principale source d'erreur a ete une trop grande "humanisation" de la machine. Un soft qui jouait aux echecs devait comprendre qu'une dame de plus, c'est bien pour gagner. Aujourd'hui, il me semble que l'on change de point de vue, et que on se dit : A partir de cette position ou j'ai une dame de plus, je suis capable de donner une variante ou le gain est force. En gros, on ne comprend rien, mais le chemin vers le but qui est de gagner la partie est clair. La "comprehension humaine" dans tout ca est a peu pres du meme style que la comprehension de l'arithmetique, des statistiques et de la theorie des nombres par un tableur type excel. Et pourtant, ca marche, "ca" ne comprend rien, mais c'est utile, c'est pratique.
Pour finir, je pense que la programmtion d'un logiciel de calcul de structures (par exemple) necessite des competences dans ce domaine, mais qu'il faut relativiser. L'expert intervient dans la definition des objectifs, dans l'elaboration des strategies de programmation, ... , mais la realisation du produit (le portage de l'expertise sur une machine) est toujours du ressort d'un technicien des machines. Et les techniciens aujourd'hui pensent plus en terme de performance, de fiabilite... qu'en terme de "comprehension", "d'intelligence". Ce sont des mots que l'on entend plus que du cote des "utilisateurs", pour qui faire une muliplication entre 2 nombres de 1000 chiffres reste quelque chose d'un peu "magique".
Ca va comme relance ?
|
|
Pour moi... Que veut dire "comprendre les echecs ?". Avoir unegrande connaissance des echecs, c'est connaitre tout les trucsTactique, Strategique, et avoir une énorme expérience. Onne peut coder dans une machine que ce que l'on comprend !Pour la tactique pas de problème, on sait coder. L'exprérience? base de données. La stratégie, est la partie la plusdifficile à coder, car elle est tres subjective. 2 maitresn'auront pas le meme avis sur une position donnée, de plus cettepartie etant tres complexe, elle coute enormement de tempsmachine. Quand on voit le niveau des programmes actuel, comment peut onencore faire les difficiles ? Le but d'une partie d'echecs n'estil pas de faire mat le roi adverse, parn'importe quel moyen ? Pour le style, Il est vrai qu'il est peuprobable qu'un programme sorte un sacrifice incorrect simplementpour bluffer (à la Tal), mais l'utilisation du bluff sertsurtout dans des positions trop complexe à calculer pourl'homme.
|
|
Grand débat que tu nous proposes là ! L'intuition peut-elle s'appréhender en terme d'analyse rationnelle ? Il arrive que, durant une partie, un coup suscite un déclic du genre "ça ne peut pas être bon" sans que l'on puisse l'étayer par des explications concrêtes. Mais ce n'est pas parce que l'on ne perçoit pas immédiatement les mécanismes de pensée qui ont amené cette conclusion qu'ils n'existent pas et ne peuvent être résumés par des algorithmes. Il me semble que le "sens du danger" ou le pressentiment d'une combinaison à réaliser sont issus de l'identification d'un schéma connu dans lequel la solution qui se présente sur l'échiquier n'est pas celle que l'on attendait d'après son expérience passée.Vient ensuite une phase où l'on procède par analogie avec la connaissance acquise en cherchant les avantages ou inconvénients de ce qui a été joué par rapport à la "jurisprudence". Peut-être que l'avantage de l'homme vient de la capacité à transposer à des cas comparables sa connaissance plus facilement qu'un programme qui ne peut l'appliquer qu'à des cas similaires à ce qu'elle connait.
|
|
on ne peut coder ... dans une machine que ce qu'on comprend.... Pour avoir fait et faire toujours le metier de developpeur, je te remercie de cette phrase. Mais je m'empresse aussi de te dire que c'est loin, tres loin d'etre le cas. Je suis sur que les developpeurs de fritz ne jouent pas a plus de 2600 en blitz, et je t'assure que pour resoudre des systemes a plusieurs millions d'inconnues, etre balaize en calcul mental n'est pas une necessite. Souvent, l'utilisation d'un soft ressemble a: - tiens, je mets 10 ici et 30 la. - apres "un certain temps", le soft repond : le resultat est 43. - et la tu te retournes vers tes copains en disant, c'est plus de 10, ca marche.
jusqu'a l'arrivee d'un teigneux qui demande : 43.... c'etait quoi la question au fait.
|
|
oui mais ... Comprendre ne veut pas dire savoir ou pouvoir utiliser ! Un élève peut depasser son maitre par sa plus grande capacité a appliquer ce qu'il lui a ete enseigné (Pour une meme quantité de connaissance, on aura 2 resultat differents)! Pour reprendre ton exemple, l'algo du calcul de PI est connu (je comprend la formule) je suis incapable de l'appliquer a la main en un temps raisonnable, mais je suis capable de la coder en c, pascal, fortran, basic ...
|
|
"Pour la tactique pas de problème..." "...on sait coder." Non, justement, ce n'est vrai que face aux patates que nous sommes tous pour la plupart. Les programmes se font avoir tactiquement dans les positions où ils appliquent des règles insuffisantes pour la bonne compréhension de la position, et à partir de là, effet horizon et machin-chouette. Le problème c'est la fonction d'évaluation, qui leur fait croire qu'à la fin d'une séquence tactique, la position est bonne alors que c'est faux. Mais il faut généralement être très fort, et/ou passer beaucoup de temps sur la position pour le démontrer. A-t-on déjà essayé de travailler à partir de très nombreuses positions type comme le font apparemment les humains?
|
|
La fonction d'evaluation ... comme son nom l'indique est la pour evaluer une position, et donner une note. La fonction d'evaluation la plus bete, du style -1 si je suis mat, 0 si c'est nul, et 1 si je mate serait largement suffisante si on etait capable de calculer toutes les variantes jusqu'au bout. Or, c'est techniquement "impensable". D'ou l'idee de stopper le calcul une fois atteinte une position ou les fluctuations en terme de note sont faibles. Et d'attribuer une note a cette position. Une chose est sure, c'est que la note d'une feuille de l'arbre est beaucoup plus sujette a caution que la note d'une racine de cet arbre. Tout simplement parce que la note de la racine est etayee par de la tactique. C'est souvent la note de la position terminale de la meilleure variante pour les deux camps. Bon, bref ... Si la fonction d'evaluation etait "diaboliquement" bien faite, il suffirait de n'esxplorer qu'un demi coup pour decider de ce qu'il faut jouer. Or, ... comme on ne sait pas "comprendre" ou noter correctement une position, on pallie ce manque d'acuitee par une recherche sur quelques demi-coups. On n'a pas encore trouver mieux pour noter une position que d'aller voir ce qui se passe si ... Et je ne voie pas trop par quel mecanisme on pourrait dire que les blancs matent en 4 coups, sans aller explorer toutes les variantes. La fonction d'evaluation souffrira donc toujours de l'horizon, et croire que l'on pourra s'affranchir de l'aspect combinatoire me semble etre une pure vue de l'esprit.
|
|
et ... que vaut une superbe strategie (bonne structure de pions, bon fou ...) si un sacrifice adverse decide du gain.
|
|
mon analyse :-) le probleme des echecs est connu en sciences del'information pour etre l'example classique de probleme NP-complex. En gros il s'agit de trouver 1)un'automate,la function d'evaluation
2) toutes les sequences des coups possibles. Le qualite de la solution au point 1 depend de l'abilite de specification et codage. Donc de la comprension du "comment on evalue le jeu et les positions/variantes". En gros il y a un'equipe derriere tout ca, des humains La qualite de la solution au point 2 depend de la puissance de calcul de l'ordinateur: et la voila' la complexite exponentiale, les sequences des coups a partir d'une position donnee sont un nombre ENORME. Enfin, on applique l'algorithme (solution au point 1) pour TRIER les sequences trouver et eviter l'augmentation exponentielle des calculs a operer. donc un ordinateur hyperpuissant a un marge d'action plus important pour mieux jouer . Mais il n'y pas autre choix pour bien faire jouer un ordinateur de trouver un sacre algoritme d'evaluation, doc L'ESSENTIEL de mon discours c'est que L'HOMME est toujour au centre du proces du developpment du logiciel. Donc dans un match d'echecs ce n'est PAS LA MACHINE QUI BAT L'HOMME, MAIS DES HOMMES QUI BATTENT UN HOMME AVEC UN ORDINATEUR COMME INSTRUMENT C'est l'homme qui met le code de l'interpretation du jeu DANS l'ordinateur, qui n'a rien d'autre a faire que d'appliquer l'algorithme. Si l'algorithme est parfait, l'ordinateur est imbattable, mais l'algorithme est fait par l'homme...
Est tres important savoir que un algorithme parfait est tres tres cher: la puissance necessaire est donc encore a multiplier... Enfin l'intuition et la strategie sont encore bien a travailler pour les ordinateur (la premiere surtout), la les algorithmes n'arrivent pas a faire le poids. En gros aux 4 questions je repond: 1.plus ou moin oui 2.reponse bien trop complexe a evaluer et longue a exposer...ca reviens a exposer la theorie de l'IA, de la logique fuzzy,... et tout ces arguments teoriques 3.l'intuition et une visione strategique parfaite 4.oui, forcement
|
|
Ca me gene un peu ... de dire qu'un algorithme manque d'intuition. Ca me fait un peu comme si on me demandait a moi si je fonctionne sous 5 volts ou 3,3 volts. On ne programmera jamais l'intuition. En tous cas, pas en C++ ou en fortran. Par contre, on peut faire semblant. Un peu comme une cafetiere fait ding quand le cafe est chaud. C'est pas parce qu'on lui a appris a reconnaitre le cafe tiede, le froid et le chaud. On a une sonde, une tension, un seuil, et a ce seuil : ding.
La cafetiere fait ding. Fritz joue aux echecs. Je pense que leur comprehension du cafe et des echecs doit avoir un niveau voisin.
|
|
Intuition ... On dérive petit a petit dans la philo, mais ne trouvez vous pas que l'intuition n'est rien d'autre qu'une synthese des expériences passées ? (Base de données)
|
|
D'accord ... Intuition: nf Connaissance directe et immediate, sans recours au raisonnement. sur mon dico de poche. Si les experiences passees sont synthetisables, alors on peut imaginer que ces connaissances vont deboucher sur des regles. (par exemple, ne pas mettre ses pions sur la couleur du fou oppose en finale.) Des regles comme celle ci peuvent etre sysnthetisees a partir de bases de donnees. Avec de telles regles, inclues dans la fonction d'evaluation, (petit bonus si le fou adverse ne peut pas atteindre les pions), on peut doter un programme d'un semblant d'intuition. Le role de l'expert, est lister ces regles, et le role du developpeur est de les traduire. Le role de la machine est de derouler le code.
|
|
Le raisonnement intuitif c'est celui qu'on applique d'emblée, en fonction de toute l'expérience accumulée. Moralité: on en apprendrait peut-être beaucoup sur les échecs si on disposait d'un corpus suffisamment important de parties de GMs en 1-1. L'aspect combinatoire... il faut relire le bouquin de SPielmann "L'art du sacrifice aux échecs", où il explique qu'un sacrifice avec mat forcé au bout n'est pas un sacrifice. Par contre, quand à la suite d'une passe tactique le matériel est déséquilibré et les Rois dans une sécurité relative, il faut EVALUER, et c'est très dur. La machine (comme nous) a des critères: matos, sécurité du roi, donc, activité des pièces, structure de pions, etc... Plus des éléments qui correspondent à des menaces, ou micro-objectifs stratégique: pion passé très avancé, par exemple. Chez l'humain, ça se traduit par :"je dame au prochain coup, il n'y a pas de mat forcé contre moi, donc il doit parer cette menace". Ben, des fois, non. L'ordi donne des valeurs chiffrées à tous ces éléments, et c'est de la justesse de ces estimations que dépendent les vraies possibilités de progrès, il me semble. Enfin, moi, ce que j'en dis... je ne suis pas informaticien.
|
|
pour bacco ... il ne me semble pas que le terme NP Complet convienne bien au jeux d'echecs. Pour un probleme comme le voyageur de commerce, ou encore la resolution d'un probleme de sac-a-dos, d'accord, car le nombre de variables peut devenir aussi grand que l'on veut. On peut dire qu'il n'existe pas d'algorithmes qui fonctionnent en temps polynomial avec le nombre de donnees. Pour les echecs (me goures-je ?), le nombre de parties est fini. La partie la plus longue, a la louche pourrait etre de 50 coups entre deux prises, et ce jusqu'a ce qu'il n'y ait plus de pieces sur l'echiquier. Le nombre de coups etant fini, le nombre de possibilites a chaque mouvement etant lui aussi fini, on peut imaginer l'arbre de toutes les variantes possibles a partir de la position initiale. Tout cela est fini. Et le nombre de parametres est fixe. Mathematiquement parlant, c'est quelque chose d'assez simple. Meme si les nombres mis en jeu sont enormes.
|
|
50 coups ... entre 2 prise, ou 2 mouvements de pions... desole.
|
|
Debout là-dedans !... Eh ben voilà! 5 jours sans rien et puis d'un seul coup le déluge! Beaucoup de choses dites ici ont déjà été traitées dans d'autres articles comme ceux-ci: Machines pensantes, intelligentes (?), conscientes (?)... Les machines ont-elles une âme? Mais un aspect ne l'a pas été ou seulement survolé, celui que met justement en valeur El cave: : "Vient ensuite une phase où l'on procède par analogie avec la connaissance acquise... / ...Peut-être que l'avantage de l'homme vient de la capacité à transposer à des cas comparables sa connaissance plus facilement qu'un programme qui ne peut l'appliquer qu'à des cas similaires à ce qu'elle connait." Il me semble que ce que beaucoup d'entre vous placez sous le mot "intuition" est justement défini par les mots que j'ai mis en gras. Il est évident que l'intuition utilise l'analogie (consciente on non) et que il faut faire comme le fait El cave la distinction entre "comparable" et "similaire". L'homme justement est capable de discerner des structures "comparables" même dans des contextes n'ayant apparemment rien à voir entre eux, l'histoire des sciences est pleine de ces "traits de génie" consistant à relier deux domaines jusque là séparés, le plus célèbre étant le cas de Newton (Chute des corps et trajectoire des planètes). Ce qui veut dire bien entendu que cela suppose la capacité d'avoir des représentations symboliques des structures en cause et à examiner. Ce que pour l'instant sont incapables de faire les logiciels. Sur ce point Kolvir aurait certainement quelque chose à dire s'il nous lit, non ? Fonction d'évaluation : Je suis bien sûr d'accord avec IDFX, et je répète sa très bonne question à la quelle personne n'a réagi : "A-t-on déjà essayé de travailler à partir de très nombreuses positions type comme le font apparemment les humains? Tant que cette fonction n'intégrera pas un aspect symbolique, Zerumbert aura raison. Lorsque cela se fera, sa phrase "On ne programmera jamais l'intuition." risque de passer dans les oubliettes. Petite remarque, nous fonctionnons tous au niveau des neurones sous 1,5 à 2 volts, et "ding !" c'est sûr et certain, prouvé, si je ment j'vais en enfer ! Bacco : Assez d'accord avec tes réponses, mais pas avec ton raisonnement. Ce n'est pas parce que la machine est construite par l'homme que ce n'est pas elle qui bat l'homme ! Car la machine trouve des coups que justement l'homme est incapable de trouver. L'homme n'a fait que lui donner des structures agissantes, ce qu'elle fait de ces structures est de SON ressort. D'autre part existent déjà dans d'autres domaines de l'IA des robots capables d'apprentissage et de se construire des stratégies non incluses dans son programme de base (son code génétique ?), voir les articles en lien plus haut. Pour terminer, et à propos d'intuition, un p'tit tour sur cet article élargira le débat : Musique-Echecs 1 Yvap, gratteur surréaliste.
|
|
Zerumbert, c'est quoi le probléme du voyageur de commerce et le probléme du sac à dos? J'ai fait histoire et sciences Po et me retrouve fort démuni pour participer à ce débat, alors que la question de départ m'intéresse énormément. Un rapide point sur ces deux probs, ou un rapide point sur le théme "NP Complet" me remettrait dans le bain. Et me permettrait au moins de savoir quelles sont les 4 questions auxquelles Bacco a répondu. Je trouve Bacco que tes interventions sont trés trés souvent intéressantes et pertinentes, et ton français est ravissant. La différence de compréhension entre ordi et humain est me semble t-il de nature: l'ordi et l'humain ne fonctionnent pas dans la même géométrie, en quelque sorte il y a aurait l'ordi euclidien et l'humain non euclidien (ou l'inverse, l'important c'est la différence essentielle, de nature). Conséquence: tant que l'ordi gérera un volume d'informations relativement faible dans un enironnement relativement homogéne, pas de compréhension, c'est une calculatrice appliquant des régles humaines. Si l'ordi doit faire appel à des moyens de transmissions d'information aussi divers et nombreux que notre systéme nervo-cognitif, alors chance pour que la compréhension naisse. Mais celle-ci est subordonnée à la conscience.Donc c'est pas demain la veille que comme le disait Zerumbert Fritz comprendra plus de chose aux échecs qu'une cafetiére au café. (Soit dit en pasant, au café, j'ai encore un meilleur niveau que ma cafetiére, par contre Fritz...)
|
|
Ah, croisement avec Yvap, J'aurai préféré être avant qu'aprés pour pouvoir prendre cela en considération. Qu'est ce que tu veux dire, Yvap, avec "Tant que cette fonction n'intégrera pas un aspect symbolique" ? Si c'est apprendre à l'ordi à manier les symboles, là, cela me parait illusoire: les symboles ne sont pas des algorythmes. Ils incluent à la fois des référents culturels (donc des connaissances) et des référents psychologiques, que ceux-ci ressortent d'ailleurs de l'individu ou du groupe, et sont l'une des pierres angulaires de cette gigantesque, et déjà multimillénaires IA, c'est à dire la conscience collective.Mais que d'investissement d'Evolution SA pour en arriver là, n'est-ce pas?
|
|
Exact !... Tout à fait d'accord avec toi. Et on rejoint ici comme tu l'as bien fait remarquer le sujet de la conscience. C'est pourquoi cet aspect de l'intuition qu'est le maniement de structures symboliques me paraît important, et que je relance Kolvir qui s'était déjà intelligemment exprimé sur ce point dans le premier article cité plus haut "Machines pensantes, intelligentes (?), conscientes (?)..." Je veux dire que la piste que suggère IDFX ne pourra être opérationnelle que lorsque la fonction d'évaluation intégrera la gestion de représentations symboliques sur les structures du jeu, positions, schémas de combinaisons types, etc... Avec bien entendu les remarques que tu fais sur les "référents culturels". Cela passe évidemment par une "évolution", voir même article ci-dessus.
|
|
Les fous sont lâchés Zerumbert En gros, on ne comprend rien, mais le cheminvers le but qui est de gagner la partie est clair. :Peux-tu argumenter cette position ? Ole Que veut dire "comprendre les echecs ?". Avoirune grande connaissance des echecs, c'est connaitre tout lestrucs... Comprendre = connaissance ? El cave L'intuition peut-elle s'appréhenderen terme d'analyse rationnelle ? Je comprends cette phrasecomme "peut-on programmer de l'intuition dans une machine ?" Trèsintéressante question, mais quel lien avec la compréhension (je ne dis surtout pas qu'il n'y en a pas je demande une précision) ? Dans la mesure où il me semble que si qqn comprend quelque chose ilpeut l'expliquer à son entourage, alors que s'il "ressent", ou "croit"quelque chose il se peut qu'il ait beaucoup plus de mal à l'expliquervoire à se l'expliquer lui-même !! L'intuition serait-elle une ébauche,une naissance de compréhension ? Une version primitive ou encorepeu développée de la compréhension ?... Zerumbert bis Si la fonction d'evaluation etait"diaboliquement" bien faite, il suffirait de n'esxplorer qu'undemi coup pour decider de ce qu'il faut jouer.Or, ... commeon ne sait pas "comprendre" ou noter correctement une position,on pallie ce manque d'acuitee par une recherche sur quelquesdemi-coups. La compréhension résiderait donc intégralementdans l'évaluation de la position ? L'arbre ne serait que rustine àintelligence déficiente ? Pourtant l'homme même très intelligentmême ayant une excellente compréhension du jeu étudiera cemême arbre ? Cela a-t'il un sens ? bacco 3. vision stratégique parfaite Accoler"parfait" à la propriété d'une machine :o) alors à celle d'un humain... :o)))) Zerumbert ter cafetière = fritz Tu es aveuglépar la similarité de leur apparence il me semble... :o)(J'ai peu de temps je prends le train en marche, il est possible que mes remarques soient déjà règlées + bas, oubliez dans ce cas)
|
|
|