Class GSVMBidder
- java.lang.Object
-
- org.spectrumauctions.sats.core.model.SATSBidder
-
- org.spectrumauctions.sats.core.model.gsvm.GSVMBidder
-
- All Implemented Interfaces:
java.io.Serializable,org.marketdesignresearch.mechlib.core.bidder.Bidder,org.marketdesignresearch.mechlib.core.bidder.valuefunction.ValueFunction,org.marketdesignresearch.mechlib.instrumentation.MipInstrumentationable
public final class GSVMBidder extends SATSBidder
- Author:
- Fabio Isler
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.spectrumauctions.sats.core.model.SATSBidder
DEFAULT_DEMAND_QUERY_EPSILON, DEFAULT_DEMAND_QUERY_TIME_LIMIT
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.math.BigDecimalcalculateValue(org.marketdesignresearch.mechlib.core.Bundle bundle)Returns the value this bidder has for a specific bundle.SATSBidderdrawSimilarBidder(RNGSupplier rngSupplier)booleanequals(java.lang.Object o)org.marketdesignresearch.mechlib.core.allocationlimits.AllocationLimitgetAllocationLimit()java.util.Map<java.lang.Long,java.math.BigDecimal>getBaseValues()java.util.LinkedHashSet<org.marketdesignresearch.mechlib.core.Bundle>getBestBundles(org.marketdesignresearch.mechlib.core.price.Prices prices, int maxNumberOfBundles, boolean allowNegative)intgetBidderPosition()java.lang.StringgetDescription()<T extends BiddingLanguage>
TgetValueFunction(java.lang.Class<T> clazz, RNGSupplier rngSupplier)GSVMWorldgetWorld()inthashCode()voidrefreshReference(World world)To prevent from creating too many identical world instances, worlds are not serialized and deserialized with the bidder
As a temporary solution, the world instance is re-added after deserialization by calling this method.
This method will be removed in a later version and be done automatically during deserialization.voidsetAllocationLimit(org.marketdesignresearch.mechlib.core.allocationlimits.AllocationLimit allocationLimit)-
Methods inherited from class org.spectrumauctions.sats.core.model.SATSBidder
calculateValues, canEqual, getId, getLongId, getMipInstrumentation, getName, getPopulation, getSetup, getSetupType, getShortDescription, getStrategy, getValue, getValueFunction, getValueFunction, getWorldId, setMipInstrumentation, setStrategy, store, toString
-
-
-
-
Method Detail
-
calculateValue
public java.math.BigDecimal calculateValue(org.marketdesignresearch.mechlib.core.Bundle bundle)
Description copied from class:SATSBidderReturns the value this bidder has for a specific bundle.- Specified by:
calculateValuein classSATSBidder- Parameters:
bundle- the bundle for which the value is asked- Returns:
- bidder specific value for this bundle
-
getBidderPosition
public int getBidderPosition()
-
getValueFunction
public <T extends BiddingLanguage> T getValueFunction(java.lang.Class<T> clazz, RNGSupplier rngSupplier) throws UnsupportedBiddingLanguageException
- Specified by:
getValueFunctionin classSATSBidder- Throws:
UnsupportedBiddingLanguageException
-
getWorld
public GSVMWorld getWorld()
- Specified by:
getWorldin classSATSBidder- Returns:
- World to which this bidder belongs. The implementing Bidder class, overriding this method, should return a world type corresponding to the specific model.
-
refreshReference
public void refreshReference(World world)
Description copied from class:SATSBidderTo prevent from creating too many identical world instances, worlds are not serialized and deserialized with the bidder
As a temporary solution, the world instance is re-added after deserialization by calling this method.
This method will be removed in a later version and be done automatically during deserialization.- Specified by:
refreshReferencein classSATSBidder
-
drawSimilarBidder
public SATSBidder drawSimilarBidder(RNGSupplier rngSupplier)
- Specified by:
drawSimilarBidderin classSATSBidder
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin classSATSBidder
-
hashCode
public int hashCode()
- Overrides:
hashCodein classSATSBidder
-
getBaseValues
public java.util.Map<java.lang.Long,java.math.BigDecimal> getBaseValues()
-
getBestBundles
public java.util.LinkedHashSet<org.marketdesignresearch.mechlib.core.Bundle> getBestBundles(org.marketdesignresearch.mechlib.core.price.Prices prices, int maxNumberOfBundles, boolean allowNegative)
-
getAllocationLimit
public org.marketdesignresearch.mechlib.core.allocationlimits.AllocationLimit getAllocationLimit()
-
getDescription
public java.lang.String getDescription()
- Specified by:
getDescriptionin interfaceorg.marketdesignresearch.mechlib.core.bidder.Bidder- Overrides:
getDescriptionin classSATSBidder
-
setAllocationLimit
public void setAllocationLimit(org.marketdesignresearch.mechlib.core.allocationlimits.AllocationLimit allocationLimit)
-
-