• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/59

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

59 Cards in this Set

  • Front
  • Back

Define simple reflex agent

An agent which memorises all possible state action parings and can choose the best action for any given state with a simple look up table and no 'thinking'

+ - simple reflex agent

+ Very fast execution, no computation required


- Cannot adapt to new circumstances


- Can take up lots of memory, many scenarios have too man ypossible states.

Define agent function/policy

The mapping from observed states to action. f(si) -> aj

Define fully observable state

A state which provides all the information required to select an action.

Define partially observable state

A state which doesn't provide all the information required to select an action. You may need to know past states etc. I.e. a ball flying through the air. The state it is in at any one time is not enough to tell you where it will land, you need past states in order to calculate it.

How do you calculate an action in a fully observable environment?

f(Si) -> Aj

How to calculate an action in a partially observable environment?

f(S1, s2, s3, s4, s5....., Si) -> Aj

What might make an environment partially observable?

Inadequate sensing


Noisy sensing


Sensing or computing is too slow


Environment is too complex to model


Multiple agents

Define deterministic environment

The next state is completely determined by the current state

Define stochastic environment

The next state is not completely determined by the current state, from the point of view of the AI

Define discrete environment

An environment with a finite number of possible states (chess)

Define continuous environment

An environment with an infinite number of possible states (medical diagnosis)

Define completeness

An algorithm is complete if it is guaranteed to find the goal node (providing there is one)

Define optimality

An algorithm is optimal if it is guaranteed to fine the optimal solution. The optimal solution is the one with the lowest possible cost. Cost is dependent on the agents performance measure, i.e. not always the shortest path.

Define time complexity

The worst case length of time an algorithm will take to find a solution.

Define space complexity

The worst case amount of space an algorithm will use to find a solution.

What does BFS use to store nodes to expand?

A queue. Because queues are broad ||||||

In BFS what do you expand?

The first element of the queue. |||||| <---

What path does BFS choose?

The one with the least number of steps.

Is BFS complete and or optimal

It is complete. It will always find a solution.


It is not necessarily optimal, for example of each step costs a different amount. It will simply find the path with the shortest number of steps to the node, not necessarily the cheapest.

What is the time and space complexity of BFS

O(b^d) for both. All nodes and all edges need to be expanded in the worst case.

What does DFS use to store nodes to expand?

A stack. A stack is deep, not broad.

Define branching factor

The maximum number of edges on any one branch in the tree.

Is DFS complete and or optimal

It is generally not complete, it must explicitly not allow for repeated nodes or it will get stuck in a loop.




It is not optimal either, as it generally finds very long solution paths.

What is the time and space complexity of DFS

Time = O(b^m)


Space = O(bm)




m = max depth of the tree

How does iterative deepening search work?

It performs DFS but limits the depth to one. If the solution is not found it clears the whole tree and resets the limit to two. It repeats until the solution is found.

When is IDDFS useful?

When you think the goal node is not too deep but when the tree may be very deep.


Also if the branch factor is very high and you don't want to use up all the memory with breadth first search.

What is the time and space complexity of IDDFS?

Time = O(b^d)


Space = (d)

How does UCS work?

It is like BFS but with a priority queue. (you can add a node to the queue multiple times if you find a cheaper path)


The priority queue holds the currently expandable nodes and their distance cost total from the start.


At each point expand the cheapest node in the PQ which ensures optimality

Is UCS complete and or optimal?

It is complete unless the graph is infinite.


It is optimal because you always expand the cheapest node. So whenever a node is expanded we know we have found the cheapest possible path to that node.

What is the time and space complexity of UCS?

O(b^1+c*/e)


Essentially O(b^d)


c* is optimal cost


e is the cost of the cheapest action


+1 because you expand the goal node too.

Define greedy search

Greedy search prefers the node with the most short term gain without considering long term consequences.

How does A* search work?

It combines UCS with a heuristic. Heuristic = the cost of each node + a penalty for not going towards the goal node. f(p) = path cost(p) + heurustic (p)




which is the total estimated cost from the start to the goal = the actual cost from the start to node p + the estimated cost from p to the goal using the heuristic

What makes a good heuristic

One than doesn't overestimate the distance form the node to the goal = its admissible.


Also one that is efficiently compute-able so that it doesn't take up too much time or resources.

Is A* optimal and efficient?

A* is optimally efficient so long s the heuristic is admissible. It is complete and it is optimal.

What is the time and space complexity of A*?

The same as for UCS in the worst case where the heuristic is uninformative. O(b^c*/e+1)

What is the time and space complexity of MinMax?

time = O(b^m)


space = O(bm)

How does MinMax work?

You expand possible nodes and at each stage if its your move you choose the maximum posssible outcome and if its the opponents move you shooce the minimum possible option. So you evaluate the nodes and it will tell you which action to take that will minimise the opponents move. You assume they will always choose the action which benefits them the most.

What is alpha beta pruning?

Alpha beta pruning is used in conjunction with minmax to stop you having to explore nodes when you know the move will not be taken anyway. I.e. if you have already evaluated a node you can stop evaluating the next node as soon as it is worse for you than the previous node. This saves time and memory.

What is the time and space complexity of alpha beta pruning?

Worst case is still O(b^m) if none of the nodes can be pruned but in reality only 3% of the nodes need evaluation. O(b^3m/4)

Outline expectminmax

This is for cases which need to include probability such as dice rolls.

What is the time complexity of expectminmax

O(b^m n^m) where n = distinct outcomes of chance.

When is monte carlo tree search applicable?

When the complexity of games is too great to apply other algorithms, i.e Go where there are far too many permutations to applyalgorithms which work out the best possible move.

What are the 4 steps in monte carlo tree search

1 SELECTION: select the node you wish to expand using minmax to a certain depth with alpha beta pruning if possible


2: EXPANSION: select a new child node for expansion.


3: SIMULATION: Simulate a game from that child with random moves.


4: BACK PROPAGATION: Update the root with the result of the random playout.

What are the three benefits of MCTS? AAA

AHEURISTIC: No prior knowledge of the game required


ASYMMETRIC: Focuses on searching the most promising parts of the tree/is good for trees with a large branching factor.


ANYTIME: It can be stopped at any time and return the current best estimate = flexible.

What are the three types of machine learning?

Supervised = using labelled data


Unsupervised = using unlabelled data and looks for patterns


Reinforcement learning = an agents action are rewarded/punished, must learn to maximise reward.

What are you trying to determine with training data?

To determine the function which maps input data to a label. You are trying to use the machine to find out a function f(x).

Define bias

error from modelling assumptions

Define variance

Error from sensitivity to small fluctuations in training data

Define interpolation

find a point of data WITHIN a given data set range ----x----

Define extrapolation

look at a data set and predict a value outside of it ---- x




= risky

Define overfitting

When you are too sensetive to noise when trying to find a curve in a data set

Define exploration

Trying to look for new things beyond what you know = risky but could be high reward

Define exploitation

Exploiting what you currently know to continue reaping reward = safe but may not be as high reward as exploration

What can a neural net with one hidden layer represent?

Any continuous function

What can a neural net with two hidden layers represent

Any function

Whats the number of neuron tradeoff?

The more neurons you have the more complex the function you can represent, yet the risk of overfitting increases.

What can cause uncertainty?

Sensors, actuators or the environment may be noisy.

When would an agent treat an environment as stochastic?

If it is partially observable it may be beneficial to create a belief state and choose the action with the highest expected utility.