public class BidSpace
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
java.util.ArrayList<BidPoint> |
bidPoints
List of all bidpoints in the domain.
|
Constructor and Description |
---|
BidSpace(AbstractUtilitySpace... utilityspaces)
Default constructor used to construct a multidimensional bidding space.
|
BidSpace(AbstractUtilitySpace utilityspaceA,
AbstractUtilitySpace utilityspaceB,
boolean excludeBids)
Constructor to createFrom a BidSpace given exactly two utility spaces.
|
BidSpace(AbstractUtilitySpace utilityspaceA,
AbstractUtilitySpace utilityspaceB,
boolean excludeBids,
boolean skipCheckSpaceB)
Constructor which is identical to its three parameter version, except for
the argument skipCheckSpaceB.
|
Modifier and Type | Method and Description |
---|---|
double |
distanceToNearestParetoBid(BidPoint bid)
Method which given a bid point determines the distance to the nearest
Pareto-optimal bid.
|
BidPoint |
getKalaiSmorodinsky()
Calculates Kalai-Smorodinsky optimal outcome.
|
BidPoint |
getNash()
Calculates the undiscounted Nash optimal outcome.
|
BidPoint |
getNearestBidPoint(double utilA,
double utilB,
double weightA,
double weightB,
java.util.ArrayList<Bid> excludeList)
Finds the bid with the minimal distance
weightA*DeltaUtilA^2+weightB*DeltaUtilB^2 where DeltaUtilA is the
difference between given utilA and the actual utility of the bid.
|
java.util.List<BidPoint> |
getParetoFrontier()
Returns the Pareto fronier.
|
java.util.List<Bid> |
getParetoFrontierBids()
Method which returns a list of the Pareto efficient bids.
|
double |
ourUtilityOnPareto(double opponentUtility)
Returns the nearest Pareto-optimal bid given the opponent's utility
(agent B).
|
java.lang.String |
toString() |
public java.util.ArrayList<BidPoint> bidPoints
public BidSpace(AbstractUtilitySpace... utilityspaces) throws java.lang.Exception
utilityspaces
- of which the bidding space consists.java.lang.Exception
- is thrown when one of the utility spaces is corrupt.public BidSpace(AbstractUtilitySpace utilityspaceA, AbstractUtilitySpace utilityspaceB, boolean excludeBids) throws java.lang.Exception
utilityspaceA
- utilityspace of agent A.utilityspaceB
- utilityspace of agent B.excludeBids
- if the real bids should be saved or not.java.lang.Exception
- is thrown when one of the utility spaces is corrupt.public BidSpace(AbstractUtilitySpace utilityspaceA, AbstractUtilitySpace utilityspaceB, boolean excludeBids, boolean skipCheckSpaceB) throws java.lang.Exception
utilityspaceA
- utilityspace of agent A.utilityspaceB
- utilityspace of agent B.excludeBids
- if the real bids should be saved or not.skipCheckSpaceB
- skip security checks for the utilityspace of agent B.java.lang.Exception
- if something goes wrong when calculating the utility of a
bid.public java.util.List<BidPoint> getParetoFrontier() throws java.lang.Exception
java.lang.Exception
- if the utility of a bid can not be calculated.public java.util.List<Bid> getParetoFrontierBids() throws java.lang.Exception
java.lang.Exception
- if the utility of a bid cannot be calculatedpublic BidPoint getKalaiSmorodinsky() throws java.lang.Exception
java.lang.Exception
- when the Pareto frontier is invalid.public BidPoint getNash() throws java.lang.Exception
java.lang.Exception
- when the Pareto frontier is invalid.public double ourUtilityOnPareto(double opponentUtility) throws java.lang.Exception
opponentUtility
- the utility for the opponent.java.lang.Exception
- if getPareto fails or other cases, e.g. paretoFrontier
contains utilityB = NaN, which may occur if the opponent
model creating the utility space is corrupt.public java.lang.String toString()
toString
in class java.lang.Object
public BidPoint getNearestBidPoint(double utilA, double utilB, double weightA, double weightB, java.util.ArrayList<Bid> excludeList)
utilA
- the agent-A utility of the point to be found.utilB
- the agent-B utility of the point to be found.weightA
- weight in A direction.weightB
- weight in B direction.excludeList
- Bids to be excluded from the search.public double distanceToNearestParetoBid(BidPoint bid)
bid
- for which the smallest distance to the Pareto frontier is
found.