Polarith AI
1.8
Problem< T > Class Template Reference

Description

Represents the multicriteria optimization (MCO) problem solved by the AI system (implementation as base class).

This is done by an ISolver<T>, e.g. an ConstraintSolver<T>.

A Problem<T> can be seen as matrix, whereby a row represents an objective and a column represents associated values for each objective. So it is ensured that each objective has got the same number of values. Every Problem<T> stores the information whether it is to be minimized or maximized so that an ISolver<T> implementation is able to distinguish between those two operations.

Template Parameters
TType of the objective values defining the objective space.
Inheritance diagram for Problem< T >:
IProblem< T >

Properties

int ObjectiveCount [get]
 The number of objectives (read only). More...
 
int ValueCount [get]
 The number of values per objective (read only). More...
 
ReadOnlyCollection< T > this[int index] [get]
 Provides quick read-only access to an objective (problem matrix row). More...
 

Public Methods

ReadOnlyCollection< T > AddObjective (bool minimized)
 Adds an objective (one row to the problem matrix). More...
 
void AddValues (T value)
 Adds a value to every objective (one column to the problem matrix). More...
 
void AddValues (T[] values)
 Adds a value to every objective (one column to the problem matrix). More...
 
ReadOnlyCollection< T > GetObjective (int index)
 Gets the objective (problem matrix row) belonging to the specified index . More...
 
GetValue (int objectiveIndex, int valueIndex)
 Gets a value (single element of the problem matrix). More...
 
bool IsObjectiveMinimized (int index)
 Determines if an objective is considered to be minimized or maximized. More...
 
void SetObjectiveMinimized (int index, bool minimized)
 Specifies if an objective is considered to be minimized or maximized. More...
 
void SetValue (int objectiveIndex, int valueIndex, T value)
 Sets a value (single element of the problem matrix). More...
 
void ResetValues ()
 Resets all objective values to the default of T . More...
 
void ResetValues (T value)
 Resets all objective values to the given value of T . More...
 
void RemoveObjectiveAt (int index)
 Removes the objective (problem matrix row) at the specified index . More...
 
void RemoveValuesAt (int index)
 Removes the objective values (problem matrix column) at the specified index . More...
 
void ResizeObjectives (int valueCount)
 Changes the number of values (column length) for each objective to the specified valueCount . More...
 
void ClearObjectives ()
 Removes all objectives including all values. More...
 
void ClearValues ()
 Removes all values but preserves the number of objectives. More...
 
Imprint