perkun  0.0.9
ExperimentalAIlanguage
Public Member Functions | Private Member Functions | Private Attributes | List of all members
perkun::visible_state Class Reference

#include <perkun.h>

Public Member Functions

 visible_state (collection_of_variables &v, collection_of_values &w, collection_of_actions &a, collection_of_visible_states &q)
 
void insert (variable *v, value *w)
 
void populate ()
 
void report (std::ostream &s) const
 
void report_xml (std::ostream &s, bool with_states=true) const
 
bool get_match (const std::map< variable *, value * > &m) const
 
stateget (const std::map< variable *, value * > &m)
 
const stateget (const std::map< variable *, value * > &m) const
 
const valueget_input_variable_value (variable *v) const
 
const std::list< state * > & get_list_of_states () const
 
std::list< state * > & get_list_of_states ()
 
float get_payoff () const
 
const collection_of_visible_statesget_visible_states () const
 
collection_of_visible_statesget_visible_states ()
 
void make_random_model ()
 
int get_amount_of_states () const
 
int get_model_size () const
 
void test_model () const
 
int get_amount_of_possible_states () const
 
void set_illegal (action *a)
 
bool get_is_illegal (action *a) const
 

Private Member Functions

bool get_allowed (const std::map< variable *, std::vector< value * >::const_iterator > &m) const
 

Private Attributes

collection_of_variablesmy_variables
 
collection_of_valuesmy_values
 
collection_of_actionsmy_actions
 
collection_of_visible_statesmy_visible_states
 
std::list< state * > list_of_states
 
std::map< variable *, value * > map_input_variable_to_value
 
std::list< action * > list_of_illegal_actions
 

Detailed Description

A visible state represents a map from input variable to values and is at the same time a collection of states.

Member Data Documentation

std::list<action*> perkun::visible_state::list_of_illegal_actions
private

Some actions can be defined as illegal for a visible state. Then the optimizer::get_optimal_action will not choose them.


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