edu.cuny.cat.market.charging
Class AdaptiveChargingPolicy

java.lang.Object
  extended by edu.cuny.cat.market.AuctioneerPolicy
      extended by edu.cuny.cat.market.charging.ChargingPolicy
          extended by edu.cuny.cat.market.charging.AdaptiveChargingPolicy
All Implemented Interfaces:
AuctionEventListener, edu.cuny.config.param.Parameterizable, edu.cuny.obj.Resetable
Direct Known Subclasses:
BestResponseChargingPolicy, MomentumChargingPolicy, ShareBalancingChargingPolicy

public abstract class AdaptiveChargingPolicy
extends ChargingPolicy

An adaptive charging policy that uses learners to determine charges..

If a learner for some type of charge is not provided, the charging becomes fixed at the initial rate.

Parameters

base.registration
double
(initial charge on registration)
base.registration.learner
name of class, inheriting MimicryLearner
(learner that adapts registration charge; can be null)
base.registration.scale
double
(level of perturbation on registration charge)
base.information
double
(initial charge on information)
base.information.learner
name of class, inheriting MimicryLearner
(learner that adapts information charge; can be null)
base.information.scale
double
(level of perturbation on information charge)
base.shout
double
(initial charge on shout)
base.shout.learner
name of class, inheriting MimicryLearner
(learner that adapts shout charge; can be null)
base.shout.scale
double
(level of perturbation on shout charge)
base.transaction
double
(initial charge on transaction)
base.transaction.learner
name of class, inheriting MimicryLearner
(learner that adapts transaction charge; can be null)
base.transaction.scale
double
(level of perturbation on transaction charge)
base.profit
double [0,1]
(initial charge on profit)
base.profit.learner
name of class, inheriting MimicryLearner
(learner that adapts profit charge; can be null)
base.profit.scale
double
(level of perturbation on profit charge)

Default Base

adaptive_charging

Version:
$Revision: 1.12 $
Author:
Jinzhong Niu

Field Summary
protected  double[] initialFees
          the initial charges to impose
protected  edu.cuny.ai.learning.MimicryLearner[] learners
          learning algorithms to adapt different types of charges
static java.lang.String P_DEF_BASE
           
static java.lang.String P_LEARNER
           
static java.lang.String P_SCALE
           
protected  cern.jet.random.AbstractContinousDistribution[] perturbations
          small random amounts added to adapted charges
protected  double[] scales
          the speed to adapt charges
 
Fields inherited from class edu.cuny.cat.market.charging.ChargingPolicy
FEE_TYPES, fees, FLAT, FRACTIONAL, INFORMATION_INDEX, MAXES, MINES, P_FEES, PROFIT_INDEX, REGISTRATION_INDEX, SHOUT_INDEX, TRANSACTION_INDEX
 
Fields inherited from class edu.cuny.cat.market.AuctioneerPolicy
auctioneer
 
Constructor Summary
AdaptiveChargingPolicy()
           
 
Method Summary
 void initialize()
          initializes after parameters are set via either setters, constructors, or parameter files.
 void reset()
          resets the state to be the same as the policy is created and initialized.
 void setup(edu.cuny.config.param.ParameterDatabase parameters, edu.cuny.config.param.Parameter base)
           
 java.lang.String toString()
           
 
Methods inherited from class edu.cuny.cat.market.charging.ChargingPolicy
adjustFees, getFees, getInformationFee, getProfitFee, getRegistrationFee, getShoutFee, getTransactionFee
 
Methods inherited from class edu.cuny.cat.market.AuctioneerPolicy
eventOccurred, getAuctioneer, setAuctioneer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

P_DEF_BASE

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

P_LEARNER

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

P_SCALE

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

learners

protected edu.cuny.ai.learning.MimicryLearner[] learners
learning algorithms to adapt different types of charges


perturbations

protected cern.jet.random.AbstractContinousDistribution[] perturbations
small random amounts added to adapted charges


scales

protected double[] scales
the speed to adapt charges


initialFees

protected double[] initialFees
the initial charges to impose

Constructor Detail

AdaptiveChargingPolicy

public AdaptiveChargingPolicy()
Method Detail

setup

public void setup(edu.cuny.config.param.ParameterDatabase parameters,
                  edu.cuny.config.param.Parameter base)
Specified by:
setup in interface edu.cuny.config.param.Parameterizable
Overrides:
setup in class AuctioneerPolicy

initialize

public void initialize()
Description copied from class: AuctioneerPolicy
initializes after parameters are set via either setters, constructors, or parameter files.

Overrides:
initialize in class AuctioneerPolicy

reset

public void reset()
Description copied from class: AuctioneerPolicy
resets the state to be the same as the policy is created and initialized.

Specified by:
reset in interface edu.cuny.obj.Resetable
Overrides:
reset in class AuctioneerPolicy

toString

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