Skip to content

Commit d451870

Browse files
committed
code simplification
1 parent fdb90ec commit d451870

3 files changed

+5
-9
lines changed

rl/finite_horizon.py

+2-3
Original file line numberDiff line numberDiff line change
@@ -145,10 +145,9 @@ def finite_horizon_MDP(
145145
for time in range(0, limit):
146146
for s in process.non_terminal_states:
147147
s_time = WithTime(state=s.state, time=time)
148-
actions_map = process.action_mapping(s)
149148
mapping[s_time] = {a: result.map(
150149
lambda sr: (WithTime(state=sr[0].state, time=time + 1), sr[1])
151-
) for a, result in actions_map.items()}
150+
) for a, result in process.mapping[s].items()}
152151

153152
return FiniteMarkovDecisionProcess(mapping)
154153

@@ -182,7 +181,7 @@ def without_time(arg: ActionMapping[A, WithTime[S]]) -> \
182181
for a, sr_distr in arg.items()}
183182

184183
return [{NonTerminal(s.state): without_time(
185-
process.action_mapping(NonTerminal(s))
184+
process.mapping[NonTerminal(s)]
186185
) for s in states} for _, states in groupby(
187186
sorted(
188187
(nt.state for nt in process.non_terminal_states),

rl/markov_decision_process.py

-3
Original file line numberDiff line numberDiff line change
@@ -172,9 +172,6 @@ def apply_finite_policy(self, policy: FinitePolicy[S, A])\
172172

173173
return FiniteMarkovRewardProcess(transition_mapping)
174174

175-
def action_mapping(self, state: NonTerminal[S]) -> ActionMapping[A, S]:
176-
return self.mapping[state]
177-
178175
def actions(self, state: NonTerminal[S]) -> Iterable[A]:
179176
'''All the actions allowed for the given state.
180177

rl/test_finite_horizon.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ def test_finite_horizon_MDP(self):
148148
self.assertEqual(set(finite.actions(s)), {False, True})
149149

150150
start = NonTerminal(WithTime(state=True, time=0))
151-
result = finite.action_mapping(start)[False]
151+
result = finite.mapping[start][False]
152152
expected_result = Categorical({
153153
(NonTerminal(WithTime(False, time=1)), 2.0): 0.7,
154154
(NonTerminal(WithTime(True, time=1)), 1.0): 0.3
@@ -186,7 +186,7 @@ def action_mapping_for(s: WithTime[bool]) -> \
186186
for a in True, False:
187187
distribution.assert_almost_equal(
188188
self,
189-
finite.action_mapping(NonTerminal(s_time))[a],
189+
finite.mapping[NonTerminal(s_time)][a],
190190
action_mapping_for(s_time)[a]
191191
)
192192

@@ -211,7 +211,7 @@ def action_mapping_for(s: WithTime[bool]) -> \
211211
for a in True, False:
212212
distribution.assert_almost_equal(
213213
self,
214-
finite.action_mapping(NonTerminal(s_time))[a],
214+
finite.mapping[NonTerminal(s_time)][a],
215215
act_map[a]
216216
)
217217

0 commit comments

Comments
 (0)