Class CSTNU2CSTN
In other words, the CSTNU instance is transformed into a CSTN one and checked invoking CSTN.dynamicConsistencyCheck()
.
- Version:
- $Rev: 993 $
- Author:
- Roberto Posenato
-
Nested Class Summary
Nested classes/interfaces inherited from class it.univr.di.cstnu.algorithms.CSTNU
CSTNU.CSTNUCheckStatus
Nested classes/interfaces inherited from class it.univr.di.cstnu.algorithms.AbstractCSTN
AbstractCSTN.CheckAlgorithm, AbstractCSTN.CSTNCheckStatus, AbstractCSTN.DCSemantics, AbstractCSTN.EdgesToCheck<E extends Edge>, AbstractCSTN.NodesToCheck
-
Field Summary
FieldsFields inherited from class it.univr.di.cstnu.algorithms.CSTNU
activationNode, contingentAlsoAsOrdinary, lowerContingentEdge
Fields inherited from class it.univr.di.cstnu.algorithms.AbstractCSTN
checkStatus, cleanCheckedInstance, FILE_NAME_SUFFIX, fInput, fOutput, g, gCheckedCleaned, horizon, maxWeight, propagationOnlyToZ, reactionTime, timeOut, versionReq, withNodeLabels, ZERO_NODE_NAME
-
Constructor Summary
ConstructorsConstructorDescriptionConstructor for CSTNU2CSTN.CSTNU2CSTN
(TNGraph<CSTNUEdge> graph) CSTNU2CSTN
(TNGraph<CSTNUEdge> graph, int givenTimeOut) Constructor for CSTNU -
Method Summary
Modifier and TypeMethodDescriptionChecks the dynamic controllability (DC) of the given network (seeCSTNU(TNGraph)
orAbstractCSTN.setG(TNGraph)
).static void
Returns the corresponding CSTN of the given CSTNU g.Methods inherited from class it.univr.di.cstnu.algorithms.CSTNU
checkAndManageIfNewLabeledValueIsANegativeLoop, checkWellDefinitionProperty1and3, dynamicConsistencyCheck, getActivationNode, getCheckStatus, getLowerContingentLink, initAndCheck, isActivationNode, isContingentAlsoAsOrdinary, labeledCrossLowerCaseRule, labeledLetterRemovalRule, labelModificationqR0, labelModificationqR3, labelPropagation, lowerCaseValueAsString, mainConditionForRestrictedLP, mainConditionForSkippingInR0qR0, oneStepDynamicControllability, oneStepDynamicControllabilityLimitedToZ, reset, setContingentAlsoAsOrdinary, upperCaseValueAsString, zLabeledLetterRemovalRule
Methods inherited from class it.univr.di.cstnu.algorithms.AbstractCSTN
addUpperBounds, checkWellDefinitionProperties, checkWellDefinitionProperty2, coreCSTNInitAndCheck, getEdgeFromObserversToNode, getfOutput, getG, getGChecked, getGCheckedAsGraphML, getMaxWeight, getMinimalDistanceGraph, getReactionTime, getVersionAndCopyright, isOutputCleaned, isWithNodeLabels, labelModificationR0qR0, labelModificationR0qR0Core, mainConditionForSkippingInR3qR3, makeAlphaBetaGammaPrime4R3, makeAlphaPrime, makeBetaGammaDagger4qR3, makeNewEdge, manageParameters, newValueInR3qR3, pairAsString, removeChildrenOfUnknown, saveGraphToFile, setfOutput, setG, setOutputCleaned, setPropagationOnlyToZ, setWithNodeLabels
-
Field Details
-
VERSIONandDATE
Version of the class- See Also:
-
-
Constructor Details
-
CSTNU2CSTN
- Parameters:
graph
- aTNGraph
object.
-
CSTNU2CSTN
Constructor for CSTNU- Parameters:
graph
- TNGraph to checkgivenTimeOut
- timeout for the check
-
CSTNU2CSTN
CSTNU2CSTN()Constructor for CSTNU2CSTN.
-
-
Method Details
-
main
- Parameters:
args
- an array ofString
objects.
-
dynamicControllabilityCheck
Checks the dynamic controllability (DC) of the given network (seeCSTNU(TNGraph)
orAbstractCSTN.setG(TNGraph)
).If the network is DC, it determines all the minimal ranges for the constraints.
During the execution of this method, the given network is modified.
If the check is successful, all constraints to node Z in the network are minimized; otherwise, the network contains at least one negative loop.
After a check,
AbstractCSTN.getGChecked()
returns the graph resulting from the check, andCSTNU.getCheckStatus()
returns the result of the checking action with some statistics and the node with the negative loop if the network is NOT DC.In any case, before returning, this method calls
AbstractCSTN.saveGraphToFile()
for saving the computed graph. Checks the controllability of a CSTNU instance. This method transforms the given CSTNU instance into a corresponding CSTN instance such that the original instance is dynamic controllable iff the corresponding CSTN is dynamic consistent.- Overrides:
dynamicControllabilityCheck
in classCSTNU
- Returns:
- an
CSTNU.CSTNUCheckStatus
object containing the final status and some statistics about the executed checking. - Throws:
WellDefinitionException
- if any.
-
transform
Returns the corresponding CSTN of the given CSTNU g. The transformation consists of replacing each contingent link with a pattern that uses a proper new observation timepoint (associated with the contingent link).A ---(c:x, alpha) ---> C is transformed to A ---(x,alpha) ---> K? ---(0, alpha k) (y-x,alpha) ---> C <--- (C:-y, alpha)-- <---(-x,alpha)-- <---(0,alpha) (x-y,alpha¬k)--
- Returns:
- g represented as a CSTN
-