public abstract class AIssueEvaluationNumerical extends AIssueEvaluation
Modifier and Type | Field and Description |
---|---|
protected double |
leftZeroUtilityValue |
protected double |
maxUtilityValue |
protected java.util.ArrayList<Value> |
offeredValueHistory |
protected Range |
ourNonZeroUtilityRange |
protected double |
rightZeroUtilityValue |
firstOfferedValue, issue
Constructor and Description |
---|
AIssueEvaluationNumerical(Issue issue,
Range ourNonZeroUtilityRange)
This will construct a new numerical IssueEvaluation.
|
Modifier and Type | Method and Description |
---|---|
abstract double |
getIssueLowerBound()
This function must be implemented by the subclass to return the lower bound of the issue under evaluation.
|
double |
getIssueRangeLength()
This method returns the length of the range of our issue.
|
abstract double |
getIssueUpperBound()
This function must be implemented by the subclass to return the upper bound of the issue under evaluation.
|
protected double |
getNormalizedInterpolatedWeight(double zeroPoint,
double maxPoint,
double inBetweenValue)
This method executes the interpolation between the max utility point and the left or right zero utility point.
|
double |
getNormalizedValueWeight(Value value)
This returns the normalized weight for the given value.
|
protected abstract double |
getNumericalValue(Value value)
This return the actual numerical value that resides inside the Value object.
|
double |
getOfferedValuesStandardDeviation()
This returns the standard deviation of the list of offered values by the opponent.
|
java.lang.String |
toString()
This returns a string representation of the issueEvaluation.
|
void |
updateIssueEvaluation(Value chosenValue)
This updates the numerical issueEvaluation with a newly offered value.
|
protected void |
updateMaxUtilityValue()
This method updates the max utility value.
|
protected void |
updateZeroUtilityValues()
This method updates the zero utility values.
|
getIssueID, getIssueName, getIssueType, isFirstValueOffered
protected double leftZeroUtilityValue
protected double rightZeroUtilityValue
protected double maxUtilityValue
protected Range ourNonZeroUtilityRange
protected java.util.ArrayList<Value> offeredValueHistory
public void updateIssueEvaluation(Value chosenValue)
updateIssueEvaluation
in class AIssueEvaluation
chosenValue
- The value of the issue we are evaluating that has just been chosen. May not be null.protected void updateMaxUtilityValue()
protected void updateZeroUtilityValues()
public double getNormalizedValueWeight(Value value)
getNormalizedValueWeight
in class AIssueEvaluation
value
- The value (discrete or non-discrete) of which we want to know the normalized weight.protected double getNormalizedInterpolatedWeight(double zeroPoint, double maxPoint, double inBetweenValue)
zeroPoint
- The point where the utility is zero.maxPoint
- The point where the utility is one.inBetweenValue
- The value for which we wish to know the utility.protected abstract double getNumericalValue(Value value)
value
- public abstract double getIssueLowerBound()
public abstract double getIssueUpperBound()
public double getIssueRangeLength()
public double getOfferedValuesStandardDeviation()
public java.lang.String toString()
toString
in class AIssueEvaluation