Intelligence artificielle
6 livres et 7 critiques, dernière mise à jour le 15 août 2022 , note moyenne : 5
AI for Game Developers
Résumé de l'éditeur
- Potential function based movements: a technique that handles chasing, evading swarming, and collision avoidance simultaneously
- Basic pathfinding and waypoints, including an entire chapter devoted to the A* pathfinding algorithm
- AI scripting
- Rule-based AI: learn about variants other than fuzzy logic and finite state machines
- Basic probability
- Bayesian techniques
Unlike other books on the subject, AI for Game Developers doesn't attempt to cover every aspect of game AI, but to provide you with usable, advanced techniques you can apply to your games right now. If you've wanted to use AI to extend the play-life of your games, make them more challenging, and most importantly, make them more fun, then this book is for you.
Édition : O'Reilly - 390 pages, 1re édition, 1er juillet 2004
ISBN10 : 0596005555 - ISBN13 : 9780596005559
- Introduction to Game Al
- Pattern Movement
- Flocking
- Potential FunctionBased Movement
- Basic Pathfinding and Waypoints
- A* Pathfinding
- Scripted Al and Scripting Engines
- Finite State Machines
- Fuzzy Logic
- RuleBased Al
- Basic Probability
- Decisions Under Uncertainty - Bayesian Techniques
- Neural Networks
- Genetic Algorithms
- Vector Operations
- Index
Chaque chapitre du livre AI for Game Developers concerne un aspect bien particulier d'une technique utilisé en intelligence artificielle. Toutes ces techniques étant complètement indépendantes, il est tout à fait possible de choisir les chapitres qui intéressent le plus. Chaque chapitre est principalement articulé autours de deux grandes parties : une première présentant la partie théorique de la technique et une seconde appliquant celle-ci à un exemple concret du domaine des jeux vidéo. Les aspects mathématiques et techniques s'enchainent pour faire le tour complet de chaque aspect.
Du point de vue du contenu, les thèmes restent classique avec, par exemple, la présentation de l'algorithme A* (A-star), le détail de machines à états jusqu'aux techniques avancées comme les réseaux Baysiens et les réseaux de neurones. Globalement, les 14 chapitres proposent une complexité croissante tout en gardant l'aspect précédemment évoqué : leur totale indépendance. Aucun ne demande le pré-requis d'un autre pour être compris.
Ce livre est un très bon achat pour les programmeurs qui désirent découvrir l'Intelligence Artificielle au travers d'application direct dans les jeux vidéo. Beaucoup de livres sur ce domaine se contentent de présenter, très en détails, les techniques utilisées sans forcement présenter l'aspect technique de celles-ci. Ici, tout s'enchaine avec une grande cohérence et des exemples extrêmement clairs et très argumentés.
Commenter Signaler un problème
- Potential function based movements: a technique that handles chasing, evading swarming, and collision avoidance simultaneously
- Basic pathfinding and waypoints, including an entire chapter devoted to the A* pathfinding algorithm
- AI scripting
- Rule-based AI: learn about variants other than fuzzy logic and finite state machines
- Basic probability
- Bayesian techniques
Unlike other books on the subject, AI for Game Developers doesn't attempt to cover every aspect of game AI, but to provide you with usable, advanced techniques you can apply to your games right now. If you've wanted to use AI to extend the play-life of your games, make them more challenging, and most importantly, make them more fun, then this book is for you.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Intelligence Artificielle
Résumé de l'éditeur
Édition : Pearson Education - 1216 pages, 2e édition, 1er septembre 2006
ISBN10 : 2744071501 - ISBN13 : 9782744071508
- Intelligence artificielle
- Résolution de problèmes
- Connaissances et raisonnement
- Planification
- Connaissances et raisonnement en environnement incertain
- Apprentissage
- Communication, perception et action
- Conclusions
Une particularité de ce livre est qu'il est assez théorique. Le lecteur est amené à réfléchir sur des sujets passionnants, à mettre en relation des concepts et à les exploiter lui-même. En effet, parmi les 400 et quelques exercices, certains sont des exercices de réflexion, simplement. D'autres, à l'opposé, sont des exercices de programmation. Il est cependant important de s'intéresser à l'aspect "réflexion" de ce livre car il vous fera comprendre excessivement plus facilement bien des concepts et algorithmes d'IA.
Si ce livre vous intéresse mais que vous hésitez à cause de l'aspect théorique, je ne peux que vous conseiller de le feuilleter si vous le pouvez, ou bien de consulter sa table des matières. Pourquoi ? Car si il aborde vraiment les thèmes qui vous intéressent, la théorie ne sera pas un problème. Bien que la démarche adoptée soit plutôt nettement scientifique, il demeure toutefois accessible grâce à son côté philosophie, car il est bien question de philosophie de l'IA. On y apprend à raisonner sur les agents intelligents dans un contexte donc à la fois scientifique et philosophique. Toutefois, ce livre n'est pas non plus accessible à Mr Tout le monde. Il faut tout de même avoir de bonnes notions d'algorithmie et avoir été ne serait-ce qu'un peu sensibilisé aux problématiques abordées ici. Par exemple : comment fait l'ennemi dirigé par l'ordinateur dans tel jeu pour avoir le meilleur angle de tir et pour décider du meilleur moment pour ce faire ?
En conclusion, ce livre aborde donc tous les aspects qui concernent l'IA. De la prise de décisions au raisonnement, on découvre un nouveau monde passionnant. Il ne faut toutefois pas vous attendre à des exemples en C++, Java ou autres car ce livre est à visée générique et ne cible donc aucun langage. Il s'agit ici de comprendre certaines logiques et de savoir les mettre en oeuvre. C'est donc un excellent livre pour découvrir ce monde. Il devient bien plus facile après sa lecture d'aborder l'implémentation d'intelligences artificielles dans vos programmes.
Le sommaire est d'ailleurs assez impréssionnant, on passe de l'histoire de l'IA, aux agents intelligents pour en finir sur la robotique ainsi qu'une réflexion sur l'avenir. Aucun aspect n'est oublié.
Tout le monde peut, à mon avis, y trouver son compte : du débutant complet qui découvrira les différentes notions, un historique détaillé, des résumés de chaque chapitre très bien fait, au confirmé qui y trouvera son bonheur parmi tous les aspects abordés et la richesse qu'apporte chaque chapitre.
Le but central de ce livre reste la réflexion comme nous le montre les différents exercices proposés à chaque fin de chapitre, les auteurs veulent clairement que le lecteur comprenne l'intérêt de mettre en pratique tel ou tel algorithme.
Il faut cependant posséder, comme le précise le livre dans sa préface, quelques connaissances de base en informatique (ne serais ce que pour apprécier les algorithmes ponctuant le livre) ainsi que de solides bases en mathématiques pour comprendre certains chapitres (des rappels mathématique sont disponible en annexe si besoin).
Malgrès cela, le livre se veut accessible de par les exemples fournit qui peuvent être compris par n'importe qui et son style qui se lit assez facilement.
Même si le livre reste très théorique, il en reste très complet et devient vraiment intéressant si on prend la peine de se plonger un minimum dans les exercices proposés et donc de jouer le jeu des auteurs.
C'est pourquoi je le conseil à tous ceux qui veulent découvrir ou en apprendre plus sur l'IA.
Commenter Signaler un problème
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
AI Game Engine Programming
Résumé de l'éditeur
Le livre fournit aussi une couverture perspicace d'une série de sujets importants pour le développement de moteurs AI, et les lie ensemble pour former une référence indispensable. La première partie fait un tour global de l'intelligence artificielle dans les jeux, définit la terminologie de base utilisée par la suite, étudie les concepts sous-jacents et dissèque les parties d'un moteur AI. La deuxième partie couvre les genres spécifiques (RPG, TRS, FTPS, Shooter, Sports, Racing, Strategy, Adventure, Fighting, Platform, et autres) et explique comment ils utilisent des paradigmes AI différents. Elle couvre aussi comment ils utilisent les solutions usuelles aux problèmes posés par ces différents genres. Certains des problèmes incluent la gestion des interactions humain/AI, l'utilisation appropriée de scripts, et l’équilibre général intelligence/entraînement. La troisième partie fournit l'implémentation réelle pour les techniques AI de base comme les machines à état, les machines floues, les systèmes de message, les systèmes scriptés, les systèmes d'information basés sur la localisation. Puis la quatrième partie vouvre les techniques plus avancées telles que les algorithmes génétiques, les réseaux neuronaux, la vie artificielle, les algorithmes de planification et les arbres de décision. Le livre conclut avec la partie 5, qui parle "du développement AI de jeu réel". Les domaines couverts se concentrent sur comment les AI distribués comme paradigme global peut aider à l'organisation d'un moteur AI. le développement classique d'AI, le débogage et le tuning sont aussi couverts.
Après avoir lu le livre, vous aurez voyagé à travers la majorité du paysage de la connaissance qu'un programmeur AI rencontre, et vous serez prêt à le maîtriser.
Édition : Charles River Media - 600 pages, 1re édition, 1er septembre 2004
ISBN10 : 1584503440 - ISBN13 : 9781584503446
- Chapter 1 Basic Definitions and Concepts
- Chapter 2 An AI Engine: The Basic Components and Design
- Chapter 3 Asteroids: Our AI Test Bed
Part II Game Genres
- Chapter 4 Role Playing Games (RPGs)
- Chapter 5 Adventure Games
- Chapter 6 Real-Time Strategy (RTS) Games
- Chapter 7 First-Person Shooters/Third-Person Shooters (FTPS)
- Chapter 8 Platform Games
- Chapter 9 Shooter Games
- Chapter 19 Sports Games
- Chapter 11 Racing Games
- Chapter 12 Classic Strategy Games
- Chapter 13 Fighting Games
- Chapter 14 Miscellaneous Genres of Note
Part III Basic AI Engine Techniques
- Chapter 15 Finite-State Machines
- Chapter 16 Fuzzy-State Machines
- Chapter 17 Message-Based Systems
- Chapter 18 Scripting Systems
- Chapter 19 Location-Based Information Systems
Part IV Advanced AI Engine Techniques
- Chapter 20 Genetic Algorithms
- Chapter 21 Neural Networks
- Chapter 22 Other Techniques of Note
Part V Real Game AI Development
- Chapter 23 Distributed AI Design
- Chapter 24 Common AI Development Concerns
- Chapter 25 Debugging
- Chapter 26 Conclusion, and the Future
Appendix: About the CD-ROM
Index
Outre la présentation de ces techniques, des tests sont effectués à l'aide d'un mini jeu pour voir le comportement réel de ces techniques et les limitations. Ce qui est dommage, c'est que les dernières techniques, plus avancées, ne sont pas présentées ensemble. Par exemple utiliser les algorithmes génétiques pour entraîner les réseaux de neurones, ou pour les cartes d'influences, ...
Mais il faut bien voir que ce n'est pas le but du livre. Il présente les techniques, avec une implémentation, critiquable comme toute implémentation, mais qui est une excellente base de départ, de manière indépendante, et c'est au programmeur de les assembler, suivant le type de jeu utilisé. C'est la que la partie consacrée à la présentation de ces différentes types est très bien faite.
Pour conclure, c'est un livre à dévorer, mais il ne faut pas s'arrêter là pour créer un moteur complet, il faut lire les livres plus spécifiques, selon ce dont vous aurez besoin.
Commenter Signaler un problème
Le livre fournit aussi une couverture perspicace d'une série de sujets importants pour le développement de moteurs AI, et les lie ensemble pour former une référence indispensable. La première partie fait un tour global de l'intelligence artificielle dans les jeux, définit la terminologie de base utilisée par la suite, étudie les concepts sous-jacents et dissèque les parties d'un moteur AI. La deuxième partie couvre les genres spécifiques (RPG, TRS, FTPS, Shooter, Sports, Racing, Strategy, Adventure, Fighting, Platform, et autres) et explique comment ils utilisent des paradigmes AI différents. Elle couvre aussi comment ils utilisent les solutions usuelles aux problèmes posés par ces différents genres. Certains des problèmes incluent la gestion des interactions humain/AI, l'utilisation appropriée de scripts, et l’équilibre général intelligence/entraînement. La troisième partie fournit l'implémentation réelle pour les techniques AI de base comme les machines à état, les machines floues, les systèmes de message, les systèmes scriptés, les systèmes d'information basés sur la localisation. Puis la quatrième partie vouvre les techniques plus avancées telles que les algorithmes génétiques, les réseaux neuronaux, la vie artificielle, les algorithmes de planification et les arbres de décision. Le livre conclut avec la partie 5, qui parle "du développement AI de jeu réel". Les domaines couverts se concentrent sur comment les AI distribués comme paradigme global peut aider à l'organisation d'un moteur AI. le développement classique d'AI, le débogage et le tuning sont aussi couverts.
Après avoir lu le livre, vous aurez voyagé à travers la majorité du paysage de la connaissance qu'un programmeur AI rencontre, et vous serez prêt à le maîtriser.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
AI Techniques for Game Programming
Résumé de l'éditeur
Après un rapide tour de la programmation sous Windows pour les lecteurs ayant besoin de se rafraichir la mémoire, vous apprendre comment utiliser les algorithmes génétiques pour l'optimisation, la recherche de chemin et l'évolution de séquences de contrôles de vos agents de jeu. Après l'apprentissage de la base des réseaux neuronaux, AI Techniques for Game Programming vous démontrera comment vous pourrez faire évoluer un contrôleur de mouvement neuronal, et comment ils peuvent être utilisés pour l'évitement d'obstacles et l'exploration de cartes. Vous apprendrez ce qu'est la backpropagation ou propagation arrière et la reconnaissance de motif et découvrirez comment entraîner un réseau pour de la reconnaissance de gestes à la souris. Enfin, vous apprendrez des techniques à la pointe pour créer des réseaux de neurones avec des topologies dynamiques.
Chaque chapitre est complété avec du code source documenté et la plupart vous propose des exercices et problèmes amusants pour vous entraîner avec votre nouvelles connaissances.
Édition : Course Technology - 440 pages, 1re édition, 1er octobre 2002
ISBN10 : 193184108X - ISBN13 : 9781931841085
- Windows Programming
- Genetic Algorithms
- Neural Networks
Passé ce chapitre, on aborde les algorithmes génétiques, et effectivement les explications n'ont rien à envier à un livre spécialisé, au contraire. La simplicité des exemples alliée à leur clarté fait qu'on comprend facilement. On aborde aussi des techniques plus évoluées, et c'est bien.
En fait, le livre parle surtout des algorithmes génétiques. On a une "pause" avec les réseaux de neurones, là, le niveau est plus simple, et tant mieux étant donné qu'on ne sait pas trop ce qu'on fait avec un tel réseau, mais il y a bien les panneaux des dangers de ces réseaux. Et après, on mélange les réseaux avec les algorithmes génétiques, et c'est bien, on va encore plus loin, on montre bien ce qu'on peut en faire. Bon, naturellement, ça ne nous donne pas directement la solution à notre problème devant les yeux, mais au moins on a compris comment ces 2 techniques orthogonales - l'une peut être utilisée avec ou sans l'autre - fonctionnent et si on peut les appliquer à notre problème, le reste, c'est à nous de le faire.
Commenter Signaler un problème
Après un rapide tour de la programmation sous Windows pour les lecteurs ayant besoin de se rafraichir la mémoire, vous apprendre comment utiliser les algorithmes génétiques pour l'optimisation, la recherche de chemin et l'évolution de séquences de contrôles de vos agents de jeu. Après l'apprentissage de la base des réseaux neuronaux, AI Techniques for Game Programming vous démontrera comment vous pourrez faire évoluer un contrôleur de mouvement neuronal, et comment ils peuvent être utilisés pour l'évitement d'obstacles et l'exploration de cartes. Vous apprendrez ce qu'est la backpropagation ou propagation arrière et la reconnaissance de motif et découvrirez comment entraîner un réseau pour de la reconnaissance de gestes à la souris. Enfin, vous apprendrez des techniques à la pointe pour créer des réseaux de neurones avec des topologies dynamiques.
Chaque chapitre est complété avec du code source documenté et la plupart vous propose des exercices et problèmes amusants pour vous entraîner avec votre nouvelles connaissances.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Programming Game AI by Example
Résumé de l'éditeur
Les techniques couvertes couvrent le comportement par état ou par but, la communication inter-agents, les comportements individuels et de groupes, l'intelligence artificielle de groupe, la théorie des graphes, la recherche de chemins et l'optimisation, les déclencheurs, les machines à états finis scriptées, les modèles perceptuels, l'évaluation de buts, l'arbitrage entre buts et la logique floue.
Édition : Wordware Publishing - 500 pages, 1re édition, 1er novembre 2004
ISBN10 : 1556220782 - ISBN13 : 9781556220784
- Mathematics
- Physics
- Summing Up
- Simplification of Equation (1.90)
Chapter 2: State-Driven Agent Design
- What Exactly Is a Finite State Machine?
- Implementing a Finite State Machine
- The West World Project
- Making the State Base Class Reusable
- Global States and State Blips
- Creating a State Machine Class
- Introducing Elsa
- Adding Messaging Capabilities to Your FSM
- Summing Up
- Practice Makes Perfect
Chapter 3: How to Create Autonomously Moving Game Agents
- What Is an Autonomous Agent?
- The Vehicle Model
- The Steering Behaviors
- Group Behaviors
- Combining Steering Behaviors
- Ensuring Zero Overlap
- Coping with Lots of Vehicles: Spatial Partitioning
- Smoothing
- Practice Makes Perfect
Chapter 4: Sports Simulation-Simple Soccer
[list][*]The Simple Soccer Environment and Rules[*]Designing the AI[*]Making Assumptions and Estimates Work for You[*]Summing Up[*]Practice Makes Perfect
[list]
Chapter 5: The Secret Life of Graphs
- Graphs
- Implementing a Graph Class
- Graph Search Algorithms
- Summing Up
- Practice Makes Perfect
Chapter 6: To Script, or Not to Script-That Is the Question
- Just What Is a Scripting Language?
- What a Scripting Language Can Do for You
- Scripting in Lua
- Creating a Scripted Finite State Machine
- Useful URLs
- It Doesn't All Smell of Roses
- Summing Up
Chapter 7: Raven: An Overview
- The Game
- Overview of the Game Architecture
- AI Design Considerations
- AI Implementation
- Summary
- Practice Makes Perfect
Chapter 8: Practical Path Planning
- Navigation Graph Construction
- The Raven Navigation Graph
- Creating a Path Planner Class
- Paths as Nodes or Paths as Edges?
- Getting Out of Stick Situations
- Summary
- Practice Makes Perfect
Chapter 9: Goal Driven Agent Behavior
- The Return of Eric the Brave
- Implementation
- Examples of Goals Used by Raven Bots
- Goal Arbitration
- Spin-offs
- Summary
- Practice Makes Perfect
Chapter 10: Fuzzy Logic
- Crisp Sets
- Fuzzy Sets
- Fuzzy Linguistic Variables
- Fuzzy Rules
- From Theory to Application: Coding a Fuzzy Logic Module
- How Raven Uses the Fuzzy Logic Classes
- The Combs Method
- Practice Makes Perfect
Appendix A: C++ Templates
- Function Templates
- Class Templates
- Linker Confusion
Appendix B: UML Class Diagrams
- Class Names, Attributes, and Operations
- Visibility of Attributes and Operations
- Relationships
- Notes
- Summing Up
Appendix C: Setting Up Your Development Environment
Les 2 gros exemples sont un mini-jeu de foot basé sur les machines à état tandis que le dernier est un mini FPS autonome où les bots ont différents objectifs selon leur état de santé, leurs munitions, ... Et franchement, c'est super. On voit une application directe de ce qu'on nous apprend, et même les schémas UML sont clairs car succints et limités à une partie, comme un bot, la balle de foot, ... Les scripts sont abordés avec le langage LUA et ses liens possibles avec le C++, c'est bien fait, on comprend un peu mieux comment c'est possible de scripter certaines parties de son code, même s'il est aussi indiqué que tout mettre dans le script est à proscrire, évidemment.
C'est un livre de chevet idéal pour qui veut commencer à comprendre comment créer une intelligence artificielle. Naturellement, ce sont des techniques simples qui sont exposées, mais il faut commencer par de bonnes bases pour aller loin.
Commenter Signaler un problème
Les techniques couvertes couvrent le comportement par état ou par but, la communication inter-agents, les comportements individuels et de groupes, l'intelligence artificielle de groupe, la théorie des graphes, la recherche de chemins et l'optimisation, les déclencheurs, les machines à états finis scriptées, les modèles perceptuels, l'évaluation de buts, l'arbitrage entre buts et la logique floue.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Des retours de compilation sur VS2010?
Quelques soucis avec LuaBind ici.
En ce qui concerne le livre, une excellente initiation, vivante, rigoureuse, et cerise : une code complet.
Je peux suggérer pour aller plus loin le fantastique site Aigamedev.com
Evolved to Win
Résumé de l'éditeur
Édition : Lulu.com - 193 pages, 1re édition, 28 novembre 2011
ISBN10 : 1470972832 - ISBN13 : 9781470972837
- Part I: Rules of the Game
- Chapter 1. Setting the Pieces
- Chapter 2. Evolutionary Computation in a Nutshell
- Part II: Board Games
- Chapter 3. Lose Checkers
- Chapter 4. Chess: Endgames
- Chapter 5. Chess: Emergence and Complexity
- Chapter 6. Chess: Evolving Search
- Chapter 7. Chess: Evolving Search
- Part III: Simulation Games
- Chapter 8. Robocode
- Chapter 9. Robot Auto Racing Simulator
- Part IV: Puzzles
- Chapter 10. Rush Hour
- Chapter 11. FreeCell
- Part V: Parting Words of...
- Chapter 12. (Putative) Wisdom
- Appendix: A Potpourri of Games
Les jeux étudiés au cours de ce livre se classent en trois catégories :
- les jeux de société : une variante du jeu de dames (lose checkers), les échecs et le backgammon ;
- les jeux de simulation : Robocode et le jeu de course RARS ;
- les casse-têtes : Rush Hour et FreeCell.
Les résultats présentés sont palpitants car hautement compétitifs avec les humains ainsi que les bots existants. Les solutions sont analysées en profondeur, notamment pour essayer d'entrevoir si l'évolution a fait apparaître des phénomènes d'émergence parmi les individus évolués. Une particularité du livre est son attachement à souligner les liens entre les algorithmes évolutionnistes et les principes de biologie moléculaire afin d'acquérir une compréhension plus intime de l'évolution. Tout au long de l'ouvrage, une myriade de conseils précieux sont donnés sur l'utilisation de la programmation génétique.
Bien que l'auteur aurait pu aisément faire publier le livre chez un éditeur classique tel Springer, il a fait le choix de la générosité et a décidé de rendre le livre téléchargeable gratuitement à l'adresse http://www.moshesipper.com/etw (licence CC-BY-ND).
Commenter Signaler un problème
La rédaction DVP a lu pour vous le livre "Evolved to Win", de Moshe Sipper
L'avez-vous lu ? Comptez-vous le lire bientôt ?
Quel est votre avis ?
Exprimez-vous !! Votre avis nous intéresse...