Historically called problem-solving agents
Steps involved:
This is different from usual systems in which step 2 (formulate the algorithm) is performed by a human.
The types of algorithms created by the agents are usually simple, without IF statements.
The environment we have to interact with is:
The problem can be formulated defining the following five elements:
(example problem is the reduced version of 15 puzzle: 8 puzzle)
The state s0 is
7 | 2 | 3 |
---|---|---|
1 | 4 | 8 |
6 | 5 | 4 |
Actions(s0)={$\leftarrow,\uparrow$}
We are considering a deterministic model, so that the result of a given action is fixed
I can state that initial state, actions and result are elements of a graph named state space
In our state space graph:
The graph is implicitly defined, it's not represented with an incidence matrix.
For example the state space of chess game is estimated to be $10^{120}$.
It is almost impossible to represent, but we can build algorithm that can win a game exploring only a very small portion of the graph.
The agents viewed at lesson are in a sense less powerful than Operating Research algoritms, but they don't require knowing the totality of the graph, and this is an advantage.
A path on a graph is a sequence of states that are connected on the graph.
Every path in the state space should be associate to a cost (number), that is the sum of the costs of the action composing the path.
The solution of the problem is defined as
The path in the state space that brings from the initial state to any state satisfying the goal test
The optimal solution is the solution with minimum path cost.
Our model is limited to the relevant aspects of the problem, for example it doesn't comprehend the color of the tiles in the 8 puzzle.
- | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|
1 | Q | |||||||
2 | ||||||||
3 | ||||||||
4 | Q | |||||||
5 | ||||||||
6 | ||||||||
7 | ||||||||
8 |
We have to place the 8 queens so that no two queens are in the same row, column or diagonal.
state space: $64\times63\times...\times57=1.8\times10^{44}$
In the first formulation all the rules of the game were embedded in the goal test,
In the second formulation, all the knowledge is embedded in the action function,
so the check of a legal step is made every action and not in the end.
In general is smarter to embed as much knowledge as possible in the action function, and leave as little as possible to the goal test, doing this we reduce the size of the state space, which can make difference between practically solving a problem and impossible to solve problems.