Skip to content

misssion/evaluation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Evaluation

MISSION - Process Aware Intrusion Detection in IoT Networks

Intrusion Detection Systems (IDS) allow for detecting malicious activities in organizational networks and hosts. As the Industrial Internet of Things (Industrial IoT) has gained momentum and attackers become process-aware, it elevates the focus on anomaly-based Network Intrusion Detection Systems (NIDS) in IoT. While previous research has primarily concentrated on fortifying SCADA systems with NIDS, keeping track of the latest advancements in resource-efficient messaging (e.g., MQTT, CoAP, and OPC-UA) is paramount. In our work, we straightforwardly derive IoT processes for NIDS using distributed tracing and process mining. We introduce a pioneering framework called MISSION which effectively captures, consolidates, and models MQTT flows, leading to a heightened process awareness in NIDS. Through our prototypical implementation, we demonstrate exceptional performance and high-quality models. Moreover, our experiments provide empirical evidence for rediscovering pre-defined processes and successfully detecting two distinct MQTT attacks in a simulated IoT network.

(0.1) Imports

import pandas as pd
import pm4py
import numpy as np
from pm4py.util import constants
from IPython.display import display
from IPython.display import Image
from pm4py.algo.filtering.dfg import dfg_filtering
from pm4py.visualization.dfg import visualizer as dfg_visualizer
from pm4py.algo.evaluation.generalization import algorithm as generalization_evaluator
from pm4py.algo.evaluation.simplicity import algorithm as simplicity_evaluator
from pm4py.algo.conformance.tokenreplay.diagnostics import root_cause_analysis
from pm4py.visualization.decisiontree import visualizer as dt_vis
from pm4py.algo.transformation.log_to_features import algorithm as log_to_features
from pm4py.algo.conformance.alignments.petri_net import algorithm as alignments
from pm4py.algo.conformance import alignments as conformance_alignments
from pm4py.algo.discovery.log_skeleton import algorithm as lsk_discovery
from pm4py.algo.conformance.log_skeleton import algorithm as lsk_conformance
from pm4py.algo.conformance.tokenreplay.diagnostics import duration_diagnostics
from pm4py.algo.organizational_mining.sna import util
from pm4py.algo.conformance.tokenreplay import algorithm as token_based_replay
from pm4py.statistics.traces.generic.log import case_arrival
from pm4py.algo.organizational_mining.local_diagnostics import algorithm as local_diagnostics
from pm4py.objects.conversion.process_tree import converter as pt_converter
from pm4py.algo.discovery.temporal_profile import algorithm as temporal_profile_discovery
from pm4py.algo.conformance.temporal_profile import algorithm as temporal_profile_conformance
from pm4py.visualization.petri_net import visualizer as pn_visualizer
from sklearn.decomposition import PCA
from sklearn.ensemble import IsolationForest
from pm4py.statistics.traces.generic.log import case_statistics
from pm4py.visualization.graphs import visualizer as graphs_visualizer
from pm4py.statistics.variants.log import get as variants_module
from pm4py.algo.simulation.playout.petri_net import algorithm as simulator
from pm4py.algo.evaluation.earth_mover_distance import algorithm as emd_evaluator
from pm4py.algo.analysis.woflan import algorithm as woflan
import seaborn as sns

(0.2) User Definitions

# User definitions
filename = 'resources/flows.csv'
filename_malicious_DoS = 'resources/flows-malicious-DoS.csv'
filename_malicious_sidechannel = 'resources/flows-malicious-sidechannel.csv'
mqtt_brokers = ["192.168.2.171:1883"]
node_red = "192.168.2.172:58405"
ip_filter = ["10.10.2.14"]

(0.3) Mappings

control_types = {1: "connect", 3: "publish", 8: "subscribe", 10: "unsubscribe", 12: "ping", 14: "disconnect"}
db_updates = []
client_ids_mapping = {}
for broker_key in mqtt_brokers:
    client_ids_mapping[broker_key] = "MQTT Broker"

(1.0) Import CSV

df_flows = pd.read_csv(filename)
df_flows.head()
_id sourceIPv4Address sourceTransportPort destinationIPv4Address destinationTransportPort protocol flowStartNanoseconds flowEndNanoseconds flowDurationMicroseconds mqttTopic mqttPacketId mqttQoS mqttControlType mqttSrcClientId mqttDstClientId mqttCorrelationData
0 632b11105cbea7a3bc1db846 192.168.2.172 54097 192.168.2.171 1883 6 [1663766799,4186858496] [1663766799,4187292672] 0 NaN 0 0 1 log_server-sensor-temperature Unknown client, probably a broker. NaN
1 632b11105cbea7a3bc1db847 192.168.2.172 48535 192.168.2.171 1883 6 [1663766799,4194340864] [1663766799,4194603008] 0 NaN 0 0 1 belt_circulation-sensor-temperature Unknown client, probably a broker. NaN
2 632b11105cbea7a3bc1db848 192.168.2.172 54097 192.168.2.171 1883 6 [1663766799,4193241088] [1663766799,4195409920] 1 mind2/log_server-sensor-temperature 1 2 3 log_server-sensor-temperature Unknown client, probably a broker. 06857822-39b1-11ed-a47e-3be7a6e67cf0
3 632b11105cbea7a3bc1db849 192.168.2.172 38513 192.168.2.171 1883 6 [1663766799,4202084352] [1663766799,4202526720] 0 NaN 0 0 1 cleaning_system-sensor-temperature Unknown client, probably a broker. NaN
4 632b11105cbea7a3bc1db84a 192.168.2.172 48535 192.168.2.171 1883 6 [1663766799,4200988672] [1663766799,4203681792] 1 mission/belt_circulation-sensor-temperature 1 2 3 belt_circulation-sensor-temperature Unknown client, probably a broker. 0685c91c-39b1-11ed-a47e-3be7a6e67cf0

(2.0) Prerequisites

(2.1) Data Cleaning & Preprocessing

def preprocessing(df_flows):
    for index, flow in df_flows.iterrows():  

        # check if row has a client identifier
        if 'mqttSrcClientId' in flow:
            src_key = f"{flow['sourceIPv4Address']}:{flow['sourceTransportPort']}"
            dst_key = f"{flow['destinationIPv4Address']}:{flow['destinationTransportPort']}"

            # check if source or destination is a MQTT broker's address
            if src_key in mqtt_brokers and "MQTT Broker" not in df_flows.loc[index,'mqttSrcClientId']:
                df_flows.loc[index,'mqttSrcClientId'] = client_ids_mapping[src_key]
            if dst_key in mqtt_brokers and "MQTT Broker" not in df_flows.loc[index,'mqttDstClientId']:
                df_flows.loc[index,'mqttDstClientId'] = client_ids_mapping[dst_key]

            # check if client identifier is unknown
            if "Unknown" in df_flows.loc[index,'mqttSrcClientId']:
                df_flows.loc[index,'mqttSrcClientId'] = src_key
            if "Unknown" in df_flows.loc[index,'mqttDstClientId']:
                df_flows.loc[index,'mqttDstClientId'] = dst_key

            # check if client has already been mapped
            if src_key not in client_ids_mapping:
                client_ids_mapping[src_key] = df_flows.loc[index,'mqttSrcClientId']
            if dst_key not in client_ids_mapping:
                client_ids_mapping[dst_key] = df_flows.loc[index,'mqttDstClientId']
            
            if src_key == node_red:
                df_flows.loc[index,'mqttSrcClientId'] = "Node-RED"

        # flow has not a client identifier
        else: 
            src_key = f"{flow['sourceIPv4Address']}:{flow['sourceTransportPort']}"
            dst_key = f"{flow['destinationIPv4Address']}:{flow['destinationTransportPort']}"

            if src_key in client_ids_mapping:
                df_flows.loc[index,'mqttSrcClientId'] = client_ids_mapping[src_key]
            else:
                df_flows.loc[index,'mqttSrcClientId'] = src_key
            if dst_key in client_ids_mapping:
                df_flows.loc[index,'mqttDstClientId'] = client_ids_mapping[dst_key]
            else:
                df_flows.loc[index,'mqttDstClientId'] = dst_key

            if src_key == node_red:
                df_flows.loc[index,'mqttSrcClientId'] = "Node-RED"

        # fix timestamp array received from MongoDB
        flow['flowStartNanoseconds'] = flow['flowStartNanoseconds'][1:-1]
        flow['flowEndNanoseconds'] = flow['flowEndNanoseconds'][1:-1]
        flow['flowStartNanoseconds'] = flow['flowStartNanoseconds'].split(",")
        flow['flowEndNanoseconds'] = flow['flowEndNanoseconds'].split(",")
        flow['flowStartNanoseconds'] = float(flow['flowStartNanoseconds'][0] + "." + flow['flowStartNanoseconds'][1])
        flow['flowEndNanoseconds'] = float(flow['flowEndNanoseconds'][0] + "." + flow['flowEndNanoseconds'][1])
        df_flows.loc[index,'flowStartNanoseconds'] = pd.Timestamp.fromtimestamp(flow['flowStartNanoseconds'])
        df_flows.loc[index,'flowEndNanoseconds'] = pd.Timestamp.fromtimestamp(flow['flowEndNanoseconds'])

    df_flows.fillna("no correlation",inplace=True)
    df_flows.sort_values(by=['flowStartNanoseconds'])
    return df_flows

df_flows = preprocessing(df_flows)
df_flows.head()
_id sourceIPv4Address sourceTransportPort destinationIPv4Address destinationTransportPort protocol flowStartNanoseconds flowEndNanoseconds flowDurationMicroseconds mqttTopic mqttPacketId mqttQoS mqttControlType mqttSrcClientId mqttDstClientId mqttCorrelationData
0 632b11105cbea7a3bc1db846 192.168.2.172 54097 192.168.2.171 1883 6 2022-09-21 15:26:39.418686 2022-09-21 15:26:39.418729 0 no correlation 0 0 1 log_server-sensor-temperature MQTT Broker no correlation
1 632b11105cbea7a3bc1db847 192.168.2.172 48535 192.168.2.171 1883 6 2022-09-21 15:26:39.419434 2022-09-21 15:26:39.419460 0 no correlation 0 0 1 belt_circulation-sensor-temperature MQTT Broker no correlation
2 632b11105cbea7a3bc1db848 192.168.2.172 54097 192.168.2.171 1883 6 2022-09-21 15:26:39.419324 2022-09-21 15:26:39.419541 1 mind2/log_server-sensor-temperature 1 2 3 log_server-sensor-temperature MQTT Broker 06857822-39b1-11ed-a47e-3be7a6e67cf0
3 632b11105cbea7a3bc1db849 192.168.2.172 38513 192.168.2.171 1883 6 2022-09-21 15:26:39.420208 2022-09-21 15:26:39.420253 0 no correlation 0 0 1 cleaning_system-sensor-temperature MQTT Broker no correlation
4 632b11105cbea7a3bc1db84a 192.168.2.172 48535 192.168.2.171 1883 6 2022-09-21 15:26:39.420099 2022-09-21 15:26:39.420368 1 mission/belt_circulation-sensor-temperature 1 2 3 belt_circulation-sensor-temperature MQTT Broker 0685c91c-39b1-11ed-a47e-3be7a6e67cf0

(2.2) Event Log Conversion

def event_log_conversion(df_flows):
    event_log = []

    # Consider only publish flows
    for index, flow in df_flows.iterrows():
        if int(flow['mqttControlType']) == 3 and flow['mqttCorrelationData'] != "no correlation":
            # Create activity string
            activity = f"{flow['mqttSrcClientId']} \u2192 \n{flow['mqttTopic']}"

            # Append event data to the event log list
            event_log.append([
                flow['flowStartNanoseconds'],  # Time
                flow['mqttCorrelationData'],  # Case concept name
                flow['mqttSrcClientId'],  # Org resource
                activity  # Concept name
            ])

    # Convert event log list to DataFrame
    df_event_log = pd.DataFrame(event_log, columns=['time:timestamp', 'case:concept:name', 'org:resource', 'concept:name'])

    # Convert DataFrame to PM4Py event log format and return both formats
    return pm4py.convert_to_event_log(df_event_log), df_event_log
event_log, df_event_log = event_log_conversion(df_flows)
df_event_log.head()
time:timestamp case:concept:name org:resource concept:name
0 2022-09-21 15:26:39.419324 06857822-39b1-11ed-a47e-3be7a6e67cf0 log_server-sensor-temperature log_server-sensor-temperature → \nmind2/log_se...
1 2022-09-21 15:26:39.420099 0685c91c-39b1-11ed-a47e-3be7a6e67cf0 belt_circulation-sensor-temperature belt_circulation-sensor-temperature → \nmissio...
2 2022-09-21 15:26:39.420679 0685ffd6-39b1-11ed-a47e-3be7a6e67cf0 cleaning_system-sensor-temperature cleaning_system-sensor-temperature → \nmission...
3 2022-09-21 15:26:39.422263 06868e1a-39b1-11ed-a47e-3be7a6e67cf0 test_system1-sensor-temperature test_system1-sensor-temperature → \nmission/te...
4 2022-09-21 15:26:39.422987 0686c8bc-39b1-11ed-a47e-3be7a6e67cf0 test_system2-sensor-temperature test_system2-sensor-temperature → \nmission/te...

(3.0) Process Mining

(3.1) Directly Follows Graphs

_df, _sa, _ea = pm4py.discover_directly_follows_graph(event_log)

# Filter the directly follows graph based on activities percentage
activities_count = pm4py.get_event_attribute_values(event_log, "concept:name")
_df, _sa, _ea, activities_count = dfg_filtering.filter_dfg_on_activities_percentage(_df, _sa, _ea, activities_count, 1)

# Generate visualizations for performance and frequency variants
gviz_perf = dfg_visualizer.apply(_df, variant=dfg_visualizer.Variants.PERFORMANCE,
                                 activities_count=activities_count, parameters={"format": "png"})
gviz_freq = dfg_visualizer.apply(_df, variant=dfg_visualizer.Variants.FREQUENCY,
                                 activities_count=activities_count, parameters={"format": "png"})
gviz_freq2 = dfg_visualizer.apply(_df, variant=dfg_visualizer.Variants.FREQUENCY,
                                  activities_count=activities_count, parameters={"format": "svg"})

# Save and display the visualizations
file_lines = len(event_log)
pn_visualizer.save(gviz_freq, f"resources/dfg_flows_{file_lines}.pdf")
dfg_visualizer.view(gviz_freq)
dfg_visualizer.view(gviz_perf)
pm4py.view_dfg(_df, _sa, _ea, format="png")

png

png

png

(3.2) Inductive Miner

# Discover Petri net using the inductive miner algorithm
im_net, im_im, im_fm = pm4py.discover_petri_net_inductive(event_log, noise_threshold=0.9)

# Generate the visualization of the Petri net
viz_variant = pm4py.visualization.petri_net.visualizer.Variants.FREQUENCY
viz_parameters = {"format": "png"}
gviz = pm4py.visualization.petri_net.visualizer.apply(im_net, im_im, im_fm, variant=viz_variant, parameters=viz_parameters)

# View the Petri net visualization
pm4py.visualization.petri_net.visualizer.view(gviz)

png

(3.3) Heuristic Miner

# Discover Petri net using the heuristics miner algorithm
hm_net, hm_im, hm_fm = pm4py.discover_petri_net_heuristics(event_log, dependency_threshold=0.9)

# Generate the visualization of the Petri net
viz_variant = pm4py.visualization.petri_net.visualizer.Variants.FREQUENCY
viz_parameters = {"format": "png"}
gviz = pm4py.visualization.petri_net.visualizer.apply(hm_net, hm_im, hm_fm, variant=viz_variant, parameters=viz_parameters)

# View the Petri net visualization
pm4py.visualization.petri_net.visualizer.view(gviz)

png

(3.4) Alpha Miner

# Discover Petri net using the alpha miner algorithm
am_net, am_im, am_fm = pm4py.discover_petri_net_alpha(event_log)

# Generate the visualization of the Petri net
gviz = pm4py.visualization.petri_net.visualizer.apply(am_net, am_im, am_fm, log=event_log)

# Save the Petri net visualization as a PDF file
pn_visualizer.save(gviz, "alpha-miner.pdf")

# View the Petri net visualization
pm4py.visualization.petri_net.visualizer.view(gviz)

png

(3.5) BPMN

# Discover BPMN model using the inductive miner algorithm
bpmn_model = pm4py.discover_bpmn_inductive(df_event_log, noise_threshold=0.9)

# View the BPMN model
pm4py.view_bpmn(bpmn_model)

png

(4.0) Process Model Quality

data = []
language = variants_module.get_language(event_log)

def evaluate_petri_net(miner, log, net, im, fm):
    """
    Evaluate the quality criteria of a Petri net.
    """

    # Calculate fitness using token-based replay
    tbr_fitness = pm4py.fitness_token_based_replay(log, net, im, fm)
    fitness = round(tbr_fitness['perc_fit_traces'], 4)

    # Calculate precision using token-based replay
    etc_prec = pm4py.precision_token_based_replay(log, net, im, fm)
    precision = round(etc_prec * 100, 4)

    # Calculate generalization
    gen = generalization_evaluator.apply(log, net, im, fm)
    generalization = round(gen * 100, 4)

    # Calculate simplicity
    simp = simplicity_evaluator.apply(net)
    simplicity = round(simp * 100, 4)

    # Check soundness using Woflan algorithm
    soundness = woflan.apply(net, im, fm, parameters={woflan.Parameters.RETURN_ASAP_WHEN_NOT_SOUND: True,
                                                      woflan.Parameters.PRINT_DIAGNOSTICS: False,
                                                      woflan.Parameters.RETURN_DIAGNOSTICS: False})
    soundness = True if soundness == 1 else False

    # Print the evaluation results
    print(f"Fitness: {fitness}%")
    print(f"Precision: {precision}%")
    print(f"Generalization: {generalization}%")
    print(f"Simplicity: {simplicity}%")
    print(f"Soundness: {soundness}")

    # Store the evaluation results in the data list
    data.append((miner.title(), fitness, precision, generalization, simplicity, soundness))

(4.1) Inductive Miner

evaluate_petri_net("inductive miner", event_log, im_net, im_im, im_fm)
replaying log with TBR, completed variants ::   0%|          | 0/133 [00:00<?, ?it/s]



replaying log with TBR, completed variants ::   0%|          | 0/206 [00:00<?, ?it/s]



replaying log with TBR, completed variants ::   0%|          | 0/133 [00:00<?, ?it/s]


C:\Users\mail\anaconda3\lib\site-packages\pm4py\util\lp\variants\scipy_solver.py:26: OptimizeWarning: A_eq does not appear to be of full row rank. To improve performance, check the problem formulation for redundant equality constraints.
  sol = linprog(c, A_ub=Aub, b_ub=bub, A_eq=Aeq, b_eq=beq, method="revised simplex")


Fitness: 92.7241%
Precision: 100.0%
Generalization: 96.4323%
Simplicity: 53.3333%
Soundness: True

(4.2) Heuristic Miner

evaluate_petri_net("heuristic miner", event_log, hm_net, hm_im, hm_fm)
replaying log with TBR, completed variants ::   0%|          | 0/133 [00:00<?, ?it/s]



replaying log with TBR, completed variants ::   0%|          | 0/206 [00:00<?, ?it/s]



replaying log with TBR, completed variants ::   0%|          | 0/133 [00:00<?, ?it/s]


Fitness: 8.3123%
Precision: 100.0%
Generalization: 93.4029%
Simplicity: 65.2174%
Soundness: True

(4.3) Alpha Miner

evaluate_petri_net("alpha miner", event_log, am_net, am_im, am_fm)
replaying log with TBR, completed variants ::   0%|          | 0/133 [00:00<?, ?it/s]



replaying log with TBR, completed variants ::   0%|          | 0/206 [00:00<?, ?it/s]



replaying log with TBR, completed variants ::   0%|          | 0/133 [00:00<?, ?it/s]


Fitness: 83.6878%
Precision: 100.0%
Generalization: 96.1403%
Simplicity: 45.2991%
Soundness: False

(4.4) Comparing the Miner

comparison = pd.DataFrame(data, columns=['Miner', 'Fitness', 'Precision', 'Generalization', 'Simplicity', 'Soundness'])
comparison[['Fitness', 'Precision', 'Generalization', 'Simplicity', 'Soundness']] = comparison[['Fitness', 'Precision', 'Generalization', 'Simplicity', 'Soundness']].apply(pd.to_numeric)

arr = (comparison[['Fitness', 'Precision', 'Generalization', 'Simplicity']]).to_numpy()
comparison = comparison.style.highlight_max(color = 'lightgreen', subset = ['Fitness', 'Precision', 'Generalization', 'Simplicity'], axis = 0)
display(comparison)
hmp = sns.heatmap(arr, annot=True, fmt='0.0f', cmap="Greens", alpha=0.7,  square=True, cbar=False, xticklabels=['Fitness', 'Precision', 'Generalization', 'Simplicity'], yticklabels=["Inductive Miner", "Heuristic Miner", "Alpha Miner"])
fig = hmp.get_figure()
for t in hmp.texts: t.set_text(t.get_text() + "%")
fig.savefig(f"resources/heatmap_flows_{len(event_log)}.svg")
<style type="text/css"> #T_91cf6_row0_col1, #T_91cf6_row0_col2, #T_91cf6_row0_col3, #T_91cf6_row1_col2, #T_91cf6_row1_col4, #T_91cf6_row2_col2 { background-color: lightgreen; } </style>
  Miner Fitness Precision Generalization Simplicity Soundness
0 Inductive Miner 92.724100 100.000000 96.432300 53.333300 True
1 Heuristic Miner 8.312300 100.000000 93.402900 65.217400 True
2 Alpha Miner 83.687800 100.000000 96.140300 45.299100 False

png

(4.5) Some Statistics of the Event Log

ll_case_durations = pm4py.get_all_case_durations(event_log)
case_arrival_ratio = pm4py.get_case_arrival_average(event_log)
case_dispersion_ratio = case_arrival.get_case_dispersion_avg(event_log, parameters={case_arrival.Parameters.TIMESTAMP_KEY: "time:timestamp"})
averaged_duration = round(sum(ll_case_durations)/len(ll_case_durations),5)
data = [(averaged_duration,round(case_arrival_ratio,5),round(case_dispersion_ratio,5))]
statistics = pd.DataFrame(data, columns=['Throughput Time  (sec.)', 'Case Arrival Ratio (sec.)', 'Case Dispersion Ratio  (sec.)'])
statistics
Throughput Time (sec.) Case Arrival Ratio (sec.) Case Dispersion Ratio (sec.)
0 0.00134 0.31931 0.31931
x, y = case_statistics.get_kde_caseduration(event_log, parameters={constants.PARAMETER_CONSTANT_TIMESTAMP_KEY: "time:timestamp"})

gviz = graphs_visualizer.apply_plot(x, y, variant=graphs_visualizer.Variants.CASES)
graphs_visualizer.view(gviz)
gviz = graphs_visualizer.apply_semilogx(x, y, variant=graphs_visualizer.Variants.CASES)
graphs_visualizer.view(gviz)

png

png

(5.0) Attack Detection

def conformance_tbr(log, net, im, fm):
    """
    Performs token-based replay conformance checking and prints diagnostic information.
    """
    parameters_tbr = {
        token_based_replay.Variants.TOKEN_REPLAY.value.Parameters.DISABLE_VARIANTS: False,
        token_based_replay.Variants.TOKEN_REPLAY.value.Parameters.ENABLE_PLTR_FITNESS: True
    }

    replayed_traces, place_fitness, trans_fitness, unwanted_activities = token_based_replay.apply(log, net, im, fm, parameters=parameters_tbr)

    trans_diagnostics = duration_diagnostics.diagnose_from_trans_fitness(log, trans_fitness)
    if len(trans_diagnostics) > 0:
        print("\n########################## TRANSITION DIAGNOSTICS ########################")
        for trans in trans_diagnostics:
            print(trans, trans_diagnostics[trans])

    print("\n########################## REPLAYED TRACES ##############################")
    for trace in replayed_traces:
        print(trace)

    act_diagnostics = duration_diagnostics.diagnose_from_notexisting_activities(log, unwanted_activities)
    if len(act_diagnostics) > 0:
        print("\n########################## Activity Diagnostics ###########################")
        for act in act_diagnostics:
            print(act)


def conformance_alignment(log, net, im, fm):
    """
    Performs alignment-based conformance checking and prints the fitness score for each trace.
    """
    parameters = {
        "pm4py:param:activity_key": "concept:name",
        "pm4py:param:resource_key": "org:resource"
    }

    aligned_traces = alignments.apply_log(log, net, im, fm, parameters=parameters)

    for case in aligned_traces:
        print(case)


def conformance_log_skeleton(log):
    """
    Performs log skeleton-based conformance checking and prints anomalies if found.
    """
    skeleton = lsk_discovery.apply(log, parameters={
        lsk_discovery.Variants.CLASSIC.value.Parameters.NOISE_THRESHOLD: 0.0
    })
    conf_result = lsk_conformance.apply(log, skeleton)

    if any(not dev["is_fit"] for dev in conf_result):
        print("Anomalies:")
        for dev in conf_result:
            if not dev["is_fit"]:
                print(dev)
    else:
        print("No anomalies")

        

(5.1) Scenario 1: DoS attack with the same correlation identifier or different ones

(5.1.1) Load malicious data sample and preprocess it

df_flows_malicious_dos = pd.read_csv(filename_malicious_DoS, delimiter=";")
df_flows_malicious_dos = preprocessing(df_flows_malicious_dos)
event_log_malicious_dos, df_flows_malicious_dos = event_log_conversion(df_flows_malicious_dos)
df_flows_malicious_dos.head()
time:timestamp case:concept:name org:resource concept:name
0 2022-09-21 15:26:40.114727 1 log_server-temperature-sensor log_server-temperature-sensor → \nmission/test...
1 2022-09-21 15:26:41.114727 2 log_server-temperature-sensor log_server-temperature-sensor → \nmission/test...
2 2022-09-21 15:26:43.114727 3 log_server-temperature-sensor log_server-temperature-sensor → \nmission/test...
3 2022-09-21 15:26:44.114727 4 log_server-temperature-sensor log_server-temperature-sensor → \nmission/test...
4 2022-09-21 15:26:45.114727 5 log_server-temperature-sensor log_server-temperature-sensor → \nmission/test...

(5.1.2) Procedural conformance checking

(5.1.2.1) Token-based replay

conformance_tbr(event_log_malicious_dos, am_net, am_im, am_fm)
replaying log with TBR, completed variants ::   0%|          | 0/2 [00:00<?, ?it/s]



########################## REPLAYED TRACES ##############################
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}

(5.1.2.2) Alignments

conformance_alignment(event_log_malicious_dos, am_net, am_im, am_fm)
aligning log, completed variants ::   0%|          | 0/2 [00:00<?, ?it/s]


{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature')], 'cost': 20000, 'visited_states': 2, 'queued_states': 55, 'traversed_arcs': 55, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 20000}
{'alignment': [('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>'), ('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', '>>')], 'cost': 210000, 'visited_states': 21, 'queued_states': 48, 'traversed_arcs': 48, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 210000}

(5.1.3) Declarative conformance checking

(5.1.3.1) Log skeleton

conformance_log_skeleton(event_log_malicious_dos)
Anomalies:
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}
{'deviations': [('always_after', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),)), ('always_before', (('log_server-temperature-sensor → \nmission/test_system2-sensor-motion', 'log_server-temperature-sensor → \nmission/test_system2-sensor-motion'),))], 'no_dev_total': 2, 'no_constr_total': 3, 'dev_fitness': 0.33333333333333337, 'is_fit': False}

(5.2) Scenario 2: Sidechannel attack with different correlation identifier

(5.2.1) Load malicious data sample and preprocess it

df_flows_malicious_sidechannel = pd.read_csv(filename_malicious_sidechannel, delimiter=";")
df_flows_malicious_sidechannel = preprocessing(df_flows_malicious_sidechannel)
event_log_malicious_sidechannel, df_flows_malicious_sidechannel = event_log_conversion(df_flows_malicious_sidechannel)
df_flows_malicious_sidechannel.head()
time:timestamp case:concept:name org:resource concept:name
0 2022-09-21 15:26:39.420099 1 MQTT Broker MQTT Broker → \nmission/belt_circulation-senso...
1 2022-09-21 15:26:39.420099 1 MQTT Broker MQTT Broker → \nmission/belt_circulation-senso...
2 2022-09-21 15:26:39.420099 1 MQTT Broker MQTT Broker → \nmission/belt_circulation-senso...
3 2022-09-21 15:26:39.420099 1 MQTT Broker MQTT Broker → \nmission/belt_circulation-senso...
4 2022-09-21 15:26:39.420099 1 MQTT Broker MQTT Broker → \nmission/belt_circulation-senso...

(5.2.2) Procedural conformance checking

(5.2.2.1) Token-based replay

conformance_tbr(event_log_malicious_sidechannel, am_net, am_im, am_fm)
########################## REPLAYED TRACES ##############################
{'trace_is_fit': False, 'trace_fitness': 0.0, 'activated_transitions': [], 'reached_marking': ['start:1'], 'enabled_transitions_in_marking': {(log_server-sensor-temperature → 
mission/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mission/log_server-sensor-temperature'), (log_server3-sensor-window → 
mission/log_server3-sensor-window, 'log_server3-sensor-window → 
mission/log_server3-sensor-window'), (test_system1-sensor-motion → 
mission/test_system1-sensor-motion, 'test_system1-sensor-motion → 
mission/test_system1-sensor-motion'), (test_system2-sensor-motion → 
mission/test_system2-sensor-motion, 'test_system2-sensor-motion → 
mission/test_system2-sensor-motion'), (pcs_server-sensor-door → 
mission/pcs_server-sensor-door, 'pcs_server-sensor-door → 
mission/pcs_server-sensor-door'), (test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature, 'test_system1-sensor-temperature → 
mission/test_system1-sensor-temperature'), (belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature, 'belt_circulation-sensor-temperature → 
mission/belt_circulation-sensor-temperature'), (log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector, 'log_server-sensor-smokedetector → 
mission/log_server-sensor-smokedetector'), (log_server-sensor-temperature → 
mind2/log_server-sensor-temperature, 'log_server-sensor-temperature → 
mind2/log_server-sensor-temperature'), (test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature, 'test_system2-sensor-temperature → 
mission/test_system2-sensor-temperature'), (belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion, 'belt_circulation-sensor-motion → 
mission/belt_circulation-sensor-motion'), (belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window, 'belt_circulation2-sensor-window → 
mission/belt_circulation2-sensor-window'), (belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector, 'belt_circulation-sensor-smokedetector → 
mission/belt_circulation-sensor-smokedetector'), (pcs_server-sensor-window → 
mission/pcs_server-sensor-window, 'pcs_server-sensor-window → 
mission/pcs_server-sensor-window'), (cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion, 'cleaning_system-sensor-motion → 
mission/cleaning_system-sensor-motion'), (log_server1-sensor-window → 
mission/log_server1-sensor-window, 'log_server1-sensor-window → 
mission/log_server1-sensor-window'), (log_server2-sensor-window → 
mission/log_server2-sensor-window, 'log_server2-sensor-window → 
mission/log_server2-sensor-window'), (pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector, 'pcs_server-sensor-smokedetector → 
mission/pcs_server-sensor-smokedetector'), (test_system3-sensor-motion → 
mission/test_system3-sensor-motion, 'test_system3-sensor-motion → 
mission/test_system3-sensor-motion'), (belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window, 'belt_circulation1-sensor-window → 
mission/belt_circulation1-sensor-window'), (cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector, 'cleaning_system-sensor-smokedetector → 
mission/cleaning_system-sensor-smokedetector'), (log_server-sensor-motion → 
mission/log_server-sensor-motion, 'log_server-sensor-motion → 
mission/log_server-sensor-motion'), (test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature, 'test_system3-sensor-temperature → 
mission/test_system3-sensor-temperature'), (pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion, 'pcs_server-sensor-motion → 
mission/pcs_server-sensor-motion'), (cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature, 'cleaning_system-sensor-temperature → 
mission/cleaning_system-sensor-temperature'), (cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window, 'cleaning_system1-sensor-window → 
mission/cleaning_system1-sensor-window'), (main-sensor-door → 
mission/main-sensor-door, 'main-sensor-door → 
mission/main-sensor-door')}, 'transitions_with_problems': [], 'missing_tokens': 1, 'consumed_tokens': 1, 'remaining_tokens': 1, 'produced_tokens': 1}

(5.1.2.2) Alignments

conformance_alignment(event_log_malicious_sidechannel, am_net, am_im, am_fm)
{'alignment': [('MQTT Broker → \nmission/belt_circulation-sensor-temperature', '>>'), ('>>', 'test_system3-sensor-temperature → \nmission/test_system3-sensor-temperature'), ('MQTT Broker → \nmission/belt_circulation-sensor-temperature', '>>'), ('MQTT Broker → \nmission/belt_circulation-sensor-temperature', '>>'), ('MQTT Broker → \nmission/belt_circulation-sensor-temperature', '>>'), ('MQTT Broker → \nmission/belt_circulation-sensor-temperature', '>>')], 'cost': 60000, 'visited_states': 6, 'queued_states': 60, 'traversed_arcs': 60, 'lp_solved': 1, 'fitness': 0.0, 'bwc': 60000}

(5.1.3) Declarative conformance checking

(5.1.3.1) Log skeleton

conformance_log_skeleton(event_log_malicious_sidechannel)
No anomalies

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published