1 / 82

Games and Artificial Intelligence Prof. drs. Dr. L.J.M.Rothkrantz

Games and Artificial Intelligence Prof. drs. Dr. L.J.M.Rothkrantz. Artificial players (bots, Quake) Route finding Sharing emotion. Quake III Arena Bot. J.M.P. van Waveren (id-SOFTWARE) L.J.M. Rothkrantz Delft University of Technology Delft. Contents. All about what makes my clock tick.

lorna
Download Presentation

Games and Artificial Intelligence Prof. drs. Dr. L.J.M.Rothkrantz

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Games and Artificial IntelligenceProf. drs. Dr. L.J.M.Rothkrantz • Artificial players (bots, Quake) • Route finding • Sharing emotion

  2. Quake III Arena Bot J.M.P. van Waveren (id-SOFTWARE) L.J.M. Rothkrantz Delft University of Technology Delft

  3. Contents All about what makes my clock tick. • Introduction • Requirements • Bot architecture • Subsystems • Conclusion

  4. Introduction What game do I play ? Who am I ?

  5. Introduction • Quake 1 (Omicron bot) • Quake 2 (Gladiator bot) • Quake 3 Arena • Hired by Software

  6. What do we need? Guns, lots of guns! • Introduction • Requirements • Bot architecture • Subsystems • Conclusion

  7. Requirements • Hard to distinguish from human player • Same game rules apply to bots and humans • Not allowed to cheat • Different bot characters • Play team games • Resource efficient (CPU & memory) • Commercial quality code • Easy extendable/modifiable architecture and implementation

  8. Hey now! I’m more than just bones! • Introduction • Requirements • Bot architecture • Subsystems • Conclusion

  9. 4th Team leader AI 3rd Misc. AI AI Network Commands 2nd Fuzzy Character Goals Navigation Chats 1st Area Awareness System Basic Actions Bot architecture

  10. Team leader AI 4th Misc. AI AI Network Commands 3rd Fuzzy Character Goals Navigation Chats 2nd Area Awareness System Basic Actions 1st Bot architecture(information flow)

  11. Game Bot AI (3rd & 4th layer) Server Bot Lib (1st & 2nd layer) networking Player input Client Client code providing the IO functionality for human players Sound Client Game Renderer 3D image Bot architecture(integration with game engine)

  12. Team leader AI Misc. AI AI Network Commands Fuzzy Character Goals Navigation Chats Area Awareness System Basic Actions • Introduction • Requirements • Bot architecture • Subsystems • Conclusion

  13. 4th Team leader AI 3rd Misc. AI AI Network Commands 2nd Fuzzy Character Goals Navigation Chats 1st Area Awareness System Basic Actions Basic Actions

  14. 4th Team leader AI 3rd Misc. AI AI Network Commands 2nd Fuzzy Character Goals Navigation Chats 1st Area Awareness System Basic Actions Area Awareness System

  15. Area Awareness System Waypoint system AAS Maze

  16. Area Awareness System

  17. Area Awareness System

  18. Area Awareness System • Quake3 maps much more complex than maze • Multi-level routing algorithm • Areas grouped in clusters.

  19. 4th Team leader AI 3rd Misc. AI AI Network Commands 2nd Fuzzy Character Goals Navigation Chats 1st Area Awareness System Basic Actions Navigation

  20. Navigation

  21. 4th Team leader AI 3rd Misc. AI AI Network Commands 2nd Fuzzy Character Goals Navigation Chats 1st Area Awareness System Basic Actions Bot Characters

  22. Name Name of the bot. Gender Gender of the bot ( male, female, it – mechanical creature ). Attack skill How skilled the bot is when attacking. Weapon weights File with weapon selection fuzzy logic. View factor Scale factor for difference between current and ideal view angle to view angle change. View max change Maximum view angle change per second. Reaction time Reaction time in seconds. Aim accuracy Accuracy when aiming, a value between 0 and 1 for each weapon. Aim skill Skill when aiming, a value between 0 and 1 for each weapon. Chats File with individual bot chatter. Characters per minute How fast the bot types. Chat tendencies Tendencies to use specific chats when things happen. Croucher Tendency to crouch. Jumper Tendency to jump. Walker Tendency to walk instead of run. Weapon jumper Tendency to rocket jump. Item weights File with item goal selection fuzzy logic. Aggression Aggression of the bot. Self preservation Self preservation of the bot. Vengefulness How likely the bot is to take revenge. Camper Tendency to camp. Easy fragger Tendency to go for cheap kills. Alertness How alert the bot is. Fire throttle Tendency to fire continuously instead of pausing between shots. Bot Characters(characteristics)

  23. 4th Team leader AI 3rd Misc. AI AI Network Commands 2nd Fuzzy Character Goals Navigation Chats 1st Area Awareness System Basic Actions Goal Selection

  24. Goal Selection ? Fuzzy weight = 0.8 Fuzzy weight = 0.7 Fuzzy weight = 0.5

  25. 4th Team leader AI 3rd Misc. AI AI Network Commands 2nd Fuzzy Character Goals Navigation Chats 1st Area Awareness System Basic Actions Communication with chats

  26. Communication with chats • Generating chat messages • Interpreting chat messages • Synonyms • Match templates

  27. Communication with chats(match templates) <variable> get the<variable> Grunt get the rocket launcher. Grunt get the rocket launcher. Grunt rocket launcher.

  28. Communication with chats(Eliza chats) MrElusive: this game is fun! Bot: are we having fun? MrElusive: I like to shoot things. Bot: I like to shoot things too. MrElusive: I’m going to shoot you. Bot: I don’t believe you are going to shoot me. MrElusive: just wait and see! Bot: don’t wait. MrElusive: you are history when I find you Bot: maybe I’m history when you find me, and maybe not. MrElusive: be afraid. Bot: are you afraid of big, mean gooses?

  29. 4th Team leader AI 3rd Misc. AI AI Network Commands 2nd Fuzzy Character Goals Navigation Chats 1st Area Awareness System Basic Actions AI Network

  30. AI Network

  31. AI Network(Seek LTG node example) • Am I dead? If so go to ‘respawn’ node. • Is there an enemy I want to fight with? If so go to the ‘battle flight’ node. • If I reached my long term goal select new long term goal. • If there is a short goal go to the ‘seek short term goal’ node. • Predict obstacles that need to be handled (doors opened with buttons). • Navigate towards long term goal. • If I am blocked figure out how to deal with the obstacle.

  32. 4th Team leader AI 3rd Misc. AI AI Network Commands 2nd Fuzzy Character Goals Navigation Chats 1st Area Awareness System Basic Actions Miscellaneous AI

  33. Fighting behaviour • Acquiring enemies (visibility/audibility) • Selecting weapons (fuzzy logic) • Aiming at the enemy • Taking position and avoiding projectiles

  34. Obstacles & Puzzles

  35. I rock! • Introduction • Requirements • Bot architecture • Subsystems • Conclusion

  36. Conclusion • Fairly good artificial player • Cannot be distinguished from human at first sight • Same game rules apply and the bot does not cheat • Versatile set of bot characters • Plays team based game types • Communicates with other players (bot/human) • Resource efficient (AAS) • Easy extendable/modifiable architecture and implementation. Several other games and mods use the bot AI base.

  37. Future directions You’re saying you can improve me? • Better anticipation of enemies • Environment analysis • Planning

  38. ManetLoc A location based approach to distributed world-knowledge in mobile ad-hoc networks L.J.M.Rothkrantz, M. van Velden, D. Datcu

  39. Agenda • Introduction • Problem description • Implementation: ManetLoc • Demonstration • Future work • Questions

  40. 2. Without pre-setup infrastructure • Unavailable • Wired network • GSM • GPS • Available • PDA • Mobile Adhoc Networking (MANET)

  41. ? 3. Without pre-knowledge • World model needed to solve problems • Crisis state • Locations • Individuals • Exits

  42. 4. Process location information • Input • User • Sensors • Other • Output • World model

  43. 5. Fuse location information • Match • Merge

  44. 6. Distributed • No central server • Ad-hoc communication • WiFi • Bluetooth

  45. Implementation • ManetLoc • Simulation • Based on AHS • Rectilinear world • Intersections • Edges • Exits

  46. Modules • Exploration • Mapping • Distributing • Matching • Merging • Agent services

  47. Agent User Guidance Take step(s) Update world model Observe & report Exploration and mapping • User input • Sensory data • World model • Closing loops

  48. C A A B B C Distributing • Check if useful • Convert to interpretable string • Broadcast

  49. . . . Map A ? Map B . . . Possible Hypotheses Matching • Vertex matching • Growing hypotheses • Combining hypotheses

  50. + + Map A Map B Merged Map Selected Hypothesis Merging Match • Rotate • Shift • Add new vertexes • Connect Delete Hyp? Merge

More Related