edu.cuny.tac.aa.policy
Class SmoothSpendingPolicy
java.lang.Object
edu.cuny.tac.aa.GameInfo
edu.cuny.tac.aa.strategy.StrategyModule
edu.cuny.tac.aa.policy.BiddingPolicy
edu.cuny.tac.aa.policy.SpendingPolicy
edu.cuny.tac.aa.policy.FixedSpendingPolicy
edu.cuny.tac.aa.policy.ValuationBasedSpendingPolicy
edu.cuny.tac.aa.policy.CapacityBasedSpendingPolicy
edu.cuny.tac.aa.policy.SmoothSpendingPolicy
- All Implemented Interfaces:
- edu.cuny.util.Parameterizable
- Direct Known Subclasses:
- ProfitabilityBasedSpendingPolicy
public class SmoothSpendingPolicy
- extends CapacityBasedSpendingPolicy
A spending policy that dynamically adjusts the overall spending limit by
examining how much the spendings over a sliding window fluctunate. If the
daily spendings fluctunate very much, the overall spending limit may be too
high; while if the daily spendings constantly reach the limit, the spending
limit may be set too low.
- Version:
- $Revision: 1.14 $
- Author:
- Jinzhong Niu
Fields inherited from class edu.cuny.tac.aa.GameInfo |
BL, CAPACITY, CLICKS, COMPONENT, COMPONENT_NAMES, CONVERSIONS, COST, CPC, CTR, CVR, DAY_DIFF, DV, ERROR, GAME_LENGTH, HIGH_CAPACITY, IMPRESSIONS, INCOME, INDIV_POPULATION_SIZE, LIMIT, LOW_CAPACITY, MANUFACTURER, MANUFACTURER_NAMES, MED_CAPACITY, NUM_OF_COMPONENTS, NUM_OF_MANUFACTURERS, NUM_OF_PRODUCTS, NUM_OF_USER_STAETS, P_AA, POSITION, PR_BST_NStoIS, PR_BST_NStoNS, PR_BURST, PR_F0toF0, PR_F0toF1, PR_F0toNS, PR_F1toF1, PR_F1toF2, PR_F1toNS, PR_F2toF2, PR_F2toNS, PR_IStoF0, PR_IStoF1, PR_IStoF2, PR_IStoIS, PR_IStoNS, PR_STD_NStoIS, PR_STD_NStoNS, PR_TtoNS, PR_TtoT, PROFIT_RATE, PROFIT_UNIT_RATE, PROMOTED, PROMOTED_IMPRESSIONS, REGULAR, REGULAR_IMPRESSIONS, REVENUE, USER_STATE_NAMES, USP |
Method Summary |
protected void |
adjustBaseLimit()
|
void |
handleAdvertiserInfo(edu.umich.eecs.tac.props.AdvertiserInfo advertiserInfo)
|
void |
prepareSpendingLimits(edu.umich.eecs.tac.props.BidBundle bidBundle,
edu.umich.eecs.tac.props.BidBundle valueBundle)
sets the spending limits in the bid bundle. |
void |
setup(edu.cuny.util.ParameterDatabase parameters,
edu.cuny.util.Parameter base)
|
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
P_ALPHA
public static final java.lang.String P_ALPHA
- See Also:
- Constant Field Values
P_WAITING
public static final java.lang.String P_WAITING
- See Also:
- Constant Field Values
alpha
protected double alpha
- the percentage of the spending limit to increase or decrease at a time
startDay
protected int startDay
windowLen
protected int windowLen
waitingDays
protected int waitingDays
daysToWait
protected int daysToWait
SmoothSpendingPolicy
public SmoothSpendingPolicy()
setup
public void setup(edu.cuny.util.ParameterDatabase parameters,
edu.cuny.util.Parameter base)
- Specified by:
setup
in interface edu.cuny.util.Parameterizable
- Overrides:
setup
in class CapacityBasedSpendingPolicy
handleAdvertiserInfo
public void handleAdvertiserInfo(edu.umich.eecs.tac.props.AdvertiserInfo advertiserInfo)
- Overrides:
handleAdvertiserInfo
in class BiddingPolicy
prepareSpendingLimits
public void prepareSpendingLimits(edu.umich.eecs.tac.props.BidBundle bidBundle,
edu.umich.eecs.tac.props.BidBundle valueBundle)
- Description copied from class:
SpendingPolicy
- sets the spending limits in the bid bundle.
- Overrides:
prepareSpendingLimits
in class ValuationBasedSpendingPolicy
adjustBaseLimit
protected void adjustBaseLimit()
toString
public java.lang.String toString()
- Overrides:
toString
in class CapacityBasedSpendingPolicy