|
Match Adams vs Hydra par w***9760 le
[Aller à la fin] |
| Informatique | |
"Les concepteurs comptent passer la barrière des 3000 points Elo avant la fin de cette année."
300 points elo ? c'est crédible ? est il vraiment super - mega fort ce logiciel ?
|
|
300 points elo c'est pas crédible du tout.
3000 points çà parait très dur.
|
|
Moi je dis que si maintenant y sont à 2800+, 3000 est pas forcément impossible d'ici relativement peu de temps, en tous cas ça reste un sacré objectif !
|
|
terrible la bannière de pub sur le site EE la photo de Mickey le rend encore plus terrifiant que la bête :)))
|
|
Communication C'est juste de la communication.
Il suffit de regarder le site des concepteurs.
Et puis rien de bien nouveau conceptuellement dans le programme: utilisation de fonctions alpha-beta et de fonctions heuristique...
Moi, ce qui m'inquiète, c'est le regard d'Adams sur la photo de propagande ;-)
|
|
3000 élos signifierait jeu parfait. Et quand on voit les erreurs que font encore les programmes, on en est encore très loin ! De toute facon je pense que ce niveau ne sera jamais atteint par quoi que ce soit. A moins peut-être de faire un monstre qui serait muni d'une bibliothèque d'ouverture monstrueuse (avec base de parties) et de tables de nalimov a 18 pièces, et encore...
|
|
3000 elo ne signifierait rien de parfait juste beaucoup de gains contre de très forts joueurs, Karpov avait fait une perf à 2985 à Linares 94, je crois que c'est le record en "classique". Le classement elo n'évalue pas la force des joueurs, mais leurs performances, ce sont deux choses liées mais pas identiques - en fait on ne peut pas mesurer la force, sauf en faisant une prise de sang pour mesurer le taux de midichloriens, mais ça marche seulement avec les Jedis ;i)
|
|
c'est toi qui confond classement élo et perf :-)
|
|
Moi je dirair que le elo donne une cote contre un adversaire. C'est à dire qu'un joueur classé 1900 à x chance sur 100 de gagner contre un joueur classé à 2000.
|
|
oui lesilmarillon, et ça rejoint donc ce que dit IDFX.
Un ordinateur ayant en mémoire toutes les positions légales du jeu d'Echecs accompagnées de leurs évaluations pourrait jouer "parfaitement" (quitte à choisir entre deux coups évalués de meme force), les évaluations étant fournies au préalable (une seule fois, ne fatiguons pas trop la bete) par un super-ordinateur calculant disons 500 coups à l'avance (oui, 500 et pas 50 car on va me sortir le coup des finales tour+fou contre 2 cavaliers ou du genre ;o)), jusqu'au mat ou nulle. (donc les évaluations se résument à "je (suis) mat(e) en x" ou "nulle" pour une telle machine).
Problème actuel: pas assez de mémoire pour stocker tous les couples (position,évaluation) (je me demande combien de DD de 200Go il faudrait ;o)), et processeurs loin d'etre assez rapides pour les 500 coups (meme pour les 50).
Mais le problème étant purement physique/informatique, réussira-t-on à le résoudre un jour? ..Ca a déjà été débattu sur F-E alors je n'insiste pas (si qqun a les liens.. :))
|
|
En plus, le calcul de 500 coups doit se faire sur chaque position légale, ce qui n'arrange pas les choses (il faut aussi lister les positions légales mais ça ne doit pas etre le plus long je crois :-p)
|
|
Si on avait parié il y a 10 ans qu'un simple programme de 50 Euros "ouvert au public" atteindrait en 2005 les 2800 elo et liquidant certains des meilleurs joueurs mondiaux (dont Kaspi), personne ne l'aurait cru.... Donc à mon avis, on risque d'être encore surpris !
|
|
pour Benji3000 La "simple" connaissance de toutes les positions légales est physiquement impossible: de l'ordre de 10 puissance 120 positions.
D'où l'utlisation d'une fonction de "notation" (dans le sens donner une note) de la position: c'est la fonction heuristique; et l'utilisation d'un algorithme de recherche (ici une variante de l'alpha-bêta) avec élagation des branches de l'arbre.
Le simple fait d'utiliser une fonction heuristique amène une imprécision: on peut montrer pas mal de positions où l'évaluation des programmes est fausse à partir du moment ou l'on dépasse l'horizon de calcul en profondeur de la bête.
En bref, la mémoire qu'il faudrait pour stocker l'information de la manière où tu le proposes est supérieur au nombre d'atomes dans l'univers.
|
|
"ouvert au public" C'est vrai que les programmes à 50 Euros compilé pour des ordinnateurs multiprocesseurs sont tres courants et se trouve tres facilement par le moindre amateur qui se respecte.
Deep Fritz
Deep_Junior
Deep_Blue
|
|
Il y a qq années lorsque j'ai commencé à m'intéresser au jeu, une organisation suèdoise, évidemment extrêmement compétente et honnête, avait alors estimé que le numéro 1 de leur liste, à cadence lente et avec un surpuissant AMD 400 Mhz, avait largement dépassé les 2700... : )
Dés que les machines pourront se vanter de battre régulièrement les meilleurs joueurs en 40 cps / 2h, nous pourrions bien voir un soudain bond stratosphérique de leurs classements (syndrome birman). Invérifiable. Tout bon pour le business peut-être ; )
En l'occurence il ne s'agit pas d'un logiciel mais d'un hardware programmable et il faut avouer que les possibilités semblent impressionnantes. Schématiquement cela permettrait aux programmeurs d'ajouter de la connaissance sans ralentir les calculs. Je suis curieux de voir ce match et surtout les premières parties.
|
|
De mémoire l'histoire du log à + 2700 sur AMD 400 mais je ne crois pas me tromper. Cette organisation suédoise a souvent été merveilleuse.
|
|
par correspondance, c'est plus dur par correspondance, Hydra a déjà perdu contre le GM par correspondance Arno Nickel (0-2)voir le site de chessfriend.com
A mon avis, Adams aura bien du mal à égaliser mais le match sera intéressant à voir.
|
|
La SSDF SSDF
|
|
pour un logiciel à 2700 GRATOS voir ProDeo, version freeware de Rebel. Je ne sais pas s'il vaut vraiment 2700 mais moi j'ai du mal, et il s'en tire bien contre les autres programmes du marché.
|
|
Attention Flytos 10 puissance 120 c'est l'ordre de grandeur des parties de 40 coups possible. Il y a beaucoup moins de positions légales (de l'ordre de 10 puissance 65 je crois).
|
|
pour Flytos: Je crois comprendre le principe de l'algorithme dont tu parles, et ça confirme bien que les ordis ne sont actuellement pas parfaits!
Merci pour l'ordre de grandeur; "physiquement impossible" ...actuellement ;-) La physique progresse aussi, d'où mon interrogation. Si un jour un ordinateur (un cyborg? bref un chose po humain) est capable de stocker "nb d'atomes dans l'univers" octets mémoire, ce sera envisageable.
Restera alors le problème du calcul (qui peut remplacer la mémoire (position/évaluation) s'il est ultra-ultra... rapide :)
|
|
eh les mecs le problème de l'ordi dont vous parlez, c'est pas le nombre d'atomes etc... c'est la qualité du ventilo, ou plutôt des ventilos, pour éviter de fondre les processeurs au bout de 10 mn de calcul :op
|
|
Merci Cyrillev effectivement, le nombre de positions ne peut pas dépasser 13 puissance 64. en tout état de cause, ce nombre de position est bien trop grand pour être géré dans son intégralité par un ordinateur.
Pour stocker une position/valeur, il faut de la place, et une information c'est l'état de quelques choses (pour coder le 0 ou le 1), et là pour l'instant, on est bloqué par le gigantisme du nombre de positions.
Avec le fonctionnement actuel des ordinateurs (au niveau Hardware), c'est tout à fait ingérable.
Bien sûr si on est capable un jour de faire tourner des ordinateurs fonctionnant avec des machines quantiques, l'ordre de grandeur changera, mais ce n'est pas pour tout de suite.
|
|
Pour avoir un ordre de grandeur : Le nombre total d'atomes dans l'univers est estimé à 10^80...
|
|
Benji Il faudra toujours au moins un atome pour stocker un bit d'information. Donc aucun ordinateur ne pourra stocker autant de bits (et à plus forte raison d'octets) de mémoire qu'il y a d'atomes dans l'univers.
|
|
et le stockage sur quarks n'est pas envisagé?
|
|
Les quarks ne peuvent exister seuls
|
|
pour Cyrillev: Et bien pas de problème, construisons un ordinateur de la taille de l'univers connu (en supposant qu'il reste de la place dans l'univers inconnu, mais là ça rentre dans l'astrophysique ;o)).
Et puis je crois me rappeler qu'il y a un grand "vide" entre noyau et électrons dans un atome, y'a donc de l'optimisation dans l'air ^^
J'aime bien le stockage sur quark aussi :)
Mais je ne suis pas du tout physicien (juste maths spé et je compte arreter là), alors je vais me contenter de suivre les évolutions dans ce domaine.
|
|
Ceci dit rien ne prouve qu'il est nécessaire d'approcher le problème de la façon "force brute" et de calculuer tous les coups (ou positions) possibles pour avoir une solution absolue du jeu. C'est à dire que ces 10^xx mis en regard du nombre d'atome dans l'univers, ne démontrent strictement rien.
|
|
Hydra hydraté :-)
|
|
parties hydra [Event "Rated game, 60m + 15s"]
[Site "?"]
[Date "2004.07.18"]
[Round "?"]
[White "hydra_chimera, Hydra/Chimera-1.11C"]
[Black "Cavolo, Deep Fritz 8"]
[Result "1-0"]
[ECO "C68"]
[WhiteElo "2968"]
[BlackElo "2641"]
[PlyCount "91"]
[EventDate "2004.02.08"]
1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Bxc6 dxc6 5. O-O Bg4 6. h3 h5 7. d3 Qf6 8.
Nbd2 Ne7 9. Re1 Ng6 10. d4 Bd6 11. Kf1 exd4 12. e5 Bxe5 13. Ne4 Qe6 14. hxg4
hxg4 15. Nfg5 Qd7 16. Qd3 O-O-O 17. Qb3 Qd5 18. Kg1 Bh2+ 19. Kf1 f5 20. Ng3
Bxg3 21. fxg3 Rh1+ 22. Kf2 Rxe1 23. Qxd5 Rxd5 24. Kxe1 Rb5 25. Kf1 Kd7 26. b3
Ne7 27. Bd2 Nd5 28. Ke2 Nf6 29. Kd3 Rd5 30. Rh1 b6 31. Bf4 Rc5 32. Rc1 Ra5 33.
a4 Rd5 34. Re1 a5 35. Re2 b5 36. Ne6 Ne4 37. Nxc7 Nc5+ 38. Kd2 d3 39. Nxd5 dxe2
40. Nc3 b4 41. Nb1 Kc8 42. Kxe2 Kb7 43. Nd2 Ka6 44. Nc4 Ne6 45. Be3 Nc7 46. Kd3
1-0
[Event "Rated game, 60m + 15s"]
[Site "?"]
[Date "2004.07.17"]
[Round "?"]
[White "hydra_chimera, Hydra/Chimera-1.11C"]
[Black "Vspec II, Deep Fritz 8"]
[Result "1-0"]
[ECO "B90"]
[WhiteElo "2962"]
[BlackElo "2672"]
[PlyCount "139"]
[EventDate "2004.02.08"]
1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Be3 g6 7. Be2 Bg7 8. O-O
O-O 9. f4 Nc6 10. a3 Rb8 11. h3 Qc7 12. Qd3 b5 13. Nxc6 Qxc6 14. Rad1 Be6 15.
Bf3 Qc4 16. Qd2 a5 17. Rf2 b4 18. axb4 axb4 19. Nd5 Nxd5 20. exd5 Bd7 21. Bd4
Bxd4 22. Qxd4 Qxd4 23. Rxd4 Rfc8 24. Re2 Kf8 25. Kf2 Bb5 26. Red2 Ba6 27. Ke3
Rc5 28. h4 Ra5 29. h5 Ra1 30. Rd1 Ra2 31. Rb1 Kg7 32. hxg6 hxg6 33. Re4 Rb7 34.
g4 Kf6 35. g5+ Kg7 36. Kd2 Kg8 37. Bg4 Kf8 38. Ke3 b3 39. c3 f5 40. gxf6 exf6
41. Bc8 Rh7 42. Bxa6 Rxa6 43. Rb4 Ra5 44. Rb8+ Kf7 45. c4 Rh3+ 46. Kd4 Ra7 47.
Rd1 Rh4 48. Kc3 Re7 49. Rb6 Rxf4 50. Rxd6 g5 51. c5 g4 52. c6 Rc7 53. Re1 Rf5
54. Kd4 Rh5 55. Rd7+ Rxd7 56. cxd7 Rh8 57. Kc5 Ra8 58. Ra1 Rh8 59. Kd6 g3 60.
Kc7 f5 61. d8=Q Rxd8 62. Kxd8 g2 63. Rg1 f4 64. Rxg2 f3 65. Rf2 Kg6 66. Rxf3
Kh6 67. Rxb3 Kg5 68. Ke7 Kg4 69. d6 Kf5 70. d7 1-0
[Event "Partie amicale, 15m + 15s"]
[Site "Salle des machines"]
[Date "2005.02.11"]
[Round "?"]
[White "Olivier__Evan"]
[Black "ZOR_CHAMP"]
[Result "1/2-1/2"]
[ECO "A45"]
[WhiteElo "2216"]
[BlackElo "3009"]
[PlyCount "64"]
[EventDate "2005.02.11"]
1. d4 Nf6 2. b3 d5 3. Ba3 Nc6 4. e3 e5 5. Bxf8 Kxf8 6. dxe5 Nxe5 7. Be2 Bf5 8.
Nf3 Nxf3+ 9. Bxf3 c6 10. O-O h5 11. Nc3 Kg8 12. Ne2 Qc7 13. Ng3 Bg4 14. c4 Rd8
15. cxd5 Qe5 16. Bxg4 Rxd5 17. Qc2 hxg4 18. Rad1 Qg5 19. Rxd5 Nxd5 20. Qe4 g6
21. Re1 a6 22. Qd4 Qh6 23. Nf1 Qg5 24. e4 Qe7 25. Ng3 Nf4 26. e5 Ne6 27. Qxg4
Rh4 28. Nf5 Rxg4 29. Nxe7+ Kf8 30. Nc8 Rd4 31. Nd6 b5 32. h3 Ke7 1/2-1/2
|
|
bien entendu la troisième partie a été joué en advanced chess ...
|
|
pour azertyqsdf: ça ne prouve rien sur les limites exactes du jeu d'échecs, ça se contente de le borner dans un univers fini :)
Mais bien sur pour nous zotres zumains ce jeu a des ressources infinies ;-) ..Comme le Go d'ailleurs!
|
|
que je sache le Go reste un mystère aussi pour les machines, à moins de développement récents dont je n'aurais pas entendu parler. Il semblerait que ce jeu ait un horizon beaucoup trop éloigné pour les algorithmes actuels, non?
|
|
Choix d'ouvertures... je pense que l'ouverture Prié (si je puis me permettre), 1.d4 d5 2.a3 serait un choix intéressant contre un ordinateur... Qu'en pensez-vous?
|
|
Eh bien si azertyqsdf C'est en fait la définition de solution absolue. Elle ne peut faire appel à aucune évaluation, il faut savoir de façon imparable si une position est gagnante ou nulle. Pour cela il y a deux possibilités : la construction d'un arbre exhaustif à partir de la position initiale, ou une table de Nalimov à 32 pièces. La seconde est infiniment moins coûteuse en ressources mémoires, mais il faut quand même stocker au moins un certain nombre d'octets fois le nombre de positions légales (je dis au moins car il est possible que pendant le calcul de la table il faille stocker beaucoup plus, ce qui donc le rendrait encore plus impossible, mais un calcul peut être conceptuellement favorisé par un ordinateur quantique, à la différence du stockage, donc peut-être que ce ne serait pas le facteur limitant).
|
|
3000 elo me semble loin d'être une limite nécessitant la connaissance de la solution absolue. Vu l'inflation du elo je dirais que dans qq années des joueurs ne jouant pas beaucoup mieux que ceux d'aujourd'hui y parviendront tout en restant loin de cette connaissance absolue. Quant aux machines... il ne m'étonnerai pas que Hydra fasse déjà une perf à +3000 contre Adams.
|
|
Cyrillev Je ne vois pas en quoi tu démontres qu'il ne peut pas exister d'algorithme "simple" (càd impliquant moins de ressources qu'une approche force brute) et qui permette d'aboutir au meilleur résultat sans nécessairement calculer toutes les positions légales possibles à partir de la position actuelle. Tout ce que cela démontre, c'est la limite de cette approche particulière.
|
|
un Elo d'ordinateur ne veut rien dire !!
Un elo d'ordinateur à 3000 points ne veut rien dire !!
La force elo n'est pas une mesure absolue de la force d'un joueur, mais une mesure relative de la force contre un echantillon de joueurs.
je m'explique...
Mettez sur une ile deserte 100 joueurs classés à 1400 elo , et un joueur classé à 2000 elo....Au bout d'un certain nombre de partie, le joueur le plus fort sera classé à 4000 points elo car il massacre tous ses adversaires sur cette ile isolée...
Inversement mettez un joueur classé 2000 elo sur une ile desete au milieu de 100 joueurs classés à 2600 elo...au bout d'un moment le joueur le plus faible(ex 1800 ) sera classé à 1400 car il se fait massacré dans toutes les parties...
Comprenez le elo est un classement relatif pour une population donnée..(le chat le plus faible est plus fort que la souris la plus faible....et le tigre le plus faible est plus fort que le chat le plus fort, mais on ne peut pas comparer des souris des chats des tigres...pareil pour les humains et les programmes.
En conclusion le elo est valable pour une grande population d'humains qui jouent tous les uns contre les autres....elo n'a pas de signification humaine pour un ordinateur qui joue quelques parties contre d'autres ordinateurs...
Il faudrait que l'ordinateur joue une grande quantité de parties contre une large population d'humains classés de 1400 à 2700 pour evaluer sa force reelle contre les humains et uniquement eux pour lui donner un elo fictif.
|
|
quelques erreurs d'orthographes ... et de frappe excusez moi .
lisez :
"le chat le plus faible est plus fort que la plus forte des souris "
|
|
ref thierrycatalan en admettant que le joueur classé 2000 ne fatigue pas une fois de temps en temps (même contre un 1400, ça peut arriver), il sera toujours à 2000 car les parties sont non compatibles... le concepteur de l'élo ayant, dans sa grande sagesse introduit la limite des 350 points. Je suis d'accord que les matchs entre progs aboutissent à un élo un peu fictif, ce n'est pas le élo humain (le style de jeu non plus d'ailleurs).
|
|
Merci thierry catalan.. Le elo est donc une valeur relative qui mesure le niveau des uns par rapport aux autres.
|
|
De plus la performance de hydra atteint bien les 3000 elo. A méditer...
|
|
perfect is not enough ! A mon humble avis, la connaissance de la solution du jeu d'échecs ne suffit pas (disons, une table de Nalimov à 32 pièces), il faut aussi que l'ordinateur ait un algorithme qui lui permette de choisir parmi les divers coups celui qui pose le plus de problèmes à l'adversaire.
Je m'explique : supposons que le résultat d'une partie jouée à la perfection soit la nulle. En ce cas, un ordinateur parfait risquerait de jouer mollement avec les blancs, du genre 1 e4 e5 2 d3 Cf6 3 f3 etc... et la position reste nulle. Ou bien il se produirait rapidement une répétition de position.
Si en revanche le résultat d'une partie parfaite était le gain des blancs, que jouerait un ordianteur avec les noirs ? Probablement n'importe quoi, de toutes façons pour lui autant abandonner dès le premier coup...
Donc pour gagner contre des humains, il faut aussi introduire une dose de psychologie... Evidemment, le résultat d'un match entre deux bécanes connaissant la solution du jeu d'échecs serait couru d'avance.
|
|
La joie d'Hydra (4.5 -0.5) Hydra
|
|
|