public class ExponentialPriceCalculator extends Object implements IOfferGenerator
Constructor and Description |
---|
ExponentialPriceCalculator(double startprice,
double limitprice,
double base)
Create a new exponential price calculator.
|
ExponentialPriceCalculator(double startprice,
double limitprice,
double base,
double variation,
double minstepwidth)
Create a new exponential price calculator.
|
Modifier and Type | Method and Description |
---|---|
Comparable |
getCurrentOffer()
Get the price for the current round of this auction.
|
Comparable |
getLastOffer()
Returns the offer for the last round.
|
Comparable |
getLimitOffer()
Get the min price.
|
int |
getRound()
Get the round.
|
Comparable |
getStartOffer()
Get the start price.
|
static void |
main(String[] args)
Main for testing.
|
void |
setNextRound()
Increase the round.
|
public ExponentialPriceCalculator(double startprice, double limitprice, double base)
startprice
- The start price.limitprice
- The limit price (min or max) for a auction.base
- The base for the exponential function.public ExponentialPriceCalculator(double startprice, double limitprice, double base, double variation, double minstepwidth)
startprice
- the start pricelimitprice
- the minimal price for a successful auctionbase
- The base for the exponential function.variation
- The variation in percentage (0->1) for the increment.
The increment will be used to adapt the increment by multiplying
it with (+/-) a random value that has maximal the variation
percentage influence, e.g. setting 0.1 will cause the increment
being maximally +/-10% changed.minstepwidth
- The minimum step width (a positive value that describes
the minimum price change in each round).public Comparable getCurrentOffer()
getCurrentOffer
in interface IOfferGenerator
public Comparable getLastOffer()
getLastOffer
in interface IOfferGenerator
public Comparable getLimitOffer()
getLimitOffer
in interface IOfferGenerator
public Comparable getStartOffer()
getStartOffer
in interface IOfferGenerator
public int getRound()
getRound
in interface IOfferGenerator
public void setNextRound()
setNextRound
in interface IOfferGenerator
public static void main(String[] args)
Copyright © 2012. All Rights Reserved.