Class ExtendedHybridPetrinet
- java.lang.Object
-
- org.processmining.models.graphbased.AbstractGraphElement
-
- org.processmining.models.graphbased.AbstractGraph
-
- org.processmining.models.graphbased.directed.AbstractDirectedGraph<org.processmining.models.graphbased.directed.petrinet.PetrinetNode,org.processmining.models.graphbased.directed.petrinet.PetrinetEdge<? extends org.processmining.models.graphbased.directed.petrinet.PetrinetNode,? extends org.processmining.models.graphbased.directed.petrinet.PetrinetNode>>
-
- org.processmining.models.graphbased.directed.petrinet.impl.AbstractResetInhibitorNet
-
- org.processmining.models.graphbased.directed.petrinet.impl.PetrinetImpl
-
- org.processmining.extendedhybridminer.models.hybridpetrinet.ExtendedHybridPetrinet
-
- All Implemented Interfaces:
java.lang.Cloneable,java.lang.Comparable<org.processmining.models.graphbased.directed.DirectedGraph<org.processmining.models.graphbased.directed.petrinet.PetrinetNode,org.processmining.models.graphbased.directed.petrinet.PetrinetEdge<? extends org.processmining.models.graphbased.directed.petrinet.PetrinetNode,? extends org.processmining.models.graphbased.directed.petrinet.PetrinetNode>>>,org.processmining.models.graphbased.AttributeMapOwner,org.processmining.models.graphbased.directed.DirectedGraph<org.processmining.models.graphbased.directed.petrinet.PetrinetNode,org.processmining.models.graphbased.directed.petrinet.PetrinetEdge<? extends org.processmining.models.graphbased.directed.petrinet.PetrinetNode,? extends org.processmining.models.graphbased.directed.petrinet.PetrinetNode>>,org.processmining.models.graphbased.directed.DirectedGraphElement,org.processmining.models.graphbased.directed.petrinet.Petrinet,org.processmining.models.graphbased.directed.petrinet.PetrinetGraph
public class ExtendedHybridPetrinet extends org.processmining.models.graphbased.directed.petrinet.impl.PetrinetImplCreated by demas on 27/07/16.
-
-
Field Summary
Fields Modifier and Type Field Description java.util.Collection<org.processmining.models.semantics.petrinet.Marking>finalMarkingsorg.processmining.models.semantics.petrinet.MarkinginitialMarkingprotected java.util.Map<java.lang.String,org.processmining.models.graphbased.directed.petrinet.elements.Transition>labelTransitionsMapprotected java.awt.ColorLDColorprotected java.awt.ColorsureColorprotected java.awt.ColorsurePlaceColorprotected java.awt.ColorunsureColor
-
Constructor Summary
Constructors Constructor Description ExtendedHybridPetrinet(java.lang.String label)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.processmining.models.graphbased.directed.petrinet.elements.ArcaddArc(org.processmining.models.graphbased.directed.petrinet.elements.Place p, org.processmining.models.graphbased.directed.petrinet.elements.Transition t)org.processmining.models.graphbased.directed.petrinet.elements.ArcaddArc(org.processmining.models.graphbased.directed.petrinet.elements.Transition t, org.processmining.models.graphbased.directed.petrinet.elements.Place p)org.processmining.models.graphbased.directed.petrinet.elements.ArcaddLongDepArc(org.processmining.models.graphbased.directed.petrinet.elements.Transition s, org.processmining.models.graphbased.directed.petrinet.elements.Transition t)LongDepEdgeaddLongDepTransitionsArcPrivate(org.processmining.models.graphbased.directed.petrinet.elements.Transition source, org.processmining.models.graphbased.directed.petrinet.elements.Transition target, int weight)org.processmining.models.graphbased.directed.petrinet.elements.PlaceaddPlace(java.lang.String label)<N extends org.processmining.models.graphbased.directed.AbstractDirectedGraphNode>
voidaddPlaceFromPartialPlaceEvaluation(PartialPlaceEvaluation<N> placeEval)org.processmining.models.graphbased.directed.petrinet.elements.ArcaddSureArc(org.processmining.models.graphbased.directed.petrinet.elements.Transition s, org.processmining.models.graphbased.directed.petrinet.elements.Transition t)SureEdgeaddSureTransitionsArcPrivate(org.processmining.models.graphbased.directed.petrinet.elements.Transition source, org.processmining.models.graphbased.directed.petrinet.elements.Transition target, int weight)The semantics o the method is the following.org.processmining.models.graphbased.directed.petrinet.elements.TransitionaddTransition(java.lang.String label)We build fuzzyPetrinets with a heavy restriction: we do not ever have two transition with the same label.EdgeaddTransitionsArcFromFCGEdge(HybridDirectedGraphEdge edge)EdgeaddTransitionsArcFromFCGEdge(HybridDirectedGraphEdge edge, int weight)org.processmining.models.graphbased.directed.petrinet.elements.ArcaddUnsureArc(org.processmining.models.graphbased.directed.petrinet.elements.Transition s, org.processmining.models.graphbased.directed.petrinet.elements.Transition t)ExtendedHybridPetrinetcloneToPN()java.util.Set<org.processmining.models.graphbased.directed.petrinet.PetrinetNode>getInputNodes(org.processmining.models.graphbased.directed.petrinet.PetrinetNode target)java.awt.ColorgetLDColor()java.util.Set<org.processmining.models.graphbased.directed.petrinet.PetrinetNode>getOutputNodes(org.processmining.models.graphbased.directed.petrinet.PetrinetNode source)org.processmining.models.graphbased.directed.petrinet.elements.PlacegetPlace(java.lang.String label)Returns a place named labeljava.util.Collection<SureEdge>getSureArcs()CHIARA Returns the set of sure arcsjava.awt.ColorgetSureColor()java.awt.ColorgetSurePlaceColor()org.processmining.models.graphbased.directed.petrinet.elements.TransitiongetTransition(java.lang.String label)Returns a transition named labeljava.util.Collection<UncertainEdge>getUncertainArcs()CHIARA Returns the set of uncertain arcsjava.awt.ColorgetUnsureColor()voidinit()voidsetColors()voidsetColors(java.awt.Color c1, java.awt.Color c2, java.awt.Color c3)voidsetColors(java.awt.Color c1, java.awt.Color c2, java.awt.Color c3, java.awt.Color c4)java.util.Collection<org.processmining.models.semantics.petrinet.Marking>setFinalMarkings()org.processmining.models.semantics.petrinet.MarkingsetInitialMarking()java.lang.StringtoString()voidupdateLDColor(java.awt.Color c)voidupdateSureColor(java.awt.Color c)voidupdateSurePlaceColor(java.awt.Color c)voidupdateUnsureColor(java.awt.Color c)-
Methods inherited from class org.processmining.models.graphbased.directed.petrinet.impl.PetrinetImpl
getEmptyClone
-
Methods inherited from class org.processmining.models.graphbased.directed.petrinet.impl.AbstractResetInhibitorNet
addArc, addArc, addArc, addArc, addArc, addArc, addArcPrivate, addGroup, addGroup, addInhibitorArc, addInhibitorArc, addInhibitorArc, addInhibitorArc, addPlace, addResetArc, addResetArc, addResetArc, addResetArc, addTransition, cloneFrom, cloneFrom, getArc, getEdges, getGroups, getInhibitorArc, getNodes, getPlaces, getResetArc, getTransitions, removeArc, removeEdge, removeGroup, removeInhibitorArc, removeNode, removePlace, removeResetArc, removeTransition
-
Methods inherited from class org.processmining.models.graphbased.directed.AbstractDirectedGraph
checkAddEdge, compareTo, getGraph, getInEdges, getOutEdges, graphElementAdded, graphElementChanged, graphElementRemoved, removeSurroundingEdges
-
Methods inherited from class org.processmining.models.graphbased.AbstractGraph
equals, getEdges, hashCode, removeFromEdges, removeNodeFromCollection
-
Methods inherited from class org.processmining.models.graphbased.AbstractGraphElement
getAttributeMap, getLabel
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.processmining.models.graphbased.AttributeMapOwner
getAttributeMap
-
Methods inherited from interface org.processmining.models.graphbased.directed.DirectedGraph
getEdges, getInEdges, getNodes, getOutEdges, removeEdge, removeNode
-
Methods inherited from interface org.processmining.models.graphbased.directed.DirectedGraphElement
equals, getGraph, hashCode
-
Methods inherited from interface org.processmining.models.graphbased.directed.petrinet.PetrinetGraph
addArc, addArc, addArc, addArc, addArc, addArc, addGroup, addGroup, addPlace, addTransition, getArc, getGroups, getLabel, getPlaces, getTransitions, removeArc, removeGroup, removePlace, removeTransition
-
-
-
-
Field Detail
-
labelTransitionsMap
protected java.util.Map<java.lang.String,org.processmining.models.graphbased.directed.petrinet.elements.Transition> labelTransitionsMap
-
surePlaceColor
protected java.awt.Color surePlaceColor
-
sureColor
protected java.awt.Color sureColor
-
unsureColor
protected java.awt.Color unsureColor
-
LDColor
protected java.awt.Color LDColor
-
initialMarking
public org.processmining.models.semantics.petrinet.Marking initialMarking
-
finalMarkings
public java.util.Collection<org.processmining.models.semantics.petrinet.Marking> finalMarkings
-
-
Method Detail
-
setColors
public void setColors()
-
setColors
public void setColors(java.awt.Color c1, java.awt.Color c2, java.awt.Color c3)
-
setColors
public void setColors(java.awt.Color c1, java.awt.Color c2, java.awt.Color c3, java.awt.Color c4)
-
addTransitionsArcFromFCGEdge
public Edge addTransitionsArcFromFCGEdge(HybridDirectedGraphEdge edge)
-
addTransitionsArcFromFCGEdge
public Edge addTransitionsArcFromFCGEdge(HybridDirectedGraphEdge edge, int weight)
-
addSureTransitionsArcPrivate
public SureEdge addSureTransitionsArcPrivate(org.processmining.models.graphbased.directed.petrinet.elements.Transition source, org.processmining.models.graphbased.directed.petrinet.elements.Transition target, int weight)
The semantics o the method is the following. It adds a SureTransitionsArc between transition source and target if there is no place already connecting source and target. This because when building the fuzzyNet, we first add all the places and respective transitions, and then add the (sure and uncertain) arcs connecting two transitions. Things are complicated by the presence of the weight, which is not taken into consideration in this first version (all arcs have weight=1). However, to be on the safe side, the method checks if there already is a sureArc connecting the same source and transition but with a different weight, and if this is the case, it sets the new weight as the sum of the two.- Parameters:
source- the source of the sureTransitionArc to be addedtarget- the target of the sureTransitionArc to be addedweight- the weight of the arc- Returns:
- the SureTransitionArc if not present or if already present with a different weight. Null if there is already a place connecting source and target.
-
addLongDepTransitionsArcPrivate
public LongDepEdge addLongDepTransitionsArcPrivate(org.processmining.models.graphbased.directed.petrinet.elements.Transition source, org.processmining.models.graphbased.directed.petrinet.elements.Transition target, int weight)
-
getOutputNodes
public java.util.Set<org.processmining.models.graphbased.directed.petrinet.PetrinetNode> getOutputNodes(org.processmining.models.graphbased.directed.petrinet.PetrinetNode source)
-
getInputNodes
public java.util.Set<org.processmining.models.graphbased.directed.petrinet.PetrinetNode> getInputNodes(org.processmining.models.graphbased.directed.petrinet.PetrinetNode target)
-
addTransition
public org.processmining.models.graphbased.directed.petrinet.elements.Transition addTransition(java.lang.String label)
We build fuzzyPetrinets with a heavy restriction: we do not ever have two transition with the same label. For such a reason, when adding a new transition, we have to check if a transition with the same label is already present.- Specified by:
addTransitionin interfaceorg.processmining.models.graphbased.directed.petrinet.PetrinetGraph- Overrides:
addTransitionin classorg.processmining.models.graphbased.directed.petrinet.impl.AbstractResetInhibitorNet- Parameters:
label- the name of the transition- Returns:
- a new Transition if a transition with the same label DO NOT already exists, otherwise returns the already present transition.
-
addPlaceFromPartialPlaceEvaluation
public <N extends org.processmining.models.graphbased.directed.AbstractDirectedGraphNode> void addPlaceFromPartialPlaceEvaluation(PartialPlaceEvaluation<N> placeEval)
-
getPlace
public org.processmining.models.graphbased.directed.petrinet.elements.Place getPlace(java.lang.String label)
Returns a place named label- Parameters:
label-- Returns:
-
getTransition
public org.processmining.models.graphbased.directed.petrinet.elements.Transition getTransition(java.lang.String label)
Returns a transition named label- Parameters:
label-- Returns:
-
getSureArcs
public java.util.Collection<SureEdge> getSureArcs()
CHIARA Returns the set of sure arcs- Returns:
- set of sure arcs
-
getUncertainArcs
public java.util.Collection<UncertainEdge> getUncertainArcs()
CHIARA Returns the set of uncertain arcs- Returns:
- set of uncertain arcs
-
addPlace
public org.processmining.models.graphbased.directed.petrinet.elements.Place addPlace(java.lang.String label)
- Specified by:
addPlacein interfaceorg.processmining.models.graphbased.directed.petrinet.PetrinetGraph- Overrides:
addPlacein classorg.processmining.models.graphbased.directed.petrinet.impl.AbstractResetInhibitorNet
-
addArc
public org.processmining.models.graphbased.directed.petrinet.elements.Arc addArc(org.processmining.models.graphbased.directed.petrinet.elements.Place p, org.processmining.models.graphbased.directed.petrinet.elements.Transition t)- Specified by:
addArcin interfaceorg.processmining.models.graphbased.directed.petrinet.PetrinetGraph- Overrides:
addArcin classorg.processmining.models.graphbased.directed.petrinet.impl.AbstractResetInhibitorNet
-
addSureArc
public org.processmining.models.graphbased.directed.petrinet.elements.Arc addSureArc(org.processmining.models.graphbased.directed.petrinet.elements.Transition s, org.processmining.models.graphbased.directed.petrinet.elements.Transition t)
-
addLongDepArc
public org.processmining.models.graphbased.directed.petrinet.elements.Arc addLongDepArc(org.processmining.models.graphbased.directed.petrinet.elements.Transition s, org.processmining.models.graphbased.directed.petrinet.elements.Transition t)
-
addUnsureArc
public org.processmining.models.graphbased.directed.petrinet.elements.Arc addUnsureArc(org.processmining.models.graphbased.directed.petrinet.elements.Transition s, org.processmining.models.graphbased.directed.petrinet.elements.Transition t)
-
addArc
public org.processmining.models.graphbased.directed.petrinet.elements.Arc addArc(org.processmining.models.graphbased.directed.petrinet.elements.Transition t, org.processmining.models.graphbased.directed.petrinet.elements.Place p)- Specified by:
addArcin interfaceorg.processmining.models.graphbased.directed.petrinet.PetrinetGraph- Overrides:
addArcin classorg.processmining.models.graphbased.directed.petrinet.impl.AbstractResetInhibitorNet
-
toString
public java.lang.String toString()
- Overrides:
toStringin classorg.processmining.models.graphbased.AbstractGraphElement
-
cloneToPN
public ExtendedHybridPetrinet cloneToPN()
-
getSurePlaceColor
public java.awt.Color getSurePlaceColor()
-
getSureColor
public java.awt.Color getSureColor()
-
getUnsureColor
public java.awt.Color getUnsureColor()
-
updateSurePlaceColor
public void updateSurePlaceColor(java.awt.Color c)
-
updateSureColor
public void updateSureColor(java.awt.Color c)
-
updateUnsureColor
public void updateUnsureColor(java.awt.Color c)
-
setInitialMarking
public org.processmining.models.semantics.petrinet.Marking setInitialMarking()
-
setFinalMarkings
public java.util.Collection<org.processmining.models.semantics.petrinet.Marking> setFinalMarkings()
-
init
public void init()
-
getLDColor
public java.awt.Color getLDColor()
-
updateLDColor
public void updateLDColor(java.awt.Color c)
-
-