public class SchwarzTakeTheBestHeuristicUtilitarianConsumerAgentAdoptionDecisionProcess extends UtilitarianConsumerAgentAdoptionDecisionProcess
associatedUtilityFunction
Constructor and Description |
---|
SchwarzTakeTheBestHeuristicUtilitarianConsumerAgentAdoptionDecisionProcess(UtilityFunction associatedUtilityFunction) |
Modifier and Type | Method and Description |
---|---|
boolean |
betterProductAvailable(SimulationContainer simulationContainer,
ConsumerAgent consumerAgent,
Product productToCompare,
java.util.Set<Product> potentialProducts,
double systemTime)
Method to test whether a better product is available.
|
protected double |
calculateUtility(SimulationContainer simulationContainer,
Product product,
ConsumerAgent consumerAgent,
double systemTime) |
Product |
makeProductAdoptionDecision(SimulationContainer simulationContainer,
ConsumerAgent consumerAgent,
java.util.Set<Product> potentialProducts,
double systemTime)
Method to make adoption decision for consumerAgent, adopting the product with the highest utility of potentialProducts at systemTime
|
getUtilityFunctionUsed
public SchwarzTakeTheBestHeuristicUtilitarianConsumerAgentAdoptionDecisionProcess(UtilityFunction associatedUtilityFunction)
public boolean betterProductAvailable(SimulationContainer simulationContainer, ConsumerAgent consumerAgent, Product productToCompare, java.util.Set<Product> potentialProducts, double systemTime) throws antlr.SemanticException
betterProductAvailable
in class ConsumerAgentAdoptionDecisionProcess
simulationContainer
- consumerAgent
- productToCompare
- potentialProducts
- systemTime
- antlr.SemanticException
- will be thrown when something occurs that violates the semantics of the processpublic Product makeProductAdoptionDecision(SimulationContainer simulationContainer, ConsumerAgent consumerAgent, java.util.Set<Product> potentialProducts, double systemTime) throws antlr.SemanticException
makeProductAdoptionDecision
in class ConsumerAgentAdoptionDecisionProcess
simulationContainer
- The container the simulation runs inconsumerAgent
- The consumer agent to adopt a productpotentialProducts
- The set of products out of which a consumer will adoptsystemTime
- The current time of the simulationantlr.SemanticException
- will be thrown when something occurs that violates the semantics of the processprotected double calculateUtility(SimulationContainer simulationContainer, Product product, ConsumerAgent consumerAgent, double systemTime)
calculateUtility
in class UtilitarianConsumerAgentAdoptionDecisionProcess