Page 3 sur 5

Publié : 21 oct. 2008 12:15
par Cyrare
Urd a écrit :
ClitoriX 2 a écrit :Molyneux a dit y'a quelques jours que Fable 2 allait révolutionner l'AI dans les jeux vidéo (y) .
Alors, Fable 2 a révolutionné l'IA ?

A vrai dire, aujourd'hui je m'en fous un peu mais bon. :lol:
J'ai lu un article interessant là dessus, et c'était de la grosse merde. Genre c'était que pour le chient l'IA, et en plus c'était même pas de l'IA quoi, juste du scriptage en fonction de tes agissements.

Publié : 21 oct. 2008 13:32
par ClitoriX 2

Publié : 21 oct. 2008 19:10
par Urd
Cyrare a écrit :et en plus c'était même pas de l'IA quoi, juste du scriptage en fonction de tes agissements.
Comme dans la majorité des jeux quoi.

Publié : 21 oct. 2008 19:23
par agent069
Un peu HS mais bon, c'est quoi la difference entre une "vraie IA" et un jeu de script?

Publié : 21 oct. 2008 19:44
par Urd
J'ignore ce que Cyrare voulait dire, mais je l'ai compris au sens de "ça n'avait rien à voir avec les sciences cognitives", c'est-à-dire où une entité (virtuelle) dispose d'un raisonnement qui lui est propre et réagit en fonction des perceptions de son environnement auquel l'utilisateur appartient par l'intermédiaire de son avatar.
On a droit ici à de simples réactions "idiotes" qui ne sont pas dues à un raisonnement de l'entité mais sont prédéfinies par un mécanisme externe à l'entité pour simuler un peu d'interactivité.

Enfin bon, il n'y a pas de différence en soi et les sciences cognitives c'est du pipeau. :ancienfandessciencescognitives:

Publié : 21 oct. 2008 20:13
par Zwarf
Non mais relisez les pages précédentes, molyneux parlait pas de fable 2 quand il disait révolutionner l'IA :/

Publié : 21 oct. 2008 20:18
par Urd
ClitoriX 2 a écrit :Molyneux a dit y'a quelques jours que Fable 2 allait révolutionner l'AI dans les jeux vidéo (y) .
Je n'ai fait que citer Clitorix2.

C'est la faute de Clito. :mad:

Publié : 21 oct. 2008 20:26
par agent069
Zwarf a écrit :Non mais relisez les pages précédentes, molyneux parlait pas de fable 2 quand il disait révolutionner l'IA :/
On s'en branle c'est un jeu de merde, laisse nous parler de choses interessantes :lol:

Publié : 21 oct. 2008 20:43
par screamer94
agent069 a écrit :
Zwarf a écrit :Non mais relisez les pages précédentes, molyneux parlait pas de fable 2 quand il disait révolutionner l'IA :/
On s'en branle c'est un jeu de merde, laisse nous parler de choses interessantes :lol:
HAHA t'es sur le topic de fable 2 degage si t'es pas hapiness :lol:

Publié : 21 oct. 2008 20:50
par Zwarf
Soit pas blasé parce que c'est exclu 360 8) Il te reste lbp :naperd:

premières impressions...

Publié : 21 oct. 2008 20:52
par Lancelot
J'avais un peu peur pour les graphismes mais c'est beaucoup plus fin et détaillé que le premier fable...c'est surtout le chara-design qui est au top niveau ainsi que l'ambiance générale.
La version française est vraiment réussie, les dialogues sont à se tordre de rire. Dès le début, on voit bien que c'est un jeu créé par des anglais: on croirait relire une oeuvre de Charles Dickens, bref fable 2 a un charme fou. :oops:
Et puis la bande-son, les musiques celtiques... :love:

Publié : 21 oct. 2008 23:22
par Chunky
Zwarf a écrit :Soit pas blasé parce que c'est exclu 360 8) Il te reste lbp :naperd:
regarde sa signature

Publié : 21 oct. 2008 23:46
par Urd
Qu'est-ce que tu as contre megaman ? :???:

Publié : 22 oct. 2008 00:27
par Chunky
je parle de screamer qui a une 360 Image

Publié : 22 oct. 2008 00:42
par Zwarf
Et ? :oscar:

Publié : 22 oct. 2008 01:10
par Konino
Le bon quiproquo de sourds muets.. :lol:

Publié : 22 oct. 2008 01:26
par agent069
Ouais vos gueules, vous avez niqués "mon hors sujet" :(

Publié : 22 oct. 2008 11:34
par Dr Mario
Alors que c'était beaucoup plus intéressant que ce jeu de merde :(

Publié : 22 oct. 2008 12:01
par Cyrare
Urd a écrit :J'ignore ce que Cyrare voulait dire, mais je l'ai compris au sens de "ça n'avait rien à voir avec les sciences cognitives", c'est-à-dire où une entité (virtuelle) dispose d'un raisonnement qui lui est propre et réagit en fonction des perceptions de son environnement auquel l'utilisateur appartient par l'intermédiaire de son avatar.
On a droit ici à de simples réactions "idiotes" qui ne sont pas dues à un raisonnement de l'entité mais sont prédéfinies par un mécanisme externe à l'entité pour simuler un peu d'interactivité.

Enfin bon, il n'y a pas de différence en soi et les sciences cognitives c'est du pipeau. :ancienfandessciencescognitives:
([EDIT] Note : Je te réponds, mais c'est surtout pour Agent en fait)

Oui ou pour vulgariser un peu : Le fait que l'élément intelligent apprenne au cours du jeu, le fait sur 2 situations identiques, il ne fasse pas forcément pareil en fonction de sa propre expérience. Par contre, je ne suis pas contre un peu de code pour aider, ce sera toujours mieux que les scripts très basiques auxquels on a le droit actuellement du genre "Si joueur tire, alors PNJ se planque pour tirer à son tour."

Des intelligences artificielles "faciles" à concevoir sont par exemple un joueur d'échec qui une fois les règles assimilées va jouer comme une merde au début et comprendre comment tu joues au fur et à mesure des parties, pour finir par te battre avec tes propres techniques.

C'est déjà très scripté, il y a d'autres applications bien plus bluffantes (pour moi en tout cas) j'avais vu un reportage qui montrait un bras articulé dans un espace clos avec juste un cube. Le bras bougeait n'importe comment, et finissait par "comprendre" qu'il ne pouvait pas aller plus loin que la paroi et ne se cognait plus, et finissait aussi par comprendre l'existance du cube et même qu'il pouvait l'attraper avec sa pince et le déplacer.

Là dans Fable 2, genre si tu frappes un ennemi avec une arme de point, le chien réagira pas pareil que si tu tires avec une arme à feu. On est loin d'une révolution de l'IA, bien que ce soit tout à son honneur de chercher à améliorer ces aspects.

Publié : 22 oct. 2008 13:30
par Zwarf
Ah ces pauvres fanboys ps3 qui se plaignent quand on troll un peu leurs jeux et qui font pas mieux dans les topics 360 parce qu'ils sont blasé de pas avoir autant d'exclues aussi bien sur leur console en cette fin d'année :roll:
Vous feriez mieux de prendre exemple sur dreamer_sony qui sait fermer sa gueule quand il faut lui 8)

Publié : 22 oct. 2008 21:23
par Urd
Cyrare a écrit :Des intelligences artificielles "faciles" à concevoir sont par exemple un joueur d'échec qui une fois les règles assimilées va jouer comme une merde au début et comprendre comment tu joues au fur et à mesure des parties, pour finir par te battre avec tes propres techniques.

C'est déjà très scripté, il y a d'autres applications bien plus bluffantes (pour moi en tout cas) j'avais vu un reportage qui montrait un bras articulé dans un espace clos avec juste un cube. Le bras bougeait n'importe comment, et finissait par "comprendre" qu'il ne pouvait pas aller plus loin que la paroi et ne se cognait plus, et finissait aussi par comprendre l'existance du cube et même qu'il pouvait l'attraper avec sa pince et le déplacer.
Ce dont tu parles là, c'est de l'apprentissage par renforcement. C'est un système tout bête dans le fond qui fonctionne à base de récompenses.

Pour casser ce qui te semble "intelligent", dans ce concept le joueur artificiel d'échecs ne joue pas un coup parce qu'il y a "réfléchi" ou compris les règles mais parce que son système de récompense lui a indiqué que la meilleure (ou moins pire) récompense se trouvait dans le coup qu'il allait effectuer (si on omet le coefficient d'exploration qui pousse l'entité à faire une action totalement au hasard). Il actualise en même temps ses récompenses suivant le résultat obtenu par l'action.
La récompense peut par exemple être vue comme positive s'il a déjà joué ce coup, dans une ancienne partie, qui l'a mené vers la victoire, et négative s'il l'a mené à la perte. C'est une vision assez simpliste mais c'est ce qui est utilisé pour le backgammon, et qui y fonctionne.

Le hic est que pour que le joueur artificiel puisse savoir quelle action choisir, il faut qu'il puisse se représenter l'état dans lequel il se trouve. Cela implique qu'il puisse se représenter tous les types de situations possibles dans lesquels il se trouve afin d'inférer les bonnes actions.

Dans la pratique c'est beaucoup plus compliqué car il y a plein de facteurs qui entrent en jeu, l'entité a alors une représentation assez limitée de son entourage, ça ne fonctionne très bien que s'il n'y a pas un élément imprévu qui vienne chambouler sa représentation, car l'entité ne pourra pas se la représenter, elle continuera, si elle y arrive, bêtement à actualiser son système de récompenses, bien ou mal.

Dans un jeu comme les échecs ou le backgammon, il n'y a jamais d'élément imprévisible, on parle d'environnement déterministe. Pareil pour un bras enfermé dans une cellule.

Pour modéliser un peu la fonction de récompense du bras, on peut penser à des récompenses négatives lorsque le bras n'arrive plus à avancer (action "avancer" à un certain type d'état de l'entité).
Le bras infèrera qu'il est mauvais de tenter de faire certaines actions à certains endroits, car il aura une moins bonne récompense que s'il fait d'autres actions, comme attraper (à l'état "ne possède pas de cube") puis déplacer (lorsque "possède le cube") qui lui donnent une récompense positive.

Il faut de plus que l'hypothèse de Markov soit vérifiée et que l'entité agisse une "infinité" de fois.
Puis l'actualisation des valeurs de récompenses dépend beaucoup de la fonction de récompense implémentée par le programmeur.

En gros on laisse tourner une entité de façon aléatoire jusqu'à ce qu'elle apprenne bien, mais il se peut que ce "bien" n'arrive jamais. Ca dépend de plein de paramètres, mais essentiellement de la fonction de récompense choisie par le programmeur.
Si on faisait ça sur des jeux, il se pourrait très bien que les entités, après apprentissage, agissent plus bêtement que de simples scripts.

Si ça t'intéresse, il y a cette thèse qui est plutôt intéressante et explique en détail certaines parties de l'apprentissage par renforcement.

Puis il suffit de mettre des randoms dans les scripts et ça te semblera une vraie IA d'après ce que je comprends. :???:

Publié : 23 oct. 2008 09:56
par Cyrare
:bave: J'aurais adoré être ton pote quand j'étais plus jeune et que j'avais le temps de me plonger là dedans. :oops:

Juste 2 petite choses, si ta dernière phrase concerne :
Cyrare a écrit :le fait sur 2 situations identiques, il ne fasse pas forcément pareil
il y a 6 petits mots qui suivent que je juge indispensable : "en fonction de sa propre expérience." donc non, le random est pas bon parce que ça tend pas à s'améliorer avec le temps.

Deuxième point : Je parlais vraiment d'IA appliquée aux JV, c'est à dire qu'il faut une IA "utile" et qui devienne "intelligent" très rapidement, donc forcément aidé par du code. Un type d'application pourrait être un jeu du type starcraft où l'ennemi pourrait finir par battre le champion du monde par apprentissage. (Ce qui est exactement le système de récompense dont tu parles.)

Pour moi c'est intelligent (même si ça ne l'est pas réellement) parce que d'une part l'IA sera bien meilleur que si les développeurs l'avaient scripté en dur, et d'autre part l'IA entrainée par le meilleur joueur du monde sera meilleure que celle que j'aurai entrainé. Ce qui amenne à d'autres type de gameplay tel que des tournois d'IA.

Tout ça est évidemment très basique par rapport aux applications de recherche, mais dans le domaine du jeu vidéo où tout est à faire, rien que ça, ce serait révolutionnaire.

Publié : 23 oct. 2008 10:37
par agent069
Ca serait dingue d'avoir des IA entrainés par les meilleurs joueurs, qui s'affrontent dans un tournois et qu'au final ca fasse des IA encore plus puissantes, on créerait peut être un monstre qui boufferai l'humanité comme ca :fear:

Publié : 23 oct. 2008 19:27
par Urd
Cyrare a écrit ::bave: J'aurais adoré être ton pote quand j'étais plus jeune et que j'avais le temps de me plonger là dedans. :oops:
Je comprends, c'est mon boulot donc j'y passe tout mon temps.

Et je raisonne très peu au conditionnel passé, mais conditionnellement merci quand même. :oops:



Je vais juste revenir sur ce point :
Cyrare a écrit :Pour moi c'est intelligent (même si ça ne l'est pas réellement) parce que d'une part l'IA sera bien meilleur que si les développeurs l'avaient scripté en dur, et d'autre part l'IA entrainée par le meilleur joueur du monde sera meilleure que celle que j'aurai entrainé. Ce qui amenne à d'autres type de gameplay tel que des tournois d'IA.
Ce n'est pas parce que l'IA s'entraîne contre le meilleur joueur du monde qu'elle sera meilleure que celle que tu auras entraînée, contre toi du moins.
Elle s'habituera juste à affronter les meilleures stratégies possibles et y sera parée car elle aura appris à réagir à leur style, mais il suffit que tu joues comme une merde dans un style où elle n'est pas préparée pour la déstabiliser. Tandis que l'IA que tu auras entraînée connaîtra ton style de jeu et finira par te battre tout le temps.

L'IA n'apprend pas à bien jouer, elle apprend à battre les meilleurs joueurs, et donc leur style de jeu, ce qui est différent.

C'est la raison pour laquelle il y a encore une dizaine d'années, les grands joueurs d'échecs jouaient des coups peu usuels (comme "a4") dès le début de partie pour déstabiliser les IA.


Plus le jeu sera riche en gameplay, et plus difficile sera la tâche d'implémenter une bonne IA, même si l'idée est tentante, sinon vous pouvez être sûr que ça aurait déjà été fait. :oscar:

Publié : 23 oct. 2008 21:31
par Aptarus
Qui plus est, les scripts peuvent (j'ai dit peuvent) être générés suite à des phases d'apprentissage - oui, l'IA ne "progressera" plus, mais ça sera plus léger et a priori plus prévisible - du point de vue des concepteurs.