Package pal.algorithmics
Interface UndoableAction
-
public interface UndoableAction
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
UndoableAction.Utils
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description double
doAction(double currentScore, double desparationValue)
Perform an actionboolean
isActionDeterministic()
Was the last action deterministic? That is, if it wasn't chosen and state is still as before is it worth doing it again?boolean
isActionSuccessful()
Was the last call to doAction() succesful?boolean
undoAction()
Undo the last action (if it was successful) Users of undoable actions should accept that sometimes it isn't possible.
-
-
-
Method Detail
-
doAction
double doAction(double currentScore, double desparationValue)
Perform an action- Parameters:
currentscore
- The current score before doing the actiondesparationValue
- An indication by the processing machines of willingness to do more extreme actions. A value of 0 means not desparate at all, a value of 1 means very desparate- Returns:
- the current score after doing the action (or the input score if not successful)
-
isActionDeterministic
boolean isActionDeterministic()
Was the last action deterministic? That is, if it wasn't chosen and state is still as before is it worth doing it again?- Returns:
- true if last action deterministic
-
isActionSuccessful
boolean isActionSuccessful()
Was the last call to doAction() succesful?- Returns:
- true if last action successful, false otherwise
-
undoAction
boolean undoAction()
Undo the last action (if it was successful) Users of undoable actions should accept that sometimes it isn't possible. If an undo was not possible the action should not change any state- Returns:
- true if undo was successful
-
-