28
Game AI versus AI What is the difference between Game AI an AI? Can this difference be overcome? What is an attack Kung-Fu style? Discuss some alternatives to get the same effect Explain the difference between the traditional view to AI and the modern view. Describe the Turing Test. Explain the mathematical objection against AI that follows from the Turing test

Game AI versus AI What is the difference between Game AI an AI? Can this difference be overcome? What is an attack Kung-Fu style? Discuss some alternatives

Embed Size (px)

Citation preview

Game AI versus AI

• What is the difference between Game AI an AI? Can this difference be overcome?

• What is an attack Kung-Fu style? Discuss some alternatives to get the same effect

• Explain the difference between the traditional view to AI and the modern view.

• Describe the Turing Test. Explain the mathematical objection against AI that follows from the Turing test

State Machines CH. 5.1 & 5.2

• Give an example of how you would make use of the onEnter() and onExit() events in your FSM?

• What is a stack based FSM and give an example of where it would be useful?

• Why are Data Driven FSM's better than other implementations even though they require a lot of extra work?

• Describe the Level of Detail optimization and explain why it works?

• Describe online and offline debugging techniques.

• Give an example where polymorphic FSM's would be useful and why.

AI Planning

• What does the term “classical” planning refers to

• What does the search space represents in planning

• What is hierarchical planning? Give an example of a hierarchical planning process

HTN Planning for controlling team of FPS bots

• What is the advantage of using (HTN) planning over FSMs?

• What are the disadvantages?

• What is the difference between HTN planning and Goal-oriented planning?

• How was HTN planning used in Unreal Tournament? What is the role of the planning system? Does FSM-style code has place

Reinforcement Learning and RTS games

• What is online learning? Indicate a (possible or real) application of online learning in computer games

• What is reinforcement learning? Indicate a (possible or real) application of reinforcement learning in computer games

• Explain how the rewards and punishment system can be used in a computer game

• Explain how reinforcement learning (dynamic scripting) was implemented in Wargus. What do you think of the results (is it effective)?

Group movement, tactics and planning

• Explain the tactics that a squad of NPCs should follow when firing upon there enemy. Draw a diagram illustrating these tactics

• Explain what the “smallest angle to clear view” method is pertaining to NPC movement?

• What does the Team Manager do in an FPS? Describe an example of a possible game run with the Team Manager

• What is GOAP? Give an example of how it works

• Discuss a benefit of GOAP

Scripting

• List some advantages and disadvantages of scripting.

• What are branched scripts?

• Discussion: compare programming scripts with programming in a language like Java. (commonalities? Differences?)

• Name one of the methods that optimize scripting execution and describe what it does.

Group movement, tactics and planning

• Name two problems with fully autonomous AI as it relates to gaming?

• What is the method the designers used in No One Lives Forever 2 to give the appearance of coordinated movement?

• Why can’t you use a stack to place a dependency on two actions?

• Name one use of the shared Blackboard

FPS, RTS and Strategy (7.1 & 7.2)

• What motivations are there for qualitative type reasoning verses quantitative?

• What are the two types of spatial reasoning discussed?

• Describe the openness layer and how it is used.

• What is one type of analysis (or extracted information) performed by Masters of Orion 3?

• Why is a qualitative reasoning more useful than a simple path finding?

• Name one technique used in Thief to allow the NPCs to reason about their environments.

FPS, RTS and Strategy Ch. 7.4, 7.5

• What are the goals of Player Placement and Dummy Players, their benefits, and their drawbacks?

• What is the Step Method for clump detail growth and what is it used for?

• What are Flat Elevation Land Clumps and why are they important?

• Why are Trees the final resource placed on the map?

• What is the purpose of the Rendezvous Point?

• Describe the basic process for unloading passengers from a transport.

FPS, RTS and Strategy. Ch. 7.6, 7.8

• The cost function C(n) calculates the cost of adding a tile to the interior nodes by the following formula

C(n) = c * w(n) + d(n)Where w(n) is the number of walls necessary to enclose the tile, and d(n) is a value based on the distance from the city center. How can we alter the behavior of the algorithm by adjusting the constant c? How about special values based on d(n)? How do we include natural barriers into our calculations?

• Three basic rules used to define a wall in the case of the greedy building algorithm are 1. Wall must contain an inner protected area2. Each wall segment must have exactly two unique neighbors3. Walls cannot divide interior area

How does each rule contribute to the usefulness of the wall to our civilization? are there exceptions to these rules despite which the wall is still useful?

• Changing the paradigm of the wall building problem from rebuilding walls to expanding interior nodes was useful to help design the algorithm, how did that make it easier? What was the representation of the world to the Ai using this new paradigm?

• Ai in strategy games with a hierarchical organization of troops present a different view of the world to each level of ai, Computer Player, Platoon, Squad and soldier. briefly describe each.

• What are the advantages of using a hierarchical AI rather than single level? (hint: in terms of formation, reaction of troops to events, and the computational cost of giving equivalent performance with a single level of AI)

Neural networks and RTS games

• What is the basic idea of back propagation in neural networks?

• What are two reasons to use neural networks in game AI?

• What are three problems with using a weighted sum on the influence maps that can be solved using neural networks?

• Neural networks can be computationaly expensive. What are some optimizations to reduce the computations done by the network?

• How can different decisions and personalities be represented by a single neural network?

The A* Algorithm

• Why is A* needed? Why not use classical search algorithms such Djikstra Algorithm. Isn’t O(nlog2n) good enough? Illustrate with an example

• Describe the formula used in A*. Explain its parts

• What is an admissible heuristic in A*? Why are admissible heuristics needed in A*?

• Describe how A* can be used in a nonadversarial, deterministic game with perfect information

Pathfinding Ch. 2.1

• Why are search space structures needed? Why not just compute A*?

• For a TBS game like Civilization, and for a FPS game like Quake III which of the following space search space structures would you use and why? For the same two games, which one you will not use and why?

a.        Regular gridsb.        Waypoint Graph Basedc.        Navigation Meshes

• How does pathfinding deals with dynamic objects?

• What is string pulling? Why is it important?

Pathfinding Ch. 2.2

• What is one downside of dynamic pathfinding?

• What is the problem with pre-computed pathfinding information?

• What is the navigation set hierarchy and what are its basic components?

• What are the attributes that make the navigation set hierarchy a better pathfinding solution than dynamic or simple precomputed solutions?

• When partitioning the map what is the most important factor in making the algorithm as fast as possible?

Pathfinding Ch. 2.3, 2.4

• What are the advantages of look-up tables over searching algorithms such as A*? Why would someone consider using A* instead of look-up tables?

• Describe how does the indexed look-up tables are implemented. What is it's memory usage if there are N waypoints (describes in term of N, assume each waypoint will take up 2 bytes)?

• Why is area-based look-up tables usually preferred over regular matrix look-up tables and indexed look-up tables?

• In the performance comparison between the various approaches, which one has the best performance in terms of speed? Are there any trade-offs?

Pathfinding Ch. 2.5, 2.6

• What major modification needs to be made to the A* algorithm in order to allow for dynamic movements in the pathfinding?

• What improvement does using the A* algorithm for dynamic movement have over scripting the dynamic movement?

• What two parameters should be including in a hunting algorithm, and how do they affect the hunter?

• What are the three common states used in hunting algorithms?

• How can Smin, Smax, and theta be adjusted to make a hunter find its pray faster.

• Why is making theta greater than 180 degrees a bad thing>

Pathfinding Ch. 2.7, 2.8

• 2.7:– How are repulsion vectors used to affect to the movement of

an agent?

– What factors contribute to the magnitude of a repulsion vector?

– There is a possible case in which agent direction and repulsion vectors are in opposite directions. How is this handled?

• 2.8:– What does PID stand for?

– What is the purpose of the PID algorithm? Give some practical examples.

Racing and Sports. Ch. 8.1, 8.2, 8.3

• Name one advantage of a Layered AI system?

• How does a racing FSM handle corners in the track?

• If two cars side by side are going around a turn and a collision will occur which car will yield to avoid a collision?

• Explain how tire slippage control and anti-lock breaking control are similar?

• Name two things that can be done to improve a game’s AI?

Racing and Sports. Ch. 8.4, 8.5

• What are the 3 different type of Dead Reckoning (DR) explained?

• Explain how lag in online games is overcome using DR

• For which of the following is dead reckoning used for is video games.– Military Simulation– Predict the behavior of a human player. – The exchange of a puck in NHL 2005– All of the above

• What are the challenges faced while designing AI for Sports Games?

• If the ball handler decision making functions in a Basetball Video Game were ranked as follows:

1.) BallHandler_Shoot() returned: 0.552.) BallHandler_Pass() returned: 0.343.) BallHandler_Drive() returned: 0.194.) BallHandler_RunPlay() returned: -0.44And the functions each returned the values shown above. What would the AI player do?

Machine Learning: a quick look

• With the same set-up as the example we saw in class: suppose that the only positive instance is: obj(large, white, ball) and the only negative instance is: obj(small,red,brick). Give an example of a valid generalization and of an invalid generalization for these instances

• What is the purpose of using Explanation-Based Learning in Planning?

• Describe the genetic algorithm. Give an example of possible application of the genetic algorithm. What would be the fitness function in your example

Learning and user modeling Ch. 10.1

• How can FSMs be used to simplify the detection algorithms in a user model?

• What are some of the benefits of implementing a user model?

• How can a user model be combined with a difficulty slider effectively?

• What are some of the potential uses of a user model in a game?

• Describe the learning process of the user model.

Turn-based Games and Real-Time Strategy games

• Name differences and similarities between turn-based and a real-time strategy games

• What is a game with perfect information, adversarial, deterministic? What is a game with imperfect information, adversarial, chance? Give examples of both classes

Game Theory: deterministic games

• What is a minimax tree? Sketch 3 levels of a minimax tree for an specific game of your choice other than tic-tac-toe. What is the complexity to generate such a tree

• What is an evaluation function? What is its purpose? Give an example of one for a game of your choice other than Chess

• Illustrate with an example how α-β pruning works

• Is the α-β pruning algorithm complete? explain

Game Theory: chance games

• When we did the experiment in class about utilities (choose between options A and B and then between C and D). What is the lesson from this experiment?

• Discuss how expectiminimax extends the minimax algorithm. What is the complexity of the generating the expectiminimax tree?

• For the following Figure, how is expectimax computed for C?

CP1 Pn

Learning and decision trees Ch. 10.2

• What is entropy and how is it used in decision trees?

• Briefly explain two methods for pruning decision trees.

• What is Occam’s Razor?

• How does a decision tree’s complexity compare to that of a single-stage classifier classifying the same data?

• Name one other way a decision tree can be represented.

Learning and Recognition Ch. 10.3 and 10.5

• Give a specific usage for Pattern Recognition in a video game. 

• What are the three levels of decision making and what are they used for? 

• What is optimization from a pattern recognition standpoint? 

• What are implicit, explicit, online, and offline machine learning? 

• What are two limitations for using machine learning in computer games?

Games Design

• In ‘Rules of Play’ the author argues that game systems can be framed in 3 different ways to better understand the game design challenges. What are the different ‘frames’? And how do they relate?

• What type of interactivity is generally associated with ‘gameplay’?

• Give an example of choice on the micro level. Give an example of choice on the macro level.

• Name 3 things that players want in games.

• In ‘Game Design’ what are the three suggested starting points for brainstorming a game?