Planning Topics of Artificial Intelligence - EP2 - Markovian Decision Process
-
Usuários de Windows, execute o código:
javac src/PD.java; javac src/ValueFunction.java; javac src/MDPAction.java; javac src/MDPState.java; javac src/Problem.java; javac src/Main.java
-
Usuários do Linux ou MacOS, execute o código:
javac src/PD.java && javac src/ValueFunction.java && javac src/MDPAction.java && javac src/MDPState.java && javac src/Problem.java && javac src/Main.java
AVISO: Para os usuários de Windows, recomenda-se não utilizar o parâmetro de imprimir o grid, pois o Windows não interpreta Unicode diretamente, e são necessárias configurações extras para que ele possa funcionar, e mesmo assim não é garantido por não ser padrão do console do mesmo.
Para arquivos do FixedGoalInitialState ou RandomGoalInitialState:
java src/Main [-f | -r] [-vi | -pi] [1-10] [-p]
Para arquivos do RunningExample:
java src/Main -ex [-vi | -pi] [-p]
-f
para os arquivos do FixedGoalInitialState-r
para os arquivos do RandomGoalInitialState
-vi
para o algoritmo Value Iteration-pi
para o algoritmo Policy Iteration
- O número do arquivo, de 1 a 10
- Parâmetro OPCIONAL, caso queira imprimir o grid
Value Iteration:
- VI Fixed from 1 to 10 with output:
java src/Main -f -vi 1 -p > output-vi-fixed-1.txt && java src/Main -f -vi 2 -p > output-vi-fixed-2.txt && java src/Main -f -vi 3 -p > output-vi-fixed-3.txt && java src/Main -f -vi 4 -p > output-vi-fixed-4.txt && java src/Main -f -vi 5 -p > output-vi-fixed-5.txt && java src/Main -f -vi 6 -p > output-vi-fixed-6.txt && java src/Main -f -vi 7 -p > output-vi-fixed-7.txt && java src/Main -f -vi 8 -p > output-vi-fixed-8.txt && java src/Main -f -vi 9 -p > output-vi-fixed-9.txt && java src/Main -f -vi 10 -p > output-vi-fixed-10.txt
- VI Random from 1 to 10 with output:
java src/Main -r -vi 1 -p > output-vi-random-1.txt && java src/Main -r -vi 2 -p > output-vi-random-2.txt && java src/Main -r -vi 3 -p > output-vi-random-3.txt && java src/Main -r -vi 4 -p > output-vi-random-4.txt && java src/Main -r -vi 5 -p > output-vi-random-5.txt && java src/Main -r -vi 6 -p > output-vi-random-6.txt && java src/Main -r -vi 7 -p > output-vi-random-7.txt && java src/Main -r -vi 8 -p > output-vi-random-8.txt && java src/Main -r -vi 9 -p > output-vi-random-9.txt && java src/Main -r -vi 10 -p > output-vi-random-10.txt
Policy Iteration:
- PI Fixed from 1 to 10 with output:
java src/Main -f -pi 1 -p > output-pi-fixed-1.txt && java src/Main -f -pi 2 -p > output-pi-fixed-2.txt && java src/Main -f -pi 3 -p > output-pi-fixed-3.txt && java src/Main -f -pi 4 -p > output-pi-fixed-4.txt && java src/Main -f -pi 5 -p > output-pi-fixed-5.txt && java src/Main -f -pi 6 -p > output-pi-fixed-6.txt && java src/Main -f -pi 7 -p > output-pi-fixed-7.txt && java src/Main -f -pi 8 -p > output-pi-fixed-8.txt && java src/Main -f -pi 9 -p > output-pi-fixed-9.txt && java src/Main -f -pi 10 -p > output-pi-fixed-10.txt
- PI Random from 1 to 10 with output:
java src/Main -r -pi 1 -p > output-pi-random-1.txt && java src/Main -r -pi 2 -p > output-pi-random-2.txt && java src/Main -r -pi 3 -p > output-pi-random-3.txt && java src/Main -r -pi 4 -p > output-pi-random-4.txt && java src/Main -r -pi 5 -p > output-pi-random-5.txt && java src/Main -r -pi 6 -p > output-pi-random-6.txt && java src/Main -r -pi 7 -p > output-pi-random-7.txt && java src/Main -r -pi 8 -p > output-pi-random-8.txt && java src/Main -r -pi 9 -p > output-pi-random-9.txt && java src/Main -r -pi 10 -p > output-pi-random-10.txt
O arquivo tem:
-
Os estados separados por vírgulas.
-
As transições para cada ação definidas da seguinte forma:
action nome_da_ação estado_corrente estado_sucessor probabilidade_da_ação descartar end_action
-
O custo de cada par estado ação.
-
O estado inicial.
-
O estado meta.
-
Um grid que é apenas para visualização. No grid:
- Parede
- Estado Inicial
- Estado Final
- Marcação que indica que há uma parede do lado
The file has:
-
States separeted by comma.
-
The transitions for each action defined as follows:
action action_name current_state successor_state probability_of_action discard end_action
-
The cost of each pair composed by state and action.
-
Initial state.
-
Goal state.
-
A grid just for visualization. In the grid:
- Wall
- Initial state
- Final state
- Markup that indicates if there is a wall at the side