public abstract class OnlineMiningAlgorithm
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected MinerConfiguration |
configuration |
protected java.util.concurrent.ArrayBlockingQueue<org.deckfour.xes.model.XTrace> |
fitnessLog |
protected long |
observedEvents |
protected OnlineMinerPlugin |
plugin |
protected java.util.concurrent.ArrayBlockingQueue<org.deckfour.xes.model.XTrace> |
precisionLog |
Constructor and Description |
---|
OnlineMiningAlgorithm()
Default constructor
|
OnlineMiningAlgorithm(OnlineMinerPlugin plugin)
Constractor with the plugin
|
Modifier and Type | Method and Description |
---|---|
protected abstract void |
analyzeEvent(org.deckfour.xes.model.XTrace trace,
boolean isTraceStart,
boolean isTraceComplete)
This method is responsible of the actual analysis of the provided trace
(containing only one event)
|
protected abstract double |
computeFitness()
This method is called all the time that (if configured) the fitness has
to be computed
|
protected abstract double |
computePrecision()
This method is called all the time that (if configured) the precision has
to be computed
|
MinerConfiguration |
getConfiguration()
This method to get the current miner configuration
|
protected org.processmining.framework.plugin.PluginContext |
getContext()
This method can be used to get a local context
|
void |
observe(org.deckfour.xes.model.XTrace trace)
This method is called all the time that a new event is observed
|
void |
prepareMiner(MinerConfiguration configuration)
This method configures the miner.
|
void |
setPlugin(OnlineMinerPlugin plugin)
This method updates the plugin associated to the current mining algorithm
|
protected abstract void |
setup(MinerConfiguration configuration)
This method is called before that the actual mining start
|
protected abstract java.lang.Object |
updateModel()
This method is called all the time that (if configured) the model needs
to be updated
|
protected OnlineMinerPlugin plugin
protected long observedEvents
protected MinerConfiguration configuration
protected java.util.concurrent.ArrayBlockingQueue<org.deckfour.xes.model.XTrace> fitnessLog
protected java.util.concurrent.ArrayBlockingQueue<org.deckfour.xes.model.XTrace> precisionLog
public OnlineMiningAlgorithm()
public OnlineMiningAlgorithm(OnlineMinerPlugin plugin) throws ClassIsNotOnlineAlgorithmException
plugin
- the plugin to associate to the current minerClassIsNotOnlineAlgorithmException
public void setPlugin(OnlineMinerPlugin plugin) throws ClassIsNotOnlineAlgorithmException
plugin
- the new plugin to setClassIsNotOnlineAlgorithmException
public void prepareMiner(MinerConfiguration configuration) throws WrongConfigurationException, MissingConfigurationException, PluginMissingException
configuration
- the miner configurationWrongConfigurationException
MissingConfigurationException
PluginMissingException
public MinerConfiguration getConfiguration()
public void observe(org.deckfour.xes.model.XTrace trace)
trace
- the trace (containing only one event) observed onto the
streamprotected org.processmining.framework.plugin.PluginContext getContext()
protected abstract void setup(MinerConfiguration configuration)
configuration
- protected abstract void analyzeEvent(org.deckfour.xes.model.XTrace trace, boolean isTraceStart, boolean isTraceComplete)
trace
- the trace observedisTraceStart
- this variable is set to true if the event collected
is explicitly marked as the first event of the traceisTraceComplete
- this variable is set to true if the event collected
is explicitly marked as the last event of the traceprotected abstract java.lang.Object updateModel()
protected abstract double computeFitness()
protected abstract double computePrecision()