SGSolve
SGIteration_PencilSharpening Class Reference

Stores data on the behavior of SGApprox::generate() More...

#include <sgiteration_pencilsharpening.hpp>

Collaboration diagram for SGIteration_PencilSharpening:

Public Member Functions

 SGIteration_PencilSharpening ()
 Default constructor.
 
 SGIteration_PencilSharpening (const SGApprox &approx, bool storeActions=true)
 
int getIteration () const
 Get method for the iteration.
 
int getRevolution () const
 Get method for the revolution.
 
int getNumExtremeTuples () const
 Get method for the number of extreme tuples.
 
const SGTuplegetPivot () const
 Get method for the current pivot.
 
const SGPointgetDirection () const
 Get method for the current direction.
 
const vector< vector< SGBaseAction > > & getActions () const
 Get method for the actions available at the current iteration.
 
int getBestState () const
 Get method for the best state.
 
int getBestAction () const
 Get method for the best action.
 
SG::Regime getRegime () const
 Get method for the regime corresponding to the best direction.
 
const vector< int > & getActionTuple () const
 Get method for the action tuple.
 
const vector< SG::Regime > & getRegimeTuple () const
 Get method for the regime tuple.
 
const SGTuplegetThreatTuple () const
 Get method for the current threat tuple.
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 Serialize the iteration using Boost.
 

Private Attributes

int iteration
 
int revolution
 
int numExtremeTuples
 
SGTuple pivot
 
SGPoint direction
 
vector< vector< SGBaseAction > > actions
 
int bestState
 The state that generated the best direction.
 
int bestAction
 The action that generated the best direction.
 
SG::Regime regime
 True if the best direction was non-binding.
 
vector< int > actionTuple
 The current action tuple.
 
vector< SG::RegimeregimeTuple
 The states in which IC constraints are not binding.
 
SGTuple threatTuple
 The current threat tuple.
 

Friends

class boost::serialization::access
 Serializes the SGIteration object using boost.
 

Detailed Description

Stores data on the behavior of SGApprox::generate()

This class records information on each cut made by the twist algorithm.

Part of the pencil sharpening algorithm.

Constructor & Destructor Documentation

◆ SGIteration_PencilSharpening()

SGIteration_PencilSharpening::SGIteration_PencilSharpening ( const SGApprox approx,
bool  storeActions = true 
)

Initializes a new SGIteration object with data on the current iteration

By default, the constructor will also copy the data in SGApprox::actions, so that the user can later recover the test directions that were available at the given iteration. If the second argument is false, then these actions will not be stored. For large games, storing the actions can take a large amount of memory.

Member Data Documentation

◆ actions

vector< vector<SGBaseAction> > SGIteration_PencilSharpening::actions
private

The actions that can be supported at the current iteration

◆ direction

SGPoint SGIteration_PencilSharpening::direction
private

The shallowest admissible direction at the current revolution.

◆ iteration

int SGIteration_PencilSharpening::iteration
private

The value of SGApprox::numIterations.

◆ numExtremeTuples

int SGIteration_PencilSharpening::numExtremeTuples
private

◆ pivot

SGTuple SGIteration_PencilSharpening::pivot
private

The current value of SGApprox::pivot.

◆ revolution

int SGIteration_PencilSharpening::revolution
private

The value of SGApprox::numRevolutions.


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