그로킹 심층 강화학습 중 2장 내용인 "강화학습의 수학적 기초"에 대한 내용입니다.
Note: 라이브러리 설치를 위해 아래의 패키지들을 설치해주기 바랍니다.
#collapse
!pip install tqdm numpy scikit-learn pyglet setuptools && \
!pip install gym asciinema pandas tabulate tornado==5.* PyBullet && \
!pip install git+https://github.com/pybox2d/pybox2d#egg=Box2D && \
!pip install git+https://github.com/mimoralea/gym-bandits#egg=gym-bandits && \
!pip install git+https://github.com/mimoralea/gym-walk#egg=gym-walk && \
!pip install git+https://github.com/mimoralea/gym-aima#egg=gym-aima && \
!pip install gym[atari]
import gym, gym_walk, gym_aima
P = {
0: {
0: [(1.0, 0, 0.0, True)],
1: [(1.0, 0, 0.0, True)]
},
1: {
0: [(1.0, 0, 0.0, True)],
1: [(1.0, 2, 1.0, True)]
},
2: {
0: [(1.0, 2, 0.0, True)],
1: [(1.0, 2, 0.0, True)]
}
}
P
{0: {0: [(1.0, 0, 0.0, True)], 1: [(1.0, 0, 0.0, True)]}, 1: {0: [(1.0, 0, 0.0, True)], 1: [(1.0, 2, 1.0, True)]}, 2: {0: [(1.0, 2, 0.0, True)], 1: [(1.0, 2, 0.0, True)]}}
Note: OpenAI Gym에 구현되어 있는 BanditWalk env를 사용할 수 있음
P = gym.make('BanditWalk-v0').env.P
P
{0: {0: [(1.0, 0, 0.0, True), (0.0, 0, 0.0, True), (0.0, 0, 0.0, True)], 1: [(1.0, 0, 0.0, True), (0.0, 0, 0.0, True), (0.0, 0, 0.0, True)]}, 1: {0: [(1.0, 0, 0.0, True), (0.0, 1, 0.0, False), (0.0, 2, 1.0, True)], 1: [(1.0, 2, 1.0, True), (0.0, 1, 0.0, False), (0.0, 0, 0.0, True)]}, 2: {0: [(1.0, 2, 0.0, True), (0.0, 2, 0.0, True), (0.0, 2, 0.0, True)], 1: [(1.0, 2, 0.0, True), (0.0, 2, 0.0, True), (0.0, 2, 0.0, True)]}}
P = {
0: {
0: [(1.0, 0, 0.0, True)],
1: [(1.0, 0, 0.0, True)]
},
1: {
0: [(0.8, 0, 0.0, True), (0.2, 2, 1.0, True)],
1: [(0.8, 2, 1.0, True), (0.2, 0, 0.0, True)]
},
2: {
0: [(1.0, 2, 0.0, True)],
1: [(1.0, 2, 0.0, True)]
}
}
P
{0: {0: [(1.0, 0, 0.0, True)], 1: [(1.0, 0, 0.0, True)]}, 1: {0: [(0.8, 0, 0.0, True), (0.2, 2, 1.0, True)], 1: [(0.8, 2, 1.0, True), (0.2, 0, 0.0, True)]}, 2: {0: [(1.0, 2, 0.0, True)], 1: [(1.0, 2, 0.0, True)]}}
Note: OpenAI Gym에 구현되어 있는 BanditSlipperyWalk env를 사용할 수 있음
P = gym.make('BanditSlipperyWalk-v0').env.P
P
{0: {0: [(0.8, 0, 0.0, True), (0.0, 0, 0.0, True), (0.2, 0, 0.0, True)], 1: [(0.8, 0, 0.0, True), (0.0, 0, 0.0, True), (0.2, 0, 0.0, True)]}, 1: {0: [(0.8, 0, 0.0, True), (0.0, 1, 0.0, False), (0.2, 2, 1.0, True)], 1: [(0.8, 2, 1.0, True), (0.0, 1, 0.0, False), (0.2, 0, 0.0, True)]}, 2: {0: [(0.8, 2, 0.0, True), (0.0, 2, 0.0, True), (0.2, 2, 0.0, True)], 1: [(0.8, 2, 0.0, True), (0.0, 2, 0.0, True), (0.2, 2, 0.0, True)]}}
P = {
0: {
0: [(1.0, 0, 0.0, True)],
1: [(1.0, 0, 0.0, True)]
},
1: {
0: [(1.0, 0, 0.0, True)],
1: [(1.0, 2, 0.0, False)]
},
2: {
0: [(1.0, 1, 0.0, False)],
1: [(1.0, 3, 0.0, False)]
},
3: {
0: [(1.0, 2, 0.0, False)],
1: [(1.0, 4, 1.0, True)]
},
4: {
0: [(1.0, 4, 0.0, True)],
1: [(1.0, 4, 0.0, True)]
}
}
P
{0: {0: [(1.0, 0, 0.0, True)], 1: [(1.0, 0, 0.0, True)]}, 1: {0: [(1.0, 0, 0.0, True)], 1: [(1.0, 2, 0.0, False)]}, 2: {0: [(1.0, 1, 0.0, False)], 1: [(1.0, 3, 0.0, False)]}, 3: {0: [(1.0, 2, 0.0, False)], 1: [(1.0, 4, 1.0, True)]}, 4: {0: [(1.0, 4, 0.0, True)], 1: [(1.0, 4, 0.0, True)]}}
Note: OpenAI Gym에 구현되어 있는 WalkThree env를 사용할 수 있습니다.
P = gym.make('WalkThree-v0').env.P
P
{0: {0: [(1.0, 0, 0.0, True), (0.0, 0, 0.0, True), (0.0, 0, 0.0, True)], 1: [(1.0, 0, 0.0, True), (0.0, 0, 0.0, True), (0.0, 0, 0.0, True)]}, 1: {0: [(1.0, 0, 0.0, True), (0.0, 1, 0.0, False), (0.0, 2, 0.0, False)], 1: [(1.0, 2, 0.0, False), (0.0, 1, 0.0, False), (0.0, 0, 0.0, True)]}, 2: {0: [(1.0, 1, 0.0, False), (0.0, 2, 0.0, False), (0.0, 3, 0.0, False)], 1: [(1.0, 3, 0.0, False), (0.0, 2, 0.0, False), (0.0, 1, 0.0, False)]}, 3: {0: [(1.0, 2, 0.0, False), (0.0, 3, 0.0, False), (0.0, 4, 1.0, True)], 1: [(1.0, 4, 1.0, True), (0.0, 3, 0.0, False), (0.0, 2, 0.0, False)]}, 4: {0: [(1.0, 4, 0.0, True), (0.0, 4, 0.0, True), (0.0, 4, 0.0, True)], 1: [(1.0, 4, 0.0, True), (0.0, 4, 0.0, True), (0.0, 4, 0.0, True)]}}
P = {
0: {
0: [(1.0, 0, 0.0, True)],
1: [(1.0, 0, 0.0, True)]
},
1: {
0: [(0.5000000000000001, 0, 0.0, True),
(0.3333333333333333, 1, 0.0, False),
(0.16666666666666666, 2, 0.0, False)
],
1: [(0.5000000000000001, 2, 0.0, False),
(0.3333333333333333, 1, 0.0, False),
(0.16666666666666666, 0, 0.0, True)
]
},
2: {
0: [(0.5000000000000001, 1, 0.0, False),
(0.3333333333333333, 2, 0.0, False),
(0.16666666666666666, 3, 0.0, False)
],
1: [(0.5000000000000001, 3, 0.0, False),
(0.3333333333333333, 2, 0.0, False),
(0.16666666666666666, 1, 0.0, False)
]
},
3: {
0: [(0.5000000000000001, 2, 0.0, False),
(0.3333333333333333, 3, 0.0, False),
(0.16666666666666666, 4, 1.0, True)
],
1: [(0.5000000000000001, 4, 1.0, True),
(0.3333333333333333, 3, 0.0, False),
(0.16666666666666666, 2, 0.0, False)
]
},
4: {
0: [(1.0, 4, 0.0, True)],
1: [(1.0, 4, 0.0, True)]
}
}
P
{0: {0: [(1.0, 0, 0.0, True)], 1: [(1.0, 0, 0.0, True)]}, 1: {0: [(0.5000000000000001, 0, 0.0, True), (0.3333333333333333, 1, 0.0, False), (0.16666666666666666, 2, 0.0, False)], 1: [(0.5000000000000001, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.16666666666666666, 0, 0.0, True)]}, 2: {0: [(0.5000000000000001, 1, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.16666666666666666, 3, 0.0, False)], 1: [(0.5000000000000001, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.16666666666666666, 1, 0.0, False)]}, 3: {0: [(0.5000000000000001, 2, 0.0, False), (0.3333333333333333, 3, 0.0, False), (0.16666666666666666, 4, 1.0, True)], 1: [(0.5000000000000001, 4, 1.0, True), (0.3333333333333333, 3, 0.0, False), (0.16666666666666666, 2, 0.0, False)]}, 4: {0: [(1.0, 4, 0.0, True)], 1: [(1.0, 4, 0.0, True)]}}
Note: OpenAI Gym에 구현되어 있는 SlipperyWalkThree env를 사용할 수 있습니다.
P = gym.make('SlipperyWalkThree-v0').env.P
P
{0: {0: [(0.5000000000000001, 0, 0.0, True), (0.3333333333333333, 0, 0.0, True), (0.16666666666666666, 0, 0.0, True)], 1: [(0.5000000000000001, 0, 0.0, True), (0.3333333333333333, 0, 0.0, True), (0.16666666666666666, 0, 0.0, True)]}, 1: {0: [(0.5000000000000001, 0, 0.0, True), (0.3333333333333333, 1, 0.0, False), (0.16666666666666666, 2, 0.0, False)], 1: [(0.5000000000000001, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.16666666666666666, 0, 0.0, True)]}, 2: {0: [(0.5000000000000001, 1, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.16666666666666666, 3, 0.0, False)], 1: [(0.5000000000000001, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.16666666666666666, 1, 0.0, False)]}, 3: {0: [(0.5000000000000001, 2, 0.0, False), (0.3333333333333333, 3, 0.0, False), (0.16666666666666666, 4, 1.0, True)], 1: [(0.5000000000000001, 4, 1.0, True), (0.3333333333333333, 3, 0.0, False), (0.16666666666666666, 2, 0.0, False)]}, 4: {0: [(0.5000000000000001, 4, 0.0, True), (0.3333333333333333, 4, 0.0, True), (0.16666666666666666, 4, 0.0, True)], 1: [(0.5000000000000001, 4, 0.0, True), (0.3333333333333333, 4, 0.0, True), (0.16666666666666666, 4, 0.0, True)]}}
P = {
0: {
0: [(1.0, 0, 0.0, True)],
1: [(1.0, 0, 0.0, True)]
},
1: {
0: [(0.5, 0, 0.0, True), (0.5, 2, 0.0, False)],
1: [(0.5, 2, 0.0, False), (0.5, 0, 0.0, True)]
},
2: {
0: [(0.5, 1, 0.0, False), (0.5, 3, 0.0, False)],
1: [(0.5, 3, 0.0, False), (0.5, 1, 0.0, False)]
},
3: {
0: [(0.5, 2, 0.0, False), (0.5, 4, 0.0, False)],
1: [(0.5, 4, 0.0, False), (0.5, 2, 0.0, False)]
},
4: {
0: [(0.5, 3, 0.0, False), (0.5, 5, 0.0, False)],
1: [(0.5, 5, 0.0, False), (0.5, 3, 0.0, False)]
},
5: {
0: [(0.5, 4, 0.0, False), (0.5, 6, 1.0, True)],
1: [(0.5, 6, 1.0, True), (0.5, 4, 0.0, False)]
},
6: {
0: [(1.0, 6, 0.0, True)],
1: [(1.0, 6, 0.0, True)]
}
}
P
{0: {0: [(1.0, 0, 0.0, True)], 1: [(1.0, 0, 0.0, True)]}, 1: {0: [(0.5, 0, 0.0, True), (0.5, 2, 0.0, False)], 1: [(0.5, 2, 0.0, False), (0.5, 0, 0.0, True)]}, 2: {0: [(0.5, 1, 0.0, False), (0.5, 3, 0.0, False)], 1: [(0.5, 3, 0.0, False), (0.5, 1, 0.0, False)]}, 3: {0: [(0.5, 2, 0.0, False), (0.5, 4, 0.0, False)], 1: [(0.5, 4, 0.0, False), (0.5, 2, 0.0, False)]}, 4: {0: [(0.5, 3, 0.0, False), (0.5, 5, 0.0, False)], 1: [(0.5, 5, 0.0, False), (0.5, 3, 0.0, False)]}, 5: {0: [(0.5, 4, 0.0, False), (0.5, 6, 1.0, True)], 1: [(0.5, 6, 1.0, True), (0.5, 4, 0.0, False)]}, 6: {0: [(1.0, 6, 0.0, True)], 1: [(1.0, 6, 0.0, True)]}}
Note: OpenAI Gym에 구현되어 있는 RandomWalk env를 사용할 수 있습니다.
P = gym.make('RandomWalk-v0').env.P
P
{0: {0: [(0.5, 0, 0.0, True), (0.0, 0, 0.0, True), (0.5, 0, 0.0, True)], 1: [(0.5, 0, 0.0, True), (0.0, 0, 0.0, True), (0.5, 0, 0.0, True)]}, 1: {0: [(0.5, 0, 0.0, True), (0.0, 1, 0.0, False), (0.5, 2, 0.0, False)], 1: [(0.5, 2, 0.0, False), (0.0, 1, 0.0, False), (0.5, 0, 0.0, True)]}, 2: {0: [(0.5, 1, 0.0, False), (0.0, 2, 0.0, False), (0.5, 3, 0.0, False)], 1: [(0.5, 3, 0.0, False), (0.0, 2, 0.0, False), (0.5, 1, 0.0, False)]}, 3: {0: [(0.5, 2, 0.0, False), (0.0, 3, 0.0, False), (0.5, 4, 0.0, False)], 1: [(0.5, 4, 0.0, False), (0.0, 3, 0.0, False), (0.5, 2, 0.0, False)]}, 4: {0: [(0.5, 3, 0.0, False), (0.0, 4, 0.0, False), (0.5, 5, 0.0, False)], 1: [(0.5, 5, 0.0, False), (0.0, 4, 0.0, False), (0.5, 3, 0.0, False)]}, 5: {0: [(0.5, 4, 0.0, False), (0.0, 5, 0.0, False), (0.5, 6, 1.0, True)], 1: [(0.5, 6, 1.0, True), (0.0, 5, 0.0, False), (0.5, 4, 0.0, False)]}, 6: {0: [(0.5, 6, 0.0, True), (0.0, 6, 0.0, True), (0.5, 6, 0.0, True)], 1: [(0.5, 6, 0.0, True), (0.0, 6, 0.0, True), (0.5, 6, 0.0, True)]}}
P = {
0: {
0: [(0.9, 0, -0.04, False),
(0.1, 4, -0.04, False)
],
1: [(0.1, 0, -0.04, False), (0.8, 4, -0.04, False), (0.1, 1, -0.04, False)],
2: [(0.1, 4, -0.04, False), (0.8, 1, -0.04, False), (0.1, 0, -0.04, False)],
3: [(0.1, 1, -0.04, False), (0.8, 0, -0.04, False), (0.1, 0, -0.04, False)]
},
1: {
0: [(0.2, 1, -0.04, False),
(0.8, 0, -0.04, False)
],
1: [(0.1, 0, -0.04, False), (0.8, 1, -0.04, False), (0.1, 2, -0.04, False)],
2: [(0.1, 1, -0.04, False), (0.8, 2, -0.04, False), (0.1, 1, -0.04, False)],
3: [(0.1, 2, -0.04, False), (0.8, 1, -0.04, False), (0.1, 0, -0.04, False)]
},
2: {
0: [(0.1, 2, -0.04, False),
(0.8, 1, -0.04, False),
(0.1, 6, -0.04, False)
],
1: [(0.1, 1, -0.04, False), (0.8, 6, -0.04, False), (0.1, 3, 0.96, True)],
2: [(0.1, 6, -0.04, False), (0.8, 3, 0.96, True), (0.1, 2, -0.04, False)],
3: [(0.1, 3, 0.96, True), (0.8, 2, -0.04, False), (0.1, 1, -0.04, False)]
},
3: {
0: [(1.0, 3, 0, True)],
1: [(1.0, 3, 0, True)],
2: [(1.0, 3, 0, True)],
3: [(1.0, 3, 0, True)]
},
4: {
0: [(0.1, 0, -0.04, False),
(0.8, 4, -0.04, False),
(0.1, 8, -0.04, False)
],
1: [(0.2, 4, -0.04, False), (0.8, 8, -0.04, False)],
2: [(0.1, 8, -0.04, False), (0.8, 4, -0.04, False), (0.1, 0, -0.04, False)],
3: [(0.2, 4, -0.04, False), (0.8, 0, -0.04, False)]
},
5: {
0: [(1.0, 5, 0, True)],
1: [(1.0, 5, 0, True)],
2: [(1.0, 5, 0, True)],
3: [(1.0, 5, 0, True)]
},
6: {
0: [(0.1, 2, -0.04, False),
(0.8, 6, -0.04, False),
(0.1, 10, -0.04, False)
],
1: [(0.1, 6, -0.04, False), (0.8, 10, -0.04, False), (0.1, 7, -1.04, True)],
2: [(0.1, 10, -0.04, False), (0.8, 7, -1.04, True), (0.1, 2, -0.04, False)],
3: [(0.1, 7, -1.04, True), (0.8, 2, -0.04, False), (0.1, 6, -0.04, False)]
},
7: {
0: [(1.0, 7, 0, True)],
1: [(1.0, 7, 0, True)],
2: [(1.0, 7, 0, True)],
3: [(1.0, 7, 0, True)]
},
8: {
0: [(0.1, 4, -0.04, False),
(0.9, 8, -0.04, False)
],
1: [(0.9, 8, -0.04, False), (0.1, 9, -0.04, False)],
2: [(0.1, 8, -0.04, False), (0.8, 9, -0.04, False), (0.1, 4, -0.04, False)],
3: [(0.1, 9, -0.04, False), (0.8, 4, -0.04, False), (0.1, 8, -0.04, False)]
},
9: {
0: [(0.2, 9, -0.04, False),
(0.8, 8, -0.04, False)
],
1: [(0.1, 8, -0.04, False), (0.8, 9, -0.04, False), (0.1, 10, -0.04, False)],
2: [(0.2, 9, -0.04, False), (0.8, 10, -0.04, False)],
3: [(0.1, 10, -0.04, False),
(0.8, 9, -0.04, False),
(0.1, 8, -0.04, False)
]
},
10: {
0: [(0.1, 6, -0.04, False),
(0.8, 9, -0.04, False),
(0.1, 10, -0.04, False)
],
1: [(0.1, 9, -0.04, False),
(0.8, 10, -0.04, False),
(0.1, 11, -0.04, False)
],
2: [(0.1, 10, -0.04, False),
(0.8, 11, -0.04, False),
(0.1, 6, -0.04, False)
],
3: [(0.1, 11, -0.04, False),
(0.8, 6, -0.04, False),
(0.1, 9, -0.04, False)
]
},
11: {
0: [(0.1, 7, -1.04, True),
(0.8, 10, -0.04, False),
(0.1, 11, -0.04, False)
],
1: [(0.1, 10, -0.04, False),
(0.9, 11, -0.04, False)
],
2: [(0.9, 11, -0.04, False), (0.1, 7, -1.04, True)],
3: [(0.1, 11, -0.04, False),
(0.8, 7, -1.04, True),
(0.1, 10, -0.04, False)
]
}
}
P
{0: {0: [(0.9, 0, -0.04, False), (0.1, 4, -0.04, False)], 1: [(0.1, 0, -0.04, False), (0.8, 4, -0.04, False), (0.1, 1, -0.04, False)], 2: [(0.1, 4, -0.04, False), (0.8, 1, -0.04, False), (0.1, 0, -0.04, False)], 3: [(0.1, 1, -0.04, False), (0.8, 0, -0.04, False), (0.1, 0, -0.04, False)]}, 1: {0: [(0.2, 1, -0.04, False), (0.8, 0, -0.04, False)], 1: [(0.1, 0, -0.04, False), (0.8, 1, -0.04, False), (0.1, 2, -0.04, False)], 2: [(0.1, 1, -0.04, False), (0.8, 2, -0.04, False), (0.1, 1, -0.04, False)], 3: [(0.1, 2, -0.04, False), (0.8, 1, -0.04, False), (0.1, 0, -0.04, False)]}, 2: {0: [(0.1, 2, -0.04, False), (0.8, 1, -0.04, False), (0.1, 6, -0.04, False)], 1: [(0.1, 1, -0.04, False), (0.8, 6, -0.04, False), (0.1, 3, 0.96, True)], 2: [(0.1, 6, -0.04, False), (0.8, 3, 0.96, True), (0.1, 2, -0.04, False)], 3: [(0.1, 3, 0.96, True), (0.8, 2, -0.04, False), (0.1, 1, -0.04, False)]}, 3: {0: [(1.0, 3, 0, True)], 1: [(1.0, 3, 0, True)], 2: [(1.0, 3, 0, True)], 3: [(1.0, 3, 0, True)]}, 4: {0: [(0.1, 0, -0.04, False), (0.8, 4, -0.04, False), (0.1, 8, -0.04, False)], 1: [(0.2, 4, -0.04, False), (0.8, 8, -0.04, False)], 2: [(0.1, 8, -0.04, False), (0.8, 4, -0.04, False), (0.1, 0, -0.04, False)], 3: [(0.2, 4, -0.04, False), (0.8, 0, -0.04, False)]}, 5: {0: [(1.0, 5, 0, True)], 1: [(1.0, 5, 0, True)], 2: [(1.0, 5, 0, True)], 3: [(1.0, 5, 0, True)]}, 6: {0: [(0.1, 2, -0.04, False), (0.8, 6, -0.04, False), (0.1, 10, -0.04, False)], 1: [(0.1, 6, -0.04, False), (0.8, 10, -0.04, False), (0.1, 7, -1.04, True)], 2: [(0.1, 10, -0.04, False), (0.8, 7, -1.04, True), (0.1, 2, -0.04, False)], 3: [(0.1, 7, -1.04, True), (0.8, 2, -0.04, False), (0.1, 6, -0.04, False)]}, 7: {0: [(1.0, 7, 0, True)], 1: [(1.0, 7, 0, True)], 2: [(1.0, 7, 0, True)], 3: [(1.0, 7, 0, True)]}, 8: {0: [(0.1, 4, -0.04, False), (0.9, 8, -0.04, False)], 1: [(0.9, 8, -0.04, False), (0.1, 9, -0.04, False)], 2: [(0.1, 8, -0.04, False), (0.8, 9, -0.04, False), (0.1, 4, -0.04, False)], 3: [(0.1, 9, -0.04, False), (0.8, 4, -0.04, False), (0.1, 8, -0.04, False)]}, 9: {0: [(0.2, 9, -0.04, False), (0.8, 8, -0.04, False)], 1: [(0.1, 8, -0.04, False), (0.8, 9, -0.04, False), (0.1, 10, -0.04, False)], 2: [(0.2, 9, -0.04, False), (0.8, 10, -0.04, False)], 3: [(0.1, 10, -0.04, False), (0.8, 9, -0.04, False), (0.1, 8, -0.04, False)]}, 10: {0: [(0.1, 6, -0.04, False), (0.8, 9, -0.04, False), (0.1, 10, -0.04, False)], 1: [(0.1, 9, -0.04, False), (0.8, 10, -0.04, False), (0.1, 11, -0.04, False)], 2: [(0.1, 10, -0.04, False), (0.8, 11, -0.04, False), (0.1, 6, -0.04, False)], 3: [(0.1, 11, -0.04, False), (0.8, 6, -0.04, False), (0.1, 9, -0.04, False)]}, 11: {0: [(0.1, 7, -1.04, True), (0.8, 10, -0.04, False), (0.1, 11, -0.04, False)], 1: [(0.1, 10, -0.04, False), (0.9, 11, -0.04, False)], 2: [(0.9, 11, -0.04, False), (0.1, 7, -1.04, True)], 3: [(0.1, 11, -0.04, False), (0.8, 7, -1.04, True), (0.1, 10, -0.04, False)]}}
Note: OpenAI Gym에서 RussellNorvigGridworld env를 사용할 수 있습니다.
P = gym.make('RussellNorvigGridworld-v0').env.P
P
{0: {0: [(0.1, 0, -0.04, False), (0.8, 0, -0.04, False), (0.1, 4, -0.04, False)], 1: [(0.1, 0, -0.04, False), (0.8, 4, -0.04, False), (0.1, 1, -0.04, False)], 2: [(0.1, 4, -0.04, False), (0.8, 1, -0.04, False), (0.1, 0, -0.04, False)], 3: [(0.1, 1, -0.04, False), (0.8, 0, -0.04, False), (0.1, 0, -0.04, False)]}, 1: {0: [(0.1, 1, -0.04, False), (0.8, 0, -0.04, False), (0.1, 1, -0.04, False)], 1: [(0.1, 0, -0.04, False), (0.8, 1, -0.04, False), (0.1, 2, -0.04, False)], 2: [(0.1, 1, -0.04, False), (0.8, 2, -0.04, False), (0.1, 1, -0.04, False)], 3: [(0.1, 2, -0.04, False), (0.8, 1, -0.04, False), (0.1, 0, -0.04, False)]}, 2: {0: [(0.1, 2, -0.04, False), (0.8, 1, -0.04, False), (0.1, 6, -0.04, False)], 1: [(0.1, 1, -0.04, False), (0.8, 6, -0.04, False), (0.1, 3, 0.96, True)], 2: [(0.1, 6, -0.04, False), (0.8, 3, 0.96, True), (0.1, 2, -0.04, False)], 3: [(0.1, 3, 0.96, True), (0.8, 2, -0.04, False), (0.1, 1, -0.04, False)]}, 3: {0: [(1.0, 3, 0, True)], 1: [(1.0, 3, 0, True)], 2: [(1.0, 3, 0, True)], 3: [(1.0, 3, 0, True)]}, 4: {0: [(0.1, 0, -0.04, False), (0.8, 4, -0.04, False), (0.1, 8, -0.04, False)], 1: [(0.1, 4, -0.04, False), (0.8, 8, -0.04, False), (0.1, 4, -0.04, False)], 2: [(0.1, 8, -0.04, False), (0.8, 4, -0.04, False), (0.1, 0, -0.04, False)], 3: [(0.1, 4, -0.04, False), (0.8, 0, -0.04, False), (0.1, 4, -0.04, False)]}, 5: {0: [(1.0, 5, 0, True)], 1: [(1.0, 5, 0, True)], 2: [(1.0, 5, 0, True)], 3: [(1.0, 5, 0, True)]}, 6: {0: [(0.1, 2, -0.04, False), (0.8, 6, -0.04, False), (0.1, 10, -0.04, False)], 1: [(0.1, 6, -0.04, False), (0.8, 10, -0.04, False), (0.1, 7, -1.04, True)], 2: [(0.1, 10, -0.04, False), (0.8, 7, -1.04, True), (0.1, 2, -0.04, False)], 3: [(0.1, 7, -1.04, True), (0.8, 2, -0.04, False), (0.1, 6, -0.04, False)]}, 7: {0: [(1.0, 7, 0, True)], 1: [(1.0, 7, 0, True)], 2: [(1.0, 7, 0, True)], 3: [(1.0, 7, 0, True)]}, 8: {0: [(0.1, 4, -0.04, False), (0.8, 8, -0.04, False), (0.1, 8, -0.04, False)], 1: [(0.1, 8, -0.04, False), (0.8, 8, -0.04, False), (0.1, 9, -0.04, False)], 2: [(0.1, 8, -0.04, False), (0.8, 9, -0.04, False), (0.1, 4, -0.04, False)], 3: [(0.1, 9, -0.04, False), (0.8, 4, -0.04, False), (0.1, 8, -0.04, False)]}, 9: {0: [(0.1, 9, -0.04, False), (0.8, 8, -0.04, False), (0.1, 9, -0.04, False)], 1: [(0.1, 8, -0.04, False), (0.8, 9, -0.04, False), (0.1, 10, -0.04, False)], 2: [(0.1, 9, -0.04, False), (0.8, 10, -0.04, False), (0.1, 9, -0.04, False)], 3: [(0.1, 10, -0.04, False), (0.8, 9, -0.04, False), (0.1, 8, -0.04, False)]}, 10: {0: [(0.1, 6, -0.04, False), (0.8, 9, -0.04, False), (0.1, 10, -0.04, False)], 1: [(0.1, 9, -0.04, False), (0.8, 10, -0.04, False), (0.1, 11, -0.04, False)], 2: [(0.1, 10, -0.04, False), (0.8, 11, -0.04, False), (0.1, 6, -0.04, False)], 3: [(0.1, 11, -0.04, False), (0.8, 6, -0.04, False), (0.1, 9, -0.04, False)]}, 11: {0: [(0.1, 7, -1.04, True), (0.8, 10, -0.04, False), (0.1, 11, -0.04, False)], 1: [(0.1, 10, -0.04, False), (0.8, 11, -0.04, False), (0.1, 11, -0.04, False)], 2: [(0.1, 11, -0.04, False), (0.8, 11, -0.04, False), (0.1, 7, -1.04, True)], 3: [(0.1, 11, -0.04, False), (0.8, 7, -1.04, True), (0.1, 10, -0.04, False)]}}
P = {
0: {
0: [(0.6666666666666666, 0, 0.0, False),
(0.3333333333333333, 4, 0.0, False)
],
1: [(0.3333333333333333, 0, 0.0, False),
(0.3333333333333333, 4, 0.0, False),
(0.3333333333333333, 1, 0.0, False)
],
2: [(0.3333333333333333, 4, 0.0, False),
(0.3333333333333333, 1, 0.0, False),
(0.3333333333333333, 0, 0.0, False)
],
3: [(0.3333333333333333, 1, 0.0, False),
(0.6666666666666666, 0, 0.0, False)
]
},
1: {
0: [(0.3333333333333333, 1, 0.0, False),
(0.3333333333333333, 0, 0.0, False),
(0.3333333333333333, 5, 0.0, True)
],
1: [(0.3333333333333333, 0, 0.0, False),
(0.3333333333333333, 5, 0.0, True),
(0.3333333333333333, 2, 0.0, False)
],
2: [(0.3333333333333333, 5, 0.0, True),
(0.3333333333333333, 2, 0.0, False),
(0.3333333333333333, 1, 0.0, False)
],
3: [(0.3333333333333333, 2, 0.0, False),
(0.3333333333333333, 1, 0.0, False),
(0.3333333333333333, 0, 0.0, False)
]
},
2: {
0: [(0.3333333333333333, 2, 0.0, False),
(0.3333333333333333, 1, 0.0, False),
(0.3333333333333333, 6, 0.0, False)
],
1: [(0.3333333333333333, 1, 0.0, False),
(0.3333333333333333, 6, 0.0, False),
(0.3333333333333333, 3, 0.0, False)
],
2: [(0.3333333333333333, 6, 0.0, False),
(0.3333333333333333, 3, 0.0, False),
(0.3333333333333333, 2, 0.0, False)
],
3: [(0.3333333333333333, 3, 0.0, False),
(0.3333333333333333, 2, 0.0, False),
(0.3333333333333333, 1, 0.0, False)
]
},
3: {
0: [(0.3333333333333333, 3, 0.0, False),
(0.3333333333333333, 2, 0.0, False),
(0.3333333333333333, 7, 0.0, True)
],
1: [(0.3333333333333333, 2, 0.0, False),
(0.3333333333333333, 7, 0.0, True),
(0.3333333333333333, 3, 0.0, False)
],
2: [(0.3333333333333333, 7, 0.0, True),
(0.6666666666666666, 3, 0.0, False)
],
3: [(0.6666666666666666, 3, 0.0, False),
(0.3333333333333333, 2, 0.0, False)
]
},
4: {
0: [(0.3333333333333333, 0, 0.0, False),
(0.3333333333333333, 4, 0.0, False),
(0.3333333333333333, 8, 0.0, False)
],
1: [(0.3333333333333333, 4, 0.0, False),
(0.3333333333333333, 8, 0.0, False),
(0.3333333333333333, 5, 0.0, True)
],
2: [(0.3333333333333333, 8, 0.0, False),
(0.3333333333333333, 5, 0.0, True),
(0.3333333333333333, 0, 0.0, False)
],
3: [(0.3333333333333333, 5, 0.0, True),
(0.3333333333333333, 0, 0.0, False),
(0.3333333333333333, 4, 0.0, False)
]
},
5: {
0: [(1.0, 5, 0, True)],
1: [(1.0, 5, 0, True)],
2: [(1.0, 5, 0, True)],
3: [(1.0, 5, 0, True)]
},
6: {
0: [(0.3333333333333333, 2, 0.0, False),
(0.3333333333333333, 5, 0.0, True),
(0.3333333333333333, 10, 0.0, False)
],
1: [(0.3333333333333333, 5, 0.0, True),
(0.3333333333333333, 10, 0.0, False),
(0.3333333333333333, 7, 0.0, True)
],
2: [(0.3333333333333333, 10, 0.0, False),
(0.3333333333333333, 7, 0.0, True),
(0.3333333333333333, 2, 0.0, False)
],
3: [(0.3333333333333333, 7, 0.0, True),
(0.3333333333333333, 2, 0.0, False),
(0.3333333333333333, 5, 0.0, True)
]
},
7: {
0: [(1.0, 7, 0, True)],
1: [(1.0, 7, 0, True)],
2: [(1.0, 7, 0, True)],
3: [(1.0, 7, 0, True)]
},
8: {
0: [(0.3333333333333333, 4, 0.0, False),
(0.3333333333333333, 8, 0.0, False),
(0.3333333333333333, 12, 0.0, True)
],
1: [(0.3333333333333333, 8, 0.0, False),
(0.3333333333333333, 12, 0.0, True),
(0.3333333333333333, 9, 0.0, False)
],
2: [(0.3333333333333333, 12, 0.0, True),
(0.3333333333333333, 9, 0.0, False),
(0.3333333333333333, 4, 0.0, False)
],
3: [(0.3333333333333333, 9, 0.0, False),
(0.3333333333333333, 4, 0.0, False),
(0.3333333333333333, 8, 0.0, False)
]
},
9: {
0: [(0.3333333333333333, 5, 0.0, True),
(0.3333333333333333, 8, 0.0, False),
(0.3333333333333333, 13, 0.0, False)
],
1: [(0.3333333333333333, 8, 0.0, False),
(0.3333333333333333, 13, 0.0, False),
(0.3333333333333333, 10, 0.0, False)
],
2: [(0.3333333333333333, 13, 0.0, False),
(0.3333333333333333, 10, 0.0, False),
(0.3333333333333333, 5, 0.0, True)
],
3: [(0.3333333333333333, 10, 0.0, False),
(0.3333333333333333, 5, 0.0, True),
(0.3333333333333333, 8, 0.0, False)
]
},
10: {
0: [(0.3333333333333333, 6, 0.0, False),
(0.3333333333333333, 9, 0.0, False),
(0.3333333333333333, 14, 0.0, False)
],
1: [(0.3333333333333333, 9, 0.0, False),
(0.3333333333333333, 14, 0.0, False),
(0.3333333333333333, 11, 0.0, True)
],
2: [(0.3333333333333333, 14, 0.0, False),
(0.3333333333333333, 11, 0.0, True),
(0.3333333333333333, 6, 0.0, False)
],
3: [(0.3333333333333333, 11, 0.0, True),
(0.3333333333333333, 6, 0.0, False),
(0.3333333333333333, 9, 0.0, False)
]
},
11: {
0: [(1.0, 11, 0, True)],
1: [(1.0, 11, 0, True)],
2: [(1.0, 11, 0, True)],
3: [(1.0, 11, 0, True)]
},
12: {
0: [(1.0, 12, 0, True)],
1: [(1.0, 12, 0, True)],
2: [(1.0, 12, 0, True)],
3: [(1.0, 12, 0, True)]
},
13: {
0: [(0.3333333333333333, 9, 0.0, False),
(0.3333333333333333, 12, 0.0, True),
(0.3333333333333333, 13, 0.0, False)
],
1: [(0.3333333333333333, 12, 0.0, True),
(0.3333333333333333, 13, 0.0, False),
(0.3333333333333333, 14, 0.0, False)
],
2: [(0.3333333333333333, 13, 0.0, False),
(0.3333333333333333, 14, 0.0, False),
(0.3333333333333333, 9, 0.0, False)
],
3: [(0.3333333333333333, 14, 0.0, False),
(0.3333333333333333, 9, 0.0, False),
(0.3333333333333333, 12, 0.0, True)
]
},
14: {
0: [(0.3333333333333333, 10, 0.0, False),
(0.3333333333333333, 13, 0.0, False),
(0.3333333333333333, 14, 0.0, False)
],
1: [(0.3333333333333333, 13, 0.0, False),
(0.3333333333333333, 14, 0.0, False),
(0.3333333333333333, 15, 1.0, True)
],
2: [(0.3333333333333333, 14, 0.0, False),
(0.3333333333333333, 15, 1.0, True),
(0.3333333333333333, 10, 0.0, False)
],
3: [(0.3333333333333333, 15, 1.0, True),
(0.3333333333333333, 10, 0.0, False),
(0.3333333333333333, 13, 0.0, False)
]
},
15: {
0: [(1.0, 15, 0, True)],
1: [(1.0, 15, 0, True)],
2: [(1.0, 15, 0, True)],
3: [(1.0, 15, 0, True)]
}
}
P
{0: {0: [(0.6666666666666666, 0, 0.0, False), (0.3333333333333333, 4, 0.0, False)], 1: [(0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 1, 0.0, False)], 2: [(0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 0, 0.0, False)], 3: [(0.3333333333333333, 1, 0.0, False), (0.6666666666666666, 0, 0.0, False)]}, 1: {0: [(0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 5, 0.0, True)], 1: [(0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 2, 0.0, False)], 2: [(0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False)], 3: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 0, 0.0, False)]}, 2: {0: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 6, 0.0, False)], 1: [(0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 3, 0.0, False)], 2: [(0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False)], 3: [(0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False)]}, 3: {0: [(0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 7, 0.0, True)], 1: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 7, 0.0, True), (0.3333333333333333, 3, 0.0, False)], 2: [(0.3333333333333333, 7, 0.0, True), (0.6666666666666666, 3, 0.0, False)], 3: [(0.6666666666666666, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False)]}, 4: {0: [(0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 8, 0.0, False)], 1: [(0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 5, 0.0, True)], 2: [(0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 0, 0.0, False)], 3: [(0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 4, 0.0, False)]}, 5: {0: [(1.0, 5, 0, True)], 1: [(1.0, 5, 0, True)], 2: [(1.0, 5, 0, True)], 3: [(1.0, 5, 0, True)]}, 6: {0: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 10, 0.0, False)], 1: [(0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 7, 0.0, True)], 2: [(0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 7, 0.0, True), (0.3333333333333333, 2, 0.0, False)], 3: [(0.3333333333333333, 7, 0.0, True), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 5, 0.0, True)]}, 7: {0: [(1.0, 7, 0, True)], 1: [(1.0, 7, 0, True)], 2: [(1.0, 7, 0, True)], 3: [(1.0, 7, 0, True)]}, 8: {0: [(0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 12, 0.0, True)], 1: [(0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 12, 0.0, True), (0.3333333333333333, 9, 0.0, False)], 2: [(0.3333333333333333, 12, 0.0, True), (0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 4, 0.0, False)], 3: [(0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 8, 0.0, False)]}, 9: {0: [(0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 13, 0.0, False)], 1: [(0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 10, 0.0, False)], 2: [(0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 5, 0.0, True)], 3: [(0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 8, 0.0, False)]}, 10: {0: [(0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 14, 0.0, False)], 1: [(0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 11, 0.0, True)], 2: [(0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 11, 0.0, True), (0.3333333333333333, 6, 0.0, False)], 3: [(0.3333333333333333, 11, 0.0, True), (0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 9, 0.0, False)]}, 11: {0: [(1.0, 11, 0, True)], 1: [(1.0, 11, 0, True)], 2: [(1.0, 11, 0, True)], 3: [(1.0, 11, 0, True)]}, 12: {0: [(1.0, 12, 0, True)], 1: [(1.0, 12, 0, True)], 2: [(1.0, 12, 0, True)], 3: [(1.0, 12, 0, True)]}, 13: {0: [(0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 12, 0.0, True), (0.3333333333333333, 13, 0.0, False)], 1: [(0.3333333333333333, 12, 0.0, True), (0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 14, 0.0, False)], 2: [(0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 9, 0.0, False)], 3: [(0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 12, 0.0, True)]}, 14: {0: [(0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 14, 0.0, False)], 1: [(0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 15, 1.0, True)], 2: [(0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 15, 1.0, True), (0.3333333333333333, 10, 0.0, False)], 3: [(0.3333333333333333, 15, 1.0, True), (0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 13, 0.0, False)]}, 15: {0: [(1.0, 15, 0, True)], 1: [(1.0, 15, 0, True)], 2: [(1.0, 15, 0, True)], 3: [(1.0, 15, 0, True)]}}
Note: OpenAI gym의 FrozenLake env를 사용할 수 있습니다.
P = gym.make('FrozenLake-v0').env.P
P
{0: {0: [(0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 4, 0.0, False)], 1: [(0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 1, 0.0, False)], 2: [(0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 0, 0.0, False)], 3: [(0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 0, 0.0, False)]}, 1: {0: [(0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 5, 0.0, True)], 1: [(0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 2, 0.0, False)], 2: [(0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False)], 3: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 0, 0.0, False)]}, 2: {0: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 6, 0.0, False)], 1: [(0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 3, 0.0, False)], 2: [(0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False)], 3: [(0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False)]}, 3: {0: [(0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 7, 0.0, True)], 1: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 7, 0.0, True), (0.3333333333333333, 3, 0.0, False)], 2: [(0.3333333333333333, 7, 0.0, True), (0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 3, 0.0, False)], 3: [(0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False)]}, 4: {0: [(0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 8, 0.0, False)], 1: [(0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 5, 0.0, True)], 2: [(0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 0, 0.0, False)], 3: [(0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 4, 0.0, False)]}, 5: {0: [(1.0, 5, 0, True)], 1: [(1.0, 5, 0, True)], 2: [(1.0, 5, 0, True)], 3: [(1.0, 5, 0, True)]}, 6: {0: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 10, 0.0, False)], 1: [(0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 7, 0.0, True)], 2: [(0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 7, 0.0, True), (0.3333333333333333, 2, 0.0, False)], 3: [(0.3333333333333333, 7, 0.0, True), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 5, 0.0, True)]}, 7: {0: [(1.0, 7, 0, True)], 1: [(1.0, 7, 0, True)], 2: [(1.0, 7, 0, True)], 3: [(1.0, 7, 0, True)]}, 8: {0: [(0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 12, 0.0, True)], 1: [(0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 12, 0.0, True), (0.3333333333333333, 9, 0.0, False)], 2: [(0.3333333333333333, 12, 0.0, True), (0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 4, 0.0, False)], 3: [(0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 8, 0.0, False)]}, 9: {0: [(0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 13, 0.0, False)], 1: [(0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 10, 0.0, False)], 2: [(0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 5, 0.0, True)], 3: [(0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 5, 0.0, True), (0.3333333333333333, 8, 0.0, False)]}, 10: {0: [(0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 14, 0.0, False)], 1: [(0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 11, 0.0, True)], 2: [(0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 11, 0.0, True), (0.3333333333333333, 6, 0.0, False)], 3: [(0.3333333333333333, 11, 0.0, True), (0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 9, 0.0, False)]}, 11: {0: [(1.0, 11, 0, True)], 1: [(1.0, 11, 0, True)], 2: [(1.0, 11, 0, True)], 3: [(1.0, 11, 0, True)]}, 12: {0: [(1.0, 12, 0, True)], 1: [(1.0, 12, 0, True)], 2: [(1.0, 12, 0, True)], 3: [(1.0, 12, 0, True)]}, 13: {0: [(0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 12, 0.0, True), (0.3333333333333333, 13, 0.0, False)], 1: [(0.3333333333333333, 12, 0.0, True), (0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 14, 0.0, False)], 2: [(0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 9, 0.0, False)], 3: [(0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 12, 0.0, True)]}, 14: {0: [(0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 14, 0.0, False)], 1: [(0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 15, 1.0, True)], 2: [(0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 15, 1.0, True), (0.3333333333333333, 10, 0.0, False)], 3: [(0.3333333333333333, 15, 1.0, True), (0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 13, 0.0, False)]}, 15: {0: [(1.0, 15, 0, True)], 1: [(1.0, 15, 0, True)], 2: [(1.0, 15, 0, True)], 3: [(1.0, 15, 0, True)]}}
env = gym.make('FrozenLake8x8-v0')
P = env.env.P
P
{0: {0: [(0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 8, 0.0, False)], 1: [(0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 1, 0.0, False)], 2: [(0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 0, 0.0, False)], 3: [(0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 0, 0.0, False)]}, 1: {0: [(0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 9, 0.0, False)], 1: [(0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 2, 0.0, False)], 2: [(0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False)], 3: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 0, 0.0, False)]}, 2: {0: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 10, 0.0, False)], 1: [(0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 3, 0.0, False)], 2: [(0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False)], 3: [(0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 1, 0.0, False)]}, 3: {0: [(0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 11, 0.0, False)], 1: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 11, 0.0, False), (0.3333333333333333, 4, 0.0, False)], 2: [(0.3333333333333333, 11, 0.0, False), (0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 3, 0.0, False)], 3: [(0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 2, 0.0, False)]}, 4: {0: [(0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 12, 0.0, False)], 1: [(0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 12, 0.0, False), (0.3333333333333333, 5, 0.0, False)], 2: [(0.3333333333333333, 12, 0.0, False), (0.3333333333333333, 5, 0.0, False), (0.3333333333333333, 4, 0.0, False)], 3: [(0.3333333333333333, 5, 0.0, False), (0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 3, 0.0, False)]}, 5: {0: [(0.3333333333333333, 5, 0.0, False), (0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 13, 0.0, False)], 1: [(0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 6, 0.0, False)], 2: [(0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 5, 0.0, False)], 3: [(0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 5, 0.0, False), (0.3333333333333333, 4, 0.0, False)]}, 6: {0: [(0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 5, 0.0, False), (0.3333333333333333, 14, 0.0, False)], 1: [(0.3333333333333333, 5, 0.0, False), (0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 7, 0.0, False)], 2: [(0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 7, 0.0, False), (0.3333333333333333, 6, 0.0, False)], 3: [(0.3333333333333333, 7, 0.0, False), (0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 5, 0.0, False)]}, 7: {0: [(0.3333333333333333, 7, 0.0, False), (0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 15, 0.0, False)], 1: [(0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 15, 0.0, False), (0.3333333333333333, 7, 0.0, False)], 2: [(0.3333333333333333, 15, 0.0, False), (0.3333333333333333, 7, 0.0, False), (0.3333333333333333, 7, 0.0, False)], 3: [(0.3333333333333333, 7, 0.0, False), (0.3333333333333333, 7, 0.0, False), (0.3333333333333333, 6, 0.0, False)]}, 8: {0: [(0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 16, 0.0, False)], 1: [(0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 16, 0.0, False), (0.3333333333333333, 9, 0.0, False)], 2: [(0.3333333333333333, 16, 0.0, False), (0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 0, 0.0, False)], 3: [(0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 0, 0.0, False), (0.3333333333333333, 8, 0.0, False)]}, 9: {0: [(0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 17, 0.0, False)], 1: [(0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 17, 0.0, False), (0.3333333333333333, 10, 0.0, False)], 2: [(0.3333333333333333, 17, 0.0, False), (0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 1, 0.0, False)], 3: [(0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 1, 0.0, False), (0.3333333333333333, 8, 0.0, False)]}, 10: {0: [(0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 18, 0.0, False)], 1: [(0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 18, 0.0, False), (0.3333333333333333, 11, 0.0, False)], 2: [(0.3333333333333333, 18, 0.0, False), (0.3333333333333333, 11, 0.0, False), (0.3333333333333333, 2, 0.0, False)], 3: [(0.3333333333333333, 11, 0.0, False), (0.3333333333333333, 2, 0.0, False), (0.3333333333333333, 9, 0.0, False)]}, 11: {0: [(0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 19, 0.0, True)], 1: [(0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 19, 0.0, True), (0.3333333333333333, 12, 0.0, False)], 2: [(0.3333333333333333, 19, 0.0, True), (0.3333333333333333, 12, 0.0, False), (0.3333333333333333, 3, 0.0, False)], 3: [(0.3333333333333333, 12, 0.0, False), (0.3333333333333333, 3, 0.0, False), (0.3333333333333333, 10, 0.0, False)]}, 12: {0: [(0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 11, 0.0, False), (0.3333333333333333, 20, 0.0, False)], 1: [(0.3333333333333333, 11, 0.0, False), (0.3333333333333333, 20, 0.0, False), (0.3333333333333333, 13, 0.0, False)], 2: [(0.3333333333333333, 20, 0.0, False), (0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 4, 0.0, False)], 3: [(0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 4, 0.0, False), (0.3333333333333333, 11, 0.0, False)]}, 13: {0: [(0.3333333333333333, 5, 0.0, False), (0.3333333333333333, 12, 0.0, False), (0.3333333333333333, 21, 0.0, False)], 1: [(0.3333333333333333, 12, 0.0, False), (0.3333333333333333, 21, 0.0, False), (0.3333333333333333, 14, 0.0, False)], 2: [(0.3333333333333333, 21, 0.0, False), (0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 5, 0.0, False)], 3: [(0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 5, 0.0, False), (0.3333333333333333, 12, 0.0, False)]}, 14: {0: [(0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 22, 0.0, False)], 1: [(0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 22, 0.0, False), (0.3333333333333333, 15, 0.0, False)], 2: [(0.3333333333333333, 22, 0.0, False), (0.3333333333333333, 15, 0.0, False), (0.3333333333333333, 6, 0.0, False)], 3: [(0.3333333333333333, 15, 0.0, False), (0.3333333333333333, 6, 0.0, False), (0.3333333333333333, 13, 0.0, False)]}, 15: {0: [(0.3333333333333333, 7, 0.0, False), (0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 23, 0.0, False)], 1: [(0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 23, 0.0, False), (0.3333333333333333, 15, 0.0, False)], 2: [(0.3333333333333333, 23, 0.0, False), (0.3333333333333333, 15, 0.0, False), (0.3333333333333333, 7, 0.0, False)], 3: [(0.3333333333333333, 15, 0.0, False), (0.3333333333333333, 7, 0.0, False), (0.3333333333333333, 14, 0.0, False)]}, 16: {0: [(0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 16, 0.0, False), (0.3333333333333333, 24, 0.0, False)], 1: [(0.3333333333333333, 16, 0.0, False), (0.3333333333333333, 24, 0.0, False), (0.3333333333333333, 17, 0.0, False)], 2: [(0.3333333333333333, 24, 0.0, False), (0.3333333333333333, 17, 0.0, False), (0.3333333333333333, 8, 0.0, False)], 3: [(0.3333333333333333, 17, 0.0, False), (0.3333333333333333, 8, 0.0, False), (0.3333333333333333, 16, 0.0, False)]}, 17: {0: [(0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 16, 0.0, False), (0.3333333333333333, 25, 0.0, False)], 1: [(0.3333333333333333, 16, 0.0, False), (0.3333333333333333, 25, 0.0, False), (0.3333333333333333, 18, 0.0, False)], 2: [(0.3333333333333333, 25, 0.0, False), (0.3333333333333333, 18, 0.0, False), (0.3333333333333333, 9, 0.0, False)], 3: [(0.3333333333333333, 18, 0.0, False), (0.3333333333333333, 9, 0.0, False), (0.3333333333333333, 16, 0.0, False)]}, 18: {0: [(0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 17, 0.0, False), (0.3333333333333333, 26, 0.0, False)], 1: [(0.3333333333333333, 17, 0.0, False), (0.3333333333333333, 26, 0.0, False), (0.3333333333333333, 19, 0.0, True)], 2: [(0.3333333333333333, 26, 0.0, False), (0.3333333333333333, 19, 0.0, True), (0.3333333333333333, 10, 0.0, False)], 3: [(0.3333333333333333, 19, 0.0, True), (0.3333333333333333, 10, 0.0, False), (0.3333333333333333, 17, 0.0, False)]}, 19: {0: [(1.0, 19, 0, True)], 1: [(1.0, 19, 0, True)], 2: [(1.0, 19, 0, True)], 3: [(1.0, 19, 0, True)]}, 20: {0: [(0.3333333333333333, 12, 0.0, False), (0.3333333333333333, 19, 0.0, True), (0.3333333333333333, 28, 0.0, False)], 1: [(0.3333333333333333, 19, 0.0, True), (0.3333333333333333, 28, 0.0, False), (0.3333333333333333, 21, 0.0, False)], 2: [(0.3333333333333333, 28, 0.0, False), (0.3333333333333333, 21, 0.0, False), (0.3333333333333333, 12, 0.0, False)], 3: [(0.3333333333333333, 21, 0.0, False), (0.3333333333333333, 12, 0.0, False), (0.3333333333333333, 19, 0.0, True)]}, 21: {0: [(0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 20, 0.0, False), (0.3333333333333333, 29, 0.0, True)], 1: [(0.3333333333333333, 20, 0.0, False), (0.3333333333333333, 29, 0.0, True), (0.3333333333333333, 22, 0.0, False)], 2: [(0.3333333333333333, 29, 0.0, True), (0.3333333333333333, 22, 0.0, False), (0.3333333333333333, 13, 0.0, False)], 3: [(0.3333333333333333, 22, 0.0, False), (0.3333333333333333, 13, 0.0, False), (0.3333333333333333, 20, 0.0, False)]}, 22: {0: [(0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 21, 0.0, False), (0.3333333333333333, 30, 0.0, False)], 1: [(0.3333333333333333, 21, 0.0, False), (0.3333333333333333, 30, 0.0, False), (0.3333333333333333, 23, 0.0, False)], 2: [(0.3333333333333333, 30, 0.0, False), (0.3333333333333333, 23, 0.0, False), (0.3333333333333333, 14, 0.0, False)], 3: [(0.3333333333333333, 23, 0.0, False), (0.3333333333333333, 14, 0.0, False), (0.3333333333333333, 21, 0.0, False)]}, 23: {0: [(0.3333333333333333, 15, 0.0, False), (0.3333333333333333, 22, 0.0, False), (0.3333333333333333, 31, 0.0, False)], 1: [(0.3333333333333333, 22, 0.0, False), (0.3333333333333333, 31, 0.0, False), (0.3333333333333333, 23, 0.0, False)], 2: [(0.3333333333333333, 31, 0.0, False), (0.3333333333333333, 23, 0.0, False), (0.3333333333333333, 15, 0.0, False)], 3: [(0.3333333333333333, 23, 0.0, False), (0.3333333333333333, 15, 0.0, False), (0.3333333333333333, 22, 0.0, False)]}, 24: {0: [(0.3333333333333333, 16, 0.0, False), (0.3333333333333333, 24, 0.0, False), (0.3333333333333333, 32, 0.0, False)], 1: [(0.3333333333333333, 24, 0.0, False), (0.3333333333333333, 32, 0.0, False), (0.3333333333333333, 25, 0.0, False)], 2: [(0.3333333333333333, 32, 0.0, False), (0.3333333333333333, 25, 0.0, False), (0.3333333333333333, 16, 0.0, False)], 3: [(0.3333333333333333, 25, 0.0, False), (0.3333333333333333, 16, 0.0, False), (0.3333333333333333, 24, 0.0, False)]}, 25: {0: [(0.3333333333333333, 17, 0.0, False), (0.3333333333333333, 24, 0.0, False), (0.3333333333333333, 33, 0.0, False)], 1: [(0.3333333333333333, 24, 0.0, False), (0.3333333333333333, 33, 0.0, False), (0.3333333333333333, 26, 0.0, False)], 2: [(0.3333333333333333, 33, 0.0, False), (0.3333333333333333, 26, 0.0, False), (0.3333333333333333, 17, 0.0, False)], 3: [(0.3333333333333333, 26, 0.0, False), (0.3333333333333333, 17, 0.0, False), (0.3333333333333333, 24, 0.0, False)]}, 26: {0: [(0.3333333333333333, 18, 0.0, False), (0.3333333333333333, 25, 0.0, False), (0.3333333333333333, 34, 0.0, False)], 1: [(0.3333333333333333, 25, 0.0, False), (0.3333333333333333, 34, 0.0, False), (0.3333333333333333, 27, 0.0, False)], 2: [(0.3333333333333333, 34, 0.0, False), (0.3333333333333333, 27, 0.0, False), (0.3333333333333333, 18, 0.0, False)], 3: [(0.3333333333333333, 27, 0.0, False), (0.3333333333333333, 18, 0.0, False), (0.3333333333333333, 25, 0.0, False)]}, 27: {0: [(0.3333333333333333, 19, 0.0, True), (0.3333333333333333, 26, 0.0, False), (0.3333333333333333, 35, 0.0, True)], 1: [(0.3333333333333333, 26, 0.0, False), (0.3333333333333333, 35, 0.0, True), (0.3333333333333333, 28, 0.0, False)], 2: [(0.3333333333333333, 35, 0.0, True), (0.3333333333333333, 28, 0.0, False), (0.3333333333333333, 19, 0.0, True)], 3: [(0.3333333333333333, 28, 0.0, False), (0.3333333333333333, 19, 0.0, True), (0.3333333333333333, 26, 0.0, False)]}, 28: {0: [(0.3333333333333333, 20, 0.0, False), (0.3333333333333333, 27, 0.0, False), (0.3333333333333333, 36, 0.0, False)], 1: [(0.3333333333333333, 27, 0.0, False), (0.3333333333333333, 36, 0.0, False), (0.3333333333333333, 29, 0.0, True)], 2: [(0.3333333333333333, 36, 0.0, False), (0.3333333333333333, 29, 0.0, True), (0.3333333333333333, 20, 0.0, False)], 3: [(0.3333333333333333, 29, 0.0, True), (0.3333333333333333, 20, 0.0, False), (0.3333333333333333, 27, 0.0, False)]}, 29: {0: [(1.0, 29, 0, True)], 1: [(1.0, 29, 0, True)], 2: [(1.0, 29, 0, True)], 3: [(1.0, 29, 0, True)]}, 30: {0: [(0.3333333333333333, 22, 0.0, False), (0.3333333333333333, 29, 0.0, True), (0.3333333333333333, 38, 0.0, False)], 1: [(0.3333333333333333, 29, 0.0, True), (0.3333333333333333, 38, 0.0, False), (0.3333333333333333, 31, 0.0, False)], 2: [(0.3333333333333333, 38, 0.0, False), (0.3333333333333333, 31, 0.0, False), (0.3333333333333333, 22, 0.0, False)], 3: [(0.3333333333333333, 31, 0.0, False), (0.3333333333333333, 22, 0.0, False), (0.3333333333333333, 29, 0.0, True)]}, 31: {0: [(0.3333333333333333, 23, 0.0, False), (0.3333333333333333, 30, 0.0, False), (0.3333333333333333, 39, 0.0, False)], 1: [(0.3333333333333333, 30, 0.0, False), (0.3333333333333333, 39, 0.0, False), (0.3333333333333333, 31, 0.0, False)], 2: [(0.3333333333333333, 39, 0.0, False), (0.3333333333333333, 31, 0.0, False), (0.3333333333333333, 23, 0.0, False)], 3: [(0.3333333333333333, 31, 0.0, False), (0.3333333333333333, 23, 0.0, False), (0.3333333333333333, 30, 0.0, False)]}, 32: {0: [(0.3333333333333333, 24, 0.0, False), (0.3333333333333333, 32, 0.0, False), (0.3333333333333333, 40, 0.0, False)], 1: [(0.3333333333333333, 32, 0.0, False), (0.3333333333333333, 40, 0.0, False), (0.3333333333333333, 33, 0.0, False)], 2: [(0.3333333333333333, 40, 0.0, False), (0.3333333333333333, 33, 0.0, False), (0.3333333333333333, 24, 0.0, False)], 3: [(0.3333333333333333, 33, 0.0, False), (0.3333333333333333, 24, 0.0, False), (0.3333333333333333, 32, 0.0, False)]}, 33: {0: [(0.3333333333333333, 25, 0.0, False), (0.3333333333333333, 32, 0.0, False), (0.3333333333333333, 41, 0.0, True)], 1: [(0.3333333333333333, 32, 0.0, False), (0.3333333333333333, 41, 0.0, True), (0.3333333333333333, 34, 0.0, False)], 2: [(0.3333333333333333, 41, 0.0, True), (0.3333333333333333, 34, 0.0, False), (0.3333333333333333, 25, 0.0, False)], 3: [(0.3333333333333333, 34, 0.0, False), (0.3333333333333333, 25, 0.0, False), (0.3333333333333333, 32, 0.0, False)]}, 34: {0: [(0.3333333333333333, 26, 0.0, False), (0.3333333333333333, 33, 0.0, False), (0.3333333333333333, 42, 0.0, True)], 1: [(0.3333333333333333, 33, 0.0, False), (0.3333333333333333, 42, 0.0, True), (0.3333333333333333, 35, 0.0, True)], 2: [(0.3333333333333333, 42, 0.0, True), (0.3333333333333333, 35, 0.0, True), (0.3333333333333333, 26, 0.0, False)], 3: [(0.3333333333333333, 35, 0.0, True), (0.3333333333333333, 26, 0.0, False), (0.3333333333333333, 33, 0.0, False)]}, 35: {0: [(1.0, 35, 0, True)], 1: [(1.0, 35, 0, True)], 2: [(1.0, 35, 0, True)], 3: [(1.0, 35, 0, True)]}, 36: {0: [(0.3333333333333333, 28, 0.0, False), (0.3333333333333333, 35, 0.0, True), (0.3333333333333333, 44, 0.0, False)], 1: [(0.3333333333333333, 35, 0.0, True), (0.3333333333333333, 44, 0.0, False), (0.3333333333333333, 37, 0.0, False)], 2: [(0.3333333333333333, 44, 0.0, False), (0.3333333333333333, 37, 0.0, False), (0.3333333333333333, 28, 0.0, False)], 3: [(0.3333333333333333, 37, 0.0, False), (0.3333333333333333, 28, 0.0, False), (0.3333333333333333, 35, 0.0, True)]}, 37: {0: [(0.3333333333333333, 29, 0.0, True), (0.3333333333333333, 36, 0.0, False), (0.3333333333333333, 45, 0.0, False)], 1: [(0.3333333333333333, 36, 0.0, False), (0.3333333333333333, 45, 0.0, False), (0.3333333333333333, 38, 0.0, False)], 2: [(0.3333333333333333, 45, 0.0, False), (0.3333333333333333, 38, 0.0, False), (0.3333333333333333, 29, 0.0, True)], 3: [(0.3333333333333333, 38, 0.0, False), (0.3333333333333333, 29, 0.0, True), (0.3333333333333333, 36, 0.0, False)]}, 38: {0: [(0.3333333333333333, 30, 0.0, False), (0.3333333333333333, 37, 0.0, False), (0.3333333333333333, 46, 0.0, True)], 1: [(0.3333333333333333, 37, 0.0, False), (0.3333333333333333, 46, 0.0, True), (0.3333333333333333, 39, 0.0, False)], 2: [(0.3333333333333333, 46, 0.0, True), (0.3333333333333333, 39, 0.0, False), (0.3333333333333333, 30, 0.0, False)], 3: [(0.3333333333333333, 39, 0.0, False), (0.3333333333333333, 30, 0.0, False), (0.3333333333333333, 37, 0.0, False)]}, 39: {0: [(0.3333333333333333, 31, 0.0, False), (0.3333333333333333, 38, 0.0, False), (0.3333333333333333, 47, 0.0, False)], 1: [(0.3333333333333333, 38, 0.0, False), (0.3333333333333333, 47, 0.0, False), (0.3333333333333333, 39, 0.0, False)], 2: [(0.3333333333333333, 47, 0.0, False), (0.3333333333333333, 39, 0.0, False), (0.3333333333333333, 31, 0.0, False)], 3: [(0.3333333333333333, 39, 0.0, False), (0.3333333333333333, 31, 0.0, False), (0.3333333333333333, 38, 0.0, False)]}, 40: {0: [(0.3333333333333333, 32, 0.0, False), (0.3333333333333333, 40, 0.0, False), (0.3333333333333333, 48, 0.0, False)], 1: [(0.3333333333333333, 40, 0.0, False), (0.3333333333333333, 48, 0.0, False), (0.3333333333333333, 41, 0.0, True)], 2: [(0.3333333333333333, 48, 0.0, False), (0.3333333333333333, 41, 0.0, True), (0.3333333333333333, 32, 0.0, False)], 3: [(0.3333333333333333, 41, 0.0, True), (0.3333333333333333, 32, 0.0, False), (0.3333333333333333, 40, 0.0, False)]}, 41: {0: [(1.0, 41, 0, True)], 1: [(1.0, 41, 0, True)], 2: [(1.0, 41, 0, True)], 3: [(1.0, 41, 0, True)]}, 42: {0: [(1.0, 42, 0, True)], 1: [(1.0, 42, 0, True)], 2: [(1.0, 42, 0, True)], 3: [(1.0, 42, 0, True)]}, 43: {0: [(0.3333333333333333, 35, 0.0, True), (0.3333333333333333, 42, 0.0, True), (0.3333333333333333, 51, 0.0, False)], 1: [(0.3333333333333333, 42, 0.0, True), (0.3333333333333333, 51, 0.0, False), (0.3333333333333333, 44, 0.0, False)], 2: [(0.3333333333333333, 51, 0.0, False), (0.3333333333333333, 44, 0.0, False), (0.3333333333333333, 35, 0.0, True)], 3: [(0.3333333333333333, 44, 0.0, False), (0.3333333333333333, 35, 0.0, True), (0.3333333333333333, 42, 0.0, True)]}, 44: {0: [(0.3333333333333333, 36, 0.0, False), (0.3333333333333333, 43, 0.0, False), (0.3333333333333333, 52, 0.0, True)], 1: [(0.3333333333333333, 43, 0.0, False), (0.3333333333333333, 52, 0.0, True), (0.3333333333333333, 45, 0.0, False)], 2: [(0.3333333333333333, 52, 0.0, True), (0.3333333333333333, 45, 0.0, False), (0.3333333333333333, 36, 0.0, False)], 3: [(0.3333333333333333, 45, 0.0, False), (0.3333333333333333, 36, 0.0, False), (0.3333333333333333, 43, 0.0, False)]}, 45: {0: [(0.3333333333333333, 37, 0.0, False), (0.3333333333333333, 44, 0.0, False), (0.3333333333333333, 53, 0.0, False)], 1: [(0.3333333333333333, 44, 0.0, False), (0.3333333333333333, 53, 0.0, False), (0.3333333333333333, 46, 0.0, True)], 2: [(0.3333333333333333, 53, 0.0, False), (0.3333333333333333, 46, 0.0, True), (0.3333333333333333, 37, 0.0, False)], 3: [(0.3333333333333333, 46, 0.0, True), (0.3333333333333333, 37, 0.0, False), (0.3333333333333333, 44, 0.0, False)]}, 46: {0: [(1.0, 46, 0, True)], 1: [(1.0, 46, 0, True)], 2: [(1.0, 46, 0, True)], 3: [(1.0, 46, 0, True)]}, 47: {0: [(0.3333333333333333, 39, 0.0, False), (0.3333333333333333, 46, 0.0, True), (0.3333333333333333, 55, 0.0, False)], 1: [(0.3333333333333333, 46, 0.0, True), (0.3333333333333333, 55, 0.0, False), (0.3333333333333333, 47, 0.0, False)], 2: [(0.3333333333333333, 55, 0.0, False), (0.3333333333333333, 47, 0.0, False), (0.3333333333333333, 39, 0.0, False)], 3: [(0.3333333333333333, 47, 0.0, False), (0.3333333333333333, 39, 0.0, False), (0.3333333333333333, 46, 0.0, True)]}, 48: {0: [(0.3333333333333333, 40, 0.0, False), (0.3333333333333333, 48, 0.0, False), (0.3333333333333333, 56, 0.0, False)], 1: [(0.3333333333333333, 48, 0.0, False), (0.3333333333333333, 56, 0.0, False), (0.3333333333333333, 49, 0.0, True)], 2: [(0.3333333333333333, 56, 0.0, False), (0.3333333333333333, 49, 0.0, True), (0.3333333333333333, 40, 0.0, False)], 3: [(0.3333333333333333, 49, 0.0, True), (0.3333333333333333, 40, 0.0, False), (0.3333333333333333, 48, 0.0, False)]}, 49: {0: [(1.0, 49, 0, True)], 1: [(1.0, 49, 0, True)], 2: [(1.0, 49, 0, True)], 3: [(1.0, 49, 0, True)]}, 50: {0: [(0.3333333333333333, 42, 0.0, True), (0.3333333333333333, 49, 0.0, True), (0.3333333333333333, 58, 0.0, False)], 1: [(0.3333333333333333, 49, 0.0, True), (0.3333333333333333, 58, 0.0, False), (0.3333333333333333, 51, 0.0, False)], 2: [(0.3333333333333333, 58, 0.0, False), (0.3333333333333333, 51, 0.0, False), (0.3333333333333333, 42, 0.0, True)], 3: [(0.3333333333333333, 51, 0.0, False), (0.3333333333333333, 42, 0.0, True), (0.3333333333333333, 49, 0.0, True)]}, 51: {0: [(0.3333333333333333, 43, 0.0, False), (0.3333333333333333, 50, 0.0, False), (0.3333333333333333, 59, 0.0, True)], 1: [(0.3333333333333333, 50, 0.0, False), (0.3333333333333333, 59, 0.0, True), (0.3333333333333333, 52, 0.0, True)], 2: [(0.3333333333333333, 59, 0.0, True), (0.3333333333333333, 52, 0.0, True), (0.3333333333333333, 43, 0.0, False)], 3: [(0.3333333333333333, 52, 0.0, True), (0.3333333333333333, 43, 0.0, False), (0.3333333333333333, 50, 0.0, False)]}, 52: {0: [(1.0, 52, 0, True)], 1: [(1.0, 52, 0, True)], 2: [(1.0, 52, 0, True)], 3: [(1.0, 52, 0, True)]}, 53: {0: [(0.3333333333333333, 45, 0.0, False), (0.3333333333333333, 52, 0.0, True), (0.3333333333333333, 61, 0.0, False)], 1: [(0.3333333333333333, 52, 0.0, True), (0.3333333333333333, 61, 0.0, False), (0.3333333333333333, 54, 0.0, True)], 2: [(0.3333333333333333, 61, 0.0, False), (0.3333333333333333, 54, 0.0, True), (0.3333333333333333, 45, 0.0, False)], 3: [(0.3333333333333333, 54, 0.0, True), (0.3333333333333333, 45, 0.0, False), (0.3333333333333333, 52, 0.0, True)]}, 54: {0: [(1.0, 54, 0, True)], 1: [(1.0, 54, 0, True)], 2: [(1.0, 54, 0, True)], 3: [(1.0, 54, 0, True)]}, 55: {0: [(0.3333333333333333, 47, 0.0, False), (0.3333333333333333, 54, 0.0, True), (0.3333333333333333, 63, 1.0, True)], 1: [(0.3333333333333333, 54, 0.0, True), (0.3333333333333333, 63, 1.0, True), (0.3333333333333333, 55, 0.0, False)], 2: [(0.3333333333333333, 63, 1.0, True), (0.3333333333333333, 55, 0.0, False), (0.3333333333333333, 47, 0.0, False)], 3: [(0.3333333333333333, 55, 0.0, False), (0.3333333333333333, 47, 0.0, False), (0.3333333333333333, 54, 0.0, True)]}, 56: {0: [(0.3333333333333333, 48, 0.0, False), (0.3333333333333333, 56, 0.0, False), (0.3333333333333333, 56, 0.0, False)], 1: [(0.3333333333333333, 56, 0.0, False), (0.3333333333333333, 56, 0.0, False), (0.3333333333333333, 57, 0.0, False)], 2: [(0.3333333333333333, 56, 0.0, False), (0.3333333333333333, 57, 0.0, False), (0.3333333333333333, 48, 0.0, False)], 3: [(0.3333333333333333, 57, 0.0, False), (0.3333333333333333, 48, 0.0, False), (0.3333333333333333, 56, 0.0, False)]}, 57: {0: [(0.3333333333333333, 49, 0.0, True), (0.3333333333333333, 56, 0.0, False), (0.3333333333333333, 57, 0.0, False)], 1: [(0.3333333333333333, 56, 0.0, False), (0.3333333333333333, 57, 0.0, False), (0.3333333333333333, 58, 0.0, False)], 2: [(0.3333333333333333, 57, 0.0, False), (0.3333333333333333, 58, 0.0, False), (0.3333333333333333, 49, 0.0, True)], 3: [(0.3333333333333333, 58, 0.0, False), (0.3333333333333333, 49, 0.0, True), (0.3333333333333333, 56, 0.0, False)]}, 58: {0: [(0.3333333333333333, 50, 0.0, False), (0.3333333333333333, 57, 0.0, False), (0.3333333333333333, 58, 0.0, False)], 1: [(0.3333333333333333, 57, 0.0, False), (0.3333333333333333, 58, 0.0, False), (0.3333333333333333, 59, 0.0, True)], 2: [(0.3333333333333333, 58, 0.0, False), (0.3333333333333333, 59, 0.0, True), (0.3333333333333333, 50, 0.0, False)], 3: [(0.3333333333333333, 59, 0.0, True), (0.3333333333333333, 50, 0.0, False), (0.3333333333333333, 57, 0.0, False)]}, 59: {0: [(1.0, 59, 0, True)], 1: [(1.0, 59, 0, True)], 2: [(1.0, 59, 0, True)], 3: [(1.0, 59, 0, True)]}, 60: {0: [(0.3333333333333333, 52, 0.0, True), (0.3333333333333333, 59, 0.0, True), (0.3333333333333333, 60, 0.0, False)], 1: [(0.3333333333333333, 59, 0.0, True), (0.3333333333333333, 60, 0.0, False), (0.3333333333333333, 61, 0.0, False)], 2: [(0.3333333333333333, 60, 0.0, False), (0.3333333333333333, 61, 0.0, False), (0.3333333333333333, 52, 0.0, True)], 3: [(0.3333333333333333, 61, 0.0, False), (0.3333333333333333, 52, 0.0, True), (0.3333333333333333, 59, 0.0, True)]}, 61: {0: [(0.3333333333333333, 53, 0.0, False), (0.3333333333333333, 60, 0.0, False), (0.3333333333333333, 61, 0.0, False)], 1: [(0.3333333333333333, 60, 0.0, False), (0.3333333333333333, 61, 0.0, False), (0.3333333333333333, 62, 0.0, False)], 2: [(0.3333333333333333, 61, 0.0, False), (0.3333333333333333, 62, 0.0, False), (0.3333333333333333, 53, 0.0, False)], 3: [(0.3333333333333333, 62, 0.0, False), (0.3333333333333333, 53, 0.0, False), (0.3333333333333333, 60, 0.0, False)]}, 62: {0: [(0.3333333333333333, 54, 0.0, True), (0.3333333333333333, 61, 0.0, False), (0.3333333333333333, 62, 0.0, False)], 1: [(0.3333333333333333, 61, 0.0, False), (0.3333333333333333, 62, 0.0, False), (0.3333333333333333, 63, 1.0, True)], 2: [(0.3333333333333333, 62, 0.0, False), (0.3333333333333333, 63, 1.0, True), (0.3333333333333333, 54, 0.0, True)], 3: [(0.3333333333333333, 63, 1.0, True), (0.3333333333333333, 54, 0.0, True), (0.3333333333333333, 61, 0.0, False)]}, 63: {0: [(1.0, 63, 0, True)], 1: [(1.0, 63, 0, True)], 2: [(1.0, 63, 0, True)], 3: [(1.0, 63, 0, True)]}}