edu.cuny.tac.aa.policy
Class AdaptivePricingPolicy

java.lang.Object
  extended by edu.cuny.tac.aa.GameInfo
      extended by edu.cuny.tac.aa.strategy.StrategyModule
          extended by edu.cuny.tac.aa.policy.BiddingPolicy
              extended by edu.cuny.tac.aa.policy.PricingPolicy
                  extended by edu.cuny.tac.aa.policy.TruthfulPricingPolicy
                      extended by edu.cuny.tac.aa.policy.LinearPricingPolicy
                          extended by edu.cuny.tac.aa.policy.AdaptivePricingPolicy
All Implemented Interfaces:
edu.cuny.util.Parameterizable

public class AdaptivePricingPolicy
extends LinearPricingPolicy

A pricing policy that extends LinearPricingPolicy and tries higher bids when the bids are not able to

Version:
$Revision: 1.14 $
Author:
Jinzhong Niu

Field Summary
protected  double alpha
           
protected  double beta
           
protected  DailyRecord dailyRecord
           
protected  java.util.Map<edu.umich.eecs.tac.props.Query,edu.cuny.tac.aa.policy.AdaptivePricingPolicy.QueryEvaluator> evaluators
           
static int ibid
           
static int iclicks
           
static int iconversions
           
static int ictr
           
static int icvr
           
static int iimpressions
           
static int iincome
           
static int ilimit
           
static int iposition
           
static int ippc
           
static int iprofitrate
           
static int iprofitunitrate
           
static int ivalue
           
protected  edu.cuny.ai.learning.MimicryLearner learnerTemplate
           
protected static org.apache.log4j.Logger logger
           
static int num
           
static java.lang.String P_ALPHA
           
static java.lang.String P_BETA
           
static java.lang.String P_LEARNER
           
static java.lang.String P_STARTA
           
static java.lang.String P_STARTB
           
static java.lang.String P_WINDOW
           
protected  java.util.Set<edu.umich.eecs.tac.props.Query> querySpace
           
protected  double starta
          used instead of LinearPricingPolicy.a for the first two days
protected  double startb
          used instead of LinearPricingPolicy.b for the first two days
protected  int window
           
 
Fields inherited from class edu.cuny.tac.aa.policy.LinearPricingPolicy
a, b, P_A, P_B
 
Fields inherited from class edu.cuny.tac.aa.policy.BiddingPolicy
Formatter, strategy
 
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
 
Constructor Summary
AdaptivePricingPolicy()
           
AdaptivePricingPolicy(double a, double b)
           
 
Method Summary
protected  double calculatePrice(double value)
          calculates the bid price as a linear function of the valuation.
 void handleAdvertiserInfo(edu.umich.eecs.tac.props.AdvertiserInfo advertiserInfo)
          initializes when a game started.
 void preparePrices(edu.umich.eecs.tac.props.BidBundle bidBundle, edu.umich.eecs.tac.props.BidBundle valueBundle)
           
 void processDailyRecord(int game, int reportDay, DailyRecord dailyRecord)
           
protected  void setBid(edu.umich.eecs.tac.props.BidBundle bidBundle, edu.umich.eecs.tac.props.BidBundle valueBundle, edu.umich.eecs.tac.props.Query query)
           
 void setup(edu.cuny.util.ParameterDatabase parameters, edu.cuny.util.Parameter base)
           
 java.lang.String toString()
           
 
Methods inherited from class edu.cuny.tac.aa.policy.LinearPricingPolicy
getA, getB, setA, setB
 
Methods inherited from class edu.cuny.tac.aa.policy.BiddingPolicy
getStrategy, handleBankStatus, handleQueryReport, handleSalesReport, handleSimulationStatus, handleStartInfo, setStrategy
 
Methods inherited from class edu.cuny.tac.aa.GameInfo
isHighCapacity, isLowCapacity, isMedCapacity
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

logger

protected static org.apache.log4j.Logger logger

P_LEARNER

public static final java.lang.String P_LEARNER
See Also:
Constant Field Values

P_ALPHA

public static final java.lang.String P_ALPHA
See Also:
Constant Field Values

P_WINDOW

public static final java.lang.String P_WINDOW
See Also:
Constant Field Values

P_BETA

public static final java.lang.String P_BETA
See Also:
Constant Field Values

P_STARTA

public static final java.lang.String P_STARTA
See Also:
Constant Field Values

P_STARTB

public static final java.lang.String P_STARTB
See Also:
Constant Field Values

learnerTemplate

protected edu.cuny.ai.learning.MimicryLearner learnerTemplate

starta

protected double starta
used instead of LinearPricingPolicy.a for the first two days


startb

protected double startb
used instead of LinearPricingPolicy.b for the first two days


window

protected int window

alpha

protected double alpha

beta

protected double beta

evaluators

protected java.util.Map<edu.umich.eecs.tac.props.Query,edu.cuny.tac.aa.policy.AdaptivePricingPolicy.QueryEvaluator> evaluators

querySpace

protected java.util.Set<edu.umich.eecs.tac.props.Query> querySpace

dailyRecord

protected DailyRecord dailyRecord

ictr

public static final int ictr
See Also:
Constant Field Values

icvr

public static final int icvr
See Also:
Constant Field Values

ibid

public static final int ibid
See Also:
Constant Field Values

ivalue

public static final int ivalue
See Also:
Constant Field Values

ippc

public static final int ippc
See Also:
Constant Field Values

iposition

public static final int iposition
See Also:
Constant Field Values

iimpressions

public static final int iimpressions
See Also:
Constant Field Values

iconversions

public static final int iconversions
See Also:
Constant Field Values

iclicks

public static final int iclicks
See Also:
Constant Field Values

iincome

public static final int iincome
See Also:
Constant Field Values

ilimit

public static final int ilimit
See Also:
Constant Field Values

iprofitrate

public static final int iprofitrate
See Also:
Constant Field Values

iprofitunitrate

public static final int iprofitunitrate
See Also:
Constant Field Values

num

public static final int num
See Also:
Constant Field Values
Constructor Detail

AdaptivePricingPolicy

public AdaptivePricingPolicy()

AdaptivePricingPolicy

public AdaptivePricingPolicy(double a,
                             double b)
Method Detail

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 LinearPricingPolicy

calculatePrice

protected double calculatePrice(double value)
Description copied from class: LinearPricingPolicy
calculates the bid price as a linear function of the valuation.

Overrides:
calculatePrice in class LinearPricingPolicy
Parameters:
value - the valuation.
Returns:
the price to bid.

handleAdvertiserInfo

public void handleAdvertiserInfo(edu.umich.eecs.tac.props.AdvertiserInfo advertiserInfo)
initializes when a game started.

Overrides:
handleAdvertiserInfo in class BiddingPolicy

processDailyRecord

public void processDailyRecord(int game,
                               int reportDay,
                               DailyRecord dailyRecord)
Overrides:
processDailyRecord in class BiddingPolicy

preparePrices

public void preparePrices(edu.umich.eecs.tac.props.BidBundle bidBundle,
                          edu.umich.eecs.tac.props.BidBundle valueBundle)
Overrides:
preparePrices in class TruthfulPricingPolicy
Parameters:
bidBundle -

setBid

protected void setBid(edu.umich.eecs.tac.props.BidBundle bidBundle,
                      edu.umich.eecs.tac.props.BidBundle valueBundle,
                      edu.umich.eecs.tac.props.Query query)

toString

public java.lang.String toString()
Overrides:
toString in class LinearPricingPolicy