AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
|
This namespace contains implementations of SSP search algorithms.
Namespaces | |
namespace | acyclic_vi |
Namespace dedicated to the acyclic value iteration algorithm. | |
namespace | ao_search |
Namespace dedicated to the AO* family of MDP algorithms. | |
namespace | exhaustive_ao |
I do not know this algorithm. | |
namespace | exhaustive_dfs |
namespace for anytime TVI | |
namespace | fret |
Namespace dedicated to the Find, Revise, Eliminate Traps (FRET) framework. | |
namespace | heuristic_depth_first_search |
Namespace dedicated to Depth-First Heuristic Search. | |
namespace | heuristic_search |
Namespace dedicated to the MDP h search base implementation. | |
namespace | idual |
Namespace dedicated to the i-dual MDP algorithm. | |
namespace | interval_iteration |
Namespace dedicated to interval iteration on MaxProb MDPs. | |
namespace | lrtdp |
Namespace dedicated to labelled real-time dynamic programming (LRTDP). | |
namespace | ta_topological_vi |
Namespace dedicated to trap-aware Topological Value Iteration (TATVI). | |
namespace | topological_vi |
Namespace dedicated to Topological Value Iteration (TVI). | |
namespace | trap_aware_dfhs |
Namespace dedicated to the depth-first heuristic search (DFHS) family with native trap handling support. | |
namespace | trap_aware_lrtdp |
Namespace dedicated to labelled real-time dynamic programming (LRTDP) with native trap handling support. | |
Classes | |
class | ClearGuard |
Helper RAII class that ensures that containers are cleared when going out of scope. More... | |
struct | get_t |
Function object calling std::get<n> on its argument. Useful in ranges algorithms. More... | |
class | OpenList |
An interface for open lists used during search algorithms. More... | |
class | PolicyPicker |
An strategy interface used to choose break ties between multiple greedy actions for a state. More... | |
class | StateProperties |
Interface providing access to various state properties during heuristic search. More... | |
class | SuccessorSampler |
An interface used to sample a state from a successor distribution. More... | |
class | TransitionSorter |
An interface used to reorder a list of transitions. More... | |
Typedefs | |
template<bool UseInterval> | |
using | AlgorithmValue = std::conditional_t<UseInterval, Interval, value_t> |
Convenience value type alias for algorithms selecting interval iteration behaviour based on a template parameter. | |
Functions | |
value_t | as_lower_bound (Interval interval) |
Returns the lower bound of the interval. | |
value_t | as_lower_bound (value_t single) |
Returns the value unchanged. | |
Interval | as_interval (value_t lower_bound) |
Returns the interval with the given lower bound and infinte upper bound. | |
Interval | as_interval (Interval value) |
Returns the value unchanged. | |
bool | set_min (Interval &lhs, Interval rhs) |
Computes the assignments lhs.lower <- min(lhs.lower, rhs.lower) and lower <- min(lhs.lower, rhs.lower) . | |
bool | set_min (value_t &lhs, value_t rhs) |
Computes the assignment lhs <- min(lhs, rhs). | |
bool | update (Interval &lhs, Interval rhs, value_t epsilon=g_epsilon) |
Intersects two intervals and assigns the result to the left operand. | |
using probfd::algorithms::AlgorithmValue = std::conditional_t<UseInterval, Interval, value_t> |
Convenience value type alias for algorithms selecting interval iteration behaviour based on a template parameter.
Returns the lower bound of the interval.
Returns the interval with the given lower bound and infinte upper bound.
Computes the assignments lhs.lower <- min(lhs.lower, rhs.lower)
and lower <- min(lhs.lower, rhs.lower)
.
rhs.lower
was less than lhs.lower
. Computes the assignment lhs <- min(lhs, rhs).
rhs
was less than lhs
. Intersects two intervals and assigns the result to the left operand.