AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
vdiff_tiebreaker.h
1#ifndef PROBFD_POLICY_PICKER_VDIFF_TIEBREAKER_H
2#define PROBFD_POLICY_PICKER_VDIFF_TIEBREAKER_H
3
4#include "probfd/policy_pickers/stable_policy_picker.h"
5
6namespace probfd::policy_pickers {
7
8template <typename State, typename Action>
9class VDiffTiebreaker
10 : public StablePolicyPicker<State, Action, VDiffTiebreaker<State, Action>> {
11 const value_t favor_large_gaps_;
12
13public:
14 explicit VDiffTiebreaker(bool stable_policy, value_t favor_large_gaps);
15
16 int pick_index(
17 MDP<State, Action>& mdp,
18 std::optional<Action> prev_policy,
19 const std::vector<Transition<Action>>& greedy_transitions,
20 algorithms::StateProperties& properties);
21};
22
23} // namespace probfd::policy_pickers
24
25#include "probfd/policy_pickers/vdiff_tiebreaker_impl.h"
26
27#endif // PROBFD_POLICY_PICKER_VDIFF_TIEBREAKER_H
double value_t
Typedef for the state value type.
Definition aliases.h:7