AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
arbitrary_tiebreaker.h
1#ifndef PROBFD_POLICY_PICKER_ARBITRARY_TIEBREAKER_H
2#define PROBFD_POLICY_PICKER_ARBITRARY_TIEBREAKER_H
3
4#include "probfd/policy_pickers/stable_policy_picker.h" // IWYU pragma: export
5
6namespace probfd::policy_pickers {
7
8template <typename State, typename Action>
9class ArbitraryTiebreaker
10 : public StablePolicyPicker<
11 State,
12 Action,
13 ArbitraryTiebreaker<State, Action>> {
14public:
15 explicit ArbitraryTiebreaker(bool stable_policy);
16
17 int pick_index(
18 MDP<State, Action>&,
19 std::optional<Action>,
20 const std::vector<Transition<Action>>&,
21 algorithms::StateProperties&) override;
22};
23
24} // namespace probfd::policy_pickers
25
26#include "probfd/policy_pickers/arbitrary_tiebreaker_impl.h"
27
28#endif // PROBFD_POLICY_PICKER_ARBITRARY_TIEBREAKER_H