Builds the very foundation for all AI computations related to the multi-criteria optimization (MCO) pipeline (interface).
IContext<TValue, TStructure> is intended to connect the dots for the different AI modules and to bring everything together. It provides references to important all modules belonging to the AI system. The method Evaluate should be implemented to execute the AI main loop and to define/solve a MCO Problem storing the results within the associated Decision instance.
The type TValue is used by the MCO related classes IProblem<T> and ISolver<T> for the objective values, as against the type TStructure is used by ISensor<T> in order to sample an agent's world and define its problem space representation.
TValue | Type of the objective values defining the objective space. |
TStructure | Type of the structural sensor element defining the problem space. |
Properties | |
IProblem< TValue > | Problem [get] |
Holds objective values defining a MCO problem to be solved (read only). More... | |
IList< IBehaviour > | Behaviours [get] |
Holds IBehaviour instances which are intended to be processed (read only). More... | |
IDecision< TValue, TStructure > | Decision [get] |
Container for storing the results from Evaluate (read only). More... | |
ISolver< TValue > | Solver [get, set] |
Module used for solving the actual Problem. More... | |
ISensor< TStructure > | Sensor [get, set] |
Determines how an agent samples its environment. More... | |
Public Methods | |
void | Evaluate () |
Processes the AI main loop for defining and solving the hold Problem writing the results into the Decision. More... | |