|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.iastate.jrelm.core.BasicLearnerManager
public class BasicLearnerManager
Manages the collection of ReinforcementLearners in a simulation. Responsible for communicating parameter settings from a settings editor to individual leaners.
Nested Class Summary | |
---|---|
static class |
BasicLearnerManager.RegistrationEvent
|
static interface |
BasicLearnerManager.RegistrationListener
|
Field Summary | |
---|---|
protected java.util.Hashtable<java.lang.Class,java.util.Vector<JReLMAgent>> |
agentGrouping
|
protected java.util.Hashtable<java.lang.String,JReLMAgent> |
agentTable
|
protected int |
anonLearnersCount
|
protected java.util.ArrayList<BasicLearnerManager.RegistrationListener> |
listenerList
|
protected BasicSettingsEditor |
settings
|
Constructor Summary | |
---|---|
BasicLearnerManager()
|
|
BasicLearnerManager(java.util.ArrayList<JReLMAgent> agentList)
|
|
BasicLearnerManager(ReinforcementLearner[] learnerList)
|
Method Summary | |
---|---|
void |
addRegistrationListener(BasicLearnerManager.RegistrationListener listener)
|
JReLMAgent |
getAgent(java.lang.String agentID)
Retrieve an agent with the given ID. |
java.util.Hashtable<java.lang.Class,java.util.Vector<JReLMAgent>> |
getAgentGrouping()
Retrieves a grouping of agents classified according to the class of their learners. |
java.util.ArrayList<java.lang.String> |
getAgentIDList()
Get a list of the String identifiers for all registered agents. |
java.util.Hashtable<java.lang.String,JReLMAgent> |
getAgentRegistery()
Retrieve the whole agent registery. |
java.util.Vector<JReLMAgent> |
getGroup(java.lang.Class learnerClass)
Retrieves a group of agents that all use the same reinforcement learning algorithm as indicated by the given class of ReinforcementLearner. |
protected void |
groupAgent(JReLMAgent agent)
Agents are grouped according to their learning algorithm as indicated by the type of RLParameters their learner uses. |
protected void |
init()
|
java.lang.String |
isRegistered(JReLMAgent agent)
|
java.lang.String |
isRegistered(ReinforcementLearner learner)
Check to see if a given ReinforcementLearner is already regisitered with this manager. |
protected void |
notifyListeners(java.lang.String[] ids,
BasicLearnerManager.RegistrationEvent event)
|
void |
printAgentGroups()
|
boolean |
register(java.util.Collection<JReLMAgent> agents)
Register a batch of JReLMAgents given as a Collection. |
boolean |
register(JReLMAgent agent)
Register a single JReLMAgent. |
java.lang.String |
register(ReinforcementLearner learner)
Register a bare ReinforcementLearner without a given ID. |
boolean |
register(java.lang.String id,
ReinforcementLearner learner)
Register a ReinforcementLearner under a given id |
protected void |
ungroupAgent(JReLMAgent agent)
Agents are grouped according to their learning algorithm as indicated by the type of RLParameters their learner uses. |
boolean |
unregister(JReLMAgent agent)
|
boolean |
unregister(ReinforcementLearner learner)
Attempts to unregister the given ReinforcementLearner. |
boolean |
unregister(java.lang.String id)
|
boolean |
updateSettings(java.lang.Class learnerType,
RLParameters params)
Update the settings for all agents in the algortithm group indicated by the given Class of ReinforcementLearner. |
boolean |
updateSettings(java.lang.String id,
RLParameters params)
Update the learning parameter settings for the agent specified by 'id'. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected BasicSettingsEditor settings
protected java.util.Hashtable<java.lang.String,JReLMAgent> agentTable
protected java.util.Hashtable<java.lang.Class,java.util.Vector<JReLMAgent>> agentGrouping
protected int anonLearnersCount
protected java.util.ArrayList<BasicLearnerManager.RegistrationListener> listenerList
Constructor Detail |
---|
public BasicLearnerManager()
public BasicLearnerManager(ReinforcementLearner[] learnerList)
public BasicLearnerManager(java.util.ArrayList<JReLMAgent> agentList)
Method Detail |
---|
protected void init()
public java.lang.String isRegistered(ReinforcementLearner learner)
public java.lang.String isRegistered(JReLMAgent agent)
public java.lang.String register(ReinforcementLearner learner)
learner
- - the bare learner to register
public boolean register(java.lang.String id, ReinforcementLearner learner)
id
- - the String indentifier that the learner will be registered under.learner
-
public boolean register(JReLMAgent agent)
agent
- - the agent to register
public boolean register(java.util.Collection<JReLMAgent> agents)
agents
-
public boolean unregister(ReinforcementLearner learner)
learner
- - remove this ReinforcementLearner from the
registry
public boolean unregister(JReLMAgent agent)
public boolean unregister(java.lang.String id)
protected void groupAgent(JReLMAgent agent)
protected void ungroupAgent(JReLMAgent agent)
public boolean updateSettings(java.lang.String id, RLParameters params)
id
- - the String identifier for the desired agent
public boolean updateSettings(java.lang.Class learnerType, RLParameters params)
learnerType
- - Class of ReinforcementLearner indicating which group of agents should
receive these settingsparams
- - the new learning parameter settings to use for all agents in the
group
public JReLMAgent getAgent(java.lang.String agentID)
agentID
- - the ID of the desired agent
public java.util.ArrayList<java.lang.String> getAgentIDList()
public java.util.Hashtable<java.lang.String,JReLMAgent> getAgentRegistery()
public java.util.Vector<JReLMAgent> getGroup(java.lang.Class learnerClass)
learnerClass
-
public java.util.Hashtable<java.lang.Class,java.util.Vector<JReLMAgent>> getAgentGrouping()
public void printAgentGroups()
public void addRegistrationListener(BasicLearnerManager.RegistrationListener listener)
protected void notifyListeners(java.lang.String[] ids, BasicLearnerManager.RegistrationEvent event)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |