uk.ac.liv.auction.agent
Class StimuliResponseStrategy

java.lang.Object
  extended byuk.ac.liv.auction.agent.AbstractStrategy
      extended byuk.ac.liv.auction.agent.FixedQuantityStrategyImpl
          extended byuk.ac.liv.auction.agent.AdaptiveStrategyImpl
              extended byuk.ac.liv.auction.agent.DiscreteLearnerStrategy
                  extended byuk.ac.liv.auction.agent.StimuliResponseStrategy
All Implemented Interfaces:
AdaptiveStrategy, AuctionEventListener, java.lang.Cloneable, FixedQuantityStrategy, Parameterizable, Prototypeable, Resetable, java.io.Serializable, Strategy

public class StimuliResponseStrategy
extends DiscreteLearnerStrategy
implements java.io.Serializable

A trading strategy that uses a stimuli-response learning algorithm, such as the Roth-Erev algorithm, to adapt its trading behaviour in successive auction rounds by using the agent's profits in the last round as a reward signal.

Parameters

base.learner
classname, inherits StimuliResponseLearner
(the learning algorithm to use)

Version:
$Revision: 1.31 $
Author:
Steve Phelps
See Also:
Serialized Form

Field Summary
protected  StimuliResponseLearner learner
          The learning algorithm to use.
static java.lang.String P_LEARNER
           
 
Fields inherited from class uk.ac.liv.auction.agent.DiscreteLearnerStrategy
markupScale
 
Fields inherited from class uk.ac.liv.auction.agent.AbstractStrategy
agent, auction, currentShout
 
Constructor Summary
StimuliResponseStrategy()
           
StimuliResponseStrategy(AbstractTradingAgent agent)
           
 
Method Summary
 int act()
          Generate an action from the learning algorithm.
 Learner getLearner()
           
 void learn(Auction auction)
          Perform learning.
 java.lang.Object protoClone()
           
 void reset()
          Reinitialise our state to the original settings.
 void setLearner(Learner learner)
           
 void setup(ec.util.ParameterDatabase parameters, ec.util.Parameter base)
          Initialise this object from a parameter database.
 java.lang.String toString()
           
 
Methods inherited from class uk.ac.liv.auction.agent.DiscreteLearnerStrategy
endOfRound, getMarkupScale, initialise, modifyShout, setMarkupScale
 
Methods inherited from class uk.ac.liv.auction.agent.FixedQuantityStrategyImpl
determineQuantity, getQuantity, setQuantity
 
Methods inherited from class uk.ac.liv.auction.agent.AbstractStrategy
eventOccurred, getAgent, modifyShout, setAgent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface uk.ac.liv.auction.agent.Strategy
determineQuantity, modifyShout, setAgent
 
Methods inherited from interface uk.ac.liv.auction.core.AuctionEventListener
eventOccurred
 

Field Detail

learner

protected StimuliResponseLearner learner
The learning algorithm to use.


P_LEARNER

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

StimuliResponseStrategy

public StimuliResponseStrategy(AbstractTradingAgent agent)

StimuliResponseStrategy

public StimuliResponseStrategy()
Method Detail

setup

public void setup(ec.util.ParameterDatabase parameters,
                  ec.util.Parameter base)
Description copied from interface: Parameterizable
Initialise this object from a parameter database.

Specified by:
setup in interface Parameterizable
Overrides:
setup in class DiscreteLearnerStrategy

protoClone

public java.lang.Object protoClone()
Specified by:
protoClone in interface Prototypeable
Overrides:
protoClone in class AbstractStrategy

act

public int act()
Description copied from class: DiscreteLearnerStrategy
Generate an action from the learning algorithm.

Specified by:
act in class DiscreteLearnerStrategy

learn

public void learn(Auction auction)
Description copied from class: DiscreteLearnerStrategy
Perform learning.

Specified by:
learn in class DiscreteLearnerStrategy

reset

public void reset()
Description copied from interface: Resetable
Reinitialise our state to the original settings.

Specified by:
reset in interface Resetable
Overrides:
reset in class AbstractStrategy

getLearner

public Learner getLearner()
Specified by:
getLearner in interface AdaptiveStrategy

setLearner

public void setLearner(Learner learner)
Specified by:
setLearner in interface AdaptiveStrategy

toString

public java.lang.String toString()