public class EMinMaxPolicy extends MAQSourcePolicy
Policy.ActionProb, Policy.GroundedAnnotatedAction, Policy.PolicyUndefinedException| Modifier and Type | Field and Description |
|---|---|
protected double |
epsilon
The epsilon parameter specifying how often random joint actions are returned
|
protected MultiAgentQSourceProvider |
qSourceProvider
The multi-agent q-source provider
|
protected java.lang.String |
targetAgentQName
The target agent who is maximizing action selection
|
agentsInJointPolicy, agentsSyncrhonizedSoFar, lastSyncedState, lastSynchronizedJointActionannotateOptionDecomposition, evaluateDecomposesOptions| Constructor and Description |
|---|
EMinMaxPolicy(double epsilon)
Initializes for a given epsilon value; the fraction of the time a random joint action is selected
|
EMinMaxPolicy(MultiAgentQLearning actingAgent,
double epsilon)
Initializes for a given Q-learning agent and epsilon value.
|
| Modifier and Type | Method and Description |
|---|---|
JointPolicy |
copy()
Creates a copy of this joint policy and returns it.
|
AbstractGroundedAction |
getAction(State s)
This method will return an action sampled by the policy for the given state.
|
java.util.List<Policy.ActionProb> |
getActionDistributionForState(State s)
This method will return action probability distribution defined by the policy.
|
boolean |
isDefinedFor(State s)
Specifies whether this policy is defined for the input state.
|
boolean |
isStochastic()
Indicates whether the policy is stochastic or deterministic.
|
void |
setQSourceProvider(MultiAgentQSourceProvider provider)
Sets the
MultiAgentQSourceProvider that will be used to define this object's joint policy. |
void |
setTargetAgent(java.lang.String agentName)
Sets the target privledged agent from which this joint policy is defined.
|
getAgentsInJointPolicy, getAgentSynchronizedActionSelection, getAllJointActions, setAgentsInJointPolicy, setAgentsInJointPolicy, setAgentsInJointPolicyFromWorldevaluateBehavior, evaluateBehavior, evaluateBehavior, evaluateBehavior, evaluateBehavior, evaluateMethodsShouldAnnotateOptionDecomposition, evaluateMethodsShouldDecomposeOption, followAndRecordPolicy, followAndRecordPolicy, getDeterministicPolicy, getProbOfAction, getProbOfActionGivenDistribution, getProbOfActionGivenDistribution, sampleFromActionDistributionprotected MultiAgentQSourceProvider qSourceProvider
protected double epsilon
protected java.lang.String targetAgentQName
public EMinMaxPolicy(double epsilon)
epsilon - the espilon parameterpublic EMinMaxPolicy(MultiAgentQLearning actingAgent, double epsilon)
actingAgent - the Q-learning agentepsilon - the epsilon parameterpublic void setTargetAgent(java.lang.String agentName)
JointPolicysetTargetAgent in class JointPolicyagentName - the name of the target agent.public JointPolicy copy()
JointPolicycopy in class JointPolicypublic AbstractGroundedAction getAction(State s)
Policypublic java.util.List<Policy.ActionProb> getActionDistributionForState(State s)
PolicygetActionDistributionForState in class Policys - the state for which an action distribution should be returnedpublic boolean isStochastic()
PolicyisStochastic in class Policypublic boolean isDefinedFor(State s)
PolicyisDefinedFor in class Policys - the input state to test for whether this policy is definedState s, false otherwise.public void setQSourceProvider(MultiAgentQSourceProvider provider)
MAQSourcePolicyMultiAgentQSourceProvider that will be used to define this object's joint policy.setQSourceProvider in class MAQSourcePolicyprovider - the MultiAgentQSourceProvider that will be used to define this object's joint policy.