AIToolbox
A library that offers tools for AI problem solving.
AIToolbox::Pruner Class Reference

This class offers pruning facilities for non-parsimonious ValueFunction sets. More...

#include <AIToolbox/Utils/Prune.hpp>

Public Member Functions

 Pruner (const size_t s)
 Basic constructor. More...
 
template<typename It , typename P = std::identity>
It operator() (It begin, It end, P p=P{})
 This function prunes all non useful hyperplanes from the provided list. More...
 

Detailed Description

This class offers pruning facilities for non-parsimonious ValueFunction sets.

This class automatically handles a series of WitnessLPs in order to remove all hyperplanes which are completely dominated. It is much more precise than extractDominated, but it is also a lot more expensive to call.

Constructor & Destructor Documentation

◆ Pruner()

AIToolbox::Pruner::Pruner ( const size_t  s)
inline

Basic constructor.

Parameters
sThe number of dimensions of the simplex to operate on.

Member Function Documentation

◆ operator()()

template<typename It , typename P >
It AIToolbox::Pruner::operator() ( It  begin,
It  end,
p = P{} 
)

This function prunes all non useful hyperplanes from the provided list.

Parameters
beginAn iterator to the start of the list that needs to be pruned.
endAn iterator to the end of the list that needs to be pruned.
pAn optional projection to access the hyperplanes from more complex structures.

The documentation for this class was generated from the following file: