[Research Week 7] AI and Games

What is an algorithm?

Step by step computer instructions that is used to do something or complete a task.

Real life example, sorting your washing, the rules are to split colored from white washing, so when examining the clothing you find a white t-shirt then put it in the white pile, if you find a red shirt, put it in the colored pile, repeat until no clothes are left to be examined.

Gaming example would be A.I searching for a player, if the player is in line of sight of the enemy, follow and attack player. It's a lot more complicated than that with many different variables usually in play, but essentially that's how it works.

Computers follow rules and instructions very quickly and very accurately which is why algorithms are used everywhere in the computing world.

Examples

1- A* search algorithm. This algorithm is mostly used in path-finding. It's used a lot for it's performance and accuracy

2- Dijkstra's. This is a search algorithm mostly used for finding the shortest path usually from one node to another in a graph.


What is a heuristic?

Heuristics are general rules that are developed based off past experiences which allow us to make quick decisions and judgements. For example, reading a menu in a restaurant with too many options, you may just go with what have you previously enjoyed in the past, because you know you can't go wrong with that choice as you have already enjoyed it before.

In computer science, heuristics are used in things like A.I to find solutions quickly for when classical methods deem slow or to find an approximate solution.

In search algorithms, heuristics rank alternatives based off of available information which then decides what branch to follow, with the objective of finding a solution or approximate solution.


What is a hack?

A hack is when A.I act in a way that they shouldn't do, or at least in a way you wouldn't expect. A.I in video games are often coded in such way that make them act out of the ordinary, often breaking the players immersion, but in order to maintain a level of difficulty and progression these 'hacks' are put into the game.

Examples

1- A.I spotting the player behind or in a bush

2-  Cut scenes

What is boids flocking?

Boids flocking is an algorithm based off real world flocking such as birds flying through the sky or fish swimming. The boids A.I follow 3 main rules to achieve the flocking which are separation, alignment and cohesion.

Examples

1- Hordes in zombies games

2- Used in Half-Life, end game bird-like creatures

Hardware constraints

Games are limited to hardware within the platform they are played on for example every console in existence. PC's are exempt from hardware constraints as you can change the parts as you please.

Games have to be made specifically for a consoles hardware, meaning graphics and features can't exceed past what it's being made for.

Cross platform games vary on level of detail for example the game on PC may have changeable graphical settings that you can bump up to the max, whereas on console it will always be locked to specific settings.

Player experience

Player experience is whether or not players like the game or not, good player experience is not wanting to stop playing and enjoying most elements of the game, bad player experience is putting the game down after 5 minutes not wanting to play it again.

Good player experience is often vital for your game to do well in sales, because with bad player experience it can lead to bad reviews and no recommendations, this leads to less sales of the game.

There are controversial experiences, for example high level of difficulty in a game may not mean the game is bad, but not everyone likes hard games which leads to bad player experience. Some games gain notoriety for being hard and make a lot of money because of that, but that's usually rare exceptions. Most people tend to enjoy a casual gaming experience of not too hard and not too easy.

What is Q-Learning?

Q-Learning is a type of reinforcement learning technique that is used in AI. The basic premise of reinforcement learning is that for each correct action a reward is given in hopes that correct actions will be performed more often until a goal is reached. It's basically learning from mistakes, learning those mistakes, and never making those mistakes again.

What is an Artificial Neural Network?

An artificial neural network is a computing system that functions how a human brain would function. The goal is for an A.I to learn exactly how a human learns using patterns.

What is a decision tree?

A decision tree is a map of decisions and possible outcomes that represents a tree-like structure. A good example of this in video games would be telltale games, in these games dialogue plays out and an option box with 4 different choices are presented. Each choice leads to a different dialogue outcome, and depending on what choice you made will result in less or more choices. So if you are given the option to shoot or not shoot yourself, shooting yourself will result in a game over instantly, whereas not s hooting yourself will lead to a whole bunch more options, some of them may or may not still lead to a game over, it all depends on how the decision tree is set up.

What is state machines?

A finite state machine is a concept whereby a machine can have multiple states but only runs one of them at any given time. An example of this in video games is the state in which the game is running, running can be a state itself, dying leads to a game over state then the game goes back to the running state after clicking start.


What is fuzzy logic?

Fuzzy logic is a technique that A.I follow in video games that result in different actions based off certain circumstances. A good example is how A.I behaviour changes to a characters health, it may run away from the player or not depending how low health the player is in relation to its own health e.g if the player is at 50% health while the A.I is at 30%, it may run away.





Comments