timetable.solver.strategy.value
Class AbstractValueSelection

java.lang.Object
  |
  +--timetable.solver.strategy.value.AbstractValueSelection
All Implemented Interfaces:
ValueSelectionInterface
Direct Known Subclasses:
HumanValueSelection, MinValueSelection

public abstract class AbstractValueSelection
extends java.lang.Object
implements ValueSelectionInterface

Abstraktní třída heuristiky výběru umístění. Narozdíl od ValueSelectionInterface navíc implementuje použití ohodnocovací funkce.

See Also:
ValueSelectionInterface, SingleActivityEvaluationInterface

Field Summary
protected  Activity activity
          Vybraná aktivita
protected  Config config
          Globální konfigurace
protected  SingleActivityEvaluationInterface evaluation
          Ohodnocovací funkce.
 
Constructor Summary
AbstractValueSelection(Config config, SingleActivityEvaluationInterface evaluation)
          Konstruktor.
 
Method Summary
abstract  void addValue(int slot, ActivityResources selectedResources, ActivityDependenceGroup dependences, ActivityGroup conflictActivities)
          Přidání možného umístění do výběru.
 void reset(Activity activity)
          Nastavení aktivity, pro kterou se bude umístění hledat.
abstract  void select()
          Metoda provede výběr umístění.
abstract  ActivityGroup selectedConflictActivities()
          Vrací vybrané umístění.
abstract  ActivityResources selectedResources()
          Vrací vybrané umístění.
abstract  int selectedSlot()
          Vrací vybrané umístění.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

evaluation

protected SingleActivityEvaluationInterface evaluation
Ohodnocovací funkce.

config

protected Config config
Globální konfigurace

activity

protected Activity activity
Vybraná aktivita
Constructor Detail

AbstractValueSelection

public AbstractValueSelection(Config config,
                              SingleActivityEvaluationInterface evaluation)
Konstruktor.
Parameters:
config - konfigurace
evaluation - ohodnocovací funkce
Method Detail

reset

public void reset(Activity activity)
Nastavení aktivity, pro kterou se bude umístění hledat. Reset heuristiky.
Specified by:
reset in interface ValueSelectionInterface
Parameters:
activity - vybraná aktivita

addValue

public abstract void addValue(int slot,
                              ActivityResources selectedResources,
                              ActivityDependenceGroup dependences,
                              ActivityGroup conflictActivities)
                       throws TimetableException
Přidání možného umístění do výběru.
Specified by:
addValue in interface ValueSelectionInterface
Parameters:
slot - počáteční slot
selectedResources - vybrané zdroje
dependences - množina všech závislostí
conflictActivities - množina aktivit, které jsou s daným umístěním v konfliktu - budou se muset z rozvrhu odebrat v případě zvolení tohoto umístění

select

public abstract void select()
                     throws TimetableException
Metoda provede výběr umístění.
Specified by:
select in interface ValueSelectionInterface

selectedSlot

public abstract int selectedSlot()
Vrací vybrané umístění.
Specified by:
selectedSlot in interface ValueSelectionInterface
Returns:
počáteční slot

selectedResources

public abstract ActivityResources selectedResources()
Vrací vybrané umístění.
Specified by:
selectedResources in interface ValueSelectionInterface
Returns:
vybrané zdroje

selectedConflictActivities

public abstract ActivityGroup selectedConflictActivities()
Vrací vybrané umístění.
Specified by:
selectedConflictActivities in interface ValueSelectionInterface
Returns:
konfliktní aktivity