|
|||||||||
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.ACGJ2
public class ACGJ2
This algorithm will, when it starts, handle like Longest Queue, but it can do more things: 1. It prevents infinite waiting of Roadusers 2. It tries to create green waves between busy nodes. The green_wave-factor is editable as a parameter. 3. The algorithm can be stimulated to develop patterns in TL-configuration-settings, therefore it remembers the last 100 configurations. This pattern factor is also editable 4. This algorithm has a keep green factor. This editable factor is an extra weight to keep the lights green, that were green in the previous cycle.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class org.jscience.architecture.traffic.algorithms.tlc.TLController |
---|
TLController.TLCDialog, TLController.TLCSettings |
Field Summary | |
---|---|
protected org.jscience.architecture.traffic.algorithms.tlc.ACGJ2.NextCycles |
bestSoFar
DOCUMENT ME! |
protected static float |
GREEN_WAVE_FACTOR
DOCUMENT ME! |
protected static float |
KEEP_GREEN_FACTOR
DOCUMENT ME! |
protected static float |
LOOK_AHEAD_FACTOR
DOCUMENT ME! |
protected org.jscience.architecture.traffic.algorithms.tlc.ACGJ2.NodeInfo[] |
ndinf
DOCUMENT ME! |
protected static float |
PAT_FACTOR
DOCUMENT ME! |
protected static java.lang.String |
shortXMLName
DOCUMENT ME! |
Fields inherited from class org.jscience.architecture.traffic.algorithms.tlc.TLController |
---|
infra, num_tls, tld, trackNode |
Constructor Summary | |
---|---|
ACGJ2(Infrastructure i)
Creates a new ACGJ2 object. |
Method Summary | |
---|---|
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 |
java.lang.String |
getXMLName()
DOCUMENT ME! |
void |
load(XMLElement myElement,
XMLLoader loader)
DOCUMENT ME! |
void |
loadSecondStage(java.util.Dictionary dictionaries)
DOCUMENT ME! |
void |
loadThirdStage(java.util.Dictionary dictionaries)
DOCUMENT ME! |
void |
saveChilds(XMLSaver saver)
DOCUMENT ME! |
XMLElement |
saveSelf()
DOCUMENT ME! |
void |
setInfrastructure(Infrastructure i)
DOCUMENT ME! |
void |
showSettings(Controller c)
DOCUMENT ME! |
org.jscience.architecture.traffic.algorithms.tlc.ACGJ2.NodeInfo[] |
sortNodeInfo(org.jscience.architecture.traffic.algorithms.tlc.ACGJ2.NodeInfo[] ndi)
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, reset, setParentName, trackNode |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.jscience.architecture.traffic.xml.XMLSerializable |
---|
setParentName |
Field Detail |
---|
protected static final java.lang.String shortXMLName
protected static float PAT_FACTOR
protected static float KEEP_GREEN_FACTOR
protected static float GREEN_WAVE_FACTOR
protected static float LOOK_AHEAD_FACTOR
protected org.jscience.architecture.traffic.algorithms.tlc.ACGJ2.NodeInfo[] ndinf
protected org.jscience.architecture.traffic.algorithms.tlc.ACGJ2.NextCycles bestSoFar
Constructor Detail |
---|
public ACGJ2(Infrastructure i)
i
- DOCUMENT ME!Method Detail |
---|
public void setInfrastructure(Infrastructure i)
setInfrastructure
in class TLController
i
- DOCUMENT ME!public TLDecision[][] decideTLs()
decideTLs
in class TLController
gld.algo.tlc.TLDecision
public org.jscience.architecture.traffic.algorithms.tlc.ACGJ2.NodeInfo[] sortNodeInfo(org.jscience.architecture.traffic.algorithms.tlc.ACGJ2.NodeInfo[] ndi)
ndi
- DOCUMENT ME!
public void updateRoaduserMove(Roaduser _ru, Drivelane _prevlane, Sign _prevsign, int _prevpos, Drivelane _dlanenow, Sign _signnow, int _posnow, PosMov[] posMovs, Drivelane desired)
updateRoaduserMove
in class TLController
_ru
- 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!public void showSettings(Controller c)
showSettings
in class TLController
c
- DOCUMENT ME!public void load(XMLElement myElement, XMLLoader loader) throws XMLTreeException, java.io.IOException, XMLInvalidInputException
load
in interface XMLSerializable
load
in class TLController
myElement
- DOCUMENT ME!loader
- DOCUMENT ME!
XMLTreeException
- DOCUMENT ME!
java.io.IOException
- DOCUMENT ME!
XMLInvalidInputException
- DOCUMENT ME!public XMLElement saveSelf() throws XMLCannotSaveException
saveSelf
in interface XMLSerializable
saveSelf
in class TLController
XMLCannotSaveException
- DOCUMENT ME!public void saveChilds(XMLSaver saver) throws XMLTreeException, java.io.IOException, XMLCannotSaveException
saveChilds
in interface XMLSerializable
saveChilds
in class TLController
saver
- DOCUMENT ME!
XMLTreeException
- DOCUMENT ME!
java.io.IOException
- DOCUMENT ME!
XMLCannotSaveException
- DOCUMENT ME!public java.lang.String getXMLName()
getXMLName
in interface XMLSerializable
public void loadSecondStage(java.util.Dictionary dictionaries) throws XMLInvalidInputException, XMLTreeException
loadSecondStage
in interface TwoStageLoader
loadSecondStage
in class TLController
dictionaries
- DOCUMENT ME!
XMLInvalidInputException
- DOCUMENT ME!
XMLTreeException
- DOCUMENT ME!public void loadThirdStage(java.util.Dictionary dictionaries) throws XMLInvalidInputException, XMLTreeException
dictionaries
- DOCUMENT ME!
XMLInvalidInputException
- DOCUMENT ME!
XMLTreeException
- DOCUMENT ME!public java.lang.Object createInstance(java.lang.Class request) throws java.lang.ClassNotFoundException, java.lang.InstantiationException, java.lang.IllegalAccessException
createInstance
in interface InstantiationAssistant
request
- DOCUMENT ME!
java.lang.ClassNotFoundException
- DOCUMENT ME!
java.lang.InstantiationException
- DOCUMENT ME!
java.lang.IllegalAccessException
- DOCUMENT ME!public boolean canCreateInstance(java.lang.Class request)
canCreateInstance
in interface InstantiationAssistant
request
- DOCUMENT ME!
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |