|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.jscience.architecture.traffic.algorithms.tlc.TLController
org.jscience.architecture.traffic.algorithms.tlc.TC1TLCDestless
public class TC1TLCDestless
This controller will decide it's Q values for the traffic lights according to the traffic situation on the lane connected to the TrafficLight. It will learn how to alter it's outcome by reinforcement learning. Now Optimized 2.0 Now Long-Fixed, so run run run, Forrest! Now doesnt use Destinations
| Nested Class Summary | |
|---|---|
class |
TC1TLCDestless.CountEntry
|
class |
TC1TLCDestless.PEntry
DOCUMENT ME! |
| Nested classes/interfaces inherited from class org.jscience.architecture.traffic.algorithms.tlc.TLController |
|---|
TLController.TLCDialog, TLController.TLCSettings |
| Field Summary | |
|---|---|
protected Node[] |
allnodes
DOCUMENT ME! |
protected java.util.Vector[][][] |
count
DOCUMENT ME! |
protected static float |
gamma
DOCUMENT ME! |
protected static boolean |
green
DOCUMENT ME! |
protected static int |
green_index
DOCUMENT ME! |
protected Infrastructure |
infrastructure
DOCUMENT ME! |
protected int |
num_nodes
DOCUMENT ME! |
protected java.util.Vector[][][] |
pTable
DOCUMENT ME! |
protected float[][][][] |
qTable
DOCUMENT ME! |
protected static float |
random_chance
DOCUMENT ME! |
protected static boolean |
red
DOCUMENT ME! |
protected static int |
red_index
DOCUMENT ME! |
protected static java.lang.String |
shortXMLName
DOCUMENT ME! |
protected TrafficLight[][] |
tls
DOCUMENT ME! |
protected float[][][] |
vTable
DOCUMENT ME! |
| Fields inherited from class org.jscience.architecture.traffic.algorithms.tlc.TLController |
|---|
infra, num_tls, tld, trackNode |
| Constructor Summary | |
|---|---|
TC1TLCDestless(Infrastructure infra)
The constructor for TL controllers |
|
| Method Summary | |
|---|---|
protected float[] |
calcPGR(int tlId,
int pos,
int desId)
|
boolean |
canCreateInstance(java.lang.Class request)
DOCUMENT ME! |
java.lang.Object |
createInstance(java.lang.Class request)
DOCUMENT ME! |
TLDecision[][] |
decideTLs()
Calculates how every traffic light should be switched Per node, per sign the waiting roadusers are passed and per each roaduser the gain is calculated. |
float |
getColearnValue(Sign now,
Sign sign,
Node des,
int pos)
DOCUMENT ME! |
float |
getVValue(Sign sign,
Node des,
int pos)
DOCUMENT ME! |
java.lang.String |
getXMLName()
DOCUMENT ME! |
void |
load(XMLElement myElement,
XMLLoader loader)
DOCUMENT ME! |
protected void |
recalcP(int tlId,
int pos,
int desId,
boolean light,
int tlNewId,
int posNew)
DOCUMENT ME! |
protected void |
recalcQ(int tlId,
int pos,
int desId,
boolean light,
int tlNewId,
int posNew,
PosMov[] posMovs)
DOCUMENT ME! |
protected void |
recalcV(int tlId,
int pos,
int desId)
DOCUMENT ME! |
protected int |
rewardFunction(int tlId,
int pos,
int tlNewId,
int posNew)
DOCUMENT ME! |
void |
saveChilds(XMLSaver saver)
DOCUMENT ME! |
XMLElement |
saveSelf()
DOCUMENT ME! |
void |
setInfrastructure(Infrastructure infra)
DOCUMENT ME! |
void |
showSettings(Controller c)
DOCUMENT ME! |
void |
updateRoaduserMove(Roaduser ru,
Drivelane prevlane,
Sign prevsign,
int prevpos,
Drivelane dlanenow,
Sign signnow,
int posnow,
PosMov[] posMovs,
Drivelane desired)
DOCUMENT ME! |
| Methods inherited from class org.jscience.architecture.traffic.algorithms.tlc.TLController |
|---|
applyGainValues, createDecisionArray, doSettingsDialog, getGainValuesFromDecisionArray, getInfrastructure, getNumTLs, loadSecondStage, reset, setParentName, trackNode |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected static float gamma
protected static final boolean red
protected static final boolean green
protected static final int green_index
protected static final int red_index
protected static final java.lang.String shortXMLName
protected static float random_chance
protected Infrastructure infrastructure
protected TrafficLight[][] tls
protected Node[] allnodes
protected int num_nodes
protected java.util.Vector[][][] count
protected java.util.Vector[][][] pTable
protected float[][][][] qTable
protected float[][][] vTable
| Constructor Detail |
|---|
public TC1TLCDestless(Infrastructure infra)
throws InfraException
infra - model being used.
InfraException - DOCUMENT ME!| Method Detail |
|---|
public void setInfrastructure(Infrastructure infra)
setInfrastructure in class TLControllerinfra - DOCUMENT ME!public TLDecision[][] decideTLs()
decideTLs in class TLControllergld.algo.tlc.TLDecision
public void updateRoaduserMove(Roaduser ru,
Drivelane prevlane,
Sign prevsign,
int prevpos,
Drivelane dlanenow,
Sign signnow,
int posnow,
PosMov[] posMovs,
Drivelane desired)
updateRoaduserMove in class TLControllerru - DOCUMENT ME!prevlane - DOCUMENT ME!prevsign - DOCUMENT ME!prevpos - DOCUMENT ME!dlanenow - DOCUMENT ME!signnow - DOCUMENT ME!posnow - DOCUMENT ME!posMovs - DOCUMENT ME!desired - DOCUMENT ME!
protected void recalcP(int tlId,
int pos,
int desId,
boolean light,
int tlNewId,
int posNew)
tlId - DOCUMENT ME!pos - DOCUMENT ME!desId - DOCUMENT ME!light - DOCUMENT ME!tlNewId - DOCUMENT ME!posNew - DOCUMENT ME!
protected void recalcQ(int tlId,
int pos,
int desId,
boolean light,
int tlNewId,
int posNew,
PosMov[] posMovs)
tlId - DOCUMENT ME!pos - DOCUMENT ME!desId - DOCUMENT ME!light - DOCUMENT ME!tlNewId - DOCUMENT ME!posNew - DOCUMENT ME!posMovs - DOCUMENT ME!
protected void recalcV(int tlId,
int pos,
int desId)
tlId - DOCUMENT ME!pos - DOCUMENT ME!desId - DOCUMENT ME!
protected float[] calcPGR(int tlId,
int pos,
int desId)
protected int rewardFunction(int tlId,
int pos,
int tlNewId,
int posNew)
tlId - DOCUMENT ME!pos - DOCUMENT ME!tlNewId - DOCUMENT ME!posNew - DOCUMENT ME!
public float getVValue(Sign sign,
Node des,
int pos)
sign - DOCUMENT ME!des - DOCUMENT ME!pos - DOCUMENT ME!
public float getColearnValue(Sign now,
Sign sign,
Node des,
int pos)
getColearnValue in interface Colearningnow - DOCUMENT ME!sign - DOCUMENT ME!des - DOCUMENT ME!pos - DOCUMENT ME!
public void showSettings(Controller c)
showSettings in class TLControllerc - DOCUMENT ME!
public void load(XMLElement myElement,
XMLLoader loader)
throws XMLTreeException,
java.io.IOException,
XMLInvalidInputException
load in interface XMLSerializableload in class TLControllermyElement - DOCUMENT ME!loader - DOCUMENT ME!
XMLTreeException - DOCUMENT ME!
java.io.IOException - DOCUMENT ME!
XMLInvalidInputException - DOCUMENT ME!
public void saveChilds(XMLSaver saver)
throws XMLTreeException,
java.io.IOException,
XMLCannotSaveException
saveChilds in interface XMLSerializablesaveChilds in class TLControllersaver - DOCUMENT ME!
XMLTreeException - DOCUMENT ME!
java.io.IOException - DOCUMENT ME!
XMLCannotSaveException - DOCUMENT ME!
public XMLElement saveSelf()
throws XMLCannotSaveException
saveSelf in interface XMLSerializablesaveSelf in class TLControllerXMLCannotSaveException - DOCUMENT ME!public java.lang.String getXMLName()
getXMLName in interface XMLSerializablepublic boolean canCreateInstance(java.lang.Class request)
canCreateInstance in interface InstantiationAssistantrequest - DOCUMENT ME!
public java.lang.Object createInstance(java.lang.Class request)
throws java.lang.ClassNotFoundException,
java.lang.InstantiationException,
java.lang.IllegalAccessException
createInstance in interface InstantiationAssistantrequest - DOCUMENT ME!
java.lang.ClassNotFoundException - DOCUMENT ME!
java.lang.InstantiationException - DOCUMENT ME!
java.lang.IllegalAccessException - DOCUMENT ME!
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||