package aima.core.environment.connectfour; /** * Helper class for action ordering. * @author Ruediger Lunde */ public class ActionValuePair<ACTION> implements Comparable<ActionValuePair<ACTION>> { private ACTION action; private double value; public static <ACTION> ActionValuePair<ACTION> createFor(ACTION action, double utility) { return new ActionValuePair<ACTION>(action, utility); } public ActionValuePair(ACTION action, double utility) { this.action = action; this.value = utility; } public ACTION getAction() { return action; } public double getValue() { return value; } @Override public int compareTo(ActionValuePair<ACTION> pair) { if (value < pair.value) return 1; else if (value > pair.value) return -1; else return 0; } }