diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml new file mode 100644 index 0000000..63bf5a9 --- /dev/null +++ b/.github/workflows/docker-image.yml @@ -0,0 +1,20 @@ +name: Docker Image CI + +on: + push: + branches: [ "release/*" ] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_PASSWORD }} + - name: Build image + run: docker build . --file Dockerfile --tag hendrikreiter/distributed_event_factory:0.2.2 + - name: Push image + run: docker push hendrikreiter/distributed_event_factory:0.2.2 \ No newline at end of file diff --git a/.github/workflows/test-pypi.yml b/.github/workflows/test-pypi.yml new file mode 100644 index 0000000..ac3be27 --- /dev/null +++ b/.github/workflows/test-pypi.yml @@ -0,0 +1,60 @@ +name: Publish to TestPyPI + +on: + push: + branches: [ "release/*" ] + +jobs: + build: + name: Build distribution 📦 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3.10" + - name: Install dependencies + run: | + python3 -m pip install --upgrade pip + pip install -r requirements.txt + - name: Test + run: | + python3 -m unittest test.integration_test.IntegrationTest.test_integration + - name: Install pypa/build + run: >- + python3 -m + pip install + build + --user + - name: Build a binary wheel and a source tarball + run: python3 -m build + - name: Store the distribution packages + uses: actions/upload-artifact@v4 + with: + name: python-package-distributions + path: dist/ + + publish-to-testpypi: + name: Publish Python 🐍 distribution 📦 to TestPyPI + needs: + - build + runs-on: ubuntu-latest + + environment: + name: testpypi + url: https://test.pypi.org/p/distributed-event-factory + + permissions: + id-token: write + + steps: + - name: Download all the dists + uses: actions/download-artifact@v4 + with: + name: python-package-distributions + path: dist/ + - name: Publish distribution 📦 to TestPyPI + uses: pypa/gh-action-pypi-publish@release/v1 + with: + repository-url: https://test.pypi.org/legacy/ \ No newline at end of file diff --git a/.gitignore b/.gitignore index d9005f2..8d8d353 100644 --- a/.gitignore +++ b/.gitignore @@ -89,8 +89,8 @@ ipython_config.py # pipenv # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. -# However, in case of collaboration, if having platform-specific dependencies or dependencies -# having no cross-platform support, pipenv may install dependencies that don't work, or not +# However, in case of collaboration, if having benchmark-specific dependencies or dependencies +# having no cross-benchmark support, pipenv may install dependencies that don't work, or not # install all needed dependencies. #Pipfile.lock @@ -150,3 +150,14 @@ cython_debug/ # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. #.idea/ +.DS_Store +distributed_event_factory/.DS_Store +distributed_event_factory/core/.DS_Store +distributed_event_factory/parser/.DS_Store +distributed_event_factory/parser/datasource/.DS_Store +distributed_event_factory/parser/simulation/.DS_Store +distributed_event_factory/parser/sink/.DS_Store +distributed_event_factory/provider/.DS_Store +distributed_event_factory/provider/data/.DS_Store +distributed_event_factory/provider/eventselection/.DS_Store +distributed_event_factory/provider/transition/.DS_Store diff --git a/.idea/Sensors.iml b/.idea/Sensors.iml deleted file mode 100644 index 6b47a28..0000000 --- a/.idea/Sensors.iml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml index 7304429..718aae1 100644 --- a/.idea/inspectionProfiles/Project_Default.xml +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -5,24 +5,10 @@ - - - - - - \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 63d7d47..cefd9a2 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,7 +1,7 @@ - - + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml deleted file mode 100644 index cf79f7e..0000000 --- a/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/other.xml b/.idea/other.xml deleted file mode 100644 index 640fd80..0000000 --- a/.idea/other.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index f6f5869..c30e641 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,10 +1,9 @@ -ARG PYTHON_VERSION=3.11.4 +ARG PYTHON_VERSION=3.10.12 FROM python:${PYTHON_VERSION}-slim AS base ENV PYTHONDONTWRITEBYTECODE=1 ENV PYTHONUNBUFFERED=1 ENV PYTHONPATH=/app -ENV CONFIG_FILE=proposed.yml WORKDIR /app @@ -23,5 +22,5 @@ RUN --mount=type=cache,target=/root/.cache/pip \ python -m pip install -r requirements.txt USER appuser -COPY . . -CMD python3 main.py \ No newline at end of file +COPY distributed_event_factory distributed_event_factory +CMD python3 distributed_event_factory/event_factory_main.py \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..261eeb9 --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md index f86658f..c8cee84 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,13 @@ # Distributed Event Factory (DEF) -![Factory](factory.png) +![Factory](docs/factory.png) ## About The Distributed Event Factory (DEF) is a simulation tool for Distributed Process Mining. It is designed for simulating real world processes utilizing Markov chains. -It produces events consisting of *caseId*, *activity* and *timestamp* on distributed event sources. +It produces events consisting of classical process mining measures *caseId*, *activity* and *timestamp* on assembled +with location data as the *node* and a *group*. In contrast to traditional process mining, multiple independent event streams are generated instead of a single large one. @@ -24,64 +25,128 @@ We use such a factory as a running example for configuring the DEF. ## Core concepts +Three core concepts underlie DEF: DataSource, Simulation and Sink. Those entities are configured via yaml-files. + +### Datasources DEF is based on a Markov chain. The vertices of the Markov chain represent the distributed data sources. The edges represent transitions between the data sources. They contain a probability for transitioning, the activity -performed -and a function modelling the process duration. -![Markov Chain](markov.png) - -## Minimal Running Example +performed and a function modelling the process duration. +![Markov Chain](docs/markov.png) -The DEF is configured via a yaml file. A minimal running example is presented here +A minimal running example yaml is presented here: ```yaml -numberOfDataSources: - type: static - count: 7 -caseId: increasing -type: load -loadType: constant -tickCount: 100 -load: 10 -dataSourceTopology: - defaultSink: - type: console - dataSources: - - name: "GoodsDelivery" - groupId: "factory" - eventGeneration: - selection: genericProbability - distribution: [ 0.1, 0.7, 0.2 ] - from: - events: - - activity: "Reject" - transition: 7 - duration: 1 +kind: datasource +name: "MaterialPreparation" +spec: + name: "MaterialPreparation" + group: "factory" + selection: genericProbability + distribution: [ 0.8, 0.2 ] + eventData: + - activity: "Waiting for Material" + transition: "MaterialPreparation" + duration: 2 + - activity: "MaterialPreparation - Finished" + duration: 1 + transition: "AssemblyLineSetup" ``` -The configuration of the DEF can be separated into two parts: -simulation configuration and the datasource topology. +Every Resource has to specify a kind in our case the kind `datasource`. +The name (here: `MaterialPreparation`), is used for later referencing this datasource in the code. +The specification `spec` defines the properties of the datasource. The `name` refers to the node name which +is later referred in the `node` field of the generated event. This is also the case for the field `group`. +Moreover, The `selection` of the next emitted event can be specified. In this case its `genericProbability`. +It selects the events from the event data by the defined `distribution`. The event data refers to the edges in the Markov +chain including `duration`, `transition` and `activity`. + +### Sink -### Simulation Configuration +To view and use the data which is generated by the datasources (a) sink(s) must be specified. +The minimal sink-yaml. -`type:` Describes how the simulation is run. Currently, the values `debug` and `load` are supported. -The `load` type gives the possibility to define how the fast the simulation is running. -The `debug` option should be used for development and produces more verbose stacktraces. +```yaml +kind: sink +name: console-sink +spec: + type: console + id: "Sensor" + dataSourceRefs: + - "MaterialPreparation" +``` -`caseId:` Defines a strategy how the caseIds are generated +The `type` of the sink is here defined as `console-sink` which prints the events to the console. The `id` is a prefix to +identify the sink in the console (especially useful if multiple console sinks are used). The `dataSourceRefs` defines +from which datasource the events are emitted. A datasource can be also linked to multiple sinks. -`loadType`: Defines the function which describes the load. In this example it is set to a `constant` load function. +### Simulation +A `simulation` runs the process through our datasources and emits their events via the sinks. The `type` `stream` creates +a datastream. The `caseId` defines how the case-ids are generated. +In the `increasing` mode the caseId is an incrementally increased number. The load defines at which speed the simulation is run. +In this case constantly 10 events per second are emitted. -`load`: Describes the speed the simulation is running +```yaml +kind: simulation +name: streamSimulation +spec: + type: stream + caseId: increasing + load: + loadBehavior: load + load: 10 +``` -### Data Source Topology +### Load Testing +All currently shown configurations are suited for generating mock events streams. +As additional feature, DEF can also be used for real load testing of process mining applications. +However, therefore specific configurations need to be specified. The type of simulation has to be `laod-test` +and the sinks have to be `loadtest` sinks. The load-test sinks depend on a load-test backend which can precisely emit +the specified load event at large scale. -The data sources are defined via a Markov chain. The Markov Chain is configured in a distributed fashion. -Each data source knows its successor. On every edge a duration, a generated activity and the next invoked datasource is -defined. More details can be found [here](provider/datasource/README.md) +The loadtest simulation has 2 new properties to specify: `timeframe` and a load-backend `url`. A timeframe is a batch of events which is submitted together to the load-backend. The number specifies the duration +of this timeframe in milliseconds. +```yaml +kind: sink +name: http-sink +spec: + type: http + id: "Sensor" + timeframe: 1000 + url: "http://localhost:8080/loadgenerator" + dataSourceRefs: + - "MaterialPreparation" +``` + +The simulation specifies a new property `genTimeframesTilStart` first timeframes can be buffered at the +load-backend before the actual event emission is started. +```yaml +kind: simulation +name: assembly-line-simulation +spec: + type: loadTest + caseId: increasing + genTimeframesTilStart: 10 + load: + loadBehavior: constant + load: 1000 +``` + +### Start the load backend +To use the load-backend [docker](docker.io) needs to be installed on your machine. Currently, +the load backend only supports writing data to a kafka queue. +The load-backend is started via the script +```sh +./run-load-backend +``` ## Installation +There are two options install DEF, via PyPI or building it yourself. + +### PyPI + + +### Self Build Requirements: - Python >= 3.10 @@ -94,11 +159,16 @@ pip install -r requirements.txt Define the `Distribted Event Factory` and specify a config file like mentioned above. - ```python -from simulation.distributed_event_factory import DistributedEventFactory -config_file="config/assembly_line.yml" -DistributedEventFactory(config_file).start() +from distributed_event_factory.event_factory import EventFactory + +event_factory = EventFactory() +(event_factory + .add_directory("config/datasource/assemblyline") + .add_file("config/simulation/stream.yaml") + .add_file("config/sink/sink.yaml") + ).run() ``` +## Advanced configuration diff --git a/config/__init__.py b/__init__.py similarity index 100% rename from config/__init__.py rename to __init__.py diff --git a/config/assembly_line.yml b/config/assembly_line.yml deleted file mode 100644 index dc4554f..0000000 --- a/config/assembly_line.yml +++ /dev/null @@ -1,148 +0,0 @@ -numberOfDataSources: - type: static - count: 7 -caseId: increasing -type: load -loadType: constant -tickCount: 100 -load: 10 -dataSourceTopology: - defaultSink: - type: console - dataSources: - - name: "GoodsDelivery" - groupId: "factory" - eventGeneration: - selection: genericProbability - distribution: [0.1, 0.7, 0.2] - from: - events: - - activity: "Reject" - transition: 7 - duration: 1 - - activity: "Store" - transition: 0 - duration: - type: gaussian - mu: 720 - sigma: 120 - - activity: "Pass To Production" - transition: 1 - duration: - type: uniform - lowerBound: 3 - upperBound: 7 - - name: "MaterialPreparation" - groupId: "factory" - eventGeneration: - selection: genericProbability - distribution: [ 0.25, 0.7, 0.05 ] - from: - events: - - activity: "MaterialPreparation - Finished" - duration: - type: uniform - lowerBound: 1 - upperBound: 2 - transition: 2 - - activity: "Waiting for Material" - transition: 1 - duration: 1 - - activity: "Internal Error" - transition: 1 - duration: - type: gaussian - mu: 500 - sigma: 100 - - name: "AssemblyLineSetup" - groupId: "factory" - eventGeneration: - selection: genericProbability - distribution: [ 0.3, 0.4, 0.15, 0.05, 0.1 ] - from: - events: - - activity: "Material Not Set Up as expected" - transition: 1 - duration: - type: uniform - lowerBound: 2 - upperBound: 5 - - activity: "Assembly Line Setup successfully" - transition: 3 - duration: 3 - - activity: "Material in wrong order. Reordering.." - transition: 2 - duration: 1 - - activity: "Maximum Material count exceeded. Remove item" - transition: 2 - duration: 1 - - activity: "Internal Error" - transition: 3 - duration: - type: gaussian - mu: 500 - sigma: 100 - - name: "AssemblyProcess" - groupId: "factory" - eventGeneration: - selection: genericProbability - distribution: [ 0.8, 0.1, 0.08, 0.02 ] - from: - events: - - activity: "Assembling completed" - duration: 10 - transition: 4 - - activity: "Overheating" - transition: 7 - duration: 2 - - activity: "Item broke" - transition: 7 - duration: 1 - - activity: "Internal Error" - transition: 3 - duration: - type: gaussian - mu: 500 - sigma: 100 - - name: "QualityControl" - groupId: "factory" - eventGeneration: - selection: genericProbability - distribution: [ 0.3, 0.1, 0.6 ] - from: - events: - - activity: "Item Needs Corrections" - transition: 3 - duration: 2 - - activity: "Quality Insufficient" - transition: 7 - duration: 2 - - activity: "Quality check passed" - transition: 5 - duration: - type: uniform - lowerBound: 5 - upperBound: 10 - - name: "Packaging" - groupId: "factory" - eventGeneration: - selection: genericProbability - distribution: [ 1.0 ] - from: - events: - - activity: "Packaging completed" - transition: 6 - duration: 3 - - name: "Shipping" - groupId: "factory" - eventGeneration: - selection: uniform - distribution: [ 0.8, 0.2 ] - from: - events: - - activity: "Package waits for sending" - transition: 6 - duration: 180 - - activity: "Package sent" - transition: 7 - duration: 1 \ No newline at end of file diff --git a/config/assembly_line_kafka.yml b/config/assembly_line_kafka.yml deleted file mode 100644 index 0b7d77c..0000000 --- a/config/assembly_line_kafka.yml +++ /dev/null @@ -1,125 +0,0 @@ -numberOfDataSources: - type: static - count: 9 -caseId: increasing -type: load -loadType: gradual -tickCount: 100 -load: 10 -minimalLoad: 5 -dataSourceTopology: - defaultSink: - type: kafkaValidation - bootstrapServer: localhost:9092 - topic: assembly - partition: - type: caseId - numberPartitions: 10 - validationTopic: assembly-validation - validationSplit: 8 - dataSources: - - name: "GoodsDelivery" - eventGeneration: - selection: genericProbability - distribution: [0.1, 0.7, 0.2] - from: - events: - - activity: "Reject" - duration: 1 - transition: 7 - - activity: "Store" - transition: 0 - duration: 720 - - activity: "Pass To Production" - duration: 5 - transition: 1 - - name: "MaterialPreparation" - eventGeneration: - selection: genericProbability - distribution: [ 0.25, 0.7, 0.05 ] - from: - events: - - activity: "MaterialPreparation - Finished" - duration: 5 - transition: 2 - - activity: "Waiting for Material" - duration: 1 - transition: 1 - - activity: "Internal Error" - duration: 500 - transition: 1 - - name: "AssemblyLineSetup" - eventGeneration: - selection: genericProbability - distribution: [ 0.3, 0.4, 0.15, 0.05, 0.1 ] - from: - events: - - activity: "Material Not Set Up as expected" - duration: 2 - transition: 1 - - activity: "Assembly Line Setup successfully" - duration: 3 - transition: 3 - - activity: "Material in wrong order. Reordering.." - duration: 1 - transition: 2 - - activity: "Maximum Material count exceeded. Remove item" - duration: 1 - transition: 2 - - activity: "Internal Error" - duration: 500 - transition: 3 - - name: "AssemblyProcess" - eventGeneration: - selection: genericProbability - distribution: [ 0.8, 0.1, 0.08, 0.02 ] - from: - events: - - activity: "Assembling completed" - duration: 10 - transition: 4 - - activity: "Overheating" - duration: 2 - transition: 7 - - activity: "Item broke" - duration: 1 - transition: 7 - - activity: "Internal Error" - duration: 500 - transition: 3 - - name: "QualityControl" - eventGeneration: - selection: genericProbability - distribution: [ 0.3, 0.1, 0.6 ] - from: - events: - - activity: "Item Needs Corrections" - duration: 2 - transition: 3 - - activity: "Quality Insufficient" - duration: 2 - transition: 7 - - activity: "Quality check passed" - duration: 7 - transition: 5 - - name: "Packaging" - eventGeneration: - selection: genericProbability - distribution: [ 1.0 ] - from: - events: - - activity: "Packaging completed" - duration: 3 - transition: 6 - - name: "Shipping" - eventGeneration: - selection: uniform - distribution: [ 0.8, 0.2 ] - from: - events: - - activity: "Package waits for sending" - duration: 180 - transition: 6 - - activity: "Package sent" - duration: 1 - transition: 7 \ No newline at end of file diff --git a/config/datasource/assemblyline/d0-start.yaml b/config/datasource/assemblyline/d0-start.yaml new file mode 100644 index 0000000..0c61401 --- /dev/null +++ b/config/datasource/assemblyline/d0-start.yaml @@ -0,0 +1,12 @@ +kind: datasource +name: "" +spec: + name: "" + group: "factory" + type: default + selection: genericProbability + distribution: [1.0] + eventData: + - activity: "" + transition: "GoodsDelivery" + duration: 0 \ No newline at end of file diff --git a/config/datasource/assemblyline/d1-goods-delivery.yaml b/config/datasource/assemblyline/d1-goods-delivery.yaml new file mode 100644 index 0000000..bdf1eb9 --- /dev/null +++ b/config/datasource/assemblyline/d1-goods-delivery.yaml @@ -0,0 +1,26 @@ +kind: datasource +name: "GoodsDelivery" +spec: + name: "GoodsDelivery" + group: "factory" + type: default + selection: driftingProbability + startDistribution: [0.1, 0.7, 0.2] + endDistribution: [0.1, 0.2, 0.7] + steps: 1000 + eventData: + - activity: "Reject" + transition: "" + duration: 1 + - activity: "Store" + transition: "GoodsDelivery" + duration: + type: gaussian + mu: 720 + sigma: 120 + - activity: "Pass To Production" + transition: "MaterialPreparation" + duration: + type: uniform + lowerBound: 3 + upperBound: 7 diff --git a/config/datasource/assemblyline/d2-material-preparation.yaml b/config/datasource/assemblyline/d2-material-preparation.yaml new file mode 100644 index 0000000..3d177db --- /dev/null +++ b/config/datasource/assemblyline/d2-material-preparation.yaml @@ -0,0 +1,24 @@ +kind: datasource +name: "MaterialPreparation" +spec: + name: "MaterialPreparation" + group: "factory" + type: default + selection: genericProbability + distribution: [ 0.25, 0.7, 0.05 ] + eventData: + - activity: "MaterialPreparation - Finished" + duration: + type: uniform + lowerBound: 1 + upperBound: 2 + transition: "AssemblyLineSetup" + - activity: "Waiting for Material" + transition: "MaterialPreparation" + duration: 1 + - activity: "Internal Error" + transition: "MaterialPreparation" + duration: + type: gaussian + mu: 500 + sigma: 100 diff --git a/config/datasource/assemblyline/d3-assembly-line-setup.yaml b/config/datasource/assemblyline/d3-assembly-line-setup.yaml new file mode 100644 index 0000000..cf02339 --- /dev/null +++ b/config/datasource/assemblyline/d3-assembly-line-setup.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "AssemblyLineSetup" +spec: + name: "AssemblyLineSetup" + group: "factory" + type: default + selection: genericProbability + distribution: [ 0.3, 0.4, 0.15, 0.05, 0.1 ] + eventData: + - activity: "Material Not Set Up as expected" + transition: "MaterialPreparation" + duration: + type: uniform + lowerBound: 2 + upperBound: 5 + - activity: "Assembly Line Setup successfully" + transition: "Assembling" + duration: 3 + - activity: "Material in wrong order. Reordering.." + transition: "AssemblyLineSetup" + duration: 1 + - activity: "Maximum Material count exceeded. Remove item" + transition: "AssemblyLineSetup" + duration: 1 + - activity: "Internal Error" + transition: "Assembling" + duration: + type: gaussian + mu: 500 + sigma: 100 diff --git a/config/datasource/assemblyline/d4-assembling.yaml b/config/datasource/assemblyline/d4-assembling.yaml new file mode 100644 index 0000000..76f91e9 --- /dev/null +++ b/config/datasource/assemblyline/d4-assembling.yaml @@ -0,0 +1,24 @@ +kind: datasource +name: "Assembling" +spec: + name: "Assembling" + group: "factory" + type: default + selection: genericProbability + distribution: [ 0.8, 0.1, 0.08, 0.02 ] + eventData: + - activity: "Assembling completed" + duration: 10 + transition: "QualityControl" + - activity: "Overheating" + transition: "" + duration: 2 + - activity: "Item broke" + transition: "" + duration: 1 + - activity: "Internal Error" + transition: "Assembling" + duration: + type: gaussian + mu: 500 + sigma: 100 \ No newline at end of file diff --git a/config/datasource/assemblyline/d5-quality-control.yaml b/config/datasource/assemblyline/d5-quality-control.yaml new file mode 100644 index 0000000..1d54df4 --- /dev/null +++ b/config/datasource/assemblyline/d5-quality-control.yaml @@ -0,0 +1,21 @@ +kind: datasource +name: "QualityControl" +spec: + name: "QualityControl" + group: "factory" + type: default + selection: genericProbability + distribution: [ 0.3, 0.1, 0.6 ] + eventData: + - activity: "Item Needs Corrections" + transition: "Assembling" + duration: 2 + - activity: "Quality Insufficient" + transition: "" + duration: 2 + - activity: "Quality check passed" + transition: "Packaging" + duration: + type: uniform + lowerBound: 5 + upperBound: 10 diff --git a/config/datasource/assemblyline/d6-packaging.yaml b/config/datasource/assemblyline/d6-packaging.yaml new file mode 100644 index 0000000..d114534 --- /dev/null +++ b/config/datasource/assemblyline/d6-packaging.yaml @@ -0,0 +1,12 @@ +kind: datasource +name: "Packaging" +spec: + name: "Packaging" + group: "factory" + type: default + selection: genericProbability + distribution: [ 1.0 ] + eventData: + - activity: "Packaging completed" + transition: "Shipping" + duration: 3 diff --git a/config/datasource/assemblyline/d7-shipping.yaml b/config/datasource/assemblyline/d7-shipping.yaml new file mode 100644 index 0000000..fd2c323 --- /dev/null +++ b/config/datasource/assemblyline/d7-shipping.yaml @@ -0,0 +1,15 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: default + selection: genericProbability + distribution: [ 0.8, 0.2 ] + eventData: + - activity: "Package waits for sending" + transition: "Shipping" + duration: 180 + - activity: "Package sent" + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/assemblyline/pin.yaml b/config/datasource/assemblyline/pin.yaml new file mode 100644 index 0000000..342c653 --- /dev/null +++ b/config/datasource/assemblyline/pin.yaml @@ -0,0 +1,8 @@ +kind: object +name: "pin" +spec: + name: "pin" + type: "smallComponent" + input: "order" + length: "5" + width: "" \ No newline at end of file diff --git a/config/datasource/concept-drift/cd-0.yaml b/config/datasource/concept-drift/cd-0.yaml new file mode 100644 index 0000000..688b4fb --- /dev/null +++ b/config/datasource/concept-drift/cd-0.yaml @@ -0,0 +1,11 @@ +kind: datasource +name: "" +spec: + name: "" + group: "concept-drift" + selection: genericProbability + distribution: [1.0] + eventData: + - activity: "" + transition: "A" + duration: 0 \ No newline at end of file diff --git a/config/datasource/concept-drift/cd-a.yaml b/config/datasource/concept-drift/cd-a.yaml new file mode 100644 index 0000000..87d0190 --- /dev/null +++ b/config/datasource/concept-drift/cd-a.yaml @@ -0,0 +1,16 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "concept-drift" + selection: driftingProbability + startDistribution: [ 0.0, 1.0 ] + endDistribution: [ 1.0, 0.0 ] + steps: 30 + eventData: + - activity: "A" + transition: "B" + duration: 1 + - activity: "A" + transition: "C" + duration: 1 \ No newline at end of file diff --git a/config/datasource/concept-drift/cd-b.yaml b/config/datasource/concept-drift/cd-b.yaml new file mode 100644 index 0000000..fe28d01 --- /dev/null +++ b/config/datasource/concept-drift/cd-b.yaml @@ -0,0 +1,11 @@ +kind: datasource +name: "B" +spec: + name: "B" + group: "concept-drift" + selection: genericProbability + distribution: [1.0] + eventData: + - activity: "B" + transition: "D" + duration: 1 \ No newline at end of file diff --git a/config/datasource/concept-drift/cd-c.yaml b/config/datasource/concept-drift/cd-c.yaml new file mode 100644 index 0000000..9951c10 --- /dev/null +++ b/config/datasource/concept-drift/cd-c.yaml @@ -0,0 +1,11 @@ +kind: datasource +name: "C" +spec: + name: "C" + group: "concept-drift" + selection: genericProbability + distribution: [1.0] + eventData: + - activity: "C" + transition: "E" + duration: 1 \ No newline at end of file diff --git a/config/datasource/concept-drift/cd-d.yaml b/config/datasource/concept-drift/cd-d.yaml new file mode 100644 index 0000000..e870917 --- /dev/null +++ b/config/datasource/concept-drift/cd-d.yaml @@ -0,0 +1,11 @@ +kind: datasource +name: "D" +spec: + name: "D" + group: "concept-drift" + selection: genericProbability + distribution: [1.0] + eventData: + - activity: "D" + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/concept-drift/cd-e.yaml b/config/datasource/concept-drift/cd-e.yaml new file mode 100644 index 0000000..2ff77a8 --- /dev/null +++ b/config/datasource/concept-drift/cd-e.yaml @@ -0,0 +1,11 @@ +kind: datasource +name: "E" +spec: + name: "E" + group: "concept-drift" + selection: genericProbability + distribution: [1.0] + eventData: + - activity: "E" + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/durationTestEvent1Activity1/e0-order.yaml b/config/datasource/durationTestEvent1Activity1/e0-order.yaml new file mode 100644 index 0000000..3f31a9f --- /dev/null +++ b/config/datasource/durationTestEvent1Activity1/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent1Activity1/order.yaml b/config/datasource/durationTestEvent1Activity1/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestEvent1Activity1/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent1Activity1/resourceOrder.yaml b/config/datasource/durationTestEvent1Activity1/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestEvent1Activity1/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent1Activity1/warehouse_stock.yaml b/config/datasource/durationTestEvent1Activity1/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestEvent1Activity1/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent1Activity25/e0-order.yaml b/config/datasource/durationTestEvent1Activity25/e0-order.yaml new file mode 100644 index 0000000..b04c546 --- /dev/null +++ b/config/datasource/durationTestEvent1Activity25/e0-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/durationTestEvent1Activity25/order.yaml b/config/datasource/durationTestEvent1Activity25/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestEvent1Activity25/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent1Activity25/resourceOrder.yaml b/config/datasource/durationTestEvent1Activity25/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestEvent1Activity25/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent1Activity25/warehouse_stock.yaml b/config/datasource/durationTestEvent1Activity25/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestEvent1Activity25/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent1Activity5/e0-order.yaml b/config/datasource/durationTestEvent1Activity5/e0-order.yaml new file mode 100644 index 0000000..ba77465 --- /dev/null +++ b/config/datasource/durationTestEvent1Activity5/e0-order.yaml @@ -0,0 +1,63 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.96, 0.01, 0.01, 0.01, 0.01] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent1Activity5/order.yaml b/config/datasource/durationTestEvent1Activity5/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestEvent1Activity5/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent1Activity5/resourceOrder.yaml b/config/datasource/durationTestEvent1Activity5/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestEvent1Activity5/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent1Activity5/warehouse_stock.yaml b/config/datasource/durationTestEvent1Activity5/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestEvent1Activity5/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e0-order.yaml b/config/datasource/durationTestEvent25Activity1/e0-order.yaml new file mode 100644 index 0000000..0aaafcd --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e1-order.yaml b/config/datasource/durationTestEvent25Activity1/e1-order.yaml new file mode 100644 index 0000000..49c73b7 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e1-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "B" +spec: + name: "B" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e10-order.yaml b/config/datasource/durationTestEvent25Activity1/e10-order.yaml new file mode 100644 index 0000000..3593606 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e10-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Packaging" +spec: + name: "Packaging" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e11-order.yaml b/config/datasource/durationTestEvent25Activity1/e11-order.yaml new file mode 100644 index 0000000..37869a0 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e11-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e12-order.yaml b/config/datasource/durationTestEvent25Activity1/e12-order.yaml new file mode 100644 index 0000000..3f31a9f --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e12-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e13-order.yaml b/config/datasource/durationTestEvent25Activity1/e13-order.yaml new file mode 100644 index 0000000..450e32e --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e13-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e14-order.yaml b/config/datasource/durationTestEvent25Activity1/e14-order.yaml new file mode 100644 index 0000000..cbaf158 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e14-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Assembly" +spec: + name: "Assembly" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e15-order.yaml b/config/datasource/durationTestEvent25Activity1/e15-order.yaml new file mode 100644 index 0000000..eb91d6d --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e15-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e16-order.yaml b/config/datasource/durationTestEvent25Activity1/e16-order.yaml new file mode 100644 index 0000000..a18ed24 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e16-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e17-order.yaml b/config/datasource/durationTestEvent25Activity1/e17-order.yaml new file mode 100644 index 0000000..e7470e9 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e17-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "SawingBar" +spec: + name: "SawingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e18-order.yaml b/config/datasource/durationTestEvent25Activity1/e18-order.yaml new file mode 100644 index 0000000..6d9aa27 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e18-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e19-order.yaml b/config/datasource/durationTestEvent25Activity1/e19-order.yaml new file mode 100644 index 0000000..58a5670 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e19-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e2-order.yaml b/config/datasource/durationTestEvent25Activity1/e2-order.yaml new file mode 100644 index 0000000..01bb942 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e2-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "C" +spec: + name: "C" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e20-order.yaml b/config/datasource/durationTestEvent25Activity1/e20-order.yaml new file mode 100644 index 0000000..fccbaa5 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e20-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "DrillingBar" +spec: + name: "DrillingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e21-order.yaml b/config/datasource/durationTestEvent25Activity1/e21-order.yaml new file mode 100644 index 0000000..a91dde1 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e21-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e22-order.yaml b/config/datasource/durationTestEvent25Activity1/e22-order.yaml new file mode 100644 index 0000000..a6850bb --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e22-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e23-order.yaml b/config/datasource/durationTestEvent25Activity1/e23-order.yaml new file mode 100644 index 0000000..8d8e600 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e23-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "SandingBar" +spec: + name: "SandingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e24-order.yaml b/config/datasource/durationTestEvent25Activity1/e24-order.yaml new file mode 100644 index 0000000..8b19243 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e24-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e3-order.yaml b/config/datasource/durationTestEvent25Activity1/e3-order.yaml new file mode 100644 index 0000000..880563e --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e3-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "D" +spec: + name: "D" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e4-order.yaml b/config/datasource/durationTestEvent25Activity1/e4-order.yaml new file mode 100644 index 0000000..00315de --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e4-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "E" +spec: + name: "E" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e5-order.yaml b/config/datasource/durationTestEvent25Activity1/e5-order.yaml new file mode 100644 index 0000000..12cb1a6 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e5-order.yaml @@ -0,0 +1,29 @@ +e4-order: + yaml: +kind: datasource +name: "GoodsDelivery" +spec: + name: "GoodsDelivery" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e6-order.yaml b/config/datasource/durationTestEvent25Activity1/e6-order.yaml new file mode 100644 index 0000000..f18823d --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e6-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "MaterialPreparation" +spec: + name: "MaterialPreparation" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e7-order.yaml b/config/datasource/durationTestEvent25Activity1/e7-order.yaml new file mode 100644 index 0000000..a7730ad --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e7-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "AssemblyLineSetup" +spec: + name: "AssemblyLineSetup" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e8-order.yaml b/config/datasource/durationTestEvent25Activity1/e8-order.yaml new file mode 100644 index 0000000..751d157 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e8-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Assembling" +spec: + name: "Assembling" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/e9-order.yaml b/config/datasource/durationTestEvent25Activity1/e9-order.yaml new file mode 100644 index 0000000..9995073 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/e9-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "QualityControl" +spec: + name: "QualityControl" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/order.yaml b/config/datasource/durationTestEvent25Activity1/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/resourceOrder.yaml b/config/datasource/durationTestEvent25Activity1/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1/warehouse_stock.yaml b/config/datasource/durationTestEvent25Activity1/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e0-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e0-order.yaml new file mode 100644 index 0000000..0aaafcd --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e1-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e1-order.yaml new file mode 100644 index 0000000..847d1cd --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e1-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "B" +spec: + name: "B" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e10-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e10-order.yaml new file mode 100644 index 0000000..e932459 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e10-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Packaging" +spec: + name: "Packaging" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "J" + end: "J" + workstation: "J" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e11-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e11-order.yaml new file mode 100644 index 0000000..d52d26f --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e11-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "K" + end: "K" + workstation: "K" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e12-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e12-order.yaml new file mode 100644 index 0000000..10b4736 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e12-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "L" + end: "L" + workstation: "L" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e13-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e13-order.yaml new file mode 100644 index 0000000..d43f6b6 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e13-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e14-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e14-order.yaml new file mode 100644 index 0000000..b939e03 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e14-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Assembly" +spec: + name: "Assembly" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "N" + end: "N" + workstation: "N" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e15-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e15-order.yaml new file mode 100644 index 0000000..b71cdaa --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e15-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "P" + end: "P" + workstation: "P" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e16-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e16-order.yaml new file mode 100644 index 0000000..45f5c73 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e16-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "Q" + end: "Q" + workstation: "Q" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e17-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e17-order.yaml new file mode 100644 index 0000000..e67364a --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e17-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "SawingBar" +spec: + name: "SawingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "R" + end: "R" + workstation: "R" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e18-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e18-order.yaml new file mode 100644 index 0000000..cfcdeff --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e18-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e19-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e19-order.yaml new file mode 100644 index 0000000..a774520 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e19-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "T" + end: "T" + workstation: "T" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e2-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e2-order.yaml new file mode 100644 index 0000000..86a3507 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e2-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "C" +spec: + name: "C" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "B" + end: "B" + workstation: "B" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e20-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e20-order.yaml new file mode 100644 index 0000000..8a269ae --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e20-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "DrillingBar" +spec: + name: "DrillingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "U" + end: "U" + workstation: "U" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e21-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e21-order.yaml new file mode 100644 index 0000000..d6f2e72 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e21-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "V" + end: "V" + workstation: "V" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e22-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e22-order.yaml new file mode 100644 index 0000000..ae9a59a --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e22-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e23-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e23-order.yaml new file mode 100644 index 0000000..500b055 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e23-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "SandingBar" +spec: + name: "SandingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "X" + end: "X" + workstation: "X" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e24-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e24-order.yaml new file mode 100644 index 0000000..7661e2d --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e24-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "Y" + end: "Y" + workstation: "Y" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e3-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e3-order.yaml new file mode 100644 index 0000000..d78b89a --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e3-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "D" +spec: + name: "D" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "C" + end: "C" + workstation: "C" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e4-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e4-order.yaml new file mode 100644 index 0000000..b973016 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e4-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "E" +spec: + name: "E" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "D" + end: "D" + workstation: "D" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e5-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e5-order.yaml new file mode 100644 index 0000000..10ca5fd --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e5-order.yaml @@ -0,0 +1,29 @@ +e4-order: + yaml: +kind: datasource +name: "GoodsDelivery" +spec: + name: "GoodsDelivery" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "E" + end: "E" + workstation: "E" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e6-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e6-order.yaml new file mode 100644 index 0000000..1913551 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e6-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "MaterialPreparation" +spec: + name: "MaterialPreparation" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "F" + end: "F" + workstation: "F" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e7-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e7-order.yaml new file mode 100644 index 0000000..0e63f93 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e7-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "AssemblyLineSetup" +spec: + name: "AssemblyLineSetup" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "G" + end: "G" + workstation: "G" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e8-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e8-order.yaml new file mode 100644 index 0000000..4ce6b07 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e8-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Assembling" +spec: + name: "Assembling" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "H" + end: "H" + workstation: "H" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/e9-order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/e9-order.yaml new file mode 100644 index 0000000..2490bab --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/e9-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "QualityControl" +spec: + name: "QualityControl" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "I" + end: "I" + workstation: "I" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/order.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/resourceOrder.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity1DifWorkstation/warehouse_stock.yaml b/config/datasource/durationTestEvent25Activity1DifWorkstation/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestEvent25Activity1DifWorkstation/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e0-order.yaml b/config/datasource/durationTestEvent25Activity25/e0-order.yaml new file mode 100644 index 0000000..23ed98c --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e0-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e1-order.yaml b/config/datasource/durationTestEvent25Activity25/e1-order.yaml new file mode 100644 index 0000000..4fc450b --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e1-order.yaml @@ -0,0 +1,244 @@ +kind: datasource +name: "B" +spec: + name: "B" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e10-order.yaml b/config/datasource/durationTestEvent25Activity25/e10-order.yaml new file mode 100644 index 0000000..863615b --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e10-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "Packaging" +spec: + name: "Packaging" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e11-order.yaml b/config/datasource/durationTestEvent25Activity25/e11-order.yaml new file mode 100644 index 0000000..d4369af --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e11-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e12-order.yaml b/config/datasource/durationTestEvent25Activity25/e12-order.yaml new file mode 100644 index 0000000..19aed49 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e12-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e13-order.yaml b/config/datasource/durationTestEvent25Activity25/e13-order.yaml new file mode 100644 index 0000000..0107331 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e13-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e14-order.yaml b/config/datasource/durationTestEvent25Activity25/e14-order.yaml new file mode 100644 index 0000000..74ea5bf --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e14-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "Assembly" +spec: + name: "Assembly" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e15-order.yaml b/config/datasource/durationTestEvent25Activity25/e15-order.yaml new file mode 100644 index 0000000..8e9e0f6 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e15-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e16-order.yaml b/config/datasource/durationTestEvent25Activity25/e16-order.yaml new file mode 100644 index 0000000..3ce60e6 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e16-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e17-order.yaml b/config/datasource/durationTestEvent25Activity25/e17-order.yaml new file mode 100644 index 0000000..78d281d --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e17-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "SawingBar" +spec: + name: "SawingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e18-order.yaml b/config/datasource/durationTestEvent25Activity25/e18-order.yaml new file mode 100644 index 0000000..de52e23 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e18-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e19-order.yaml b/config/datasource/durationTestEvent25Activity25/e19-order.yaml new file mode 100644 index 0000000..a3abe75 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e19-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e2-order.yaml b/config/datasource/durationTestEvent25Activity25/e2-order.yaml new file mode 100644 index 0000000..65ee657 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e2-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "C" +spec: + name: "C" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e20-order.yaml b/config/datasource/durationTestEvent25Activity25/e20-order.yaml new file mode 100644 index 0000000..af2b3ad --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e20-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "DrillingBar" +spec: + name: "DrillingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e21-order.yaml b/config/datasource/durationTestEvent25Activity25/e21-order.yaml new file mode 100644 index 0000000..d5ab983 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e21-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e22-order.yaml b/config/datasource/durationTestEvent25Activity25/e22-order.yaml new file mode 100644 index 0000000..cb9b806 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e22-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e23-order.yaml b/config/datasource/durationTestEvent25Activity25/e23-order.yaml new file mode 100644 index 0000000..394cef2 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e23-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "SandingBar" +spec: + name: "SandingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e24-order.yaml b/config/datasource/durationTestEvent25Activity25/e24-order.yaml new file mode 100644 index 0000000..84b7f65 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e24-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e3-order.yaml b/config/datasource/durationTestEvent25Activity25/e3-order.yaml new file mode 100644 index 0000000..a175803 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e3-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "D" +spec: + name: "D" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e4-order.yaml b/config/datasource/durationTestEvent25Activity25/e4-order.yaml new file mode 100644 index 0000000..b4cb427 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e4-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "E" +spec: + name: "E" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e5-order.yaml b/config/datasource/durationTestEvent25Activity25/e5-order.yaml new file mode 100644 index 0000000..68d08cc --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e5-order.yaml @@ -0,0 +1,245 @@ +e4-order: + yaml: +kind: datasource +name: "GoodsDelivery" +spec: + name: "GoodsDelivery" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e6-order.yaml b/config/datasource/durationTestEvent25Activity25/e6-order.yaml new file mode 100644 index 0000000..349c159 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e6-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "MaterialPreparation" +spec: + name: "MaterialPreparation" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e7-order.yaml b/config/datasource/durationTestEvent25Activity25/e7-order.yaml new file mode 100644 index 0000000..37862f2 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e7-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "AssemblyLineSetup" +spec: + name: "AssemblyLineSetup" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e8-order.yaml b/config/datasource/durationTestEvent25Activity25/e8-order.yaml new file mode 100644 index 0000000..87ed19c --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e8-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "Assembling" +spec: + name: "Assembling" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/e9-order.yaml b/config/datasource/durationTestEvent25Activity25/e9-order.yaml new file mode 100644 index 0000000..c76b7a9 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/e9-order.yaml @@ -0,0 +1,243 @@ +kind: datasource +name: "QualityControl" +spec: + name: "QualityControl" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [ 0.76, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01 ] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5a" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5b" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5c" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource1d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5d" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/order.yaml b/config/datasource/durationTestEvent25Activity25/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/resourceOrder.yaml b/config/datasource/durationTestEvent25Activity25/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent25Activity25/warehouse_stock.yaml b/config/datasource/durationTestEvent25Activity25/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestEvent25Activity25/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1/e0-order.yaml b/config/datasource/durationTestEvent5Activity1/e0-order.yaml new file mode 100644 index 0000000..5b3bfec --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1/e1-order.yaml b/config/datasource/durationTestEvent5Activity1/e1-order.yaml new file mode 100644 index 0000000..caa4031 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1/e1-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "B" +spec: + name: "B" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1/e2-order.yaml b/config/datasource/durationTestEvent5Activity1/e2-order.yaml new file mode 100644 index 0000000..eaa10c1 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1/e2-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "C" +spec: + name: "C" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1/e3-order.yaml b/config/datasource/durationTestEvent5Activity1/e3-order.yaml new file mode 100644 index 0000000..fbaf02a --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1/e3-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "D" +spec: + name: "D" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1/e4-order.yaml b/config/datasource/durationTestEvent5Activity1/e4-order.yaml new file mode 100644 index 0000000..00315de --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1/e4-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "E" +spec: + name: "E" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1/order.yaml b/config/datasource/durationTestEvent5Activity1/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1/resourceOrder.yaml b/config/datasource/durationTestEvent5Activity1/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1/warehouse_stock.yaml b/config/datasource/durationTestEvent5Activity1/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1DifWorkstation/e0-order.yaml b/config/datasource/durationTestEvent5Activity1DifWorkstation/e0-order.yaml new file mode 100644 index 0000000..5b3bfec --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1DifWorkstation/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1DifWorkstation/e1-order.yaml b/config/datasource/durationTestEvent5Activity1DifWorkstation/e1-order.yaml new file mode 100644 index 0000000..f35713e --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1DifWorkstation/e1-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "B" +spec: + name: "B" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1DifWorkstation/e2-order.yaml b/config/datasource/durationTestEvent5Activity1DifWorkstation/e2-order.yaml new file mode 100644 index 0000000..a50b80c --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1DifWorkstation/e2-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "C" +spec: + name: "C" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "B" + end: "B" + workstation: "B" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1DifWorkstation/e3-order.yaml b/config/datasource/durationTestEvent5Activity1DifWorkstation/e3-order.yaml new file mode 100644 index 0000000..fa69859 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1DifWorkstation/e3-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "D" +spec: + name: "D" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "C" + end: "C" + workstation: "C" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1DifWorkstation/e4-order.yaml b/config/datasource/durationTestEvent5Activity1DifWorkstation/e4-order.yaml new file mode 100644 index 0000000..b973016 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1DifWorkstation/e4-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "E" +spec: + name: "E" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "D" + end: "D" + workstation: "D" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1DifWorkstation/order.yaml b/config/datasource/durationTestEvent5Activity1DifWorkstation/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1DifWorkstation/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1DifWorkstation/resourceOrder.yaml b/config/datasource/durationTestEvent5Activity1DifWorkstation/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1DifWorkstation/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity1DifWorkstation/warehouse_stock.yaml b/config/datasource/durationTestEvent5Activity1DifWorkstation/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestEvent5Activity1DifWorkstation/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity5/e0-order.yaml b/config/datasource/durationTestEvent5Activity5/e0-order.yaml new file mode 100644 index 0000000..ba77465 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity5/e0-order.yaml @@ -0,0 +1,63 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.96, 0.01, 0.01, 0.01, 0.01] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity5/e1-order.yaml b/config/datasource/durationTestEvent5Activity5/e1-order.yaml new file mode 100644 index 0000000..d3b7455 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity5/e1-order.yaml @@ -0,0 +1,63 @@ +kind: datasource +name: "B" +spec: + name: "B" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.96, 0.01, 0.01, 0.01, 0.01] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity5/e2-order.yaml b/config/datasource/durationTestEvent5Activity5/e2-order.yaml new file mode 100644 index 0000000..ab08130 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity5/e2-order.yaml @@ -0,0 +1,63 @@ +kind: datasource +name: "C" +spec: + name: "C" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.96, 0.01, 0.01, 0.01, 0.01] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity5/e3-order.yaml b/config/datasource/durationTestEvent5Activity5/e3-order.yaml new file mode 100644 index 0000000..4112160 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity5/e3-order.yaml @@ -0,0 +1,63 @@ +kind: datasource +name: "D" +spec: + name: "D" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.96, 0.01, 0.01, 0.01, 0.01] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity5/e4-order.yaml b/config/datasource/durationTestEvent5Activity5/e4-order.yaml new file mode 100644 index 0000000..42ea253 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity5/e4-order.yaml @@ -0,0 +1,63 @@ +kind: datasource +name: "E" +spec: + name: "E" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.96, 0.01, 0.01, 0.01, 0.01] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resource1" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource2" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource3" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource4" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resource5" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity5/order.yaml b/config/datasource/durationTestEvent5Activity5/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity5/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity5/resourceOrder.yaml b/config/datasource/durationTestEvent5Activity5/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestEvent5Activity5/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEvent5Activity5/warehouse_stock.yaml b/config/datasource/durationTestEvent5Activity5/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestEvent5Activity5/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF1/e0-order.yaml b/config/datasource/durationTestEventNumberMiddleWF1/e0-order.yaml new file mode 100644 index 0000000..c1dbe22 --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF1/e0-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF1/e1-order.yaml b/config/datasource/durationTestEventNumberMiddleWF1/e1-order.yaml new file mode 100644 index 0000000..f35713e --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF1/e1-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "B" +spec: + name: "B" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF1/e2-order.yaml b/config/datasource/durationTestEventNumberMiddleWF1/e2-order.yaml new file mode 100644 index 0000000..a50b80c --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF1/e2-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "C" +spec: + name: "C" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "B" + end: "B" + workstation: "B" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF1/e3-order.yaml b/config/datasource/durationTestEventNumberMiddleWF1/e3-order.yaml new file mode 100644 index 0000000..fa69859 --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF1/e3-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "D" +spec: + name: "D" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "C" + end: "C" + workstation: "C" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF1/e4-order.yaml b/config/datasource/durationTestEventNumberMiddleWF1/e4-order.yaml new file mode 100644 index 0000000..b973016 --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF1/e4-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "E" +spec: + name: "E" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "D" + end: "D" + workstation: "D" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF1/order.yaml b/config/datasource/durationTestEventNumberMiddleWF1/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF1/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF1/resourceOrder.yaml b/config/datasource/durationTestEventNumberMiddleWF1/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF1/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF1/warehouse_stock.yaml b/config/datasource/durationTestEventNumberMiddleWF1/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF1/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF1/workforces.yaml b/config/datasource/durationTestEventNumberMiddleWF1/workforces.yaml new file mode 100644 index 0000000..d907ebe --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF1/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "humanWorkforce" + startLocation: "O" + number: 1 \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF5/e0-order.yaml b/config/datasource/durationTestEventNumberMiddleWF5/e0-order.yaml new file mode 100644 index 0000000..c1dbe22 --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF5/e0-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF5/e1-order.yaml b/config/datasource/durationTestEventNumberMiddleWF5/e1-order.yaml new file mode 100644 index 0000000..a78bba7 --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF5/e1-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "B" +spec: + name: "B" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF5/e2-order.yaml b/config/datasource/durationTestEventNumberMiddleWF5/e2-order.yaml new file mode 100644 index 0000000..b2726b3 --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF5/e2-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "C" +spec: + name: "C" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "B" + end: "B" + workstation: "B" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF5/e3-order.yaml b/config/datasource/durationTestEventNumberMiddleWF5/e3-order.yaml new file mode 100644 index 0000000..1a4774b --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF5/e3-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "D" +spec: + name: "D" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "C" + end: "C" + workstation: "C" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF5/e4-order.yaml b/config/datasource/durationTestEventNumberMiddleWF5/e4-order.yaml new file mode 100644 index 0000000..300581a --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF5/e4-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "E" +spec: + name: "E" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "D" + end: "D" + workstation: "D" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF5/order.yaml b/config/datasource/durationTestEventNumberMiddleWF5/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF5/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF5/resourceOrder.yaml b/config/datasource/durationTestEventNumberMiddleWF5/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF5/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF5/warehouse_stock.yaml b/config/datasource/durationTestEventNumberMiddleWF5/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF5/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestEventNumberMiddleWF5/workforces.yaml b/config/datasource/durationTestEventNumberMiddleWF5/workforces.yaml new file mode 100644 index 0000000..8733a76 --- /dev/null +++ b/config/datasource/durationTestEventNumberMiddleWF5/workforces.yaml @@ -0,0 +1,19 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "humanWorkforce" + startLocation: "O" + number: 1 + - name: "humanWorkforce" + startLocation: "A" + number: 1 + - name: "humanWorkforce" + startLocation: "B" + number: 1 + - name: "humanWorkforce" + startLocation: "C" + number: 1 + - name: "humanWorkforce" + startLocation: "D" + number: 1 \ No newline at end of file diff --git a/config/datasource/durationTestObject12/diamond.yaml b/config/datasource/durationTestObject12/diamond.yaml new file mode 100644 index 0000000..e731d5c --- /dev/null +++ b/config/datasource/durationTestObject12/diamond.yaml @@ -0,0 +1,6 @@ +kind: object +name: "diamond" +spec: + name: "diamond" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/e0-order.yaml b/config/datasource/durationTestObject12/e0-order.yaml new file mode 100644 index 0000000..d0abdbc --- /dev/null +++ b/config/datasource/durationTestObject12/e0-order.yaml @@ -0,0 +1,35 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + - object: "order2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestObject12/e1-outgoing-stock.yaml b/config/datasource/durationTestObject12/e1-outgoing-stock.yaml new file mode 100644 index 0000000..9b8fcba --- /dev/null +++ b/config/datasource/durationTestObject12/e1-outgoing-stock.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + - object: "resourceOrder2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "gold" + number: 1 + change: "" + size: + - object: "whitegold" + number: 1 + change: "" + size: + - object: "silver" + number: 1 + change: "" + size: + - object: "stone" + number: 1 + change: "" + size: + - object: "diamond" + number: 1 + change: "" + size: + - object: "smaragd" + number: 1 + change: "" + size: + - object: "rubin" + number: 1 + change: "" + size: + duration: 3 + transition: "Forging" \ No newline at end of file diff --git a/config/datasource/durationTestObject12/e2-forging.yaml b/config/datasource/durationTestObject12/e2-forging.yaml new file mode 100644 index 0000000..10975b8 --- /dev/null +++ b/config/datasource/durationTestObject12/e2-forging.yaml @@ -0,0 +1,51 @@ +kind: datasource +name: "Forging" +spec: + name: "Forging" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + - object: "whitegold" + number: 1 + lastState: "" + size: + - object: "silver" + number: 1 + lastState: "" + size: + - object: "stone" + number: 1 + lastState: "" + size: + - object: "diamond" + number: 1 + lastState: "" + size: + - object: "smaragd" + number: 1 + lastState: "" + size: + - object: "rubin" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Forged" + output: + - object: "ring" + number: 1 + change: "shaped" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/durationTestObject12/gold.yaml b/config/datasource/durationTestObject12/gold.yaml new file mode 100644 index 0000000..ad33055 --- /dev/null +++ b/config/datasource/durationTestObject12/gold.yaml @@ -0,0 +1,6 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/order.yaml b/config/datasource/durationTestObject12/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestObject12/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/order2.yaml b/config/datasource/durationTestObject12/order2.yaml new file mode 100644 index 0000000..0d6e2f0 --- /dev/null +++ b/config/datasource/durationTestObject12/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/resourceOrder.yaml b/config/datasource/durationTestObject12/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestObject12/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/resourceOrder2.yaml b/config/datasource/durationTestObject12/resourceOrder2.yaml new file mode 100644 index 0000000..c2a6497 --- /dev/null +++ b/config/datasource/durationTestObject12/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/ring.yaml b/config/datasource/durationTestObject12/ring.yaml new file mode 100644 index 0000000..9028a78 --- /dev/null +++ b/config/datasource/durationTestObject12/ring.yaml @@ -0,0 +1,6 @@ +kind: object +name: "ring" +spec: + name: "ring" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/routing.yaml b/config/datasource/durationTestObject12/routing.yaml new file mode 100644 index 0000000..4647302 --- /dev/null +++ b/config/datasource/durationTestObject12/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "S" + duration: 3 + - routeForActivity: "Back to stock" + start: "S" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "S" + duration: 3 + - routeForActivity: "Back to machine" + start: "S" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/durationTestObject12/rubin.yaml b/config/datasource/durationTestObject12/rubin.yaml new file mode 100644 index 0000000..aab66f8 --- /dev/null +++ b/config/datasource/durationTestObject12/rubin.yaml @@ -0,0 +1,6 @@ +kind: object +name: "rubin" +spec: + name: "rubin" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/silver.yaml b/config/datasource/durationTestObject12/silver.yaml new file mode 100644 index 0000000..a051d6d --- /dev/null +++ b/config/datasource/durationTestObject12/silver.yaml @@ -0,0 +1,6 @@ +kind: object +name: "silver" +spec: + name: "silver" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/smaragd.yaml b/config/datasource/durationTestObject12/smaragd.yaml new file mode 100644 index 0000000..d6bacf5 --- /dev/null +++ b/config/datasource/durationTestObject12/smaragd.yaml @@ -0,0 +1,6 @@ +kind: object +name: "smaragd" +spec: + name: "smaragd" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/stone.yaml b/config/datasource/durationTestObject12/stone.yaml new file mode 100644 index 0000000..4ff96e8 --- /dev/null +++ b/config/datasource/durationTestObject12/stone.yaml @@ -0,0 +1,6 @@ +kind: object +name: "stone" +spec: + name: "stone" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/warehouse_stock.yaml b/config/datasource/durationTestObject12/warehouse_stock.yaml new file mode 100644 index 0000000..288f783 --- /dev/null +++ b/config/datasource/durationTestObject12/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: + - object: "order2" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/whitegold.yaml b/config/datasource/durationTestObject12/whitegold.yaml new file mode 100644 index 0000000..0ba7e29 --- /dev/null +++ b/config/datasource/durationTestObject12/whitegold.yaml @@ -0,0 +1,6 @@ +kind: object +name: "whitegold" +spec: + name: "whitegold" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject12/workforces.yaml b/config/datasource/durationTestObject12/workforces.yaml new file mode 100644 index 0000000..d8948eb --- /dev/null +++ b/config/datasource/durationTestObject12/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "humanWorkforce" + startLocation: "ST" + number: 2 \ No newline at end of file diff --git a/config/datasource/durationTestObject3/e0-order.yaml b/config/datasource/durationTestObject3/e0-order.yaml new file mode 100644 index 0000000..3f31a9f --- /dev/null +++ b/config/datasource/durationTestObject3/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestObject3/e1-outgoing-stock.yaml b/config/datasource/durationTestObject3/e1-outgoing-stock.yaml new file mode 100644 index 0000000..c81339d --- /dev/null +++ b/config/datasource/durationTestObject3/e1-outgoing-stock.yaml @@ -0,0 +1,26 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "gold" + number: 1 + change: "" + size: + duration: 3 + transition: "Forging" \ No newline at end of file diff --git a/config/datasource/durationTestObject3/e2-forging.yaml b/config/datasource/durationTestObject3/e2-forging.yaml new file mode 100644 index 0000000..4808720 --- /dev/null +++ b/config/datasource/durationTestObject3/e2-forging.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Forging" +spec: + name: "Forging" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/durationTestObject3/gold.yaml b/config/datasource/durationTestObject3/gold.yaml new file mode 100644 index 0000000..ad33055 --- /dev/null +++ b/config/datasource/durationTestObject3/gold.yaml @@ -0,0 +1,6 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject3/order.yaml b/config/datasource/durationTestObject3/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestObject3/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject3/resourceOrder.yaml b/config/datasource/durationTestObject3/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestObject3/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject3/routing.yaml b/config/datasource/durationTestObject3/routing.yaml new file mode 100644 index 0000000..4647302 --- /dev/null +++ b/config/datasource/durationTestObject3/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "S" + duration: 3 + - routeForActivity: "Back to stock" + start: "S" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "S" + duration: 3 + - routeForActivity: "Back to machine" + start: "S" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/durationTestObject3/warehouse_stock.yaml b/config/datasource/durationTestObject3/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/durationTestObject3/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject3/workforces.yaml b/config/datasource/durationTestObject3/workforces.yaml new file mode 100644 index 0000000..d8948eb --- /dev/null +++ b/config/datasource/durationTestObject3/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "humanWorkforce" + startLocation: "ST" + number: 2 \ No newline at end of file diff --git a/config/datasource/durationTestObject6/e0-order.yaml b/config/datasource/durationTestObject6/e0-order.yaml new file mode 100644 index 0000000..f9b987a --- /dev/null +++ b/config/datasource/durationTestObject6/e0-order.yaml @@ -0,0 +1,31 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + - object: "order2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/durationTestObject6/e1-outgoing-stock.yaml b/config/datasource/durationTestObject6/e1-outgoing-stock.yaml new file mode 100644 index 0000000..be7a7a3 --- /dev/null +++ b/config/datasource/durationTestObject6/e1-outgoing-stock.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "gold" + number: 1 + change: "" + size: + - object: "whitegold" + number: 1 + change: "" + size: + duration: 3 + transition: "Forging" \ No newline at end of file diff --git a/config/datasource/durationTestObject6/e2-forging.yaml b/config/datasource/durationTestObject6/e2-forging.yaml new file mode 100644 index 0000000..17d1a9b --- /dev/null +++ b/config/datasource/durationTestObject6/e2-forging.yaml @@ -0,0 +1,31 @@ +kind: datasource +name: "Forging" +spec: + name: "Forging" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + - object: "whitegold" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Forged" + output: + - object: "ring" + number: 1 + change: "shaped" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/durationTestObject6/gold.yaml b/config/datasource/durationTestObject6/gold.yaml new file mode 100644 index 0000000..ad33055 --- /dev/null +++ b/config/datasource/durationTestObject6/gold.yaml @@ -0,0 +1,6 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject6/order.yaml b/config/datasource/durationTestObject6/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/durationTestObject6/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject6/order2.yaml b/config/datasource/durationTestObject6/order2.yaml new file mode 100644 index 0000000..0d6e2f0 --- /dev/null +++ b/config/datasource/durationTestObject6/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject6/resourceOrder.yaml b/config/datasource/durationTestObject6/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/durationTestObject6/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject6/ring.yaml b/config/datasource/durationTestObject6/ring.yaml new file mode 100644 index 0000000..9028a78 --- /dev/null +++ b/config/datasource/durationTestObject6/ring.yaml @@ -0,0 +1,6 @@ +kind: object +name: "ring" +spec: + name: "ring" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject6/routing.yaml b/config/datasource/durationTestObject6/routing.yaml new file mode 100644 index 0000000..4647302 --- /dev/null +++ b/config/datasource/durationTestObject6/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "S" + duration: 3 + - routeForActivity: "Back to stock" + start: "S" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "S" + duration: 3 + - routeForActivity: "Back to machine" + start: "S" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/durationTestObject6/warehouse_stock.yaml b/config/datasource/durationTestObject6/warehouse_stock.yaml new file mode 100644 index 0000000..288f783 --- /dev/null +++ b/config/datasource/durationTestObject6/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: + - object: "order2" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject6/whitegold.yaml b/config/datasource/durationTestObject6/whitegold.yaml new file mode 100644 index 0000000..0ba7e29 --- /dev/null +++ b/config/datasource/durationTestObject6/whitegold.yaml @@ -0,0 +1,6 @@ +kind: object +name: "whitegold" +spec: + name: "whitegold" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/durationTestObject6/workforces.yaml b/config/datasource/durationTestObject6/workforces.yaml new file mode 100644 index 0000000..d8948eb --- /dev/null +++ b/config/datasource/durationTestObject6/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "humanWorkforce" + startLocation: "ST" + number: 2 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-1WF/e0-order.yaml b/config/datasource/goldsmiths-with-1WF/e0-order.yaml new file mode 100644 index 0000000..3f31a9f --- /dev/null +++ b/config/datasource/goldsmiths-with-1WF/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-1WF/e1-outgoing-stock.yaml b/config/datasource/goldsmiths-with-1WF/e1-outgoing-stock.yaml new file mode 100644 index 0000000..ae31c79 --- /dev/null +++ b/config/datasource/goldsmiths-with-1WF/e1-outgoing-stock.yaml @@ -0,0 +1,29 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "retrieve resources" + output: + - object: "gold" + number: 1 + change: "" + size: + duration: 3 + transition: "Forging" \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-1WF/e2-forging.yaml b/config/datasource/goldsmiths-with-1WF/e2-forging.yaml new file mode 100644 index 0000000..90f89e6 --- /dev/null +++ b/config/datasource/goldsmiths-with-1WF/e2-forging.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "Forging" +spec: + name: "Forging" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-1WF/e3-shipping.yaml b/config/datasource/goldsmiths-with-1WF/e3-shipping.yaml new file mode 100644 index 0000000..0db55aa --- /dev/null +++ b/config/datasource/goldsmiths-with-1WF/e3-shipping.yaml @@ -0,0 +1,39 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [0.1, 0.9] + input: + - object: "gold" + number: 1 + lastState: "shaped" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "gold" + number: 1 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-1WF/gold.yaml b/config/datasource/goldsmiths-with-1WF/gold.yaml new file mode 100644 index 0000000..ad33055 --- /dev/null +++ b/config/datasource/goldsmiths-with-1WF/gold.yaml @@ -0,0 +1,6 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-1WF/order.yaml b/config/datasource/goldsmiths-with-1WF/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/goldsmiths-with-1WF/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-1WF/resourceOrder.yaml b/config/datasource/goldsmiths-with-1WF/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/goldsmiths-with-1WF/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-1WF/routing.yaml b/config/datasource/goldsmiths-with-1WF/routing.yaml new file mode 100644 index 0000000..4647302 --- /dev/null +++ b/config/datasource/goldsmiths-with-1WF/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "S" + duration: 3 + - routeForActivity: "Back to stock" + start: "S" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "S" + duration: 3 + - routeForActivity: "Back to machine" + start: "S" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-1WF/warehouse_stock.yaml b/config/datasource/goldsmiths-with-1WF/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/goldsmiths-with-1WF/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-1WF/workforces.yaml b/config/datasource/goldsmiths-with-1WF/workforces.yaml new file mode 100644 index 0000000..ee0175d --- /dev/null +++ b/config/datasource/goldsmiths-with-1WF/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "humanWorkforce" + startLocation: "ST" + number: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-2WF/e0-order.yaml b/config/datasource/goldsmiths-with-2WF/e0-order.yaml new file mode 100644 index 0000000..3f31a9f --- /dev/null +++ b/config/datasource/goldsmiths-with-2WF/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-2WF/e1-outgoing-stock.yaml b/config/datasource/goldsmiths-with-2WF/e1-outgoing-stock.yaml new file mode 100644 index 0000000..ae31c79 --- /dev/null +++ b/config/datasource/goldsmiths-with-2WF/e1-outgoing-stock.yaml @@ -0,0 +1,29 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "retrieve resources" + output: + - object: "gold" + number: 1 + change: "" + size: + duration: 3 + transition: "Forging" \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-2WF/e2-forging.yaml b/config/datasource/goldsmiths-with-2WF/e2-forging.yaml new file mode 100644 index 0000000..90f89e6 --- /dev/null +++ b/config/datasource/goldsmiths-with-2WF/e2-forging.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "Forging" +spec: + name: "Forging" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-2WF/e3-shipping.yaml b/config/datasource/goldsmiths-with-2WF/e3-shipping.yaml new file mode 100644 index 0000000..0db55aa --- /dev/null +++ b/config/datasource/goldsmiths-with-2WF/e3-shipping.yaml @@ -0,0 +1,39 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [0.1, 0.9] + input: + - object: "gold" + number: 1 + lastState: "shaped" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "gold" + number: 1 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-2WF/gold.yaml b/config/datasource/goldsmiths-with-2WF/gold.yaml new file mode 100644 index 0000000..ad33055 --- /dev/null +++ b/config/datasource/goldsmiths-with-2WF/gold.yaml @@ -0,0 +1,6 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-2WF/order.yaml b/config/datasource/goldsmiths-with-2WF/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/goldsmiths-with-2WF/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-2WF/resourceOrder.yaml b/config/datasource/goldsmiths-with-2WF/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/goldsmiths-with-2WF/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-2WF/routing.yaml b/config/datasource/goldsmiths-with-2WF/routing.yaml new file mode 100644 index 0000000..4647302 --- /dev/null +++ b/config/datasource/goldsmiths-with-2WF/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "S" + duration: 3 + - routeForActivity: "Back to stock" + start: "S" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "S" + duration: 3 + - routeForActivity: "Back to machine" + start: "S" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-2WF/warehouse_stock.yaml b/config/datasource/goldsmiths-with-2WF/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/goldsmiths-with-2WF/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-2WF/workforces.yaml b/config/datasource/goldsmiths-with-2WF/workforces.yaml new file mode 100644 index 0000000..d8948eb --- /dev/null +++ b/config/datasource/goldsmiths-with-2WF/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "humanWorkforce" + startLocation: "ST" + number: 2 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-6WF/e0-order.yaml b/config/datasource/goldsmiths-with-6WF/e0-order.yaml new file mode 100644 index 0000000..3f31a9f --- /dev/null +++ b/config/datasource/goldsmiths-with-6WF/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-6WF/e1-outgoing-stock.yaml b/config/datasource/goldsmiths-with-6WF/e1-outgoing-stock.yaml new file mode 100644 index 0000000..ae31c79 --- /dev/null +++ b/config/datasource/goldsmiths-with-6WF/e1-outgoing-stock.yaml @@ -0,0 +1,29 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "retrieve resources" + output: + - object: "gold" + number: 1 + change: "" + size: + duration: 3 + transition: "Forging" \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-6WF/e2-forging.yaml b/config/datasource/goldsmiths-with-6WF/e2-forging.yaml new file mode 100644 index 0000000..90f89e6 --- /dev/null +++ b/config/datasource/goldsmiths-with-6WF/e2-forging.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "Forging" +spec: + name: "Forging" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-6WF/e3-shipping.yaml b/config/datasource/goldsmiths-with-6WF/e3-shipping.yaml new file mode 100644 index 0000000..0db55aa --- /dev/null +++ b/config/datasource/goldsmiths-with-6WF/e3-shipping.yaml @@ -0,0 +1,39 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [0.1, 0.9] + input: + - object: "gold" + number: 1 + lastState: "shaped" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "gold" + number: 1 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-6WF/gold.yaml b/config/datasource/goldsmiths-with-6WF/gold.yaml new file mode 100644 index 0000000..ad33055 --- /dev/null +++ b/config/datasource/goldsmiths-with-6WF/gold.yaml @@ -0,0 +1,6 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-6WF/order.yaml b/config/datasource/goldsmiths-with-6WF/order.yaml new file mode 100644 index 0000000..031b156 --- /dev/null +++ b/config/datasource/goldsmiths-with-6WF/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-6WF/resourceOrder.yaml b/config/datasource/goldsmiths-with-6WF/resourceOrder.yaml new file mode 100644 index 0000000..e4e6fa1 --- /dev/null +++ b/config/datasource/goldsmiths-with-6WF/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-6WF/routing.yaml b/config/datasource/goldsmiths-with-6WF/routing.yaml new file mode 100644 index 0000000..4647302 --- /dev/null +++ b/config/datasource/goldsmiths-with-6WF/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "S" + duration: 3 + - routeForActivity: "Back to stock" + start: "S" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "S" + duration: 3 + - routeForActivity: "Back to machine" + start: "S" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-6WF/warehouse_stock.yaml b/config/datasource/goldsmiths-with-6WF/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/goldsmiths-with-6WF/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-6WF/workforces.yaml b/config/datasource/goldsmiths-with-6WF/workforces.yaml new file mode 100644 index 0000000..3dc6ea3 --- /dev/null +++ b/config/datasource/goldsmiths-with-6WF/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "humanWorkforce" + startLocation: "ST" + number: 6 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e0-order.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e0-order.yaml new file mode 100644 index 0000000..3f31a9f --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e1-outgoing-stock.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e1-outgoing-stock.yaml new file mode 100644 index 0000000..30f3ff7 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e1-outgoing-stock.yaml @@ -0,0 +1,43 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.5, 0.5 ] + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "retrieve resources ring" + output: + - object: "gold" + number: 1 + change: "" + size: + duration: 3 + transition: "ForgingA" + - activity: + name: "retrieve resources earrings" + output: + - object: "gold" + number: 2 + change: "" + size: + - object: "stone" + number: 2 + change: "" + size: + duration: 8 + transition: "ForgingB" \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e2-forging-earring.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e2-forging-earring.yaml new file mode 100644 index 0000000..b9a8e33 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e2-forging-earring.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "ForgingB" +spec: + name: "ForgingB" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "earring_shaped" + size: + transition: "Assembly" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e2-forging-ring.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e2-forging-ring.yaml new file mode 100644 index 0000000..0672e03 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e2-forging-ring.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "ForgingA" +spec: + name: "ForgingA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "ring_shaped" + size: + transition: "ShippingA" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e3-assembly.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e3-assembly.yaml new file mode 100644 index 0000000..d200888 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e3-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "Assembly" +spec: + name: "Assembly" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [ 0.9, 0.1 ] + input: + - object: "gold" + number: 2 + lastState: "earring_shaped" + size: + - object: "stone" + number: 2 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "earring" + number: 2 + change: "assembled" + size: + duration: 10 + transition: "ShippingB" + - activity: + name: "Failure: Item broke" + output: + - object: "earring" + number: 2 + change: "broke" + size: + transition: "" + duration: 2 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e4-shipping-earring.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e4-shipping-earring.yaml new file mode 100644 index 0000000..5e8f269 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e4-shipping-earring.yaml @@ -0,0 +1,39 @@ +kind: datasource +name: "ShippingB" +spec: + name: "ShippingB" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 0.2, 0.8 ] + input: + - object: "earring" + number: 2 + lastState: "assembled" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "earring" + number: 2 + change: "assembled" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "earring" + number: 2 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e4-shipping-ring.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e4-shipping-ring.yaml new file mode 100644 index 0000000..8d8cd0f --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/e4-shipping-ring.yaml @@ -0,0 +1,39 @@ +kind: datasource +name: "ShippingA" +spec: + name: "ShippingA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 0.2, 0.8 ] + input: + - object: "gold" + number: 1 + lastState: "ring_shaped" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "gold" + number: 1 + change: "ring_shaped" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "gold" + number: 1 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/earring.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/earring.yaml new file mode 100644 index 0000000..30ef150 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/earring.yaml @@ -0,0 +1,6 @@ +kind: object +name: "earring" +spec: + name: "earring" + type: "earring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/gold.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/gold.yaml new file mode 100644 index 0000000..617da49 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/gold.yaml @@ -0,0 +1,6 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "ring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/order.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/order.yaml new file mode 100644 index 0000000..38eda64 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "ring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/resourceOrder.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/resourceOrder.yaml new file mode 100644 index 0000000..2fc27b8 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "ring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/routing.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/routing.yaml new file mode 100644 index 0000000..4647302 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "S" + duration: 3 + - routeForActivity: "Back to stock" + start: "S" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "S" + duration: 3 + - routeForActivity: "Back to machine" + start: "S" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/stone.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/stone.yaml new file mode 100644 index 0000000..a588a61 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/stone.yaml @@ -0,0 +1,6 @@ +kind: object +name: "stone" +spec: + name: "stone" + type: "earring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/warehouse_stock.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/workforces.yaml b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/workforces.yaml new file mode 100644 index 0000000..30a6dcb --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Product-as-Type/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "humanWorkforce" + startLocation: "ST" + number: 3 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e0-order.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e0-order.yaml new file mode 100644 index 0000000..7290f47 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "ringOrder" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "ringResourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e0a-order.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e0a-order.yaml new file mode 100644 index 0000000..b02ae90 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e0a-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacementa" +spec: + name: "OrderPlacementa" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "earringOrder" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "earringResourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStocka" + duration: 0 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e1-outgoing-stock.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e1-outgoing-stock.yaml new file mode 100644 index 0000000..7e7f254 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e1-outgoing-stock.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 1 ] + input: + - object: "ringResourceOrder" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "retrieve resources ring" + output: + - object: "ringGold" + number: 1 + change: "" + size: + duration: 3 + transition: "ForgingA" \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e1a-outgoing-stock.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e1a-outgoing-stock.yaml new file mode 100644 index 0000000..4b5f970 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e1a-outgoing-stock.yaml @@ -0,0 +1,34 @@ +kind: datasource +name: "OutgoingStocka" +spec: + name: "OutgoingStocka" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 1 ] + input: + - object: "earringResourceOrder" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "retrieve resources earrings" + output: + - object: "earringGold" + number: 2 + change: "" + size: + - object: "stone" + number: 2 + change: "" + size: + duration: 8 + transition: "ForgingB" \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e2-forging-earring.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e2-forging-earring.yaml new file mode 100644 index 0000000..d0b2d7a --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e2-forging-earring.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "ForgingB" +spec: + name: "ForgingB" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "earringGold" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Forged" + output: + - object: "earringGold" + number: 1 + change: "earring_shaped" + size: + transition: "Assembly" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e2-forging-ring.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e2-forging-ring.yaml new file mode 100644 index 0000000..2fde270 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e2-forging-ring.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "ForgingA" +spec: + name: "ForgingA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "ringGold" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Forged" + output: + - object: "ringGold" + number: 1 + change: "ring_shaped" + size: + transition: "ShippingA" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e3-assembly.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e3-assembly.yaml new file mode 100644 index 0000000..311ac05 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e3-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "Assembly" +spec: + name: "Assembly" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [ 0.9, 0.1 ] + input: + - object: "earringGold" + number: 2 + lastState: "earring_shaped" + size: + - object: "stone" + number: 2 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "earring" + number: 2 + change: "assembled" + size: + duration: 10 + transition: "ShippingB" + - activity: + name: "Failure: Item broke" + output: + - object: "earring" + number: 2 + change: "broke" + size: + transition: "" + duration: 2 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e4-shipping-earring.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e4-shipping-earring.yaml new file mode 100644 index 0000000..5e8f269 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e4-shipping-earring.yaml @@ -0,0 +1,39 @@ +kind: datasource +name: "ShippingB" +spec: + name: "ShippingB" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 0.2, 0.8 ] + input: + - object: "earring" + number: 2 + lastState: "assembled" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "earring" + number: 2 + change: "assembled" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "earring" + number: 2 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e4-shipping-ring.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e4-shipping-ring.yaml new file mode 100644 index 0000000..51d0902 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/e4-shipping-ring.yaml @@ -0,0 +1,39 @@ +kind: datasource +name: "ShippingA" +spec: + name: "ShippingA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 0.2, 0.8 ] + input: + - object: "ringGold" + number: 1 + lastState: "ring_shaped" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "ringGold" + number: 1 + change: "ring_shaped" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "ringGold" + number: 1 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earring.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earring.yaml new file mode 100644 index 0000000..30ef150 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earring.yaml @@ -0,0 +1,6 @@ +kind: object +name: "earring" +spec: + name: "earring" + type: "earring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earringGold.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earringGold.yaml new file mode 100644 index 0000000..ee4444c --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earringGold.yaml @@ -0,0 +1,6 @@ +kind: object +name: "earringGold" +spec: + name: "earringGold" + type: "earring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earringOrder.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earringOrder.yaml new file mode 100644 index 0000000..c8ad05a --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earringOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "earringOrder" +spec: + name: "earringOrder" + type: "earring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earringResourceOrder.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earringResourceOrder.yaml new file mode 100644 index 0000000..acb3210 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/earringResourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "earringResourceOrder" +spec: + name: "earringResourceOrder" + type: "earring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/ringGold.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/ringGold.yaml new file mode 100644 index 0000000..bcbdb42 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/ringGold.yaml @@ -0,0 +1,6 @@ +kind: object +name: "ringGold" +spec: + name: "ringGold" + type: "ring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/ringOrder.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/ringOrder.yaml new file mode 100644 index 0000000..b94081d --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/ringOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "ringOrder" +spec: + name: "ringOrder" + type: "ring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/ringResourceOrder.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/ringResourceOrder.yaml new file mode 100644 index 0000000..b5df7f4 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/ringResourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "ringResourceOrder" +spec: + name: "ringResourceOrder" + type: "ring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/routing.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/routing.yaml new file mode 100644 index 0000000..4647302 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "S" + duration: 3 + - routeForActivity: "Back to stock" + start: "S" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "S" + duration: 3 + - routeForActivity: "Back to machine" + start: "S" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/stone.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/stone.yaml new file mode 100644 index 0000000..a588a61 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/stone.yaml @@ -0,0 +1,6 @@ +kind: object +name: "stone" +spec: + name: "stone" + type: "earring" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/warehouse_stock.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/warehouse_stock.yaml new file mode 100644 index 0000000..6b12456 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "ringOrder" + number: 500 + lastState: + size: + - object: "earringOrder" + number: 500 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/workforces.yaml b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/workforces.yaml new file mode 100644 index 0000000..30a6dcb --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P-Strict-Product-as-Type/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "humanWorkforce" + startLocation: "ST" + number: 3 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/e0-order.yaml b/config/datasource/goldsmiths-with-WF-2P/e0-order.yaml new file mode 100644 index 0000000..3f31a9f --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/e1-outgoing-stock.yaml b/config/datasource/goldsmiths-with-WF-2P/e1-outgoing-stock.yaml new file mode 100644 index 0000000..30f3ff7 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/e1-outgoing-stock.yaml @@ -0,0 +1,43 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.5, 0.5 ] + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "retrieve resources ring" + output: + - object: "gold" + number: 1 + change: "" + size: + duration: 3 + transition: "ForgingA" + - activity: + name: "retrieve resources earrings" + output: + - object: "gold" + number: 2 + change: "" + size: + - object: "stone" + number: 2 + change: "" + size: + duration: 8 + transition: "ForgingB" \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/e2-forging-earring.yaml b/config/datasource/goldsmiths-with-WF-2P/e2-forging-earring.yaml new file mode 100644 index 0000000..b9a8e33 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/e2-forging-earring.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "ForgingB" +spec: + name: "ForgingB" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "earring_shaped" + size: + transition: "Assembly" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/e2-forging-ring.yaml b/config/datasource/goldsmiths-with-WF-2P/e2-forging-ring.yaml new file mode 100644 index 0000000..0672e03 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/e2-forging-ring.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "ForgingA" +spec: + name: "ForgingA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "ring_shaped" + size: + transition: "ShippingA" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/e3-assembly.yaml b/config/datasource/goldsmiths-with-WF-2P/e3-assembly.yaml new file mode 100644 index 0000000..d200888 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/e3-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "Assembly" +spec: + name: "Assembly" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [ 0.9, 0.1 ] + input: + - object: "gold" + number: 2 + lastState: "earring_shaped" + size: + - object: "stone" + number: 2 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "earring" + number: 2 + change: "assembled" + size: + duration: 10 + transition: "ShippingB" + - activity: + name: "Failure: Item broke" + output: + - object: "earring" + number: 2 + change: "broke" + size: + transition: "" + duration: 2 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/e4-shipping-earring.yaml b/config/datasource/goldsmiths-with-WF-2P/e4-shipping-earring.yaml new file mode 100644 index 0000000..5e8f269 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/e4-shipping-earring.yaml @@ -0,0 +1,39 @@ +kind: datasource +name: "ShippingB" +spec: + name: "ShippingB" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 0.2, 0.8 ] + input: + - object: "earring" + number: 2 + lastState: "assembled" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "earring" + number: 2 + change: "assembled" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "earring" + number: 2 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/e4-shipping-ring.yaml b/config/datasource/goldsmiths-with-WF-2P/e4-shipping-ring.yaml new file mode 100644 index 0000000..8d8cd0f --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/e4-shipping-ring.yaml @@ -0,0 +1,39 @@ +kind: datasource +name: "ShippingA" +spec: + name: "ShippingA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 0.2, 0.8 ] + input: + - object: "gold" + number: 1 + lastState: "ring_shaped" + size: + workforces: + - workforce: "humanWorkforce" + number: 1 + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "gold" + number: 1 + change: "ring_shaped" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "gold" + number: 1 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/earring.yaml b/config/datasource/goldsmiths-with-WF-2P/earring.yaml new file mode 100644 index 0000000..7ebcfcf --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/earring.yaml @@ -0,0 +1,11 @@ +kind: object +name: "earring" +spec: + name: "earring" + type: "object" + input: + - object: "order" + number: 1 + lastState: "" + size: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/gold.yaml b/config/datasource/goldsmiths-with-WF-2P/gold.yaml new file mode 100644 index 0000000..f499f22 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/gold.yaml @@ -0,0 +1,11 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + input: + - object: "order" + number: 1 + lastState: "" + size: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/order.yaml b/config/datasource/goldsmiths-with-WF-2P/order.yaml new file mode 100644 index 0000000..4c946af --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/order.yaml @@ -0,0 +1,7 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + input: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/resourceOrder.yaml b/config/datasource/goldsmiths-with-WF-2P/resourceOrder.yaml new file mode 100644 index 0000000..cf286e6 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/resourceOrder.yaml @@ -0,0 +1,7 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + input: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/routing.yaml b/config/datasource/goldsmiths-with-WF-2P/routing.yaml new file mode 100644 index 0000000..9344e4b --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/routing.yaml @@ -0,0 +1,46 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + transferObjects: + - name: "barResource" + number: 1 + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "S" + transferObjects: + - name: "screw" + number: 13 + duration: 3 + - routeForActivity: "Back to stock" + start: "S" + end: "ST" + transferObjects: + - name: "screw" + number: 13 + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + transferObjects: + - name: "screw" + number: 13 + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "S" + transferObjects: + - name: "screw" + number: 13 + duration: 3 + - routeForActivity: "Back to machine" + start: "S" + end: "M" + transferObjects: + - name: "screw" + number: 13 + duration: 3 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/stone.yaml b/config/datasource/goldsmiths-with-WF-2P/stone.yaml new file mode 100644 index 0000000..da9d02f --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/stone.yaml @@ -0,0 +1,11 @@ +kind: object +name: "stone" +spec: + name: "stone" + type: "object" + input: + - object: "order" + number: 1 + lastState: "" + size: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/warehouse_stock.yaml b/config/datasource/goldsmiths-with-WF-2P/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF-2P/workforces.yaml b/config/datasource/goldsmiths-with-WF-2P/workforces.yaml new file mode 100644 index 0000000..30a6dcb --- /dev/null +++ b/config/datasource/goldsmiths-with-WF-2P/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "humanWorkforce" + startLocation: "ST" + number: 3 \ No newline at end of file diff --git a/config/datasource/goldsmiths-with-WF/routing.yaml b/config/datasource/goldsmiths-with-WF/routing.yaml new file mode 100644 index 0000000..4647302 --- /dev/null +++ b/config/datasource/goldsmiths-with-WF/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "S" + duration: 3 + - routeForActivity: "Back to stock" + start: "S" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "S" + duration: 3 + - routeForActivity: "Back to machine" + start: "S" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/e0-order.yaml b/config/datasource/goldsmiths-without-WF-2P/e0-order.yaml new file mode 100644 index 0000000..3f31a9f --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/e1-outgoing-stock.yaml b/config/datasource/goldsmiths-without-WF-2P/e1-outgoing-stock.yaml new file mode 100644 index 0000000..6156ca6 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/e1-outgoing-stock.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.5, 0.5 ] + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources ring" + output: + - object: "gold" + number: 1 + change: "" + size: + duration: 3 + transition: "ForgingA" + - activity: + name: "retrieve resources earrings" + output: + - object: "gold" + number: 2 + change: "" + size: + - object: "stone" + number: 2 + change: "" + size: + duration: 8 + transition: "ForgingB" \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/e2-forging-earring.yaml b/config/datasource/goldsmiths-without-WF-2P/e2-forging-earring.yaml new file mode 100644 index 0000000..dd49c4c --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/e2-forging-earring.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "ForgingB" +spec: + name: "ForgingB" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "earring_shaped" + size: + transition: "Assembly" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/e2-forging-ring.yaml b/config/datasource/goldsmiths-without-WF-2P/e2-forging-ring.yaml new file mode 100644 index 0000000..a1b97ee --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/e2-forging-ring.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "ForgingA" +spec: + name: "ForgingA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "ring_shaped" + size: + transition: "ShippingA" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/e3-assembly.yaml b/config/datasource/goldsmiths-without-WF-2P/e3-assembly.yaml new file mode 100644 index 0000000..d200888 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/e3-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "Assembly" +spec: + name: "Assembly" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [ 0.9, 0.1 ] + input: + - object: "gold" + number: 2 + lastState: "earring_shaped" + size: + - object: "stone" + number: 2 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "earring" + number: 2 + change: "assembled" + size: + duration: 10 + transition: "ShippingB" + - activity: + name: "Failure: Item broke" + output: + - object: "earring" + number: 2 + change: "broke" + size: + transition: "" + duration: 2 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/e4-shipping-earring.yaml b/config/datasource/goldsmiths-without-WF-2P/e4-shipping-earring.yaml new file mode 100644 index 0000000..e938dad --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/e4-shipping-earring.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "ShippingB" +spec: + name: "ShippingB" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 0.2, 0.8 ] + input: + - object: "earring" + number: 2 + lastState: "assembled" + size: + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "earring" + number: 2 + change: "assembled" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "earring" + number: 2 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/e4-shipping-ring.yaml b/config/datasource/goldsmiths-without-WF-2P/e4-shipping-ring.yaml new file mode 100644 index 0000000..3d9b658 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/e4-shipping-ring.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "ShippingA" +spec: + name: "ShippingA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 0.2, 0.8 ] + input: + - object: "gold" + number: 1 + lastState: "ring_shaped" + size: + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "gold" + number: 1 + change: "ring_shaped" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "gold" + number: 1 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/earring.yaml b/config/datasource/goldsmiths-without-WF-2P/earring.yaml new file mode 100644 index 0000000..7ebcfcf --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/earring.yaml @@ -0,0 +1,11 @@ +kind: object +name: "earring" +spec: + name: "earring" + type: "object" + input: + - object: "order" + number: 1 + lastState: "" + size: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/gold.yaml b/config/datasource/goldsmiths-without-WF-2P/gold.yaml new file mode 100644 index 0000000..f499f22 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/gold.yaml @@ -0,0 +1,11 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + input: + - object: "order" + number: 1 + lastState: "" + size: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/order.yaml b/config/datasource/goldsmiths-without-WF-2P/order.yaml new file mode 100644 index 0000000..4c946af --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/order.yaml @@ -0,0 +1,7 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + input: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/resourceOrder.yaml b/config/datasource/goldsmiths-without-WF-2P/resourceOrder.yaml new file mode 100644 index 0000000..cf286e6 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/resourceOrder.yaml @@ -0,0 +1,7 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + input: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/stone.yaml b/config/datasource/goldsmiths-without-WF-2P/stone.yaml new file mode 100644 index 0000000..da9d02f --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/stone.yaml @@ -0,0 +1,11 @@ +kind: object +name: "stone" +spec: + name: "stone" + type: "object" + input: + - object: "order" + number: 1 + lastState: "" + size: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-2P/warehouse_stock.yaml b/config/datasource/goldsmiths-without-WF-2P/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-2P/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-OneObject/e0-order.yaml b/config/datasource/goldsmiths-without-WF-OneObject/e0-order.yaml new file mode 100644 index 0000000..fa3bf12 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-OneObject/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "order" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "gold" + number: 1 + change: "resourceOrder" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-OneObject/e1-outgoing-stock.yaml b/config/datasource/goldsmiths-without-WF-OneObject/e1-outgoing-stock.yaml new file mode 100644 index 0000000..f2846e5 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-OneObject/e1-outgoing-stock.yaml @@ -0,0 +1,26 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: parallel + input: + - object: "gold" + number: 1 + lastState: "resourceOrder" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "gold" + number: 1 + change: "gold" + size: + duration: 3 + transition: "Forging" \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-OneObject/e2-forging.yaml b/config/datasource/goldsmiths-without-WF-OneObject/e2-forging.yaml new file mode 100644 index 0000000..69a46e5 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-OneObject/e2-forging.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Forging" +spec: + name: "Forging" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "gold" + size: + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-OneObject/e3-shipping.yaml b/config/datasource/goldsmiths-without-WF-OneObject/e3-shipping.yaml new file mode 100644 index 0000000..f99bc81 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-OneObject/e3-shipping.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.1, 0.9] + input: + - object: "gold" + number: 1 + lastState: "shaped" + size: + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "gold" + number: 1 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-OneObject/gold.yaml b/config/datasource/goldsmiths-without-WF-OneObject/gold.yaml new file mode 100644 index 0000000..b58c575 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-OneObject/gold.yaml @@ -0,0 +1,7 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + input: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-OneObject/warehouse_stock.yaml b/config/datasource/goldsmiths-without-WF-OneObject/warehouse_stock.yaml new file mode 100644 index 0000000..f580762 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-OneObject/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "gold" + number: 100 + lastState: "order" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-TwoObject/e0-order.yaml b/config/datasource/goldsmiths-without-WF-TwoObject/e0-order.yaml new file mode 100644 index 0000000..fa3bf12 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-TwoObject/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "order" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "gold" + number: 1 + change: "resourceOrder" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-TwoObject/e1-outgoing-stock.yaml b/config/datasource/goldsmiths-without-WF-TwoObject/e1-outgoing-stock.yaml new file mode 100644 index 0000000..f2846e5 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-TwoObject/e1-outgoing-stock.yaml @@ -0,0 +1,26 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: parallel + input: + - object: "gold" + number: 1 + lastState: "resourceOrder" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "gold" + number: 1 + change: "gold" + size: + duration: 3 + transition: "Forging" \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-TwoObject/e2-forging.yaml b/config/datasource/goldsmiths-without-WF-TwoObject/e2-forging.yaml new file mode 100644 index 0000000..f61e139 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-TwoObject/e2-forging.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "Forging" +spec: + name: "Forging" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "gold" + size: + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 5 + - activity: + name: "Forged" + output: + - object: "stoe" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-TwoObject/e3-shipping.yaml b/config/datasource/goldsmiths-without-WF-TwoObject/e3-shipping.yaml new file mode 100644 index 0000000..f99bc81 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-TwoObject/e3-shipping.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.1, 0.9] + input: + - object: "gold" + number: 1 + lastState: "shaped" + size: + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "gold" + number: 1 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-TwoObject/gold.yaml b/config/datasource/goldsmiths-without-WF-TwoObject/gold.yaml new file mode 100644 index 0000000..b58c575 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-TwoObject/gold.yaml @@ -0,0 +1,7 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + input: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-TwoObject/stone.yaml b/config/datasource/goldsmiths-without-WF-TwoObject/stone.yaml new file mode 100644 index 0000000..b58c575 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-TwoObject/stone.yaml @@ -0,0 +1,7 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + input: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF-TwoObject/warehouse_stock.yaml b/config/datasource/goldsmiths-without-WF-TwoObject/warehouse_stock.yaml new file mode 100644 index 0000000..f580762 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF-TwoObject/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "gold" + number: 100 + lastState: "order" + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF/e0-order.yaml b/config/datasource/goldsmiths-without-WF/e0-order.yaml new file mode 100644 index 0000000..3f31a9f --- /dev/null +++ b/config/datasource/goldsmiths-without-WF/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF/e1-outgoing-stock.yaml b/config/datasource/goldsmiths-without-WF/e1-outgoing-stock.yaml new file mode 100644 index 0000000..c81339d --- /dev/null +++ b/config/datasource/goldsmiths-without-WF/e1-outgoing-stock.yaml @@ -0,0 +1,26 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "gold" + number: 1 + change: "" + size: + duration: 3 + transition: "Forging" \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF/e2-forging.yaml b/config/datasource/goldsmiths-without-WF/e2-forging.yaml new file mode 100644 index 0000000..6304890 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF/e2-forging.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Forging" +spec: + name: "Forging" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "gold" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Forged" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 5 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF/e3-shipping.yaml b/config/datasource/goldsmiths-without-WF/e3-shipping.yaml new file mode 100644 index 0000000..cc0cd64 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF/e3-shipping.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [0.1, 0.9] + input: + - object: "gold" + number: 1 + lastState: "shaped" + size: + eventData: + - activity: + name: "Package waits for sending" + output: + - object: "gold" + number: 1 + change: "shaped" + size: + transition: "Shipping" + duration: 20 + - activity: + name: "Package sent" + output: + - object: "gold" + number: 1 + change: "shipped" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF/gold.yaml b/config/datasource/goldsmiths-without-WF/gold.yaml new file mode 100644 index 0000000..f499f22 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF/gold.yaml @@ -0,0 +1,11 @@ +kind: object +name: "gold" +spec: + name: "gold" + type: "object" + input: + - object: "order" + number: 1 + lastState: "" + size: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF/order.yaml b/config/datasource/goldsmiths-without-WF/order.yaml new file mode 100644 index 0000000..4c946af --- /dev/null +++ b/config/datasource/goldsmiths-without-WF/order.yaml @@ -0,0 +1,7 @@ +kind: object +name: "order" +spec: + name: "order" + type: "object" + input: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF/resourceOrder.yaml b/config/datasource/goldsmiths-without-WF/resourceOrder.yaml new file mode 100644 index 0000000..cf286e6 --- /dev/null +++ b/config/datasource/goldsmiths-without-WF/resourceOrder.yaml @@ -0,0 +1,7 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "object" + input: + size: \ No newline at end of file diff --git a/config/datasource/goldsmiths-without-WF/warehouse_stock.yaml b/config/datasource/goldsmiths-without-WF/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/goldsmiths-without-WF/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/line/line-a.yaml b/config/datasource/line/line-a.yaml new file mode 100644 index 0000000..5bc1696 --- /dev/null +++ b/config/datasource/line/line-a.yaml @@ -0,0 +1,11 @@ +kind: datasource +name: "A" +spec: + name: "A" + group: "line" + selection: genericProbability + distribution: [1.0] + eventData: + - activity: "A" + transition: "B" + duration: 1 \ No newline at end of file diff --git a/config/datasource/line/line-b.yaml b/config/datasource/line/line-b.yaml new file mode 100644 index 0000000..fe9dfd7 --- /dev/null +++ b/config/datasource/line/line-b.yaml @@ -0,0 +1,11 @@ +kind: datasource +name: "B" +spec: + name: "B" + group: "line" + selection: genericProbability + distribution: [1.0] + eventData: + - activity: "B" + transition: "C" + duration: 1 \ No newline at end of file diff --git a/config/datasource/line/line-c.yaml b/config/datasource/line/line-c.yaml new file mode 100644 index 0000000..153f104 --- /dev/null +++ b/config/datasource/line/line-c.yaml @@ -0,0 +1,11 @@ +kind: datasource +name: "C" +spec: + name: "C" + group: "line" + selection: genericProbability + distribution: [1.0] + eventData: + - activity: "C" + transition: "D" + duration: 1 \ No newline at end of file diff --git a/config/datasource/line/line-d.yaml b/config/datasource/line/line-d.yaml new file mode 100644 index 0000000..b54c7e6 --- /dev/null +++ b/config/datasource/line/line-d.yaml @@ -0,0 +1,11 @@ +kind: datasource +name: "D" +spec: + name: "D" + group: "line" + selection: genericProbability + distribution: [1.0] + eventData: + - activity: "D" + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/line/line-start.yaml b/config/datasource/line/line-start.yaml new file mode 100644 index 0000000..8a36837 --- /dev/null +++ b/config/datasource/line/line-start.yaml @@ -0,0 +1,11 @@ +kind: datasource +name: "" +spec: + name: "" + group: "line" + selection: genericProbability + distribution: [1.0] + eventData: + - activity: "" + transition: "A" + duration: 0 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/bar-resource.yaml b/config/datasource/smart-factory-1P-withTR/bar-resource.yaml new file mode 100644 index 0000000..5959b49 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/bar-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barResource" +spec: + name: "barResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/bar.yaml b/config/datasource/smart-factory-1P-withTR/bar.yaml new file mode 100644 index 0000000..e075f62 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/bar.yaml @@ -0,0 +1,9 @@ +kind: object +name: "bar" +spec: + name: "bar" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/board-resource.yaml b/config/datasource/smart-factory-1P-withTR/board-resource.yaml new file mode 100644 index 0000000..43f93bb --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/board-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardResource" +spec: + name: "boardResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/board.yaml b/config/datasource/smart-factory-1P-withTR/board.yaml new file mode 100644 index 0000000..8422765 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/board.yaml @@ -0,0 +1,9 @@ +kind: object +name: "board" +spec: + name: "board" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/bolt.yaml b/config/datasource/smart-factory-1P-withTR/bolt.yaml new file mode 100644 index 0000000..2dacd3d --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/bolt.yaml @@ -0,0 +1,6 @@ +kind: object +name: "bolt" +spec: + name: "bolt" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/e0-order.yaml b/config/datasource/smart-factory-1P-withTR/e0-order.yaml new file mode 100644 index 0000000..86dcc4c --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-1P-withTR/e1-outgoing-stock.yaml b/config/datasource/smart-factory-1P-withTR/e1-outgoing-stock.yaml new file mode 100644 index 0000000..49cb60f --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/e1-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw" + number: 13 + change: "" + size: + - object: "bolt" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/e2-sawing-bar.yaml b/config/datasource/smart-factory-1P-withTR/e2-sawing-bar.yaml new file mode 100644 index 0000000..25714e5 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/e2-sawing-bar.yaml @@ -0,0 +1,37 @@ +kind: datasource +name: "SawingBar" +spec: + name: "SawingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "barResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Sawed" + output: + - object: "bar" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBar" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/e2-sawing-board.yaml b/config/datasource/smart-factory-1P-withTR/e2-sawing-board.yaml new file mode 100644 index 0000000..5aef9a2 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/e2-sawing-board.yaml @@ -0,0 +1,37 @@ +kind: datasource +name: "SawingBoard" +spec: + name: "SawingBoard" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Sawed" + output: + - object: "board" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoard" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/e3-drilling-bar.yaml b/config/datasource/smart-factory-1P-withTR/e3-drilling-bar.yaml new file mode 100644 index 0000000..b772c85 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/e3-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBar" +spec: + name: "DrillingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "D" + end: "D" + workstation: "D" + selection: genericProbability + distribution: [1.0] + input: + - object: "bar" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "bar" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBar" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/e4-sanding-Bar.yaml b/config/datasource/smart-factory-1P-withTR/e4-sanding-Bar.yaml new file mode 100644 index 0000000..c33fd6c --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/e4-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBar" +spec: + name: "SandingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "SA" + end: "SA" + workstation: "SA" + selection: genericProbability + distribution: [1.0] + input: + - object: "bar" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded bar" + output: + - object: "bar" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "TransportM1A" + duration: 2 diff --git a/config/datasource/smart-factory-1P-withTR/e4-sanding-Board.yaml b/config/datasource/smart-factory-1P-withTR/e4-sanding-Board.yaml new file mode 100644 index 0000000..14459ca --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/e4-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoard" +spec: + name: "SandingBoard" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "SA" + end: "SA" + workstation: "SA" + selection: genericProbability + distribution: [1.0] + input: + - object: "board" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded board" + output: + - object: "board" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "TransportM1AB" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/e5-assembly.yaml b/config/datasource/smart-factory-1P-withTR/e5-assembly.yaml new file mode 100644 index 0000000..e7af4e0 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/e5-assembly.yaml @@ -0,0 +1,57 @@ +kind: datasource +name: "Assembly" +spec: + name: "Assembly" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "bar" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "board" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw" + number: 13 + lastState: "" + size: + - object: "bolt" + number: 13 + lastState: "" + size: + - object: "handoverBoard" + number: 1 + lastState: "" + size: + - object: "handoverBar" + number: 1 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "woodShelf" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/e6-quality-control.yaml b/config/datasource/smart-factory-1P-withTR/e6-quality-control.yaml new file mode 100644 index 0000000..6ca7909 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/e6-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl" +spec: + name: "QualityControl" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "woodShelf" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "woodShelf" + number: 1 + change: "proofed" + size: + transition: "Shipping" + duration: 2 + diff --git a/config/datasource/smart-factory-1P-withTR/e7-shipping.yaml b/config/datasource/smart-factory-1P-withTR/e7-shipping.yaml new file mode 100644 index 0000000..c0805d2 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "woodShelf" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "woodShelf" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/handover.yaml b/config/datasource/smart-factory-1P-withTR/handover.yaml new file mode 100644 index 0000000..b018412 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/handover.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handover" +spec: + name: "handover" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/handoverBar.yaml b/config/datasource/smart-factory-1P-withTR/handoverBar.yaml new file mode 100644 index 0000000..d9add8d --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/handoverBar.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBar" +spec: + name: "handoverBar" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/handoverBarR.yaml b/config/datasource/smart-factory-1P-withTR/handoverBarR.yaml new file mode 100644 index 0000000..aad56dd --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/handoverBarR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarR" +spec: + name: "handoverBarR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/handoverBoard.yaml b/config/datasource/smart-factory-1P-withTR/handoverBoard.yaml new file mode 100644 index 0000000..59186c2 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/handoverBoard.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoard" +spec: + name: "handoverBoard" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/handoverBoardR.yaml b/config/datasource/smart-factory-1P-withTR/handoverBoardR.yaml new file mode 100644 index 0000000..493563a --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/handoverBoardR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardR" +spec: + name: "handoverBoardR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/order.yaml b/config/datasource/smart-factory-1P-withTR/order.yaml new file mode 100644 index 0000000..f0ae6f9 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/resourceOrder.yaml b/config/datasource/smart-factory-1P-withTR/resourceOrder.yaml new file mode 100644 index 0000000..435f300 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/routing.yaml b/config/datasource/smart-factory-1P-withTR/routing.yaml new file mode 100644 index 0000000..02da7f5 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 2 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 2 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "A" + duration: 1 + - routeForActivity: "Back to machine" + start: "A" + end: "M" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/screw.yaml b/config/datasource/smart-factory-1P-withTR/screw.yaml new file mode 100644 index 0000000..b721d7d --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/screw.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw" +spec: + name: "screw" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/t0-stock-to-machine.yaml b/config/datasource/smart-factory-1P-withTR/t0-stock-to-machine.yaml new file mode 100644 index 0000000..3bcd9b8 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/t0-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1" +spec: + name: "TransportM1" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "barResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> M1" + output: + - object: "barResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + transition: "SawingBar" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withTR/t0B-stock-to-machine.yaml b/config/datasource/smart-factory-1P-withTR/t0B-stock-to-machine.yaml new file mode 100644 index 0000000..89c52b8 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/t0B-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1B" +spec: + name: "TransportM1B" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> M1" + output: + - object: "boardResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + transition: "SawingBar" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withTR/t1-machine-to-assembly.yaml b/config/datasource/smart-factory-1P-withTR/t1-machine-to-assembly.yaml new file mode 100644 index 0000000..235c665 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/t1-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1A" +spec: + name: "TransportM1A" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "M" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "bar" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: M1 -> assembly" + output: + - object: "bar" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBar" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withTR/t1-stock-to-assembly.yaml b/config/datasource/smart-factory-1P-withTR/t1-stock-to-assembly.yaml new file mode 100644 index 0000000..9e9ae2f --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/t1-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSA" +spec: + name: "TransportSA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw" + number: 13 + lastState: "" + size: + - object: "bolt" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw" + number: 13 + change: "" + size: + - object: "bolt" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-1P-withTR/t1B-machine-to-assembly.yaml b/config/datasource/smart-factory-1P-withTR/t1B-machine-to-assembly.yaml new file mode 100644 index 0000000..0aa5b12 --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/t1B-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1AB" +spec: + name: "TransportM1AB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "M" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "board" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: M1 -> assembly" + output: + - object: "board" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoard" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withTR/warehouse_stock.yaml b/config/datasource/smart-factory-1P-withTR/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/woodShelf.yaml b/config/datasource/smart-factory-1P-withTR/woodShelf.yaml new file mode 100644 index 0000000..f4859dd --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/woodShelf.yaml @@ -0,0 +1,6 @@ +kind: object +name: "woodShelf" +spec: + name: "woodShelf" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withTR/workforces.yaml b/config/datasource/smart-factory-1P-withTR/workforces.yaml new file mode 100644 index 0000000..a0f40ea --- /dev/null +++ b/config/datasource/smart-factory-1P-withTR/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "transportRobot" + startLocation: "ST" + number: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/bar-resource.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/bar-resource.yaml new file mode 100644 index 0000000..5959b49 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/bar-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barResource" +spec: + name: "barResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/bar.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/bar.yaml new file mode 100644 index 0000000..e075f62 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/bar.yaml @@ -0,0 +1,9 @@ +kind: object +name: "bar" +spec: + name: "bar" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/board-resource.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/board-resource.yaml new file mode 100644 index 0000000..43f93bb --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/board-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardResource" +spec: + name: "boardResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/board.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/board.yaml new file mode 100644 index 0000000..8422765 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/board.yaml @@ -0,0 +1,9 @@ +kind: object +name: "board" +spec: + name: "board" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/bolt.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/bolt.yaml new file mode 100644 index 0000000..2dacd3d --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/bolt.yaml @@ -0,0 +1,6 @@ +kind: object +name: "bolt" +spec: + name: "bolt" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/e0-order.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/e0-order.yaml new file mode 100644 index 0000000..86dcc4c --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/e1-outgoing-stock.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/e1-outgoing-stock.yaml new file mode 100644 index 0000000..5bbc5f7 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/e1-outgoing-stock.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.99, 0.01 ] + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw" + number: 13 + change: "" + size: + - object: "bolt" + number: 13 + change: "" + size: + duration: 5 + transition: "" + - activity: + name: "Failure: Missing resources" + output: + - object: "" + number: 0 + change: "" + size: + duration: 2 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/e2-sawing-bar.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/e2-sawing-bar.yaml new file mode 100644 index 0000000..6a60199 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/e2-sawing-bar.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBar" +spec: + name: "SawingBar" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "bar" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBar" + duration: 4 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "bar" + number: 3 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + - object: "bar" + number: 1 + change: "broken" + size: + length: "1.25" + width: "" + depth: "" + duration: 4 + transition: "DrillingBar" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/e2-sawing-board.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/e2-sawing-board.yaml new file mode 100644 index 0000000..4fc2d7c --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/e2-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoard" +spec: + name: "SawingBoard" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "board" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoard" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "board" + number: 4 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + - object: "board" + number: 2 + change: "broken" + size: + length: "" + width: "4.32" + depth: "4.24" + duration: 4 + transition: "SandingBoard" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/e3-drilling-bar.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/e3-drilling-bar.yaml new file mode 100644 index 0000000..ebe0545 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/e3-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBar" +spec: + name: "DrillingBar" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "bar" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "bar" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBar" + duration: 3 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "bar" + number: 1 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/e4-sanding-Bar.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/e4-sanding-Bar.yaml new file mode 100644 index 0000000..c061bd7 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/e4-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBar" +spec: + name: "SandingBar" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "bar" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded bar" + output: + - object: "bar" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "TransportM1A" + duration: 2 diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/e4-sanding-Board.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/e4-sanding-Board.yaml new file mode 100644 index 0000000..84834d8 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/e4-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoard" +spec: + name: "SandingBoard" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "board" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded board" + output: + - object: "board" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "TransportM1AB" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/e5-assembly.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/e5-assembly.yaml new file mode 100644 index 0000000..fa2de13 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/e5-assembly.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "Assembly" +spec: + name: "Assembly" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.94, 0.03, 0.03 ] + input: + - object: "bar" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "board" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw" + number: 13 + lastState: "" + size: + - object: "bolt" + number: 13 + lastState: "" + size: + - object: "handoverBoard" + number: 1 + lastState: "" + size: + - object: "handoverBar" + number: 1 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "woodShelf" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl" + - activity: + name: "Failure: Overheating" + output: + - object: "woodShelf" + number: 1 + change: "overheated" + size: + transition: "" + duration: 2 + - activity: + name: "Failure: Item broke" + output: + - object: "woodShelf" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/e6-quality-control.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/e6-quality-control.yaml new file mode 100644 index 0000000..abb91be --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/e6-quality-control.yaml @@ -0,0 +1,46 @@ +kind: datasource +name: "QualityControl" +spec: + name: "QualityControl" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "woodShelf" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "woodShelf" + number: 1 + change: "proofed" + size: + transition: "Shipping" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "woodShelf" + number: 1 + change: "proofed" + size: + transition: "Shipping" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "woodShelf" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/e7-shipping.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/e7-shipping.yaml new file mode 100644 index 0000000..c0805d2 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "woodShelf" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "woodShelf" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/handover.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/handover.yaml new file mode 100644 index 0000000..b018412 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/handover.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handover" +spec: + name: "handover" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBar.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBar.yaml new file mode 100644 index 0000000..d9add8d --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBar.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBar" +spec: + name: "handoverBar" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBarR.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBarR.yaml new file mode 100644 index 0000000..aad56dd --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBarR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarR" +spec: + name: "handoverBarR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBoard.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBoard.yaml new file mode 100644 index 0000000..59186c2 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBoard.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoard" +spec: + name: "handoverBoard" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBoardR.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBoardR.yaml new file mode 100644 index 0000000..493563a --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/handoverBoardR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardR" +spec: + name: "handoverBoardR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/order.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/order.yaml new file mode 100644 index 0000000..f0ae6f9 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/resourceOrder.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/resourceOrder.yaml new file mode 100644 index 0000000..435f300 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/routing.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/routing.yaml new file mode 100644 index 0000000..02da7f5 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 2 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 2 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "A" + duration: 1 + - routeForActivity: "Back to machine" + start: "A" + end: "M" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/screw.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/screw.yaml new file mode 100644 index 0000000..b721d7d --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/screw.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw" +spec: + name: "screw" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/t0-stock-to-machine.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/t0-stock-to-machine.yaml new file mode 100644 index 0000000..3bcd9b8 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/t0-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1" +spec: + name: "TransportM1" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "barResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> M1" + output: + - object: "barResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + transition: "SawingBar" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/t0B-stock-to-machine.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/t0B-stock-to-machine.yaml new file mode 100644 index 0000000..89c52b8 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/t0B-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1B" +spec: + name: "TransportM1B" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> M1" + output: + - object: "boardResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + transition: "SawingBar" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/t1-machine-to-assembly.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/t1-machine-to-assembly.yaml new file mode 100644 index 0000000..235c665 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/t1-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1A" +spec: + name: "TransportM1A" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "M" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "bar" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: M1 -> assembly" + output: + - object: "bar" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBar" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/t1-stock-to-assembly.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/t1-stock-to-assembly.yaml new file mode 100644 index 0000000..9e9ae2f --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/t1-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSA" +spec: + name: "TransportSA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw" + number: 13 + lastState: "" + size: + - object: "bolt" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw" + number: 13 + change: "" + size: + - object: "bolt" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/t1B-machine-to-assembly.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/t1B-machine-to-assembly.yaml new file mode 100644 index 0000000..0aa5b12 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/t1B-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1AB" +spec: + name: "TransportM1AB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "M" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "board" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: M1 -> assembly" + output: + - object: "board" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoard" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/warehouse_stock.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/woodShelf.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/woodShelf.yaml new file mode 100644 index 0000000..f4859dd --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/woodShelf.yaml @@ -0,0 +1,6 @@ +kind: object +name: "woodShelf" +spec: + name: "woodShelf" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF-WithDefects/workforces.yaml b/config/datasource/smart-factory-1P-withWF-WithDefects/workforces.yaml new file mode 100644 index 0000000..f333c3d --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF-WithDefects/workforces.yaml @@ -0,0 +1,10 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "transportRobot" + startLocation: "ST" + number: 3 + - name: "machineWorker" + startLocation: "M" + number: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/bar-resource.yaml b/config/datasource/smart-factory-1P-withWF/bar-resource.yaml new file mode 100644 index 0000000..5959b49 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/bar-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barResource" +spec: + name: "barResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/bar.yaml b/config/datasource/smart-factory-1P-withWF/bar.yaml new file mode 100644 index 0000000..e075f62 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/bar.yaml @@ -0,0 +1,9 @@ +kind: object +name: "bar" +spec: + name: "bar" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/board-resource.yaml b/config/datasource/smart-factory-1P-withWF/board-resource.yaml new file mode 100644 index 0000000..43f93bb --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/board-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardResource" +spec: + name: "boardResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/board.yaml b/config/datasource/smart-factory-1P-withWF/board.yaml new file mode 100644 index 0000000..8422765 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/board.yaml @@ -0,0 +1,9 @@ +kind: object +name: "board" +spec: + name: "board" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/bolt.yaml b/config/datasource/smart-factory-1P-withWF/bolt.yaml new file mode 100644 index 0000000..2dacd3d --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/bolt.yaml @@ -0,0 +1,6 @@ +kind: object +name: "bolt" +spec: + name: "bolt" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/e0-order.yaml b/config/datasource/smart-factory-1P-withWF/e0-order.yaml new file mode 100644 index 0000000..86dcc4c --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-1P-withWF/e1-outgoing-stock.yaml b/config/datasource/smart-factory-1P-withWF/e1-outgoing-stock.yaml new file mode 100644 index 0000000..49cb60f --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/e1-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw" + number: 13 + change: "" + size: + - object: "bolt" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/e2-sawing-bar.yaml b/config/datasource/smart-factory-1P-withWF/e2-sawing-bar.yaml new file mode 100644 index 0000000..85d47de --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/e2-sawing-bar.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "SawingBar" +spec: + name: "SawingBar" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "barResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "bar" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBar" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/e2-sawing-board.yaml b/config/datasource/smart-factory-1P-withWF/e2-sawing-board.yaml new file mode 100644 index 0000000..7c1c6d2 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/e2-sawing-board.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "SawingBoard" +spec: + name: "SawingBoard" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "board" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoard" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/e3-drilling-bar.yaml b/config/datasource/smart-factory-1P-withWF/e3-drilling-bar.yaml new file mode 100644 index 0000000..f5598dd --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/e3-drilling-bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "DrillingBar" +spec: + name: "DrillingBar" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "bar" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "bar" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBar" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/e4-sanding-Bar.yaml b/config/datasource/smart-factory-1P-withWF/e4-sanding-Bar.yaml new file mode 100644 index 0000000..c061bd7 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/e4-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBar" +spec: + name: "SandingBar" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "bar" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded bar" + output: + - object: "bar" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "TransportM1A" + duration: 2 diff --git a/config/datasource/smart-factory-1P-withWF/e4-sanding-Board.yaml b/config/datasource/smart-factory-1P-withWF/e4-sanding-Board.yaml new file mode 100644 index 0000000..84834d8 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/e4-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoard" +spec: + name: "SandingBoard" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "board" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded board" + output: + - object: "board" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "TransportM1AB" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/e5-assembly.yaml b/config/datasource/smart-factory-1P-withWF/e5-assembly.yaml new file mode 100644 index 0000000..e7af4e0 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/e5-assembly.yaml @@ -0,0 +1,57 @@ +kind: datasource +name: "Assembly" +spec: + name: "Assembly" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "bar" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "board" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw" + number: 13 + lastState: "" + size: + - object: "bolt" + number: 13 + lastState: "" + size: + - object: "handoverBoard" + number: 1 + lastState: "" + size: + - object: "handoverBar" + number: 1 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "woodShelf" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/e6-quality-control.yaml b/config/datasource/smart-factory-1P-withWF/e6-quality-control.yaml new file mode 100644 index 0000000..6ca7909 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/e6-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl" +spec: + name: "QualityControl" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "woodShelf" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "woodShelf" + number: 1 + change: "proofed" + size: + transition: "Shipping" + duration: 2 + diff --git a/config/datasource/smart-factory-1P-withWF/e7-shipping.yaml b/config/datasource/smart-factory-1P-withWF/e7-shipping.yaml new file mode 100644 index 0000000..c0805d2 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "woodShelf" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "woodShelf" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/handover.yaml b/config/datasource/smart-factory-1P-withWF/handover.yaml new file mode 100644 index 0000000..b018412 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/handover.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handover" +spec: + name: "handover" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/handoverBar.yaml b/config/datasource/smart-factory-1P-withWF/handoverBar.yaml new file mode 100644 index 0000000..d9add8d --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/handoverBar.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBar" +spec: + name: "handoverBar" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/handoverBarR.yaml b/config/datasource/smart-factory-1P-withWF/handoverBarR.yaml new file mode 100644 index 0000000..aad56dd --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/handoverBarR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarR" +spec: + name: "handoverBarR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/handoverBoard.yaml b/config/datasource/smart-factory-1P-withWF/handoverBoard.yaml new file mode 100644 index 0000000..59186c2 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/handoverBoard.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoard" +spec: + name: "handoverBoard" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/handoverBoardR.yaml b/config/datasource/smart-factory-1P-withWF/handoverBoardR.yaml new file mode 100644 index 0000000..493563a --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/handoverBoardR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardR" +spec: + name: "handoverBoardR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/order.yaml b/config/datasource/smart-factory-1P-withWF/order.yaml new file mode 100644 index 0000000..f0ae6f9 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/resourceOrder.yaml b/config/datasource/smart-factory-1P-withWF/resourceOrder.yaml new file mode 100644 index 0000000..435f300 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/routing.yaml b/config/datasource/smart-factory-1P-withWF/routing.yaml new file mode 100644 index 0000000..02da7f5 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 2 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 2 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "A" + duration: 1 + - routeForActivity: "Back to machine" + start: "A" + end: "M" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/screw.yaml b/config/datasource/smart-factory-1P-withWF/screw.yaml new file mode 100644 index 0000000..b721d7d --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/screw.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw" +spec: + name: "screw" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/t0-stock-to-machine.yaml b/config/datasource/smart-factory-1P-withWF/t0-stock-to-machine.yaml new file mode 100644 index 0000000..3bcd9b8 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/t0-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1" +spec: + name: "TransportM1" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "barResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> M1" + output: + - object: "barResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + transition: "SawingBar" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withWF/t0B-stock-to-machine.yaml b/config/datasource/smart-factory-1P-withWF/t0B-stock-to-machine.yaml new file mode 100644 index 0000000..89c52b8 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/t0B-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1B" +spec: + name: "TransportM1B" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> M1" + output: + - object: "boardResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + transition: "SawingBar" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withWF/t1-machine-to-assembly.yaml b/config/datasource/smart-factory-1P-withWF/t1-machine-to-assembly.yaml new file mode 100644 index 0000000..235c665 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/t1-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1A" +spec: + name: "TransportM1A" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "M" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "bar" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: M1 -> assembly" + output: + - object: "bar" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBar" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withWF/t1-stock-to-assembly.yaml b/config/datasource/smart-factory-1P-withWF/t1-stock-to-assembly.yaml new file mode 100644 index 0000000..9e9ae2f --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/t1-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSA" +spec: + name: "TransportSA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw" + number: 13 + lastState: "" + size: + - object: "bolt" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw" + number: 13 + change: "" + size: + - object: "bolt" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-1P-withWF/t1B-machine-to-assembly.yaml b/config/datasource/smart-factory-1P-withWF/t1B-machine-to-assembly.yaml new file mode 100644 index 0000000..0aa5b12 --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/t1B-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1AB" +spec: + name: "TransportM1AB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "M" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "board" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: M1 -> assembly" + output: + - object: "board" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoard" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-1P-withWF/warehouse_stock.yaml b/config/datasource/smart-factory-1P-withWF/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/woodShelf.yaml b/config/datasource/smart-factory-1P-withWF/woodShelf.yaml new file mode 100644 index 0000000..f4859dd --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/woodShelf.yaml @@ -0,0 +1,6 @@ +kind: object +name: "woodShelf" +spec: + name: "woodShelf" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withWF/workforces.yaml b/config/datasource/smart-factory-1P-withWF/workforces.yaml new file mode 100644 index 0000000..f333c3d --- /dev/null +++ b/config/datasource/smart-factory-1P-withWF/workforces.yaml @@ -0,0 +1,10 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "transportRobot" + startLocation: "ST" + number: 3 + - name: "machineWorker" + startLocation: "M" + number: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/bar-resource.yaml b/config/datasource/smart-factory-1P-withoutDefects/bar-resource.yaml new file mode 100644 index 0000000..5959b49 --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/bar-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barResource" +spec: + name: "barResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/bar.yaml b/config/datasource/smart-factory-1P-withoutDefects/bar.yaml new file mode 100644 index 0000000..e075f62 --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/bar.yaml @@ -0,0 +1,9 @@ +kind: object +name: "bar" +spec: + name: "bar" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/board-resource.yaml b/config/datasource/smart-factory-1P-withoutDefects/board-resource.yaml new file mode 100644 index 0000000..43f93bb --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/board-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardResource" +spec: + name: "boardResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/board.yaml b/config/datasource/smart-factory-1P-withoutDefects/board.yaml new file mode 100644 index 0000000..8422765 --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/board.yaml @@ -0,0 +1,9 @@ +kind: object +name: "board" +spec: + name: "board" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/bolt.yaml b/config/datasource/smart-factory-1P-withoutDefects/bolt.yaml new file mode 100644 index 0000000..2dacd3d --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/bolt.yaml @@ -0,0 +1,6 @@ +kind: object +name: "bolt" +spec: + name: "bolt" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/e0-order.yaml b/config/datasource/smart-factory-1P-withoutDefects/e0-order.yaml new file mode 100644 index 0000000..86dcc4c --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-1P-withoutDefects/e1-outgoing-stock.yaml b/config/datasource/smart-factory-1P-withoutDefects/e1-outgoing-stock.yaml new file mode 100644 index 0000000..49cb60f --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/e1-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw" + number: 13 + change: "" + size: + - object: "bolt" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/e2-sawing-bar.yaml b/config/datasource/smart-factory-1P-withoutDefects/e2-sawing-bar.yaml new file mode 100644 index 0000000..3c4b48c --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/e2-sawing-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBar" +spec: + name: "SawingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "barResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + eventData: + - activity: + name: "Sawed" + output: + - object: "bar" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBar" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/e2-sawing-board.yaml b/config/datasource/smart-factory-1P-withoutDefects/e2-sawing-board.yaml new file mode 100644 index 0000000..70fbbf9 --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/e2-sawing-board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBoard" +spec: + name: "SawingBoard" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "M" + end: "M" + workstation: "M" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + eventData: + - activity: + name: "Sawed" + output: + - object: "board" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoard" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/e3-drilling-bar.yaml b/config/datasource/smart-factory-1P-withoutDefects/e3-drilling-bar.yaml new file mode 100644 index 0000000..b772c85 --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/e3-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBar" +spec: + name: "DrillingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "D" + end: "D" + workstation: "D" + selection: genericProbability + distribution: [1.0] + input: + - object: "bar" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "bar" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBar" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/e4-sanding-Bar.yaml b/config/datasource/smart-factory-1P-withoutDefects/e4-sanding-Bar.yaml new file mode 100644 index 0000000..c33fd6c --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/e4-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBar" +spec: + name: "SandingBar" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "SA" + end: "SA" + workstation: "SA" + selection: genericProbability + distribution: [1.0] + input: + - object: "bar" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded bar" + output: + - object: "bar" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "TransportM1A" + duration: 2 diff --git a/config/datasource/smart-factory-1P-withoutDefects/e4-sanding-Board.yaml b/config/datasource/smart-factory-1P-withoutDefects/e4-sanding-Board.yaml new file mode 100644 index 0000000..acae273 --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/e4-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoard" +spec: + name: "SandingBoard" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "SA" + end: "SA" + workstation: "SA" + selection: genericProbability + distribution: [1.0] + input: + - object: "board" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded board" + output: + - object: "board" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "TransportM1A" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/e5-assembly.yaml b/config/datasource/smart-factory-1P-withoutDefects/e5-assembly.yaml new file mode 100644 index 0000000..94e23bf --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/e5-assembly.yaml @@ -0,0 +1,45 @@ +kind: datasource +name: "Assembly" +spec: + name: "Assembly" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "bar" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "board" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw" + number: 13 + lastState: "" + size: + - object: "bolt" + number: 13 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "woodShelf" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl" \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/e6-quality-control.yaml b/config/datasource/smart-factory-1P-withoutDefects/e6-quality-control.yaml new file mode 100644 index 0000000..6ca7909 --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/e6-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl" +spec: + name: "QualityControl" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "woodShelf" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "woodShelf" + number: 1 + change: "proofed" + size: + transition: "Shipping" + duration: 2 + diff --git a/config/datasource/smart-factory-1P-withoutDefects/e7-shipping.yaml b/config/datasource/smart-factory-1P-withoutDefects/e7-shipping.yaml new file mode 100644 index 0000000..c0805d2 --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping" +spec: + name: "Shipping" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "woodShelf" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "woodShelf" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/order.yaml b/config/datasource/smart-factory-1P-withoutDefects/order.yaml new file mode 100644 index 0000000..f0ae6f9 --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/resourceOrder.yaml b/config/datasource/smart-factory-1P-withoutDefects/resourceOrder.yaml new file mode 100644 index 0000000..435f300 --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/routing.yaml b/config/datasource/smart-factory-1P-withoutDefects/routing.yaml new file mode 100644 index 0000000..1b83480 --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/screw.yaml b/config/datasource/smart-factory-1P-withoutDefects/screw.yaml new file mode 100644 index 0000000..b721d7d --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/screw.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw" +spec: + name: "screw" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/warehouse_stock.yaml b/config/datasource/smart-factory-1P-withoutDefects/warehouse_stock.yaml new file mode 100644 index 0000000..455a78c --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-1P-withoutDefects/woodShelf.yaml b/config/datasource/smart-factory-1P-withoutDefects/woodShelf.yaml new file mode 100644 index 0000000..f4859dd --- /dev/null +++ b/config/datasource/smart-factory-1P-withoutDefects/woodShelf.yaml @@ -0,0 +1,6 @@ +kind: object +name: "woodShelf" +spec: + name: "woodShelf" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/barA-resource.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/barA-resource.yaml new file mode 100644 index 0000000..34bd237 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/barA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barAResource" +spec: + name: "barAResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/barA.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/barA.yaml new file mode 100644 index 0000000..59070fc --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/barW-resource.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/barW-resource.yaml new file mode 100644 index 0000000..4086ca6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/barW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barWResource" +spec: + name: "barWResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/barW.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/barW.yaml new file mode 100644 index 0000000..5fd5a06 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/boardA-resource.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/boardA-resource.yaml new file mode 100644 index 0000000..34a8491 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/boardA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardAResource" +spec: + name: "boardAResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/boardA.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/boardA.yaml new file mode 100644 index 0000000..8483dd9 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/boardW-resource.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/boardW-resource.yaml new file mode 100644 index 0000000..c107fd1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/boardW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardWResource" +spec: + name: "boardWResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/boardW.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/boardW.yaml new file mode 100644 index 0000000..7a4be5c --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e0-order.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e0-order.yaml new file mode 100644 index 0000000..8a48a17 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder1" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e0a-order.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e0a-order.yaml new file mode 100644 index 0000000..34285c0 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e0a-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacementA" +spec: + name: "OrderPlacementA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "OutgoingStockA" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e1-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e1-outgoing-stock.yaml new file mode 100644 index 0000000..892ae06 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e1-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e1a-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e1a-outgoing-stock.yaml new file mode 100644 index 0000000..3ac506b --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e1a-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e2-sawing-bar.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e2-sawing-bar.yaml new file mode 100644 index 0000000..b5b0393 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e2-sawing-bar.yaml @@ -0,0 +1,37 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarW" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e2-sawing-board.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e2-sawing-board.yaml new file mode 100644 index 0000000..ccc5f18 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e2-sawing-board.yaml @@ -0,0 +1,37 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardW" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e2a-sawing-bar.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e2a-sawing-bar.yaml new file mode 100644 index 0000000..c08bb6d --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e2a-sawing-bar.yaml @@ -0,0 +1,37 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarA" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e2a-sawing-board.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e2a-sawing-board.yaml new file mode 100644 index 0000000..4157634 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e2a-sawing-board.yaml @@ -0,0 +1,37 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardA" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e3-drilling-bar.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e3-drilling-bar.yaml new file mode 100644 index 0000000..77004b5 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e3-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarW" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e3a-drilling-bar.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e3a-drilling-bar.yaml new file mode 100644 index 0000000..5c0c9aa --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e3a-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarA" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e4-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e4-sanding-Bar.yaml new file mode 100644 index 0000000..d9a9173 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e4-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly2" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e4-sanding-Board.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e4-sanding-Board.yaml new file mode 100644 index 0000000..d7341b1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e4-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..38873af --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e4a-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly1" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e4a-sanding-Board.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e4a-sanding-Board.yaml new file mode 100644 index 0000000..8d7c545 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e4a-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly2" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e5-assembly.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e5-assembly.yaml new file mode 100644 index 0000000..10cf685 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e5-assembly.yaml @@ -0,0 +1,57 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + - object: "handoverBoard" + number: 1 + lastState: "" + size: + - object: "handoverBarA" + number: 1 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e5a-assembly.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e5a-assembly.yaml new file mode 100644 index 0000000..c89eeaa --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e5a-assembly.yaml @@ -0,0 +1,57 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + - object: "handoverBoardA" + number: 1 + lastState: "" + size: + - object: "handoverBar" + number: 1 + lastState: "" + size: + - object: "handoverA" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e6-quality-control.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e6-quality-control.yaml new file mode 100644 index 0000000..4fa5e58 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e6-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e6a-quality-control.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e6a-quality-control.yaml new file mode 100644 index 0000000..2e7f462 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e6a-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e7-shipping.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/e7a-shipping.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/handover.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/handover.yaml new file mode 100644 index 0000000..b018412 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/handover.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handover" +spec: + name: "handover" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverA.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverA.yaml new file mode 100644 index 0000000..c4b4b17 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverA" +spec: + name: "handoverA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBar.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBar.yaml new file mode 100644 index 0000000..d9add8d --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBar.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBar" +spec: + name: "handoverBar" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBarA.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBarA.yaml new file mode 100644 index 0000000..3b887b5 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBarA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarA" +spec: + name: "handoverBarA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBarR.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBarR.yaml new file mode 100644 index 0000000..aad56dd --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBarR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarR" +spec: + name: "handoverBarR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBarRA.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBarRA.yaml new file mode 100644 index 0000000..a651621 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBarRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarRA" +spec: + name: "handoverBarRA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoard.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoard.yaml new file mode 100644 index 0000000..59186c2 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoard.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoard" +spec: + name: "handoverBoard" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoardA.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoardA.yaml new file mode 100644 index 0000000..0a6adfa --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoardA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardA" +spec: + name: "handoverBoardA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoardR.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoardR.yaml new file mode 100644 index 0000000..493563a --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoardR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardR" +spec: + name: "handoverBoardR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoardRA.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoardRA.yaml new file mode 100644 index 0000000..42e7977 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/handoverBoardRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardRA" +spec: + name: "handoverBoardRA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/order1.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/order1.yaml new file mode 100644 index 0000000..bcaf45f --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/order1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order1" +spec: + name: "order1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/order2.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/order2.yaml new file mode 100644 index 0000000..dbc0dcf --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/pinA.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/pinA.yaml new file mode 100644 index 0000000..3ff2a03 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/pinW.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/pinW.yaml new file mode 100644 index 0000000..96ec4f7 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/resourceOrder1.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/resourceOrder1.yaml new file mode 100644 index 0000000..be67937 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/resourceOrder1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder1" +spec: + name: "resourceOrder1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/resourceOrder2.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/resourceOrder2.yaml new file mode 100644 index 0000000..7fcf9c4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/routing.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/routing.yaml new file mode 100644 index 0000000..f7e82a6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/routing.yaml @@ -0,0 +1,44 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "W" + duration: 3 + - routeForActivity: "retrieve resources" + start: "ST" + end: "Al" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "W" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "W" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "W" + duration: 3 + - routeForActivity: "Back to stock" + start: "Al" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "Al" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "Al" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/screw1.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/screw1.yaml new file mode 100644 index 0000000..45e5f8b --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/screw2.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/screw2.yaml new file mode 100644 index 0000000..6d6076e --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/shelf1.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/shelf1.yaml new file mode 100644 index 0000000..ea1a1d8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/shelf2.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/shelf2.yaml new file mode 100644 index 0000000..7115caa --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/t0A-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/t0A-stock-to-machine.yaml new file mode 100644 index 0000000..b92d1cc --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/t0A-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMA" +spec: + name: "TransportMA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + transition: "SawingBarA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/t0BA-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/t0BA-stock-to-machine.yaml new file mode 100644 index 0000000..ffcf36d --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/t0BA-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1BA" +spec: + name: "TransportM1BA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + transition: "SawingBoardA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/t0BW-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/t0BW-stock-to-machine.yaml new file mode 100644 index 0000000..ba6bd7a --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/t0BW-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1B" +spec: + name: "TransportM1B" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/t0W-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/t0W-stock-to-machine.yaml new file mode 100644 index 0000000..eb86094 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/t0W-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMW" +spec: + name: "TransportMW" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/t1-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1-stock-to-assembly.yaml new file mode 100644 index 0000000..5f1efe1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSA" +spec: + name: "TransportSA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/t1A-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1A-machine-to-assembly.yaml new file mode 100644 index 0000000..90fc2c1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1A-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlA" +spec: + name: "TransportMAlA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MA -> assembly" + output: + - object: "barA" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBarA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/t1A-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1A-stock-to-assembly.yaml new file mode 100644 index 0000000..f26053f --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1A-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSAAl" +spec: + name: "TransportSAAl" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + - object: "handoverA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/t1BA-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1BA-machine-to-assembly.yaml new file mode 100644 index 0000000..06a5b53 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1BA-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlAB" +spec: + name: "TransportMAlAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MAl -> assembly" + output: + - object: "boardA" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoardA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/t1BW-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1BW-machine-to-assembly.yaml new file mode 100644 index 0000000..8c4d0e0 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1BW-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWAB" +spec: + name: "TransportMWAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "boardW" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoard" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/t1W-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1W-machine-to-assembly.yaml new file mode 100644 index 0000000..9c67240 --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/t1W-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWA" +spec: + name: "TransportMWA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "barW" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBar" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/warehouse_stock.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/warehouse_stock.yaml new file mode 100644 index 0000000..bca347e --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order2" + number: 1000 + lastState: + size: + - object: "order1" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withTR-withoutDefects/workforces.yaml b/config/datasource/smart-factory-2P-withTR-withoutDefects/workforces.yaml new file mode 100644 index 0000000..a0f40ea --- /dev/null +++ b/config/datasource/smart-factory-2P-withTR-withoutDefects/workforces.yaml @@ -0,0 +1,7 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "transportRobot" + startLocation: "ST" + number: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/barA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/barA.yaml new file mode 100644 index 0000000..fd90873 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "bar" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/barW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/barW.yaml new file mode 100644 index 0000000..fa2d6b8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "bar" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/boardA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/boardA.yaml new file mode 100644 index 0000000..8a08496 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "board" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/boardW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/boardW.yaml new file mode 100644 index 0000000..0e97666 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "board" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e0-order.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e0-order.yaml new file mode 100644 index 0000000..f039375 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e0-order.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.5, 0.5] + input: + - object: "order" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "1" + size: + transition: "OutgoingStock" + duration: 0 + - activity: + name: "order for resources" + output: + - object: "resourceOrder" + number: 1 + change: "2" + size: + transition: "OutgoingStockA" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e1-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e1-outgoing-stock.yaml new file mode 100644 index 0000000..3d219c4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e1-outgoing-stock.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.99, 0.01 ] + input: + - object: "resourceOrder" + number: 1 + lastState: "1" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barA" + number: 2 + change: "Resource" + size: + length: "4" + width: "" + depth: "" + - object: "boardW" + number: 1 + change: "Resource" + size: + length: "" + width: "30" + depth: "30" + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + duration: 5 + transition: "" + - activity: + name: "Failure: Missing resources" + output: + - object: "" + number: 0 + change: "" + size: + duration: 2 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e1a-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e1a-outgoing-stock.yaml new file mode 100644 index 0000000..68e4332 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e1a-outgoing-stock.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.99, 0.01 ] + input: + - object: "resourceOrder" + number: 1 + lastState: "2" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barW" + number: 2 + change: "Resource" + size: + length: "4" + width: "" + depth: "" + - object: "boardA" + number: 1 + change: "Resource" + size: + length: "" + width: "30" + depth: "30" + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + duration: 5 + transition: "" + - activity: + name: "Failure: Missing resources" + output: + - object: "" + number: 0 + change: "" + size: + duration: 2 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2-sawing-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2-sawing-bar.yaml new file mode 100644 index 0000000..6371a7c --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2-sawing-bar.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barW" + number: 2 + lastState: "Resource" + size: + length: "4" + width: "" + depth: "" + - object: "handover" + number: 1 + lastState: "BarR" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarW" + duration: 4 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barW" + number: 2 + change: "Resource" + size: + length: "4" + width: "" + depth: "" + - object: "handover" + number: 1 + change: "BarR" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barW" + number: 3 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + - object: "barW" + number: 1 + change: "broken" + size: + length: "1.25" + width: "" + depth: "" + duration: 4 + transition: "DrillingBarW" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2-sawing-board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2-sawing-board.yaml new file mode 100644 index 0000000..9e8ce9a --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardW" + number: 1 + lastState: "Resource" + size: + length: "" + width: "30" + depth: "30" + - object: "handover" + number: 1 + lastState: "BoardR" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardW" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardW" + number: 1 + change: "Resource" + size: + length: "" + width: "30" + depth: "30" + - object: "handover" + number: 1 + change: "BoardR" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardW" + number: 4 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + - object: "boardW" + number: 2 + change: "broken" + size: + length: "" + width: "4.32" + depth: "4.24" + duration: 4 + transition: "SandingBoardW" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2a-sawing-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2a-sawing-bar.yaml new file mode 100644 index 0000000..3e896e7 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2a-sawing-bar.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barA" + number: 2 + lastState: "Resource" + size: + length: "4" + width: "" + depth: "" + - object: "handover" + number: 1 + lastState: "BarRA" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarA" + duration: 4 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barA" + number: 2 + change: "Resource" + size: + length: "4" + width: "" + depth: "" + - object: "handover" + number: 1 + change: "BarRA" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barA" + number: 3 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + - object: "barA" + number: 1 + change: "broken" + size: + length: "1.25" + width: "" + depth: "" + duration: 4 + transition: "DrillingBarA" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2a-sawing-board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2a-sawing-board.yaml new file mode 100644 index 0000000..c0ca67f --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e2a-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardA" + number: 1 + lastState: "Resource" + size: + length: "" + width: "30" + depth: "30" + - object: "handover" + number: 1 + lastState: "BoardRA" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardA" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardA" + number: 1 + change: "Resource" + size: + length: "" + width: "30" + depth: "30" + - object: "handover" + number: 1 + change: "BoardRA" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardA" + number: 4 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + - object: "boardA" + number: 2 + change: "broken" + size: + length: "" + width: "4.32" + depth: "4.24" + duration: 4 + transition: "SandingBoardA" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e3-drilling-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e3-drilling-bar.yaml new file mode 100644 index 0000000..a726fe6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e3-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarW" + duration: 3 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barW" + number: 1 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e3a-drilling-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e3a-drilling-bar.yaml new file mode 100644 index 0000000..a4423de --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e3a-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarA" + duration: 3 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barA" + number: 1 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4-sanding-Bar.yaml new file mode 100644 index 0000000..5b46039 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly2" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4-sanding-Board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4-sanding-Board.yaml new file mode 100644 index 0000000..e32bb7d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..a6d3bee --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4a-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly1" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4a-sanding-Board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4a-sanding-Board.yaml new file mode 100644 index 0000000..683a707 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e4a-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly2" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e5-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e5-assembly.yaml new file mode 100644 index 0000000..f27c5d2 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e5-assembly.yaml @@ -0,0 +1,105 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.98, 0.01, 0.01 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "Board" + size: + - object: "handover" + number: 1 + lastState: "BarA" + size: + - object: "handover" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" + - activity: + name: "Failure: Overheating" + output: + - object: "barA" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardW" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "Board" + size: + - object: "handover" + number: 1 + change: "BarA" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "" + duration: 5 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf1" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e5a-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e5a-assembly.yaml new file mode 100644 index 0000000..c0e1ab4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e5a-assembly.yaml @@ -0,0 +1,105 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.98, 0.01, 0.01 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "BoardA" + size: + - object: "handover" + number: 1 + lastState: "Bar" + size: + - object: "handover" + number: 1 + lastState: "A" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" + - activity: + name: "Failure: Overheating" + output: + - object: "barW" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardA" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "BoardA" + size: + - object: "handover" + number: 1 + change: "Bar" + size: + - object: "handover" + number: 1 + change: "A" + size: + transition: "" + duration: 5 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf2" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e6-quality-control.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e6-quality-control.yaml new file mode 100644 index 0000000..dd8217e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e6-quality-control.yaml @@ -0,0 +1,46 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf1" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e6a-quality-control.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e6a-quality-control.yaml new file mode 100644 index 0000000..c838db3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e6a-quality-control.yaml @@ -0,0 +1,47 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf2" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + + diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e7-shipping.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e7a-shipping.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/handover.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/handover.yaml new file mode 100644 index 0000000..464f9f4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/handover.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handover" +spec: + name: "handover" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/order.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/order.yaml new file mode 100644 index 0000000..f0ae6f9 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/order.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order" +spec: + name: "order" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/pinA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/pinA.yaml new file mode 100644 index 0000000..65266d9 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/pinW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/pinW.yaml new file mode 100644 index 0000000..196b594 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/resourceOrder.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/resourceOrder.yaml new file mode 100644 index 0000000..435f300 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/resourceOrder.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder" +spec: + name: "resourceOrder" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/routing.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/routing.yaml new file mode 100644 index 0000000..f7e82a6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/routing.yaml @@ -0,0 +1,44 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "W" + duration: 3 + - routeForActivity: "retrieve resources" + start: "ST" + end: "Al" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "W" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "W" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "W" + duration: 3 + - routeForActivity: "Back to stock" + start: "Al" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "Al" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "Al" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/screw1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/screw1.yaml new file mode 100644 index 0000000..5f02ab1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/screw2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/screw2.yaml new file mode 100644 index 0000000..3219433 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/shelf1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/shelf1.yaml new file mode 100644 index 0000000..ea1a1d8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/shelf2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/shelf2.yaml new file mode 100644 index 0000000..7115caa --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0A-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0A-stock-to-machine.yaml new file mode 100644 index 0000000..9733134 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0A-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMA" +spec: + name: "TransportMA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 2 + lastState: "Resource" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "barA" + number: 2 + change: "Resource" + size: + length: "4" + width: "" + depth: "" + - object: "handover" + number: 1 + change: "BarRA" + size: + transition: "SawingBarA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0BA-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0BA-stock-to-machine.yaml new file mode 100644 index 0000000..2f71056 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0BA-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1BA" +spec: + name: "TransportM1BA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "Resource" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "boardA" + number: 1 + change: "Resource" + size: + length: "" + width: "30" + depth: "30" + - object: "handover" + number: 1 + change: "BoardRA" + size: + transition: "SawingBoardA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0BW-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0BW-stock-to-machine.yaml new file mode 100644 index 0000000..4af1e75 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0BW-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1B" +spec: + name: "TransportM1B" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "Resource" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "boardW" + number: 1 + change: "Resource" + size: + length: "" + width: "30" + depth: "30" + - object: "handover" + number: 1 + change: "BoardR" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0W-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0W-stock-to-machine.yaml new file mode 100644 index 0000000..0879a64 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t0W-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMW" +spec: + name: "TransportMW" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 2 + lastState: "Resource" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "barW" + number: 2 + change: "Resource" + size: + length: "4" + width: "" + depth: "" + - object: "handover" + number: 1 + change: "BarR" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1-stock-to-assembly.yaml new file mode 100644 index 0000000..5f1efe1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSA" +spec: + name: "TransportSA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1A-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1A-machine-to-assembly.yaml new file mode 100644 index 0000000..6b8f3f8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1A-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlA" +spec: + name: "TransportMAlA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MA -> assembly" + output: + - object: "barA" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handover" + number: 1 + change: "BarA" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1A-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1A-stock-to-assembly.yaml new file mode 100644 index 0000000..87cfa2d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1A-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSAAl" +spec: + name: "TransportSAAl" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "A" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1BA-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1BA-machine-to-assembly.yaml new file mode 100644 index 0000000..03e8210 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1BA-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlAB" +spec: + name: "TransportMAlAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MAl -> assembly" + output: + - object: "boardA" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handover" + number: 1 + change: "BoardA" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1BW-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1BW-machine-to-assembly.yaml new file mode 100644 index 0000000..84de2b8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1BW-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWAB" +spec: + name: "TransportMWAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "boardW" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handover" + number: 1 + change: "Board" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1W-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1W-machine-to-assembly.yaml new file mode 100644 index 0000000..5ec115f --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/t1W-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWA" +spec: + name: "TransportMWA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "barW" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handover" + number: 1 + change: "Bar" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/warehouse_stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/warehouse_stock.yaml new file mode 100644 index 0000000..18e609c --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/warehouse_stock.yaml @@ -0,0 +1,8 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order" + number: 350 + lastState: "" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/workforces.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/workforces.yaml new file mode 100644 index 0000000..8bc09fb --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-demand/workforces.yaml @@ -0,0 +1,13 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "transportRobot" + startLocation: "ST" + number: 3 + - name: "machineWorker" + startLocation: "W" + number: 2 + - name: "machineWorker" + startLocation: "Al" + number: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barA-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barA-resource.yaml new file mode 100644 index 0000000..34bd237 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barAResource" +spec: + name: "barAResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barA.yaml new file mode 100644 index 0000000..59070fc --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barW-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barW-resource.yaml new file mode 100644 index 0000000..4086ca6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barWResource" +spec: + name: "barWResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barW.yaml new file mode 100644 index 0000000..5fd5a06 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardA-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardA-resource.yaml new file mode 100644 index 0000000..34a8491 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardAResource" +spec: + name: "boardAResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardA.yaml new file mode 100644 index 0000000..8483dd9 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardW-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardW-resource.yaml new file mode 100644 index 0000000..c107fd1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardWResource" +spec: + name: "boardWResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardW.yaml new file mode 100644 index 0000000..7a4be5c --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e0-order.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e0-order.yaml new file mode 100644 index 0000000..8a48a17 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder1" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e0a-order.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e0a-order.yaml new file mode 100644 index 0000000..34285c0 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e0a-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacementA" +spec: + name: "OrderPlacementA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "OutgoingStockA" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e1-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e1-outgoing-stock.yaml new file mode 100644 index 0000000..d7d9833 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e1-outgoing-stock.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.99, 0.01 ] + input: + - object: "resourceOrder1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + duration: 5 + transition: "" + - activity: + name: "Failure: Missing resources" + output: + - object: "" + number: 0 + change: "" + size: + duration: 2 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e1a-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e1a-outgoing-stock.yaml new file mode 100644 index 0000000..4c2151d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e1a-outgoing-stock.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.99, 0.01 ] + input: + - object: "resourceOrder2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + duration: 5 + transition: "" + - activity: + name: "Failure: Missing resources" + output: + - object: "" + number: 0 + change: "" + size: + duration: 2 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2-sawing-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2-sawing-bar.yaml new file mode 100644 index 0000000..e9c192c --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2-sawing-bar.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarW" + duration: 4 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barW" + number: 3 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + - object: "barW" + number: 1 + change: "broken" + size: + length: "1.25" + width: "" + depth: "" + duration: 4 + transition: "DrillingBarW" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2-sawing-board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2-sawing-board.yaml new file mode 100644 index 0000000..cfc90d6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardW" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardW" + number: 4 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + - object: "boardW" + number: 2 + change: "broken" + size: + length: "" + width: "4.32" + depth: "4.24" + duration: 4 + transition: "SandingBoardW" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2a-sawing-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2a-sawing-bar.yaml new file mode 100644 index 0000000..3748a84 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2a-sawing-bar.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarA" + duration: 4 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barA" + number: 3 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + - object: "barA" + number: 1 + change: "broken" + size: + length: "1.25" + width: "" + depth: "" + duration: 4 + transition: "DrillingBarA" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2a-sawing-board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2a-sawing-board.yaml new file mode 100644 index 0000000..98373c1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e2a-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardA" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardA" + number: 4 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + - object: "boardA" + number: 2 + change: "broken" + size: + length: "" + width: "4.32" + depth: "4.24" + duration: 4 + transition: "SandingBoardA" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e3-drilling-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e3-drilling-bar.yaml new file mode 100644 index 0000000..a726fe6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e3-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarW" + duration: 3 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barW" + number: 1 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e3a-drilling-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e3a-drilling-bar.yaml new file mode 100644 index 0000000..a4423de --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e3a-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarA" + duration: 3 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barA" + number: 1 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4-sanding-Bar.yaml new file mode 100644 index 0000000..5b46039 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly2" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4-sanding-Board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4-sanding-Board.yaml new file mode 100644 index 0000000..e32bb7d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..a6d3bee --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4a-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly1" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4a-sanding-Board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4a-sanding-Board.yaml new file mode 100644 index 0000000..683a707 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e4a-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly2" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e5-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e5-assembly.yaml new file mode 100644 index 0000000..252d51e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e5-assembly.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.94, 0.03, 0.03 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + - object: "handoverBoard" + number: 1 + lastState: "" + size: + - object: "handoverBarA" + number: 1 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" + - activity: + name: "Failure: Overheating" + output: + - object: "shelf1" + number: 1 + change: "overheated" + size: + transition: "" + duration: 2 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf1" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e5a-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e5a-assembly.yaml new file mode 100644 index 0000000..0a361df --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e5a-assembly.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.94, 0.03, 0.03 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + - object: "handoverBoardA" + number: 1 + lastState: "" + size: + - object: "handoverBar" + number: 1 + lastState: "" + size: + - object: "handoverA" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" + - activity: + name: "Failure: Overheating" + output: + - object: "shelf2" + number: 1 + change: "overheated" + size: + transition: "" + duration: 2 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf2" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e6-quality-control.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e6-quality-control.yaml new file mode 100644 index 0000000..dd8217e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e6-quality-control.yaml @@ -0,0 +1,46 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf1" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e6a-quality-control.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e6a-quality-control.yaml new file mode 100644 index 0000000..c838db3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e6a-quality-control.yaml @@ -0,0 +1,47 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf2" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + + diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e7-shipping.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e7a-shipping.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handover.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handover.yaml new file mode 100644 index 0000000..b018412 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handover.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handover" +spec: + name: "handover" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverA.yaml new file mode 100644 index 0000000..bf0052b --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverA" +spec: + name: "handoverA" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBar.yaml new file mode 100644 index 0000000..9535238 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBar.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBar" +spec: + name: "handoverBar" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBarA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBarA.yaml new file mode 100644 index 0000000..ad647ff --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBarA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarA" +spec: + name: "handoverBarA" + type: "processedResource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBarR.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBarR.yaml new file mode 100644 index 0000000..6841e0a --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBarR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarR" +spec: + name: "handoverBarR" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBarRA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBarRA.yaml new file mode 100644 index 0000000..3c8ab3c --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBarRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarRA" +spec: + name: "handoverBarRA" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoard.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoard.yaml new file mode 100644 index 0000000..1b814fc --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoard.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoard" +spec: + name: "handoverBoard" + type: "processedResource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoardA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoardA.yaml new file mode 100644 index 0000000..37cdba7 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoardA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardA" +spec: + name: "handoverBoardA" + type: "processedResource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoardR.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoardR.yaml new file mode 100644 index 0000000..47c7a44 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoardR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardR" +spec: + name: "handoverBoardR" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoardRA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoardRA.yaml new file mode 100644 index 0000000..9d0a3e0 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/handoverBoardRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardRA" +spec: + name: "handoverBoardRA" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/order1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/order1.yaml new file mode 100644 index 0000000..bcaf45f --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/order1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order1" +spec: + name: "order1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/order2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/order2.yaml new file mode 100644 index 0000000..dbc0dcf --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/pinA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/pinA.yaml new file mode 100644 index 0000000..3ff2a03 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/pinW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/pinW.yaml new file mode 100644 index 0000000..96ec4f7 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/resourceOrder1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/resourceOrder1.yaml new file mode 100644 index 0000000..be67937 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/resourceOrder1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder1" +spec: + name: "resourceOrder1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/resourceOrder2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/resourceOrder2.yaml new file mode 100644 index 0000000..7fcf9c4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/routing.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/routing.yaml new file mode 100644 index 0000000..f7e82a6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/routing.yaml @@ -0,0 +1,44 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "W" + duration: 3 + - routeForActivity: "retrieve resources" + start: "ST" + end: "Al" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "W" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "W" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "W" + duration: 3 + - routeForActivity: "Back to stock" + start: "Al" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "Al" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "Al" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/screw1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/screw1.yaml new file mode 100644 index 0000000..45e5f8b --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/screw2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/screw2.yaml new file mode 100644 index 0000000..6d6076e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/shelf1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/shelf1.yaml new file mode 100644 index 0000000..ea1a1d8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/shelf2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/shelf2.yaml new file mode 100644 index 0000000..7115caa --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0A-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0A-stock-to-machine.yaml new file mode 100644 index 0000000..b92d1cc --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0A-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMA" +spec: + name: "TransportMA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + transition: "SawingBarA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0BA-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0BA-stock-to-machine.yaml new file mode 100644 index 0000000..ffcf36d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0BA-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1BA" +spec: + name: "TransportM1BA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + transition: "SawingBoardA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0BW-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0BW-stock-to-machine.yaml new file mode 100644 index 0000000..ba6bd7a --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0BW-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1B" +spec: + name: "TransportM1B" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0W-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0W-stock-to-machine.yaml new file mode 100644 index 0000000..eb86094 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t0W-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMW" +spec: + name: "TransportMW" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1-stock-to-assembly.yaml new file mode 100644 index 0000000..5f1efe1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSA" +spec: + name: "TransportSA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1A-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1A-machine-to-assembly.yaml new file mode 100644 index 0000000..90fc2c1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1A-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlA" +spec: + name: "TransportMAlA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MA -> assembly" + output: + - object: "barA" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBarA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1A-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1A-stock-to-assembly.yaml new file mode 100644 index 0000000..f26053f --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1A-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSAAl" +spec: + name: "TransportSAAl" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + - object: "handoverA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1BA-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1BA-machine-to-assembly.yaml new file mode 100644 index 0000000..06a5b53 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1BA-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlAB" +spec: + name: "TransportMAlAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MAl -> assembly" + output: + - object: "boardA" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoardA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1BW-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1BW-machine-to-assembly.yaml new file mode 100644 index 0000000..8c4d0e0 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1BW-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWAB" +spec: + name: "TransportMWAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "boardW" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoard" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1W-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1W-machine-to-assembly.yaml new file mode 100644 index 0000000..9c67240 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/t1W-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWA" +spec: + name: "TransportMWA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "barW" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBar" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/warehouse_stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/warehouse_stock.yaml new file mode 100644 index 0000000..bca347e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order2" + number: 1000 + lastState: + size: + - object: "order1" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/workforces.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/workforces.yaml new file mode 100644 index 0000000..8bc09fb --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-strict-time/workforces.yaml @@ -0,0 +1,13 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "transportRobot" + startLocation: "ST" + number: 3 + - name: "machineWorker" + startLocation: "W" + number: 2 + - name: "machineWorker" + startLocation: "Al" + number: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barA-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barA-resource.yaml new file mode 100644 index 0000000..5f4f56b --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barAResource" +spec: + name: "barAResource" + type: "aluminum" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barA.yaml new file mode 100644 index 0000000..4a85117 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "aluminum" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barW-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barW-resource.yaml new file mode 100644 index 0000000..870fcbd --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barWResource" +spec: + name: "barWResource" + type: "wood" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barW.yaml new file mode 100644 index 0000000..0bc30cd --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "wood" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardA-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardA-resource.yaml new file mode 100644 index 0000000..7b9088c --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardAResource" +spec: + name: "boardAResource" + type: "aluminum" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardA.yaml new file mode 100644 index 0000000..3978ca1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "aluminum" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardW-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardW-resource.yaml new file mode 100644 index 0000000..8adec30 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardWResource" +spec: + name: "boardWResource" + type: "wood" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardW.yaml new file mode 100644 index 0000000..52d7b3d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "wood" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e0-order.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e0-order.yaml new file mode 100644 index 0000000..8a48a17 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder1" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e0a-order.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e0a-order.yaml new file mode 100644 index 0000000..34285c0 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e0a-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacementA" +spec: + name: "OrderPlacementA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "OutgoingStockA" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e1-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e1-outgoing-stock.yaml new file mode 100644 index 0000000..d7d9833 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e1-outgoing-stock.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.99, 0.01 ] + input: + - object: "resourceOrder1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + duration: 5 + transition: "" + - activity: + name: "Failure: Missing resources" + output: + - object: "" + number: 0 + change: "" + size: + duration: 2 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e1a-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e1a-outgoing-stock.yaml new file mode 100644 index 0000000..4c2151d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e1a-outgoing-stock.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.99, 0.01 ] + input: + - object: "resourceOrder2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + duration: 5 + transition: "" + - activity: + name: "Failure: Missing resources" + output: + - object: "" + number: 0 + change: "" + size: + duration: 2 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2-sawing-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2-sawing-bar.yaml new file mode 100644 index 0000000..e9c192c --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2-sawing-bar.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarW" + duration: 4 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barW" + number: 3 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + - object: "barW" + number: 1 + change: "broken" + size: + length: "1.25" + width: "" + depth: "" + duration: 4 + transition: "DrillingBarW" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2-sawing-board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2-sawing-board.yaml new file mode 100644 index 0000000..cfc90d6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardW" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardW" + number: 4 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + - object: "boardW" + number: 2 + change: "broken" + size: + length: "" + width: "4.32" + depth: "4.24" + duration: 4 + transition: "SandingBoardW" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2a-sawing-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2a-sawing-bar.yaml new file mode 100644 index 0000000..3748a84 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2a-sawing-bar.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarA" + duration: 4 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barA" + number: 3 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + - object: "barA" + number: 1 + change: "broken" + size: + length: "1.25" + width: "" + depth: "" + duration: 4 + transition: "DrillingBarA" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2a-sawing-board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2a-sawing-board.yaml new file mode 100644 index 0000000..98373c1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e2a-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardA" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardA" + number: 4 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + - object: "boardA" + number: 2 + change: "broken" + size: + length: "" + width: "4.32" + depth: "4.24" + duration: 4 + transition: "SandingBoardA" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e3-drilling-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e3-drilling-bar.yaml new file mode 100644 index 0000000..a726fe6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e3-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarW" + duration: 3 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barW" + number: 1 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e3a-drilling-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e3a-drilling-bar.yaml new file mode 100644 index 0000000..a4423de --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e3a-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarA" + duration: 3 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barA" + number: 1 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4-sanding-Bar.yaml new file mode 100644 index 0000000..5b46039 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly2" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4-sanding-Board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4-sanding-Board.yaml new file mode 100644 index 0000000..e32bb7d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..a6d3bee --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4a-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly1" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4a-sanding-Board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4a-sanding-Board.yaml new file mode 100644 index 0000000..683a707 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e4a-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly2" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e5-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e5-assembly.yaml new file mode 100644 index 0000000..252d51e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e5-assembly.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.94, 0.03, 0.03 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + - object: "handoverBoard" + number: 1 + lastState: "" + size: + - object: "handoverBarA" + number: 1 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" + - activity: + name: "Failure: Overheating" + output: + - object: "shelf1" + number: 1 + change: "overheated" + size: + transition: "" + duration: 2 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf1" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e5a-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e5a-assembly.yaml new file mode 100644 index 0000000..0a361df --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e5a-assembly.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.94, 0.03, 0.03 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + - object: "handoverBoardA" + number: 1 + lastState: "" + size: + - object: "handoverBar" + number: 1 + lastState: "" + size: + - object: "handoverA" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" + - activity: + name: "Failure: Overheating" + output: + - object: "shelf2" + number: 1 + change: "overheated" + size: + transition: "" + duration: 2 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf2" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e6-quality-control.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e6-quality-control.yaml new file mode 100644 index 0000000..dd8217e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e6-quality-control.yaml @@ -0,0 +1,46 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf1" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e6a-quality-control.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e6a-quality-control.yaml new file mode 100644 index 0000000..c838db3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e6a-quality-control.yaml @@ -0,0 +1,47 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf2" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + + diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e7-shipping.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e7a-shipping.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handover.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handover.yaml new file mode 100644 index 0000000..b018412 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handover.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handover" +spec: + name: "handover" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverA.yaml new file mode 100644 index 0000000..c4b4b17 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverA" +spec: + name: "handoverA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBar.yaml new file mode 100644 index 0000000..d9add8d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBar.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBar" +spec: + name: "handoverBar" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBarA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBarA.yaml new file mode 100644 index 0000000..3b887b5 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBarA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarA" +spec: + name: "handoverBarA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBarR.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBarR.yaml new file mode 100644 index 0000000..aad56dd --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBarR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarR" +spec: + name: "handoverBarR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBarRA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBarRA.yaml new file mode 100644 index 0000000..a651621 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBarRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarRA" +spec: + name: "handoverBarRA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoard.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoard.yaml new file mode 100644 index 0000000..59186c2 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoard.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoard" +spec: + name: "handoverBoard" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoardA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoardA.yaml new file mode 100644 index 0000000..0a6adfa --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoardA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardA" +spec: + name: "handoverBoardA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoardR.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoardR.yaml new file mode 100644 index 0000000..493563a --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoardR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardR" +spec: + name: "handoverBoardR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoardRA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoardRA.yaml new file mode 100644 index 0000000..42e7977 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/handoverBoardRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardRA" +spec: + name: "handoverBoardRA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/order1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/order1.yaml new file mode 100644 index 0000000..bcaf45f --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/order1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order1" +spec: + name: "order1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/order2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/order2.yaml new file mode 100644 index 0000000..dbc0dcf --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/pinA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/pinA.yaml new file mode 100644 index 0000000..65266d9 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/pinW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/pinW.yaml new file mode 100644 index 0000000..196b594 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/resourceOrder1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/resourceOrder1.yaml new file mode 100644 index 0000000..be67937 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/resourceOrder1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder1" +spec: + name: "resourceOrder1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/resourceOrder2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/resourceOrder2.yaml new file mode 100644 index 0000000..7fcf9c4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/routing.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/routing.yaml new file mode 100644 index 0000000..f7e82a6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/routing.yaml @@ -0,0 +1,44 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "W" + duration: 3 + - routeForActivity: "retrieve resources" + start: "ST" + end: "Al" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "W" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "W" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "W" + duration: 3 + - routeForActivity: "Back to stock" + start: "Al" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "Al" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "Al" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/screw1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/screw1.yaml new file mode 100644 index 0000000..5f02ab1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/screw2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/screw2.yaml new file mode 100644 index 0000000..3219433 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/shelf1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/shelf1.yaml new file mode 100644 index 0000000..ea1a1d8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/shelf2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/shelf2.yaml new file mode 100644 index 0000000..7115caa --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0A-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0A-stock-to-machine.yaml new file mode 100644 index 0000000..b92d1cc --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0A-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMA" +spec: + name: "TransportMA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + transition: "SawingBarA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0BA-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0BA-stock-to-machine.yaml new file mode 100644 index 0000000..ffcf36d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0BA-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1BA" +spec: + name: "TransportM1BA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + transition: "SawingBoardA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0BW-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0BW-stock-to-machine.yaml new file mode 100644 index 0000000..ba6bd7a --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0BW-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1B" +spec: + name: "TransportM1B" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0W-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0W-stock-to-machine.yaml new file mode 100644 index 0000000..eb86094 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t0W-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMW" +spec: + name: "TransportMW" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1-stock-to-assembly.yaml new file mode 100644 index 0000000..5f1efe1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSA" +spec: + name: "TransportSA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1A-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1A-machine-to-assembly.yaml new file mode 100644 index 0000000..90fc2c1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1A-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlA" +spec: + name: "TransportMAlA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MA -> assembly" + output: + - object: "barA" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBarA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1A-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1A-stock-to-assembly.yaml new file mode 100644 index 0000000..f26053f --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1A-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSAAl" +spec: + name: "TransportSAAl" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + - object: "handoverA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1BA-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1BA-machine-to-assembly.yaml new file mode 100644 index 0000000..06a5b53 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1BA-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlAB" +spec: + name: "TransportMAlAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MAl -> assembly" + output: + - object: "boardA" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoardA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1BW-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1BW-machine-to-assembly.yaml new file mode 100644 index 0000000..8c4d0e0 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1BW-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWAB" +spec: + name: "TransportMWAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "boardW" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoard" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1W-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1W-machine-to-assembly.yaml new file mode 100644 index 0000000..9c67240 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/t1W-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWA" +spec: + name: "TransportMWA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "barW" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBar" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/warehouse_stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/warehouse_stock.yaml new file mode 100644 index 0000000..bca347e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order2" + number: 1000 + lastState: + size: + - object: "order1" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/workforces.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/workforces.yaml new file mode 100644 index 0000000..8bc09fb --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-supplier/workforces.yaml @@ -0,0 +1,13 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "transportRobot" + startLocation: "ST" + number: 3 + - name: "machineWorker" + startLocation: "W" + number: 2 + - name: "machineWorker" + startLocation: "Al" + number: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barA-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barA-resource.yaml new file mode 100644 index 0000000..34bd237 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barAResource" +spec: + name: "barAResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barA.yaml new file mode 100644 index 0000000..59070fc --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barW-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barW-resource.yaml new file mode 100644 index 0000000..4086ca6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barWResource" +spec: + name: "barWResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barW.yaml new file mode 100644 index 0000000..5fd5a06 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardA-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardA-resource.yaml new file mode 100644 index 0000000..34a8491 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardAResource" +spec: + name: "boardAResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardA.yaml new file mode 100644 index 0000000..8483dd9 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardW-resource.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardW-resource.yaml new file mode 100644 index 0000000..c107fd1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardWResource" +spec: + name: "boardWResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardW.yaml new file mode 100644 index 0000000..7a4be5c --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e0-order.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e0-order.yaml new file mode 100644 index 0000000..8a48a17 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder1" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e0a-order.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e0a-order.yaml new file mode 100644 index 0000000..34285c0 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e0a-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacementA" +spec: + name: "OrderPlacementA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "OutgoingStockA" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e1-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e1-outgoing-stock.yaml new file mode 100644 index 0000000..d7d9833 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e1-outgoing-stock.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.99, 0.01 ] + input: + - object: "resourceOrder1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + duration: 5 + transition: "" + - activity: + name: "Failure: Missing resources" + output: + - object: "" + number: 0 + change: "" + size: + duration: 2 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e1a-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e1a-outgoing-stock.yaml new file mode 100644 index 0000000..4c2151d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e1a-outgoing-stock.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: genericProbability + distribution: [ 0.99, 0.01 ] + input: + - object: "resourceOrder2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + duration: 5 + transition: "" + - activity: + name: "Failure: Missing resources" + output: + - object: "" + number: 0 + change: "" + size: + duration: 2 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2-sawing-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2-sawing-bar.yaml new file mode 100644 index 0000000..e9c192c --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2-sawing-bar.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarW" + duration: 4 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barW" + number: 3 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + - object: "barW" + number: 1 + change: "broken" + size: + length: "1.25" + width: "" + depth: "" + duration: 4 + transition: "DrillingBarW" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2-sawing-board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2-sawing-board.yaml new file mode 100644 index 0000000..cfc90d6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardW" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardW" + number: 4 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + - object: "boardW" + number: 2 + change: "broken" + size: + length: "" + width: "4.32" + depth: "4.24" + duration: 4 + transition: "SandingBoardW" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2a-sawing-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2a-sawing-bar.yaml new file mode 100644 index 0000000..3748a84 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2a-sawing-bar.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarA" + duration: 4 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barA" + number: 3 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + - object: "barA" + number: 1 + change: "broken" + size: + length: "1.25" + width: "" + depth: "" + duration: 4 + transition: "DrillingBarA" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2a-sawing-board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2a-sawing-board.yaml new file mode 100644 index 0000000..98373c1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e2a-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardA" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardA" + number: 4 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + - object: "boardA" + number: 2 + change: "broken" + size: + length: "" + width: "4.32" + depth: "4.24" + duration: 4 + transition: "SandingBoardA" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e3-drilling-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e3-drilling-bar.yaml new file mode 100644 index 0000000..a726fe6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e3-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarW" + duration: 3 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barW" + number: 1 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e3a-drilling-bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e3a-drilling-bar.yaml new file mode 100644 index 0000000..a4423de --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e3a-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarA" + duration: 3 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barA" + number: 1 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4-sanding-Bar.yaml new file mode 100644 index 0000000..5b46039 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly2" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4-sanding-Board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4-sanding-Board.yaml new file mode 100644 index 0000000..e32bb7d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..a6d3bee --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4a-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly1" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4a-sanding-Board.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4a-sanding-Board.yaml new file mode 100644 index 0000000..683a707 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e4a-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly2" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e5-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e5-assembly.yaml new file mode 100644 index 0000000..252d51e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e5-assembly.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.94, 0.03, 0.03 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + - object: "handoverBoard" + number: 1 + lastState: "" + size: + - object: "handoverBarA" + number: 1 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" + - activity: + name: "Failure: Overheating" + output: + - object: "shelf1" + number: 1 + change: "overheated" + size: + transition: "" + duration: 2 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf1" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e5a-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e5a-assembly.yaml new file mode 100644 index 0000000..0a361df --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e5a-assembly.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.94, 0.03, 0.03 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + - object: "handoverBoardA" + number: 1 + lastState: "" + size: + - object: "handoverBar" + number: 1 + lastState: "" + size: + - object: "handoverA" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" + - activity: + name: "Failure: Overheating" + output: + - object: "shelf2" + number: 1 + change: "overheated" + size: + transition: "" + duration: 2 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf2" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e6-quality-control.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e6-quality-control.yaml new file mode 100644 index 0000000..dd8217e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e6-quality-control.yaml @@ -0,0 +1,46 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf1" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e6a-quality-control.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e6a-quality-control.yaml new file mode 100644 index 0000000..c838db3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e6a-quality-control.yaml @@ -0,0 +1,47 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf2" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + + diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e7-shipping.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e7a-shipping.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handover.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handover.yaml new file mode 100644 index 0000000..b018412 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handover.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handover" +spec: + name: "handover" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverA.yaml new file mode 100644 index 0000000..c4b4b17 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverA" +spec: + name: "handoverA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBar.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBar.yaml new file mode 100644 index 0000000..d9add8d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBar.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBar" +spec: + name: "handoverBar" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBarA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBarA.yaml new file mode 100644 index 0000000..3b887b5 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBarA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarA" +spec: + name: "handoverBarA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBarR.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBarR.yaml new file mode 100644 index 0000000..aad56dd --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBarR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarR" +spec: + name: "handoverBarR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBarRA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBarRA.yaml new file mode 100644 index 0000000..a651621 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBarRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarRA" +spec: + name: "handoverBarRA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoard.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoard.yaml new file mode 100644 index 0000000..59186c2 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoard.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoard" +spec: + name: "handoverBoard" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoardA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoardA.yaml new file mode 100644 index 0000000..0a6adfa --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoardA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardA" +spec: + name: "handoverBoardA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoardR.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoardR.yaml new file mode 100644 index 0000000..493563a --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoardR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardR" +spec: + name: "handoverBoardR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoardRA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoardRA.yaml new file mode 100644 index 0000000..42e7977 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/handoverBoardRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardRA" +spec: + name: "handoverBoardRA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/order1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/order1.yaml new file mode 100644 index 0000000..bcaf45f --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/order1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order1" +spec: + name: "order1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/order2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/order2.yaml new file mode 100644 index 0000000..dbc0dcf --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/pinA.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/pinA.yaml new file mode 100644 index 0000000..3ff2a03 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/pinW.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/pinW.yaml new file mode 100644 index 0000000..96ec4f7 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/resourceOrder1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/resourceOrder1.yaml new file mode 100644 index 0000000..be67937 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/resourceOrder1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder1" +spec: + name: "resourceOrder1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/resourceOrder2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/resourceOrder2.yaml new file mode 100644 index 0000000..7fcf9c4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/routing.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/routing.yaml new file mode 100644 index 0000000..f7e82a6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/routing.yaml @@ -0,0 +1,44 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "W" + duration: 3 + - routeForActivity: "retrieve resources" + start: "ST" + end: "Al" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "W" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "W" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "W" + duration: 3 + - routeForActivity: "Back to stock" + start: "Al" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "Al" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "Al" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/screw1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/screw1.yaml new file mode 100644 index 0000000..45e5f8b --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/screw2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/screw2.yaml new file mode 100644 index 0000000..6d6076e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/shelf1.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/shelf1.yaml new file mode 100644 index 0000000..ea1a1d8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/shelf2.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/shelf2.yaml new file mode 100644 index 0000000..7115caa --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0A-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0A-stock-to-machine.yaml new file mode 100644 index 0000000..b92d1cc --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0A-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMA" +spec: + name: "TransportMA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + transition: "SawingBarA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0BA-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0BA-stock-to-machine.yaml new file mode 100644 index 0000000..ffcf36d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0BA-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1BA" +spec: + name: "TransportM1BA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + transition: "SawingBoardA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0BW-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0BW-stock-to-machine.yaml new file mode 100644 index 0000000..ba6bd7a --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0BW-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1B" +spec: + name: "TransportM1B" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0W-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0W-stock-to-machine.yaml new file mode 100644 index 0000000..eb86094 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t0W-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMW" +spec: + name: "TransportMW" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1-stock-to-assembly.yaml new file mode 100644 index 0000000..5f1efe1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSA" +spec: + name: "TransportSA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1A-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1A-machine-to-assembly.yaml new file mode 100644 index 0000000..90fc2c1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1A-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlA" +spec: + name: "TransportMAlA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MA -> assembly" + output: + - object: "barA" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBarA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1A-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1A-stock-to-assembly.yaml new file mode 100644 index 0000000..f26053f --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1A-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSAAl" +spec: + name: "TransportSAAl" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + - object: "handoverA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1BA-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1BA-machine-to-assembly.yaml new file mode 100644 index 0000000..06a5b53 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1BA-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlAB" +spec: + name: "TransportMAlAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MAl -> assembly" + output: + - object: "boardA" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoardA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1BW-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1BW-machine-to-assembly.yaml new file mode 100644 index 0000000..8c4d0e0 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1BW-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWAB" +spec: + name: "TransportMWAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "boardW" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoard" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1W-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1W-machine-to-assembly.yaml new file mode 100644 index 0000000..9c67240 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/t1W-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWA" +spec: + name: "TransportMWA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "barW" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBar" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/warehouse_stock.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/warehouse_stock.yaml new file mode 100644 index 0000000..bca347e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order2" + number: 1000 + lastState: + size: + - object: "order1" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withDefects-by-time/workforces.yaml b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/workforces.yaml new file mode 100644 index 0000000..8bc09fb --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withDefects-by-time/workforces.yaml @@ -0,0 +1,13 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "transportRobot" + startLocation: "ST" + number: 3 + - name: "machineWorker" + startLocation: "W" + number: 2 + - name: "machineWorker" + startLocation: "Al" + number: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/barA-resource.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/barA-resource.yaml new file mode 100644 index 0000000..34bd237 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/barA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barAResource" +spec: + name: "barAResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/barA.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/barA.yaml new file mode 100644 index 0000000..59070fc --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/barW-resource.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/barW-resource.yaml new file mode 100644 index 0000000..4086ca6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/barW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barWResource" +spec: + name: "barWResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/barW.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/barW.yaml new file mode 100644 index 0000000..5fd5a06 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/boardA-resource.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/boardA-resource.yaml new file mode 100644 index 0000000..34a8491 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/boardA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardAResource" +spec: + name: "boardAResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/boardA.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/boardA.yaml new file mode 100644 index 0000000..8483dd9 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/boardW-resource.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/boardW-resource.yaml new file mode 100644 index 0000000..c107fd1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/boardW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardWResource" +spec: + name: "boardWResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/boardW.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/boardW.yaml new file mode 100644 index 0000000..7a4be5c --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e0-order.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e0-order.yaml new file mode 100644 index 0000000..8a48a17 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e0-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder1" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e0a-order.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e0a-order.yaml new file mode 100644 index 0000000..34285c0 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e0a-order.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "OrderPlacementA" +spec: + name: "OrderPlacementA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "OutgoingStockA" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e1-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e1-outgoing-stock.yaml new file mode 100644 index 0000000..892ae06 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e1-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e1a-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e1a-outgoing-stock.yaml new file mode 100644 index 0000000..3ac506b --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e1a-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e2-sawing-bar.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e2-sawing-bar.yaml new file mode 100644 index 0000000..7112f77 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e2-sawing-bar.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarW" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e2-sawing-board.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e2-sawing-board.yaml new file mode 100644 index 0000000..d8afee8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e2-sawing-board.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardW" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e2a-sawing-bar.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e2a-sawing-bar.yaml new file mode 100644 index 0000000..2c41bda --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e2a-sawing-bar.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarA" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e2a-sawing-board.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e2a-sawing-board.yaml new file mode 100644 index 0000000..c9e09b4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e2a-sawing-board.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardA" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e3-drilling-bar.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e3-drilling-bar.yaml new file mode 100644 index 0000000..83652da --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e3-drilling-bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarW" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e3a-drilling-bar.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e3a-drilling-bar.yaml new file mode 100644 index 0000000..f41201b --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e3a-drilling-bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarA" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e4-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e4-sanding-Bar.yaml new file mode 100644 index 0000000..5b46039 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e4-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly2" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e4-sanding-Board.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e4-sanding-Board.yaml new file mode 100644 index 0000000..e32bb7d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e4-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..a6d3bee --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e4a-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly1" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e4a-sanding-Board.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e4a-sanding-Board.yaml new file mode 100644 index 0000000..683a707 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e4a-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly2" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e5-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e5-assembly.yaml new file mode 100644 index 0000000..10cf685 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e5-assembly.yaml @@ -0,0 +1,57 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + - object: "handoverBoard" + number: 1 + lastState: "" + size: + - object: "handoverBarA" + number: 1 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e5a-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e5a-assembly.yaml new file mode 100644 index 0000000..c89eeaa --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e5a-assembly.yaml @@ -0,0 +1,57 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + - object: "handoverBoardA" + number: 1 + lastState: "" + size: + - object: "handoverBar" + number: 1 + lastState: "" + size: + - object: "handoverA" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e6-quality-control.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e6-quality-control.yaml new file mode 100644 index 0000000..4fa5e58 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e6-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e6a-quality-control.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e6a-quality-control.yaml new file mode 100644 index 0000000..2e7f462 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e6a-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e7-shipping.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/e7a-shipping.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/handover.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/handover.yaml new file mode 100644 index 0000000..b018412 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/handover.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handover" +spec: + name: "handover" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverA.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverA.yaml new file mode 100644 index 0000000..c4b4b17 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverA" +spec: + name: "handoverA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBar.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBar.yaml new file mode 100644 index 0000000..d9add8d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBar.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBar" +spec: + name: "handoverBar" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBarA.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBarA.yaml new file mode 100644 index 0000000..3b887b5 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBarA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarA" +spec: + name: "handoverBarA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBarR.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBarR.yaml new file mode 100644 index 0000000..aad56dd --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBarR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarR" +spec: + name: "handoverBarR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBarRA.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBarRA.yaml new file mode 100644 index 0000000..a651621 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBarRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarRA" +spec: + name: "handoverBarRA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoard.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoard.yaml new file mode 100644 index 0000000..59186c2 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoard.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoard" +spec: + name: "handoverBoard" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoardA.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoardA.yaml new file mode 100644 index 0000000..0a6adfa --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoardA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardA" +spec: + name: "handoverBoardA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoardR.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoardR.yaml new file mode 100644 index 0000000..493563a --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoardR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardR" +spec: + name: "handoverBoardR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoardRA.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoardRA.yaml new file mode 100644 index 0000000..42e7977 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/handoverBoardRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardRA" +spec: + name: "handoverBoardRA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/order1.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/order1.yaml new file mode 100644 index 0000000..bcaf45f --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/order1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order1" +spec: + name: "order1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/order2.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/order2.yaml new file mode 100644 index 0000000..dbc0dcf --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/pinA.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/pinA.yaml new file mode 100644 index 0000000..3ff2a03 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/pinW.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/pinW.yaml new file mode 100644 index 0000000..96ec4f7 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/resourceOrder1.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/resourceOrder1.yaml new file mode 100644 index 0000000..be67937 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/resourceOrder1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder1" +spec: + name: "resourceOrder1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/resourceOrder2.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/resourceOrder2.yaml new file mode 100644 index 0000000..7fcf9c4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/routing.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/routing.yaml new file mode 100644 index 0000000..f7e82a6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/routing.yaml @@ -0,0 +1,44 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "W" + duration: 3 + - routeForActivity: "retrieve resources" + start: "ST" + end: "Al" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "W" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "W" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "W" + duration: 3 + - routeForActivity: "Back to stock" + start: "Al" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "Al" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "Al" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/screw1.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/screw1.yaml new file mode 100644 index 0000000..45e5f8b --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/screw2.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/screw2.yaml new file mode 100644 index 0000000..6d6076e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/shelf1.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/shelf1.yaml new file mode 100644 index 0000000..ea1a1d8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/shelf2.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/shelf2.yaml new file mode 100644 index 0000000..7115caa --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/t0A-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/t0A-stock-to-machine.yaml new file mode 100644 index 0000000..b92d1cc --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/t0A-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMA" +spec: + name: "TransportMA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + transition: "SawingBarA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/t0BA-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/t0BA-stock-to-machine.yaml new file mode 100644 index 0000000..ffcf36d --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/t0BA-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1BA" +spec: + name: "TransportM1BA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + transition: "SawingBoardA" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/t0BW-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/t0BW-stock-to-machine.yaml new file mode 100644 index 0000000..ba6bd7a --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/t0BW-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1B" +spec: + name: "TransportM1B" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "handoverBoardR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/t0W-stock-to-machine.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/t0W-stock-to-machine.yaml new file mode 100644 index 0000000..eb86094 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/t0W-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMW" +spec: + name: "TransportMW" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/t1-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1-stock-to-assembly.yaml new file mode 100644 index 0000000..5f1efe1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSA" +spec: + name: "TransportSA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/t1A-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1A-machine-to-assembly.yaml new file mode 100644 index 0000000..90fc2c1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1A-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlA" +spec: + name: "TransportMAlA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MA -> assembly" + output: + - object: "barA" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBarA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/t1A-stock-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1A-stock-to-assembly.yaml new file mode 100644 index 0000000..f26053f --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1A-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSAAl" +spec: + name: "TransportSAAl" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + - object: "handoverA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/t1BA-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1BA-machine-to-assembly.yaml new file mode 100644 index 0000000..06a5b53 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1BA-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlAB" +spec: + name: "TransportMAlAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MAl -> assembly" + output: + - object: "boardA" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoardA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/t1BW-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1BW-machine-to-assembly.yaml new file mode 100644 index 0000000..8c4d0e0 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1BW-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWAB" +spec: + name: "TransportMWAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "boardW" + number: 6 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "handoverBoard" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/t1W-machine-to-assembly.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1W-machine-to-assembly.yaml new file mode 100644 index 0000000..9c67240 --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/t1W-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWA" +spec: + name: "TransportMWA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "barW" + number: 4 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "handoverBar" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/warehouse_stock.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/warehouse_stock.yaml new file mode 100644 index 0000000..bca347e --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order2" + number: 1000 + lastState: + size: + - object: "order1" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withWF-withoutDefects/workforces.yaml b/config/datasource/smart-factory-2P-withWF-withoutDefects/workforces.yaml new file mode 100644 index 0000000..8bc09fb --- /dev/null +++ b/config/datasource/smart-factory-2P-withWF-withoutDefects/workforces.yaml @@ -0,0 +1,13 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "transportRobot" + startLocation: "ST" + number: 3 + - name: "machineWorker" + startLocation: "W" + number: 2 + - name: "machineWorker" + startLocation: "Al" + number: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barA-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barA-resource.yaml new file mode 100644 index 0000000..9958d8d --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barAResource" +spec: + name: "barAResource" + type: "length" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barA.yaml new file mode 100644 index 0000000..d076873 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "length" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barW-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barW-resource.yaml new file mode 100644 index 0000000..650aa72 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barWResource" +spec: + name: "barWResource" + type: "length" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barW.yaml new file mode 100644 index 0000000..a1600db --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "length" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardA-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardA-resource.yaml new file mode 100644 index 0000000..b8d29d1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardAResource" +spec: + name: "boardAResource" + type: "2D" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardA.yaml new file mode 100644 index 0000000..fe4288b --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "2D" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardW-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardW-resource.yaml new file mode 100644 index 0000000..8a45098 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardWResource" +spec: + name: "boardWResource" + type: "2D" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardW.yaml new file mode 100644 index 0000000..3937f24 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "2D" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e0-order.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e0-order.yaml new file mode 100644 index 0000000..66822eb --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e0-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order1" + number: 1 + lastState: "" + size: + workforces: + - workforce: "manager" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder1" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e0a-order.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e0a-order.yaml new file mode 100644 index 0000000..fe5d9df --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e0a-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "OrderPlacementA" +spec: + name: "OrderPlacementA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order2" + number: 1 + lastState: "" + size: + workforces: + - workforce: "manager" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "OutgoingStockA" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e1-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e1-outgoing-stock.yaml new file mode 100644 index 0000000..892ae06 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e1-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e1a-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e1a-outgoing-stock.yaml new file mode 100644 index 0000000..3ac506b --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e1a-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2-sawing-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2-sawing-bar.yaml new file mode 100644 index 0000000..01a5a3c --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2-sawing-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarW" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2-sawing-board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2-sawing-board.yaml new file mode 100644 index 0000000..dbeab1f --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2-sawing-board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardW" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2a-sawing-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2a-sawing-bar.yaml new file mode 100644 index 0000000..467e1af --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2a-sawing-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarA" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2a-sawing-board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2a-sawing-board.yaml new file mode 100644 index 0000000..864b61c --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e2a-sawing-board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardA" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e3-drilling-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e3-drilling-bar.yaml new file mode 100644 index 0000000..77004b5 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e3-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarW" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e3a-drilling-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e3a-drilling-bar.yaml new file mode 100644 index 0000000..499fac8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e3a-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarA" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4-sanding-Bar.yaml new file mode 100644 index 0000000..d9a9173 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly2" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4-sanding-Board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4-sanding-Board.yaml new file mode 100644 index 0000000..d7341b1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..2f2344d --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4a-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly1" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4a-sanding-Board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4a-sanding-Board.yaml new file mode 100644 index 0000000..5ad3f27 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e4a-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly2" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e5-assembly.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e5-assembly.yaml new file mode 100644 index 0000000..f8eab0f --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e5-assembly.yaml @@ -0,0 +1,45 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e5a-assembly.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e5a-assembly.yaml new file mode 100644 index 0000000..c9aa6ea --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e5a-assembly.yaml @@ -0,0 +1,45 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e6-quality-control.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e6-quality-control.yaml new file mode 100644 index 0000000..4fa5e58 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e6-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e6a-quality-control.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e6a-quality-control.yaml new file mode 100644 index 0000000..2e7f462 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e6a-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e7-shipping.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e7a-shipping.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/order1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/order1.yaml new file mode 100644 index 0000000..b431b63 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/order1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order1" +spec: + name: "order1" + type: "standard" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/order2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/order2.yaml new file mode 100644 index 0000000..cb471c1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "standard" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/pinA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/pinA.yaml new file mode 100644 index 0000000..63d9e7e --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "standard" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/pinW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/pinW.yaml new file mode 100644 index 0000000..0f2f808 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "standard" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/resourceOrder1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/resourceOrder1.yaml new file mode 100644 index 0000000..a2474af --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/resourceOrder1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder1" +spec: + name: "resourceOrder1" + type: "standard" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/resourceOrder2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/resourceOrder2.yaml new file mode 100644 index 0000000..f0c065f --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "standard" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/routing.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/routing.yaml new file mode 100644 index 0000000..1b83480 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/screw1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/screw1.yaml new file mode 100644 index 0000000..6ee38e1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "standard" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/screw2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/screw2.yaml new file mode 100644 index 0000000..fef802a --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "standard" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/shelf1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/shelf1.yaml new file mode 100644 index 0000000..a826d64 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "3D" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/shelf2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/shelf2.yaml new file mode 100644 index 0000000..ce1298a --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "3D" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-attributes/warehouse_stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/warehouse_stock.yaml new file mode 100644 index 0000000..bca347e --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-attributes/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order2" + number: 1000 + lastState: + size: + - object: "order1" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barA-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barA-resource.yaml new file mode 100644 index 0000000..39b9f11 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barAResource" +spec: + name: "barAResource" + type: "aluminium" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barA.yaml new file mode 100644 index 0000000..ec86fb2 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "aluminium" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barW-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barW-resource.yaml new file mode 100644 index 0000000..870fcbd --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barWResource" +spec: + name: "barWResource" + type: "wood" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barW.yaml new file mode 100644 index 0000000..0bc30cd --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "wood" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardA-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardA-resource.yaml new file mode 100644 index 0000000..4e3cc1a --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardAResource" +spec: + name: "boardAResource" + type: "aluminium" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardA.yaml new file mode 100644 index 0000000..eb8f78c --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "aluminium" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardW-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardW-resource.yaml new file mode 100644 index 0000000..8adec30 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardWResource" +spec: + name: "boardWResource" + type: "wood" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardW.yaml new file mode 100644 index 0000000..52d7b3d --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "wood" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e0-order.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e0-order.yaml new file mode 100644 index 0000000..66822eb --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e0-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order1" + number: 1 + lastState: "" + size: + workforces: + - workforce: "manager" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder1" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e0a-order.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e0a-order.yaml new file mode 100644 index 0000000..fe5d9df --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e0a-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "OrderPlacementA" +spec: + name: "OrderPlacementA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order2" + number: 1 + lastState: "" + size: + workforces: + - workforce: "manager" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "OutgoingStockA" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e1-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e1-outgoing-stock.yaml new file mode 100644 index 0000000..892ae06 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e1-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e1a-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e1a-outgoing-stock.yaml new file mode 100644 index 0000000..3ac506b --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e1a-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2-sawing-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2-sawing-bar.yaml new file mode 100644 index 0000000..01a5a3c --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2-sawing-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarW" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2-sawing-board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2-sawing-board.yaml new file mode 100644 index 0000000..dbeab1f --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2-sawing-board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardW" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2a-sawing-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2a-sawing-bar.yaml new file mode 100644 index 0000000..467e1af --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2a-sawing-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarA" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2a-sawing-board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2a-sawing-board.yaml new file mode 100644 index 0000000..864b61c --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e2a-sawing-board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardA" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e3-drilling-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e3-drilling-bar.yaml new file mode 100644 index 0000000..77004b5 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e3-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarW" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e3a-drilling-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e3a-drilling-bar.yaml new file mode 100644 index 0000000..499fac8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e3a-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarA" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4-sanding-Bar.yaml new file mode 100644 index 0000000..d9a9173 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly2" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4-sanding-Board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4-sanding-Board.yaml new file mode 100644 index 0000000..d7341b1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..2f2344d --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4a-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly1" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4a-sanding-Board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4a-sanding-Board.yaml new file mode 100644 index 0000000..5ad3f27 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e4a-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly2" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e5-assembly.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e5-assembly.yaml new file mode 100644 index 0000000..f8eab0f --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e5-assembly.yaml @@ -0,0 +1,45 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e5a-assembly.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e5a-assembly.yaml new file mode 100644 index 0000000..c9aa6ea --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e5a-assembly.yaml @@ -0,0 +1,45 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e6-quality-control.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e6-quality-control.yaml new file mode 100644 index 0000000..4fa5e58 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e6-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e6a-quality-control.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e6a-quality-control.yaml new file mode 100644 index 0000000..2e7f462 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e6a-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e7-shipping.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e7a-shipping.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/order1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/order1.yaml new file mode 100644 index 0000000..bcaf45f --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/order1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order1" +spec: + name: "order1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/order2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/order2.yaml new file mode 100644 index 0000000..dbc0dcf --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/pinA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/pinA.yaml new file mode 100644 index 0000000..65266d9 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/pinW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/pinW.yaml new file mode 100644 index 0000000..196b594 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/resourceOrder1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/resourceOrder1.yaml new file mode 100644 index 0000000..be67937 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/resourceOrder1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder1" +spec: + name: "resourceOrder1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/resourceOrder2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/resourceOrder2.yaml new file mode 100644 index 0000000..7fcf9c4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/routing.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/routing.yaml new file mode 100644 index 0000000..1b83480 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/screw1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/screw1.yaml new file mode 100644 index 0000000..5f02ab1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/screw2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/screw2.yaml new file mode 100644 index 0000000..3219433 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "smallComponent" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/shelf1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/shelf1.yaml new file mode 100644 index 0000000..ea1a1d8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/shelf2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/shelf2.yaml new file mode 100644 index 0000000..7115caa --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-supplier/warehouse_stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/warehouse_stock.yaml new file mode 100644 index 0000000..bca347e --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-supplier/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order2" + number: 1000 + lastState: + size: + - object: "order1" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/barA-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/barA-resource.yaml new file mode 100644 index 0000000..34bd237 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/barA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barAResource" +spec: + name: "barAResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/barA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/barA.yaml new file mode 100644 index 0000000..59070fc --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/barW-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/barW-resource.yaml new file mode 100644 index 0000000..4086ca6 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/barW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barWResource" +spec: + name: "barWResource" + type: "resource" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/barW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/barW.yaml new file mode 100644 index 0000000..5fd5a06 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/boardA-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/boardA-resource.yaml new file mode 100644 index 0000000..34a8491 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/boardA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardAResource" +spec: + name: "boardAResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/boardA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/boardA.yaml new file mode 100644 index 0000000..8483dd9 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/boardW-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/boardW-resource.yaml new file mode 100644 index 0000000..c107fd1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/boardW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardWResource" +spec: + name: "boardWResource" + type: "resource" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/boardW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/boardW.yaml new file mode 100644 index 0000000..7a4be5c --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e0-order.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e0-order.yaml new file mode 100644 index 0000000..66822eb --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e0-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order1" + number: 1 + lastState: "" + size: + workforces: + - workforce: "manager" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder1" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e0a-order.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e0a-order.yaml new file mode 100644 index 0000000..fe5d9df --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e0a-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "OrderPlacementA" +spec: + name: "OrderPlacementA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order2" + number: 1 + lastState: "" + size: + workforces: + - workforce: "manager" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "OutgoingStockA" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e1-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e1-outgoing-stock.yaml new file mode 100644 index 0000000..892ae06 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e1-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e1a-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e1a-outgoing-stock.yaml new file mode 100644 index 0000000..3ac506b --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e1a-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e2-sawing-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e2-sawing-bar.yaml new file mode 100644 index 0000000..01a5a3c --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e2-sawing-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarW" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e2-sawing-board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e2-sawing-board.yaml new file mode 100644 index 0000000..dbeab1f --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e2-sawing-board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardW" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e2a-sawing-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e2a-sawing-bar.yaml new file mode 100644 index 0000000..467e1af --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e2a-sawing-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarA" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e2a-sawing-board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e2a-sawing-board.yaml new file mode 100644 index 0000000..864b61c --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e2a-sawing-board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardA" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e3-drilling-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e3-drilling-bar.yaml new file mode 100644 index 0000000..77004b5 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e3-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarW" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e3a-drilling-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e3a-drilling-bar.yaml new file mode 100644 index 0000000..499fac8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e3a-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarA" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e4-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e4-sanding-Bar.yaml new file mode 100644 index 0000000..d9a9173 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e4-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly2" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e4-sanding-Board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e4-sanding-Board.yaml new file mode 100644 index 0000000..d7341b1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e4-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..2f2344d --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e4a-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly1" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e4a-sanding-Board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e4a-sanding-Board.yaml new file mode 100644 index 0000000..5ad3f27 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e4a-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly2" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e5-assembly.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e5-assembly.yaml new file mode 100644 index 0000000..f8eab0f --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e5-assembly.yaml @@ -0,0 +1,45 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e5a-assembly.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e5a-assembly.yaml new file mode 100644 index 0000000..c9aa6ea --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e5a-assembly.yaml @@ -0,0 +1,45 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e6-quality-control.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e6-quality-control.yaml new file mode 100644 index 0000000..4fa5e58 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e6-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e6a-quality-control.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e6a-quality-control.yaml new file mode 100644 index 0000000..2e7f462 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e6a-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e7-shipping.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/e7a-shipping.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/order1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/order1.yaml new file mode 100644 index 0000000..bcaf45f --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/order1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order1" +spec: + name: "order1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/order2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/order2.yaml new file mode 100644 index 0000000..dbc0dcf --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/pinA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/pinA.yaml new file mode 100644 index 0000000..3ff2a03 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/pinW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/pinW.yaml new file mode 100644 index 0000000..96ec4f7 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/resourceOrder1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/resourceOrder1.yaml new file mode 100644 index 0000000..be67937 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/resourceOrder1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder1" +spec: + name: "resourceOrder1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/resourceOrder2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/resourceOrder2.yaml new file mode 100644 index 0000000..7fcf9c4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/routing.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/routing.yaml new file mode 100644 index 0000000..1b83480 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/screw1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/screw1.yaml new file mode 100644 index 0000000..45e5f8b --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/screw2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/screw2.yaml new file mode 100644 index 0000000..6d6076e --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/shelf1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/shelf1.yaml new file mode 100644 index 0000000..ea1a1d8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/shelf2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/shelf2.yaml new file mode 100644 index 0000000..7115caa --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-time/warehouse_stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-time/warehouse_stock.yaml new file mode 100644 index 0000000..bca347e --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-time/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order2" + number: 1000 + lastState: + size: + - object: "order1" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/barA-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/barA-resource.yaml new file mode 100644 index 0000000..0d5e252 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/barA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barAResource" +spec: + name: "barAResource" + type: "shelf1" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/barA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/barA.yaml new file mode 100644 index 0000000..38157df --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "shelf1" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/barW-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/barW-resource.yaml new file mode 100644 index 0000000..ed4cb73 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/barW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barWResource" +spec: + name: "barWResource" + type: "shelf2" + size: + length: "5" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/barW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/barW.yaml new file mode 100644 index 0000000..d2a03ca --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "shelf2" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardA-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardA-resource.yaml new file mode 100644 index 0000000..f0dca8b --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardAResource" +spec: + name: "boardAResource" + type: "shelf2" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardA.yaml new file mode 100644 index 0000000..4203a57 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "shelf2" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardW-resource.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardW-resource.yaml new file mode 100644 index 0000000..69d1118 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardWResource" +spec: + name: "boardWResource" + type: "shelf1" + size: + length: "" + width: "30" + depth: "30" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardW.yaml new file mode 100644 index 0000000..add2fdf --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "shelf1" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e0-order.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e0-order.yaml new file mode 100644 index 0000000..66822eb --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e0-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order1" + number: 1 + lastState: "" + size: + workforces: + - workforce: "manager" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder1" + number: 1 + change: "" + size: + transition: "OutgoingStock" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e0a-order.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e0a-order.yaml new file mode 100644 index 0000000..fe5d9df --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e0a-order.yaml @@ -0,0 +1,30 @@ +kind: datasource +name: "OrderPlacementA" +spec: + name: "OrderPlacementA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [1.0] + input: + - object: "order2" + number: 1 + lastState: "" + size: + workforces: + - workforce: "manager" + number: 1 + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "OutgoingStockA" + duration: 0 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e1-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e1-outgoing-stock.yaml new file mode 100644 index 0000000..892ae06 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e1-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStock" +spec: + name: "OutgoingStock" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw1" + number: 13 + change: "" + size: + - object: "pinW" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e1a-outgoing-stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e1a-outgoing-stock.yaml new file mode 100644 index 0000000..3ac506b --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e1a-outgoing-stock.yaml @@ -0,0 +1,44 @@ +kind: datasource +name: "OutgoingStockA" +spec: + name: "OutgoingStockA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "ST" + end: "ST" + workstation: "ST" + selection: parallel + input: + - object: "resourceOrder2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "retrieve resources" + output: + - object: "barWResource" + number: 2 + change: "" + size: + length: "4" + width: "" + depth: "" + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "30" + depth: "30" + - object: "screw2" + number: 13 + change: "" + size: + - object: "pinA" + number: 13 + change: "" + size: + duration: 5 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2-sawing-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2-sawing-bar.yaml new file mode 100644 index 0000000..01a5a3c --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2-sawing-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarW" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2-sawing-board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2-sawing-board.yaml new file mode 100644 index 0000000..dbeab1f --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2-sawing-board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardW" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2a-sawing-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2a-sawing-bar.yaml new file mode 100644 index 0000000..467e1af --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2a-sawing-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "4" + width: "" + depth: "" + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "2" + width: "" + depth: "" + transition: "DrillingBarA" + duration: 4 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2a-sawing-board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2a-sawing-board.yaml new file mode 100644 index 0000000..864b61c --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e2a-sawing-board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "30" + depth: "30" + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 6 + change: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + transition: "SandingBoardA" + duration: 9 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e3-drilling-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e3-drilling-bar.yaml new file mode 100644 index 0000000..77004b5 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e3-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarW" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e3a-drilling-bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e3a-drilling-bar.yaml new file mode 100644 index 0000000..499fac8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e3a-drilling-bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "2" + width: "" + depth: "" + transition: "SandingBarA" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4-sanding-Bar.yaml new file mode 100644 index 0000000..d9a9173 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly2" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4-sanding-Board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4-sanding-Board.yaml new file mode 100644 index 0000000..d7341b1 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..2f2344d --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4a-sanding-Bar.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "2" + width: "" + depth: "" + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "2" + width: "" + depth: "" + transition: "Assembly1" + duration: 2 diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4a-sanding-Board.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4a-sanding-Board.yaml new file mode 100644 index 0000000..5ad3f27 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e4a-sanding-Board.yaml @@ -0,0 +1,33 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "5" + depth: "5" + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "5" + depth: "5" + transition: "Assembly2" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e5-assembly.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e5-assembly.yaml new file mode 100644 index 0000000..f8eab0f --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e5-assembly.yaml @@ -0,0 +1,45 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardW" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw1" + number: 13 + lastState: "" + size: + - object: "pinW" + number: 13 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e5a-assembly.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e5a-assembly.yaml new file mode 100644 index 0000000..c9aa6ea --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e5a-assembly.yaml @@ -0,0 +1,45 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "2" + width: "" + depth: "" + - object: "boardA" + number: 6 + lastState: "sanded" + size: + length: "" + width: "5" + depth: "5" + - object: "screw2" + number: 13 + lastState: "" + size: + - object: "pinA" + number: 13 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e6-quality-control.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e6-quality-control.yaml new file mode 100644 index 0000000..4fa5e58 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e6-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e6a-quality-control.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e6a-quality-control.yaml new file mode 100644 index 0000000..2e7f462 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e6a-quality-control.yaml @@ -0,0 +1,28 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e7-shipping.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/e7a-shipping.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/order1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/order1.yaml new file mode 100644 index 0000000..d3aa2fc --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/order1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order1" +spec: + name: "order1" + type: "shelf1" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/order2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/order2.yaml new file mode 100644 index 0000000..a84e395 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "shelf2" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/pinA.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/pinA.yaml new file mode 100644 index 0000000..1684a78 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "shelf2" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/pinW.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/pinW.yaml new file mode 100644 index 0000000..9478326 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "shelf1" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/resourceOrder1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/resourceOrder1.yaml new file mode 100644 index 0000000..bc82d53 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/resourceOrder1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder1" +spec: + name: "resourceOrder1" + type: "shelf1" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/resourceOrder2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/resourceOrder2.yaml new file mode 100644 index 0000000..32bc0d8 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "shelf2" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/routing.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/routing.yaml new file mode 100644 index 0000000..1b83480 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/routing.yaml @@ -0,0 +1,28 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "retrieve resources" + start: "ST" + end: "M" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "ST" + end: "A" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "M" + end: "ST" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "M" + end: "A" + duration: 3 + - routeForActivity: "Back to machine" + start: "A" + end: "M" + duration: 3 \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/screw1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/screw1.yaml new file mode 100644 index 0000000..39bf3e2 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "shelf1" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/screw2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/screw2.yaml new file mode 100644 index 0000000..25d0828 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "shelf2" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/shelf1.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/shelf1.yaml new file mode 100644 index 0000000..a546cec --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "shelf1" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/shelf2.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/shelf2.yaml new file mode 100644 index 0000000..5f764a4 --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "shelf2" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-2P-withoutDefects-by-variant/warehouse_stock.yaml b/config/datasource/smart-factory-2P-withoutDefects-by-variant/warehouse_stock.yaml new file mode 100644 index 0000000..bca347e --- /dev/null +++ b/config/datasource/smart-factory-2P-withoutDefects-by-variant/warehouse_stock.yaml @@ -0,0 +1,12 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order2" + number: 1000 + lastState: + size: + - object: "order1" + number: 1000 + lastState: + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/barA-resource.yaml b/config/datasource/smart-factory-original-scenario-V2/barA-resource.yaml new file mode 100644 index 0000000..4cd74a5 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/barA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barAResource" +spec: + name: "barAResource" + type: "bar" + size: + length: "500" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/barA.yaml b/config/datasource/smart-factory-original-scenario-V2/barA.yaml new file mode 100644 index 0000000..fd90873 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "bar" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/barW-resource.yaml b/config/datasource/smart-factory-original-scenario-V2/barW-resource.yaml new file mode 100644 index 0000000..0cc2b3f --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/barW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barWResource" +spec: + name: "barWResource" + type: "bar" + size: + length: "500" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/barW.yaml b/config/datasource/smart-factory-original-scenario-V2/barW.yaml new file mode 100644 index 0000000..fa2d6b8 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "bar" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/boardA-resource.yaml b/config/datasource/smart-factory-original-scenario-V2/boardA-resource.yaml new file mode 100644 index 0000000..34b198b --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/boardA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardAResource" +spec: + name: "boardAResource" + type: "board" + size: + length: "" + width: "500" + depth: "500" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/boardA.yaml b/config/datasource/smart-factory-original-scenario-V2/boardA.yaml new file mode 100644 index 0000000..8a08496 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "board" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/boardW-resource.yaml b/config/datasource/smart-factory-original-scenario-V2/boardW-resource.yaml new file mode 100644 index 0000000..487703a --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/boardW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardWResource" +spec: + name: "boardWResource" + type: "board" + size: + length: "" + width: "500" + depth: "500" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/boardW.yaml b/config/datasource/smart-factory-original-scenario-V2/boardW.yaml new file mode 100644 index 0000000..0e97666 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "board" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/crossA-resource.yaml b/config/datasource/smart-factory-original-scenario-V2/crossA-resource.yaml new file mode 100644 index 0000000..5ad0f43 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/crossA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "crossAResource" +spec: + name: "crossAResource" + type: "cross" + size: + length: "500" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/crossA.yaml b/config/datasource/smart-factory-original-scenario-V2/crossA.yaml new file mode 100644 index 0000000..c51eca1 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/crossA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "crossA" +spec: + name: "crossA" + type: "cross" + size: + length: "500" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/crossW-resource.yaml b/config/datasource/smart-factory-original-scenario-V2/crossW-resource.yaml new file mode 100644 index 0000000..c6a13d6 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/crossW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "crossWResource" +spec: + name: "crossWResource" + type: "cross" + size: + length: "500" + width: + depth: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/crossW.yaml b/config/datasource/smart-factory-original-scenario-V2/crossW.yaml new file mode 100644 index 0000000..64b2b43 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/crossW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "crossW" +spec: + name: "crossW" + type: "cross" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e-buying resources.yaml b/config/datasource/smart-factory-original-scenario-V2/e-buying resources.yaml new file mode 100644 index 0000000..68c1b45 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e-buying resources.yaml @@ -0,0 +1,89 @@ +kind: datasource +name: "ResourceDelivery" +spec: + name: "ResourceDelivery" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "RD" + end: "RD" + workstation: "RD" + selection: genericProbability + distribution: [1.0] + input: + - object: "order1" + number: 1 + lastState: "" + size: + - object: "orderBuyResource" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "order1" + number: 1 + change: "" + size: + - object: "barAResource" + number: 150 + change: "" + size: + length: "500" + width: "" + depth: "" + - object: "barWResource" + number: 150 + change: "" + size: + length: "500" + width: "" + depth: "" + - object: "boardAResource" + number: 150 + change: "" + size: + length: "" + width: "500" + depth: "500" + - object: "boardWResource" + number: 150 + change: "" + size: + length: "" + width: "500" + depth: "500" + - object: "crossAResource" + number: 150 + change: "" + size: + length: "500" + width: "" + depth: "" + - object: "crossWResource" + number: 150 + change: "" + size: + length: "500" + width: "" + depth: "" + - object: "pinA" + number: 150 + change: "" + size: + - object: "pinW" + number: 150 + change: "" + size: + - object: "screw1" + number: 150 + change: "" + size: + - object: "screw2" + number: 150 + change: "" + size: + transition: "" + duration: 10 diff --git a/config/datasource/smart-factory-original-scenario-V2/e0-order.yaml b/config/datasource/smart-factory-original-scenario-V2/e0-order.yaml new file mode 100644 index 0000000..4242fc2 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e0-order.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.7, 0.3] + input: + - object: "order1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder1" + number: 1 + change: "" + size: + transition: "" + duration: 0 + - activity: + name: "buying resources" + output: + - object: "order1" + number: 1 + change: "" + size: + - object: "orderBuyResource" + number: 1 + change: "" + size: + transition: "ResourceDelivery" + duration: 20 diff --git a/config/datasource/smart-factory-original-scenario-V2/e0a-order.yaml b/config/datasource/smart-factory-original-scenario-V2/e0a-order.yaml new file mode 100644 index 0000000..b6cf030 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e0a-order.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "OrderPlacementA" +spec: + name: "OrderPlacementA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.7, 0.3] + input: + - object: "order2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "" + duration: 0 + - activity: + name: "buying resources" + output: + - object: "order1" + number: 1 + change: "" + size: + - object: "orderBuyResource" + number: 1 + change: "" + size: + transition: "ResourceDelivery" + duration: 20 diff --git a/config/datasource/smart-factory-original-scenario-V2/e2-sawing-barCross.yaml b/config/datasource/smart-factory-original-scenario-V2/e2-sawing-barCross.yaml new file mode 100644 index 0000000..1845b4f --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e2-sawing-barCross.yaml @@ -0,0 +1,110 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barWResource" + number: 1 + lastState: "" + size: + length: "200" + width: "" + depth: "" + - object: "crossWResource" + number: 1 + lastState: "" + size: + length: "160" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "50" + width: "" + depth: "" + - object: "crossW" + number: 6 + change: "divided Resource" + size: + length: "20" + width: "" + depth: "" + transition: "" + duration: 8 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barWResource" + number: 1 + change: "" + size: + length: "200" + width: "" + depth: "" + - object: "crossWResource" + number: 1 + change: "" + size: + length: "160" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barW" + number: 3 + change: "divided Resource" + size: + length: "50" + width: "" + depth: "" + - object: "crossW" + number: 4 + change: "divided Resource" + size: + length: "20" + width: "" + depth: "" + - object: "barW" + number: 1 + change: "broken" + size: + length: "41.25" + width: "" + depth: "" + - object: "crossW" + number: 2 + change: "broken" + size: + length: "17.5" + width: "" + depth: "" + duration: 8 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e2-sawing-board.yaml b/config/datasource/smart-factory-original-scenario-V2/e2-sawing-board.yaml new file mode 100644 index 0000000..501b7c5 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e2-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "200" + depth: "150" + - object: "handoverBoardR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 5 + change: "divided Resource" + size: + length: "" + width: "40" + depth: "30" + transition: "" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "200" + depth: "150" + - object: "handoverBoardR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardW" + number: 4 + change: "divided Resource" + size: + length: "" + width: "40" + depth: "30" + - object: "boardW" + number: 1 + change: "broken" + size: + length: "" + width: "35.32" + depth: "25.24" + duration: 4 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e2a-sawing-barCross.yaml b/config/datasource/smart-factory-original-scenario-V2/e2a-sawing-barCross.yaml new file mode 100644 index 0000000..2053ccc --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e2a-sawing-barCross.yaml @@ -0,0 +1,110 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "360" + width: "" + depth: "" + - object: "crossAResource" + number: 3 + lastState: "" + size: + length: "380" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "180" + width: "" + depth: "" + - object: "crossA" + number: 6 + change: "divided Resource" + size: + length: "190" + width: "" + depth: "" + transition: "" + duration: 8 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "360" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + - object: "crossAResource" + number: 3 + change: "" + size: + length: "380" + width: "" + depth: "" + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barA" + number: 3 + change: "divided Resource" + size: + length: "180" + width: "" + depth: "" + - object: "barA" + number: 1 + change: "broken" + size: + length: "179.25" + width: "" + depth: "" + - object: "crossA" + number: 5 + change: "divided Resource" + size: + length: "190" + width: "" + depth: "" + - object: "crossA" + number: 1 + change: "broken" + size: + length: "189.25" + width: "" + depth: "" + duration: 8 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e2a-sawing-board.yaml b/config/datasource/smart-factory-original-scenario-V2/e2a-sawing-board.yaml new file mode 100644 index 0000000..8f49d4f --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e2a-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "60" + depth: "60" + - object: "handoverBoardRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 3 + change: "divided Resource" + size: + length: "" + width: "20" + depth: "20" + transition: "" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "60" + depth: "60" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardA" + number: 2 + change: "divided Resource" + size: + length: "" + width: "20" + depth: "20" + - object: "boardA" + number: 1 + change: "broken" + size: + length: "" + width: "19.32" + depth: "14.24" + duration: 4 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e3-drilling-bar.yaml b/config/datasource/smart-factory-original-scenario-V2/e3-drilling-bar.yaml new file mode 100644 index 0000000..3397729 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e3-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "50" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "50" + width: "" + depth: "" + transition: "" + duration: 3 + - activity: + name: "Failure: Drilling machine broken" + output: + - object: "barW" + number: 1 + change: "divided Resource" + size: + length: "50" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e3a-drilling-bar.yaml b/config/datasource/smart-factory-original-scenario-V2/e3a-drilling-bar.yaml new file mode 100644 index 0000000..0e109a1 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e3a-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "180" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "180" + width: "" + depth: "" + transition: "" + duration: 3 + - activity: + name: "Failure: Drilling machine broken" + output: + - object: "barA" + number: 1 + change: "divided Resource" + size: + length: "180" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e3a-drilling-cross.yaml b/config/datasource/smart-factory-original-scenario-V2/e3a-drilling-cross.yaml new file mode 100644 index 0000000..ed917da --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e3a-drilling-cross.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarC" +spec: + name: "DrillingBarC" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "crossA" + number: 1 + lastState: "divided Resource" + size: + length: "190" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "crossA" + number: 1 + change: "drilled" + size: + length: "190" + width: "" + depth: "" + transition: "" + duration: 3 + - activity: + name: "Failure: Drilling machine broken" + output: + - object: "crossA" + number: 1 + change: "divided Resource" + size: + length: "190" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e4-sanding-Bar.yaml b/config/datasource/smart-factory-original-scenario-V2/e4-sanding-Bar.yaml new file mode 100644 index 0000000..8cf5c2c --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e4-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "50" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "50" + width: "" + depth: "" + transition: "" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario-V2/e4-sanding-Board.yaml b/config/datasource/smart-factory-original-scenario-V2/e4-sanding-Board.yaml new file mode 100644 index 0000000..8beba5b --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e4-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "40" + depth: "30" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "40" + depth: "30" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e4-sanding-Cross.yaml b/config/datasource/smart-factory-original-scenario-V2/e4-sanding-Cross.yaml new file mode 100644 index 0000000..aec3593 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e4-sanding-Cross.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingCrossW" +spec: + name: "SandingCrossW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "crossW" + number: 1 + lastState: "divided Resource" + size: + length: "20" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "crossW" + number: 1 + change: "sanded" + size: + length: "20" + width: "" + depth: "" + transition: "" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario-V2/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-original-scenario-V2/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..1d6d0b3 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e4a-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "180" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "180" + width: "" + depth: "" + transition: "" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario-V2/e4a-sanding-Board.yaml b/config/datasource/smart-factory-original-scenario-V2/e4a-sanding-Board.yaml new file mode 100644 index 0000000..fbf22a2 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e4a-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "20" + depth: "20" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "20" + depth: "20" + transition: "" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e4a-sanding-Cross.yaml b/config/datasource/smart-factory-original-scenario-V2/e4a-sanding-Cross.yaml new file mode 100644 index 0000000..dfaa658 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e4a-sanding-Cross.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingCrossA" +spec: + name: "SandingCrossA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "crossA" + number: 1 + lastState: "drilled" + size: + length: "190" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "crossA" + number: 1 + change: "sanded" + size: + length: "190" + width: "" + depth: "" + transition: "" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario-V2/e5-assembly.yaml b/config/datasource/smart-factory-original-scenario-V2/e5-assembly.yaml new file mode 100644 index 0000000..c8c36e2 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e5-assembly.yaml @@ -0,0 +1,82 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.94, 0.03, 0.03 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "180" + width: "" + depth: "" + - object: "crossA" + number: 6 + lastState: "sanded" + size: + length: "190" + width: "" + depth: "" + - object: "boardW" + number: 5 + lastState: "sanded" + size: + length: "" + width: "40" + depth: "30" + - object: "screw1" + number: 15 + lastState: "" + size: + - object: "pinW" + number: 20 + lastState: "" + size: + - object: "handoverBoard" + number: 1 + lastState: "" + size: + - object: "handoverBarA" + number: 1 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" + - activity: + name: "Failure: Overheating" + output: + - object: "shelf1" + number: 1 + change: "overheated" + size: + transition: "" + duration: 2 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf1" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e5a-assembly.yaml b/config/datasource/smart-factory-original-scenario-V2/e5a-assembly.yaml new file mode 100644 index 0000000..d2f0317 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e5a-assembly.yaml @@ -0,0 +1,82 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.94, 0.03, 0.03 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "50" + width: "" + depth: "" + - object: "crossW" + number: 4 + lastState: "sanded" + size: + length: "20" + width: "" + depth: "" + - object: "boardA" + number: 3 + lastState: "sanded" + size: + length: "" + width: "20" + depth: "20" + - object: "screw2" + number: 8 + lastState: "" + size: + - object: "pinA" + number: 24 + lastState: "" + size: + - object: "handoverBoardA" + number: 1 + lastState: "" + size: + - object: "handoverBar" + number: 1 + lastState: "" + size: + - object: "handoverA" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" + - activity: + name: "Failure: Overheating" + output: + - object: "shelf2" + number: 1 + change: "overheated" + size: + transition: "" + duration: 2 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf2" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e6-quality-control.yaml b/config/datasource/smart-factory-original-scenario-V2/e6-quality-control.yaml new file mode 100644 index 0000000..dd8217e --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e6-quality-control.yaml @@ -0,0 +1,46 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf1" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + diff --git a/config/datasource/smart-factory-original-scenario-V2/e6a-quality-control.yaml b/config/datasource/smart-factory-original-scenario-V2/e6a-quality-control.yaml new file mode 100644 index 0000000..c838db3 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e6a-quality-control.yaml @@ -0,0 +1,47 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf2" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + + diff --git a/config/datasource/smart-factory-original-scenario-V2/e7-shipping.yaml b/config/datasource/smart-factory-original-scenario-V2/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/e7a-shipping.yaml b/config/datasource/smart-factory-original-scenario-V2/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/handover.yaml b/config/datasource/smart-factory-original-scenario-V2/handover.yaml new file mode 100644 index 0000000..464f9f4 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/handover.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handover" +spec: + name: "handover" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/handoverA.yaml b/config/datasource/smart-factory-original-scenario-V2/handoverA.yaml new file mode 100644 index 0000000..93d6148 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/handoverA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverA" +spec: + name: "handoverA" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/handoverBar.yaml b/config/datasource/smart-factory-original-scenario-V2/handoverBar.yaml new file mode 100644 index 0000000..3c86a7f --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/handoverBar.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBar" +spec: + name: "handoverBar" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/handoverBarA.yaml b/config/datasource/smart-factory-original-scenario-V2/handoverBarA.yaml new file mode 100644 index 0000000..3264eb1 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/handoverBarA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarA" +spec: + name: "handoverBarA" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/handoverBarR.yaml b/config/datasource/smart-factory-original-scenario-V2/handoverBarR.yaml new file mode 100644 index 0000000..2caa392 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/handoverBarR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarR" +spec: + name: "handoverBarR" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/handoverBarRA.yaml b/config/datasource/smart-factory-original-scenario-V2/handoverBarRA.yaml new file mode 100644 index 0000000..f8a3414 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/handoverBarRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarRA" +spec: + name: "handoverBarRA" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/handoverBoard.yaml b/config/datasource/smart-factory-original-scenario-V2/handoverBoard.yaml new file mode 100644 index 0000000..a0c39c4 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/handoverBoard.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoard" +spec: + name: "handoverBoard" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/handoverBoardA.yaml b/config/datasource/smart-factory-original-scenario-V2/handoverBoardA.yaml new file mode 100644 index 0000000..d964b65 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/handoverBoardA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardA" +spec: + name: "handoverBoardA" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/handoverBoardR.yaml b/config/datasource/smart-factory-original-scenario-V2/handoverBoardR.yaml new file mode 100644 index 0000000..d102fea --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/handoverBoardR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardR" +spec: + name: "handoverBoardR" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/handoverBoardRA.yaml b/config/datasource/smart-factory-original-scenario-V2/handoverBoardRA.yaml new file mode 100644 index 0000000..83aab47 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/handoverBoardRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardRA" +spec: + name: "handoverBoardRA" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/order1.yaml b/config/datasource/smart-factory-original-scenario-V2/order1.yaml new file mode 100644 index 0000000..bcaf45f --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/order1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order1" +spec: + name: "order1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/order2.yaml b/config/datasource/smart-factory-original-scenario-V2/order2.yaml new file mode 100644 index 0000000..dbc0dcf --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/orderBuyResource.yaml b/config/datasource/smart-factory-original-scenario-V2/orderBuyResource.yaml new file mode 100644 index 0000000..6d10ccb --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/orderBuyResource.yaml @@ -0,0 +1,6 @@ +kind: object +name: "orderBuyResource" +spec: + name: "orderBuyResource" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/pinA.yaml b/config/datasource/smart-factory-original-scenario-V2/pinA.yaml new file mode 100644 index 0000000..3aeb0fc --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "pin" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/pinW.yaml b/config/datasource/smart-factory-original-scenario-V2/pinW.yaml new file mode 100644 index 0000000..6aa9c5a --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "pin" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/resourceOrder1.yaml b/config/datasource/smart-factory-original-scenario-V2/resourceOrder1.yaml new file mode 100644 index 0000000..be67937 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/resourceOrder1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder1" +spec: + name: "resourceOrder1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/resourceOrder2.yaml b/config/datasource/smart-factory-original-scenario-V2/resourceOrder2.yaml new file mode 100644 index 0000000..7fcf9c4 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/routing.yaml b/config/datasource/smart-factory-original-scenario-V2/routing.yaml new file mode 100644 index 0000000..e0d2c31 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/routing.yaml @@ -0,0 +1,96 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "Warehouse AL to wood" + start: "STA" + end: "W" + duration: 10 + - routeForActivity: "Warehouse Wood to wood" + start: "STW" + end: "W" + duration: 1 + - routeForActivity: "Warehouse Small to wood" + start: "STS" + end: "W" + duration: 2 + - routeForActivity: "retrieve resources" + start: "STA" + end: "Al" + duration: 1 + - routeForActivity: "retrieve resources" + start: "STW" + end: "Al" + duration: 10 + - routeForActivity: "retrieve resources" + start: "STS" + end: "Al" + duration: 2 + - routeForActivity: "Sent to assembly station" + start: "STA" + end: "A" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "STW" + end: "A" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "STS" + end: "A" + duration: 2 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "STA" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "STW" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "STS" + duration: 2 + - routeForActivity: "Back to stock" + start: "W" + end: "STW" + duration: 1 + - routeForActivity: "Back to stock" + start: "W" + end: "STA" + duration: 10 + - routeForActivity: "Back to stock" + start: "W" + end: "STS" + duration: 2 + - routeForActivity: "Back to stock" + start: "Al" + end: "STW" + duration: 10 + - routeForActivity: "Back to stock" + start: "Al" + end: "STA" + duration: 1 + - routeForActivity: "Back to stock" + start: "Al" + end: "STS" + duration: 2 + - routeForActivity: "Sent to assembly station" + start: "W" + end: "A" + duration: 1 + - routeForActivity: "Back to machine" + start: "A" + end: "W" + duration: 1 + - routeForActivity: "Sent to assembly station" + start: "Al" + end: "A" + duration: 1 + - routeForActivity: "Back to machine" + start: "A" + end: "Al" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario-V2/screw1.yaml b/config/datasource/smart-factory-original-scenario-V2/screw1.yaml new file mode 100644 index 0000000..5832a3c --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "screw" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/screw2.yaml b/config/datasource/smart-factory-original-scenario-V2/screw2.yaml new file mode 100644 index 0000000..564a295 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "screw" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/shelf1.yaml b/config/datasource/smart-factory-original-scenario-V2/shelf1.yaml new file mode 100644 index 0000000..ea1a1d8 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/shelf2.yaml b/config/datasource/smart-factory-original-scenario-V2/shelf2.yaml new file mode 100644 index 0000000..7115caa --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/t0A-stock-to-machine.yaml b/config/datasource/smart-factory-original-scenario-V2/t0A-stock-to-machine.yaml new file mode 100644 index 0000000..96ecd74 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/t0A-stock-to-machine.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "TransportMA" +spec: + name: "TransportMA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R1" + start: "STA" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "360" + width: "" + depth: "" + - object: "crossAResource" + number: 3 + lastState: "" + size: + length: "380" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "360" + width: "" + depth: "" + - object: "crossAResource" + number: 3 + change: "" + size: + length: "380" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + transition: "SawingBarA" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario-V2/t0BA-stock-to-machine.yaml b/config/datasource/smart-factory-original-scenario-V2/t0BA-stock-to-machine.yaml new file mode 100644 index 0000000..880c05d --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/t0BA-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1BA" +spec: + name: "TransportM1BA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R2" + start: "STA" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "60" + depth: "60" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "60" + depth: "60" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + transition: "SawingBoardA" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario-V2/t0BW-stock-to-machine.yaml b/config/datasource/smart-factory-original-scenario-V2/t0BW-stock-to-machine.yaml new file mode 100644 index 0000000..3e114ef --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/t0BW-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1B" +spec: + name: "TransportM1B" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R3" + start: "STW" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "200" + depth: "150" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "200" + depth: "150" + - object: "handoverBoardR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario-V2/t0W-stock-to-machine.yaml b/config/datasource/smart-factory-original-scenario-V2/t0W-stock-to-machine.yaml new file mode 100644 index 0000000..acdefe3 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/t0W-stock-to-machine.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "TransportMW" +spec: + name: "TransportMW" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R4" + start: "STW" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 1 + lastState: "" + size: + length: "200" + width: "" + depth: "" + - object: "crossWResource" + number: 1 + lastState: "" + size: + length: "160" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "barWResource" + number: 1 + change: "" + size: + length: "200" + width: "" + depth: "" + - object: "crossWResource" + number: 1 + change: "" + size: + length: "160" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario-V2/t1-stock-to-assembly.yaml b/config/datasource/smart-factory-original-scenario-V2/t1-stock-to-assembly.yaml new file mode 100644 index 0000000..e9481fa --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/t1-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSA" +spec: + name: "TransportSA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R5" + start: "STS" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw1" + number: 15 + lastState: "" + size: + - object: "pinW" + number: 20 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw1" + number: 15 + change: "" + size: + - object: "pinW" + number: 20 + change: "" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario-V2/t1A-machine-to-assembly.yaml b/config/datasource/smart-factory-original-scenario-V2/t1A-machine-to-assembly.yaml new file mode 100644 index 0000000..e8afa44 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/t1A-machine-to-assembly.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "TransportMAlA" +spec: + name: "TransportMAlA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R6" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "180" + width: "" + depth: "" + - object: "crossA" + number: 6 + lastState: "sanded" + size: + length: "190" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MA -> assembly" + output: + - object: "barA" + number: 4 + change: "sanded" + size: + length: "180" + width: "" + depth: "" + - object: "crossA" + number: 6 + change: "sanded" + size: + length: "190" + width: "" + depth: "" + - object: "handoverBarA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario-V2/t1A-stock-to-assembly.yaml b/config/datasource/smart-factory-original-scenario-V2/t1A-stock-to-assembly.yaml new file mode 100644 index 0000000..dcfa6b7 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/t1A-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSAAl" +spec: + name: "TransportSAAl" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R7" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw2" + number: 8 + lastState: "" + size: + - object: "pinA" + number: 24 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw2" + number: 8 + change: "" + size: + - object: "pinA" + number: 24 + change: "" + size: + - object: "handoverA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario-V2/t1BA-machine-to-assembly.yaml b/config/datasource/smart-factory-original-scenario-V2/t1BA-machine-to-assembly.yaml new file mode 100644 index 0000000..c201519 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/t1BA-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlAB" +spec: + name: "TransportMAlAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R8" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 3 + lastState: "sanded" + size: + length: "" + width: "20" + depth: "20" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MAl -> assembly" + output: + - object: "boardA" + number: 3 + change: "sanded" + size: + length: "" + width: "20" + depth: "20" + - object: "handoverBoardA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario-V2/t1BW-machine-to-assembly.yaml b/config/datasource/smart-factory-original-scenario-V2/t1BW-machine-to-assembly.yaml new file mode 100644 index 0000000..94b9366 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/t1BW-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWAB" +spec: + name: "TransportMWAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R9" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 5 + lastState: "sanded" + size: + length: "" + width: "40" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "boardW" + number: 5 + change: "sanded" + size: + length: "" + width: "40" + depth: "30" + - object: "handoverBoard" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario-V2/t1W-machine-to-assembly.yaml b/config/datasource/smart-factory-original-scenario-V2/t1W-machine-to-assembly.yaml new file mode 100644 index 0000000..480386a --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/t1W-machine-to-assembly.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "TransportMWA" +spec: + name: "TransportMWA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R10" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "50" + width: "" + depth: "" + - object: "crossW" + number: 4 + lastState: "sanded" + size: + length: "20" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "barW" + number: 4 + change: "sanded" + size: + length: "50" + width: "" + depth: "" + - object: "crossW" + number: 4 + change: "sanded" + size: + length: "20" + width: "" + depth: "" + - object: "handoverBar" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario-V2/warehouse_stock.yaml b/config/datasource/smart-factory-original-scenario-V2/warehouse_stock.yaml new file mode 100644 index 0000000..09d1f79 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/warehouse_stock.yaml @@ -0,0 +1,70 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order1" + number: 1000 + lastState: + size: + - object: "order2" + number: 1000 + lastState: + size: + - object: "barAResource" + number: 150 + lastState: "" + size: + length: "500" + width: "" + depth: "" + - object: "barWResource" + number: 150 + lastState: "" + size: + length: "500" + width: "" + depth: "" + - object: "boardAResource" + number: 150 + lastState: "" + size: + length: "" + width: "500" + depth: "500" + - object: "boardWResource" + number: 150 + lastState: "" + size: + length: "" + width: "500" + depth: "500" + - object: "crossAResource" + number: 150 + lastState: "" + size: + length: "500" + width: "" + depth: "" + - object: "crossWResource" + number: 150 + lastState: "" + size: + length: "500" + width: "" + depth: "" + - object: "pinA" + number: 150 + lastState: "" + size: + - object: "pinW" + number: 150 + lastState: "" + size: + - object: "screw1" + number: 150 + lastState: "" + size: + - object: "screw2" + number: 150 + lastState: "" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario-V2/workforces.yaml b/config/datasource/smart-factory-original-scenario-V2/workforces.yaml new file mode 100644 index 0000000..0397857 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario-V2/workforces.yaml @@ -0,0 +1,13 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "transportRobot" + startLocation: "A" + number: 8 + - name: "machineWorker" + startLocation: "W" + number: 8 + - name: "machineWorker" + startLocation: "Al" + number: 8 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/barA-resource.yaml b/config/datasource/smart-factory-original-scenario/barA-resource.yaml new file mode 100644 index 0000000..fa486d1 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/barA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barAResource" +spec: + name: "barAResource" + type: "resource" + size: + length: "500" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/barA.yaml b/config/datasource/smart-factory-original-scenario/barA.yaml new file mode 100644 index 0000000..59070fc --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/barA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barA" +spec: + name: "barA" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/barW-resource.yaml b/config/datasource/smart-factory-original-scenario/barW-resource.yaml new file mode 100644 index 0000000..2cd791a --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/barW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barWResource" +spec: + name: "barWResource" + type: "resource" + size: + length: "500" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/barW.yaml b/config/datasource/smart-factory-original-scenario/barW.yaml new file mode 100644 index 0000000..5fd5a06 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/barW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "barW" +spec: + name: "barW" + type: "processedResource" + size: + length: "2" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/boardA-resource.yaml b/config/datasource/smart-factory-original-scenario/boardA-resource.yaml new file mode 100644 index 0000000..22e1c8f --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/boardA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardAResource" +spec: + name: "boardAResource" + type: "resource" + size: + length: "" + width: "500" + depth: "500" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/boardA.yaml b/config/datasource/smart-factory-original-scenario/boardA.yaml new file mode 100644 index 0000000..8483dd9 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/boardA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardA" +spec: + name: "boardA" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/boardW-resource.yaml b/config/datasource/smart-factory-original-scenario/boardW-resource.yaml new file mode 100644 index 0000000..b7731ea --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/boardW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardWResource" +spec: + name: "boardWResource" + type: "resource" + size: + length: "" + width: "500" + depth: "500" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/boardW.yaml b/config/datasource/smart-factory-original-scenario/boardW.yaml new file mode 100644 index 0000000..7a4be5c --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/boardW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "boardW" +spec: + name: "boardW" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/crossA-resource.yaml b/config/datasource/smart-factory-original-scenario/crossA-resource.yaml new file mode 100644 index 0000000..dcbce2b --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/crossA-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "crossAResource" +spec: + name: "crossAResource" + type: "resource" + size: + length: "500" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/crossA.yaml b/config/datasource/smart-factory-original-scenario/crossA.yaml new file mode 100644 index 0000000..4cec584 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/crossA.yaml @@ -0,0 +1,9 @@ +kind: object +name: "crossA" +spec: + name: "crossA" + type: "resource" + size: + length: "500" + width: "" + depth: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/crossW-resource.yaml b/config/datasource/smart-factory-original-scenario/crossW-resource.yaml new file mode 100644 index 0000000..42b7122 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/crossW-resource.yaml @@ -0,0 +1,9 @@ +kind: object +name: "crossWResource" +spec: + name: "crossWResource" + type: "resource" + size: + length: "500" + width: + depth: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/crossW.yaml b/config/datasource/smart-factory-original-scenario/crossW.yaml new file mode 100644 index 0000000..75be72b --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/crossW.yaml @@ -0,0 +1,9 @@ +kind: object +name: "crossW" +spec: + name: "crossW" + type: "processedResource" + size: + length: + width: "5" + depth: "5" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e-buying resources.yaml b/config/datasource/smart-factory-original-scenario/e-buying resources.yaml new file mode 100644 index 0000000..68c1b45 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e-buying resources.yaml @@ -0,0 +1,89 @@ +kind: datasource +name: "ResourceDelivery" +spec: + name: "ResourceDelivery" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "RD" + end: "RD" + workstation: "RD" + selection: genericProbability + distribution: [1.0] + input: + - object: "order1" + number: 1 + lastState: "" + size: + - object: "orderBuyResource" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "order1" + number: 1 + change: "" + size: + - object: "barAResource" + number: 150 + change: "" + size: + length: "500" + width: "" + depth: "" + - object: "barWResource" + number: 150 + change: "" + size: + length: "500" + width: "" + depth: "" + - object: "boardAResource" + number: 150 + change: "" + size: + length: "" + width: "500" + depth: "500" + - object: "boardWResource" + number: 150 + change: "" + size: + length: "" + width: "500" + depth: "500" + - object: "crossAResource" + number: 150 + change: "" + size: + length: "500" + width: "" + depth: "" + - object: "crossWResource" + number: 150 + change: "" + size: + length: "500" + width: "" + depth: "" + - object: "pinA" + number: 150 + change: "" + size: + - object: "pinW" + number: 150 + change: "" + size: + - object: "screw1" + number: 150 + change: "" + size: + - object: "screw2" + number: 150 + change: "" + size: + transition: "" + duration: 10 diff --git a/config/datasource/smart-factory-original-scenario/e0-order.yaml b/config/datasource/smart-factory-original-scenario/e0-order.yaml new file mode 100644 index 0000000..4242fc2 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e0-order.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "OrderPlacement" +spec: + name: "OrderPlacement" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.7, 0.3] + input: + - object: "order1" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder1" + number: 1 + change: "" + size: + transition: "" + duration: 0 + - activity: + name: "buying resources" + output: + - object: "order1" + number: 1 + change: "" + size: + - object: "orderBuyResource" + number: 1 + change: "" + size: + transition: "ResourceDelivery" + duration: 20 diff --git a/config/datasource/smart-factory-original-scenario/e0a-order.yaml b/config/datasource/smart-factory-original-scenario/e0a-order.yaml new file mode 100644 index 0000000..b6cf030 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e0a-order.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "OrderPlacementA" +spec: + name: "OrderPlacementA" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "O" + end: "O" + workstation: "O" + selection: genericProbability + distribution: [0.7, 0.3] + input: + - object: "order2" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "order for resources" + output: + - object: "resourceOrder2" + number: 1 + change: "" + size: + transition: "" + duration: 0 + - activity: + name: "buying resources" + output: + - object: "order1" + number: 1 + change: "" + size: + - object: "orderBuyResource" + number: 1 + change: "" + size: + transition: "ResourceDelivery" + duration: 20 diff --git a/config/datasource/smart-factory-original-scenario/e2-sawing-barCross.yaml b/config/datasource/smart-factory-original-scenario/e2-sawing-barCross.yaml new file mode 100644 index 0000000..1845b4f --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e2-sawing-barCross.yaml @@ -0,0 +1,110 @@ +kind: datasource +name: "SawingBarW" +spec: + name: "SawingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barWResource" + number: 1 + lastState: "" + size: + length: "200" + width: "" + depth: "" + - object: "crossWResource" + number: 1 + lastState: "" + size: + length: "160" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barW" + number: 4 + change: "divided Resource" + size: + length: "50" + width: "" + depth: "" + - object: "crossW" + number: 6 + change: "divided Resource" + size: + length: "20" + width: "" + depth: "" + transition: "" + duration: 8 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barWResource" + number: 1 + change: "" + size: + length: "200" + width: "" + depth: "" + - object: "crossWResource" + number: 1 + change: "" + size: + length: "160" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barW" + number: 3 + change: "divided Resource" + size: + length: "50" + width: "" + depth: "" + - object: "crossW" + number: 4 + change: "divided Resource" + size: + length: "20" + width: "" + depth: "" + - object: "barW" + number: 1 + change: "broken" + size: + length: "41.25" + width: "" + depth: "" + - object: "crossW" + number: 2 + change: "broken" + size: + length: "17.5" + width: "" + depth: "" + duration: 8 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e2-sawing-board.yaml b/config/datasource/smart-factory-original-scenario/e2-sawing-board.yaml new file mode 100644 index 0000000..501b7c5 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e2-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardW" +spec: + name: "SawingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "200" + depth: "150" + - object: "handoverBoardR" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardW" + number: 5 + change: "divided Resource" + size: + length: "" + width: "40" + depth: "30" + transition: "" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "200" + depth: "150" + - object: "handoverBoardR" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardW" + number: 4 + change: "divided Resource" + size: + length: "" + width: "40" + depth: "30" + - object: "boardW" + number: 1 + change: "broken" + size: + length: "" + width: "35.32" + depth: "25.24" + duration: 4 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e2a-sawing-barCross.yaml b/config/datasource/smart-factory-original-scenario/e2a-sawing-barCross.yaml new file mode 100644 index 0000000..2053ccc --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e2a-sawing-barCross.yaml @@ -0,0 +1,110 @@ +kind: datasource +name: "SawingBarA" +spec: + name: "SawingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "360" + width: "" + depth: "" + - object: "crossAResource" + number: 3 + lastState: "" + size: + length: "380" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "barA" + number: 4 + change: "divided Resource" + size: + length: "180" + width: "" + depth: "" + - object: "crossA" + number: 6 + change: "divided Resource" + size: + length: "190" + width: "" + depth: "" + transition: "" + duration: 8 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "360" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + - object: "crossAResource" + number: 3 + change: "" + size: + length: "380" + width: "" + depth: "" + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "barA" + number: 3 + change: "divided Resource" + size: + length: "180" + width: "" + depth: "" + - object: "barA" + number: 1 + change: "broken" + size: + length: "179.25" + width: "" + depth: "" + - object: "crossA" + number: 5 + change: "divided Resource" + size: + length: "190" + width: "" + depth: "" + - object: "crossA" + number: 1 + change: "broken" + size: + length: "189.25" + width: "" + depth: "" + duration: 8 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e2a-sawing-board.yaml b/config/datasource/smart-factory-original-scenario/e2a-sawing-board.yaml new file mode 100644 index 0000000..8f49d4f --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e2a-sawing-board.yaml @@ -0,0 +1,75 @@ +kind: datasource +name: "SawingBoardA" +spec: + name: "SawingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.97, 0.01, 0.02] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "60" + depth: "60" + - object: "handoverBoardRA" + number: 1 + lastState: "" + size: + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sawed" + output: + - object: "boardA" + number: 3 + change: "divided Resource" + size: + length: "" + width: "20" + depth: "20" + transition: "" + duration: 9 + - activity: + name: "Failure: Sawing machine broken" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "60" + depth: "60" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + duration: 20 + transition: "" + - activity: + name: "Failure: One piece broken" + output: + - object: "boardA" + number: 2 + change: "divided Resource" + size: + length: "" + width: "20" + depth: "20" + - object: "boardA" + number: 1 + change: "broken" + size: + length: "" + width: "19.32" + depth: "14.24" + duration: 4 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e3-drilling-bar.yaml b/config/datasource/smart-factory-original-scenario/e3-drilling-bar.yaml new file mode 100644 index 0000000..3397729 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e3-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarW" +spec: + name: "DrillingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barW" + number: 1 + lastState: "divided Resource" + size: + length: "50" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barW" + number: 1 + change: "drilled" + size: + length: "50" + width: "" + depth: "" + transition: "" + duration: 3 + - activity: + name: "Failure: Drilling machine broken" + output: + - object: "barW" + number: 1 + change: "divided Resource" + size: + length: "50" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e3a-drilling-bar.yaml b/config/datasource/smart-factory-original-scenario/e3a-drilling-bar.yaml new file mode 100644 index 0000000..0e109a1 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e3a-drilling-bar.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarA" +spec: + name: "DrillingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "barA" + number: 1 + lastState: "divided Resource" + size: + length: "180" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "barA" + number: 1 + change: "drilled" + size: + length: "180" + width: "" + depth: "" + transition: "" + duration: 3 + - activity: + name: "Failure: Drilling machine broken" + output: + - object: "barA" + number: 1 + change: "divided Resource" + size: + length: "180" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e3a-drilling-cross.yaml b/config/datasource/smart-factory-original-scenario/e3a-drilling-cross.yaml new file mode 100644 index 0000000..ed917da --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e3a-drilling-cross.yaml @@ -0,0 +1,48 @@ +kind: datasource +name: "DrillingBarC" +spec: + name: "DrillingBarC" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [0.99, 0.01] + input: + - object: "crossA" + number: 1 + lastState: "divided Resource" + size: + length: "190" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Drilled" + output: + - object: "crossA" + number: 1 + change: "drilled" + size: + length: "190" + width: "" + depth: "" + transition: "" + duration: 3 + - activity: + name: "Failure: Drilling machine broken" + output: + - object: "crossA" + number: 1 + change: "divided Resource" + size: + length: "190" + width: "" + depth: "" + duration: 20 + transition: "" \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e4-sanding-Bar.yaml b/config/datasource/smart-factory-original-scenario/e4-sanding-Bar.yaml new file mode 100644 index 0000000..8cf5c2c --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e4-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarW" +spec: + name: "SandingBarW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 1 + lastState: "drilled" + size: + length: "50" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barW" + number: 1 + change: "sanded" + size: + length: "50" + width: "" + depth: "" + transition: "" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario/e4-sanding-Board.yaml b/config/datasource/smart-factory-original-scenario/e4-sanding-Board.yaml new file mode 100644 index 0000000..8beba5b --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e4-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardW" +spec: + name: "SandingBoardW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "40" + depth: "30" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardW" + number: 1 + change: "sanded" + size: + length: "" + width: "40" + depth: "30" + transition: "Assembly1" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e4-sanding-Cross.yaml b/config/datasource/smart-factory-original-scenario/e4-sanding-Cross.yaml new file mode 100644 index 0000000..aec3593 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e4-sanding-Cross.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingCrossW" +spec: + name: "SandingCrossW" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "W" + end: "W" + workstation: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "crossW" + number: 1 + lastState: "divided Resource" + size: + length: "20" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "crossW" + number: 1 + change: "sanded" + size: + length: "20" + width: "" + depth: "" + transition: "" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario/e4a-sanding-Bar.yaml b/config/datasource/smart-factory-original-scenario/e4a-sanding-Bar.yaml new file mode 100644 index 0000000..1d6d0b3 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e4a-sanding-Bar.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBarA" +spec: + name: "SandingBarA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 1 + lastState: "drilled" + size: + length: "180" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "barA" + number: 1 + change: "sanded" + size: + length: "180" + width: "" + depth: "" + transition: "" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario/e4a-sanding-Board.yaml b/config/datasource/smart-factory-original-scenario/e4a-sanding-Board.yaml new file mode 100644 index 0000000..fbf22a2 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e4a-sanding-Board.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingBoardA" +spec: + name: "SandingBoardA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 1 + lastState: "divided Resource" + size: + length: "" + width: "20" + depth: "20" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "boardA" + number: 1 + change: "sanded" + size: + length: "" + width: "20" + depth: "20" + transition: "" + duration: 2 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e4a-sanding-Cross.yaml b/config/datasource/smart-factory-original-scenario/e4a-sanding-Cross.yaml new file mode 100644 index 0000000..dfaa658 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e4a-sanding-Cross.yaml @@ -0,0 +1,36 @@ +kind: datasource +name: "SandingCrossA" +spec: + name: "SandingCrossA" + group: "factory" + type: objectCentric + workforce: hasWorkforce + start: "Al" + end: "Al" + workstation: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "crossA" + number: 1 + lastState: "drilled" + size: + length: "190" + width: "" + depth: "" + workforces: + - workforce: "machineWorker" + number: 1 + eventData: + - activity: + name: "Sanded" + output: + - object: "crossA" + number: 1 + change: "sanded" + size: + length: "190" + width: "" + depth: "" + transition: "" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario/e5-assembly.yaml b/config/datasource/smart-factory-original-scenario/e5-assembly.yaml new file mode 100644 index 0000000..c8c36e2 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e5-assembly.yaml @@ -0,0 +1,82 @@ +kind: datasource +name: "Assembly1" +spec: + name: "Assembly1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.94, 0.03, 0.03 ] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "180" + width: "" + depth: "" + - object: "crossA" + number: 6 + lastState: "sanded" + size: + length: "190" + width: "" + depth: "" + - object: "boardW" + number: 5 + lastState: "sanded" + size: + length: "" + width: "40" + depth: "30" + - object: "screw1" + number: 15 + lastState: "" + size: + - object: "pinW" + number: 20 + lastState: "" + size: + - object: "handoverBoard" + number: 1 + lastState: "" + size: + - object: "handoverBarA" + number: 1 + lastState: "" + size: + - object: "handover" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf1" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl1" + - activity: + name: "Failure: Overheating" + output: + - object: "shelf1" + number: 1 + change: "overheated" + size: + transition: "" + duration: 2 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf1" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e5a-assembly.yaml b/config/datasource/smart-factory-original-scenario/e5a-assembly.yaml new file mode 100644 index 0000000..d2f0317 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e5a-assembly.yaml @@ -0,0 +1,82 @@ +kind: datasource +name: "Assembly2" +spec: + name: "Assembly2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.94, 0.03, 0.03 ] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "50" + width: "" + depth: "" + - object: "crossW" + number: 4 + lastState: "sanded" + size: + length: "20" + width: "" + depth: "" + - object: "boardA" + number: 3 + lastState: "sanded" + size: + length: "" + width: "20" + depth: "20" + - object: "screw2" + number: 8 + lastState: "" + size: + - object: "pinA" + number: 24 + lastState: "" + size: + - object: "handoverBoardA" + number: 1 + lastState: "" + size: + - object: "handoverBar" + number: 1 + lastState: "" + size: + - object: "handoverA" + number: 1 + lastState: "" + size: + eventData: + - activity: + name: "Assembling completed" + output: + - object: "shelf2" + number: 1 + change: "assembled" + size: + duration: 15 + transition: "QualityControl2" + - activity: + name: "Failure: Overheating" + output: + - object: "shelf2" + number: 1 + change: "overheated" + size: + transition: "" + duration: 2 + - activity: + name: "Failure: Item broke" + output: + - object: "shelf2" + number: 1 + change: "broke" + size: + transition: "" + duration: 1 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e6-quality-control.yaml b/config/datasource/smart-factory-original-scenario/e6-quality-control.yaml new file mode 100644 index 0000000..dd8217e --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e6-quality-control.yaml @@ -0,0 +1,46 @@ +kind: datasource +name: "QualityControl1" +spec: + name: "QualityControl1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf1" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf1" + number: 1 + change: "proofed" + size: + transition: "Shipping1" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf1" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + diff --git a/config/datasource/smart-factory-original-scenario/e6a-quality-control.yaml b/config/datasource/smart-factory-original-scenario/e6a-quality-control.yaml new file mode 100644 index 0000000..c838db3 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e6a-quality-control.yaml @@ -0,0 +1,47 @@ +kind: datasource +name: "QualityControl2" +spec: + name: "QualityControl2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "A" + end: "A" + workstation: "A" + selection: genericProbability + distribution: [ 0.8, 0.15, 0.05] + input: + - object: "shelf2" + number: 1 + lastState: "assembled" + size: + eventData: + - activity: + name: "Quality check passed" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 2 + - activity: + name: "Item Corrections" + output: + - object: "shelf2" + number: 1 + change: "proofed" + size: + transition: "Shipping2" + duration: 12 + - activity: + name: "Failure: Quality Insufficient" + output: + - object: "shelf2" + number: 1 + change: "damaged" + size: + transition: "" + duration: 2 + + diff --git a/config/datasource/smart-factory-original-scenario/e7-shipping.yaml b/config/datasource/smart-factory-original-scenario/e7-shipping.yaml new file mode 100644 index 0000000..d3c6dd3 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e7-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping1" +spec: + name: "Shipping1" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf1" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf1" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/e7a-shipping.yaml b/config/datasource/smart-factory-original-scenario/e7a-shipping.yaml new file mode 100644 index 0000000..94c8670 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/e7a-shipping.yaml @@ -0,0 +1,27 @@ +kind: datasource +name: "Shipping2" +spec: + name: "Shipping2" + group: "factory" + type: objectCentric + workforce: noWorkforce + start: "S" + end: "S" + workstation: "S" + selection: genericProbability + distribution: [ 1.0 ] + input: + - object: "shelf2" + number: 1 + lastState: "proofed" + size: + eventData: + - activity: + name: "Package sent" + output: + - object: "shelf2" + number: 1 + change: "sent" + size: + transition: "" + duration: 5 \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/handover.yaml b/config/datasource/smart-factory-original-scenario/handover.yaml new file mode 100644 index 0000000..b018412 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/handover.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handover" +spec: + name: "handover" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/handoverA.yaml b/config/datasource/smart-factory-original-scenario/handoverA.yaml new file mode 100644 index 0000000..c4b4b17 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/handoverA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverA" +spec: + name: "handoverA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/handoverBar.yaml b/config/datasource/smart-factory-original-scenario/handoverBar.yaml new file mode 100644 index 0000000..d9add8d --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/handoverBar.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBar" +spec: + name: "handoverBar" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/handoverBarA.yaml b/config/datasource/smart-factory-original-scenario/handoverBarA.yaml new file mode 100644 index 0000000..3b887b5 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/handoverBarA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarA" +spec: + name: "handoverBarA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/handoverBarR.yaml b/config/datasource/smart-factory-original-scenario/handoverBarR.yaml new file mode 100644 index 0000000..aad56dd --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/handoverBarR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarR" +spec: + name: "handoverBarR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/handoverBarRA.yaml b/config/datasource/smart-factory-original-scenario/handoverBarRA.yaml new file mode 100644 index 0000000..a651621 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/handoverBarRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBarRA" +spec: + name: "handoverBarRA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/handoverBoard.yaml b/config/datasource/smart-factory-original-scenario/handoverBoard.yaml new file mode 100644 index 0000000..59186c2 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/handoverBoard.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoard" +spec: + name: "handoverBoard" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/handoverBoardA.yaml b/config/datasource/smart-factory-original-scenario/handoverBoardA.yaml new file mode 100644 index 0000000..0a6adfa --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/handoverBoardA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardA" +spec: + name: "handoverBoardA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/handoverBoardR.yaml b/config/datasource/smart-factory-original-scenario/handoverBoardR.yaml new file mode 100644 index 0000000..493563a --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/handoverBoardR.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardR" +spec: + name: "handoverBoardR" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/handoverBoardRA.yaml b/config/datasource/smart-factory-original-scenario/handoverBoardRA.yaml new file mode 100644 index 0000000..42e7977 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/handoverBoardRA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "handoverBoardRA" +spec: + name: "handoverBoardRA" + type: "transport" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/order1.yaml b/config/datasource/smart-factory-original-scenario/order1.yaml new file mode 100644 index 0000000..bcaf45f --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/order1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order1" +spec: + name: "order1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/order2.yaml b/config/datasource/smart-factory-original-scenario/order2.yaml new file mode 100644 index 0000000..dbc0dcf --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/order2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "order2" +spec: + name: "order2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/orderBuyResource.yaml b/config/datasource/smart-factory-original-scenario/orderBuyResource.yaml new file mode 100644 index 0000000..6d10ccb --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/orderBuyResource.yaml @@ -0,0 +1,6 @@ +kind: object +name: "orderBuyResource" +spec: + name: "orderBuyResource" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/pinA.yaml b/config/datasource/smart-factory-original-scenario/pinA.yaml new file mode 100644 index 0000000..3ff2a03 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/pinA.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinA" +spec: + name: "pinA" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/pinW.yaml b/config/datasource/smart-factory-original-scenario/pinW.yaml new file mode 100644 index 0000000..96ec4f7 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/pinW.yaml @@ -0,0 +1,6 @@ +kind: object +name: "pinW" +spec: + name: "pinW" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/resourceOrder1.yaml b/config/datasource/smart-factory-original-scenario/resourceOrder1.yaml new file mode 100644 index 0000000..be67937 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/resourceOrder1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder1" +spec: + name: "resourceOrder1" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/resourceOrder2.yaml b/config/datasource/smart-factory-original-scenario/resourceOrder2.yaml new file mode 100644 index 0000000..7fcf9c4 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/resourceOrder2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "resourceOrder2" +spec: + name: "resourceOrder2" + type: "order" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/routing.yaml b/config/datasource/smart-factory-original-scenario/routing.yaml new file mode 100644 index 0000000..e0d2c31 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/routing.yaml @@ -0,0 +1,96 @@ +kind: route +name: "default" +spec: + routes: + - routeForActivity: "Warehouse AL to wood" + start: "STA" + end: "W" + duration: 10 + - routeForActivity: "Warehouse Wood to wood" + start: "STW" + end: "W" + duration: 1 + - routeForActivity: "Warehouse Small to wood" + start: "STS" + end: "W" + duration: 2 + - routeForActivity: "retrieve resources" + start: "STA" + end: "Al" + duration: 1 + - routeForActivity: "retrieve resources" + start: "STW" + end: "Al" + duration: 10 + - routeForActivity: "retrieve resources" + start: "STS" + end: "Al" + duration: 2 + - routeForActivity: "Sent to assembly station" + start: "STA" + end: "A" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "STW" + end: "A" + duration: 3 + - routeForActivity: "Sent to assembly station" + start: "STS" + end: "A" + duration: 2 + - routeForActivity: "Back to stock" + start: "A" + end: "ST" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "STA" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "STW" + duration: 3 + - routeForActivity: "Back to stock" + start: "A" + end: "STS" + duration: 2 + - routeForActivity: "Back to stock" + start: "W" + end: "STW" + duration: 1 + - routeForActivity: "Back to stock" + start: "W" + end: "STA" + duration: 10 + - routeForActivity: "Back to stock" + start: "W" + end: "STS" + duration: 2 + - routeForActivity: "Back to stock" + start: "Al" + end: "STW" + duration: 10 + - routeForActivity: "Back to stock" + start: "Al" + end: "STA" + duration: 1 + - routeForActivity: "Back to stock" + start: "Al" + end: "STS" + duration: 2 + - routeForActivity: "Sent to assembly station" + start: "W" + end: "A" + duration: 1 + - routeForActivity: "Back to machine" + start: "A" + end: "W" + duration: 1 + - routeForActivity: "Sent to assembly station" + start: "Al" + end: "A" + duration: 1 + - routeForActivity: "Back to machine" + start: "A" + end: "Al" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario/screw1.yaml b/config/datasource/smart-factory-original-scenario/screw1.yaml new file mode 100644 index 0000000..45e5f8b --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/screw1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw1" +spec: + name: "screw1" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/screw2.yaml b/config/datasource/smart-factory-original-scenario/screw2.yaml new file mode 100644 index 0000000..6d6076e --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/screw2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "screw2" +spec: + name: "screw2" + type: "resource" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/shelf1.yaml b/config/datasource/smart-factory-original-scenario/shelf1.yaml new file mode 100644 index 0000000..ea1a1d8 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/shelf1.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf1" +spec: + name: "shelf1" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/shelf2.yaml b/config/datasource/smart-factory-original-scenario/shelf2.yaml new file mode 100644 index 0000000..7115caa --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/shelf2.yaml @@ -0,0 +1,6 @@ +kind: object +name: "shelf2" +spec: + name: "shelf2" + type: "product" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/t0A-stock-to-machine.yaml b/config/datasource/smart-factory-original-scenario/t0A-stock-to-machine.yaml new file mode 100644 index 0000000..96ecd74 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/t0A-stock-to-machine.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "TransportMA" +spec: + name: "TransportMA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R1" + start: "STA" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "barAResource" + number: 2 + lastState: "" + size: + length: "360" + width: "" + depth: "" + - object: "crossAResource" + number: 3 + lastState: "" + size: + length: "380" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "barAResource" + number: 2 + change: "" + size: + length: "360" + width: "" + depth: "" + - object: "crossAResource" + number: 3 + change: "" + size: + length: "380" + width: "" + depth: "" + - object: "handoverBarRA" + number: 1 + change: "" + size: + transition: "SawingBarA" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario/t0BA-stock-to-machine.yaml b/config/datasource/smart-factory-original-scenario/t0BA-stock-to-machine.yaml new file mode 100644 index 0000000..880c05d --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/t0BA-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1BA" +spec: + name: "TransportM1BA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R2" + start: "STA" + end: "Al" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardAResource" + number: 1 + lastState: "" + size: + length: "" + width: "60" + depth: "60" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MA" + output: + - object: "boardAResource" + number: 1 + change: "" + size: + length: "" + width: "60" + depth: "60" + - object: "handoverBoardRA" + number: 1 + change: "" + size: + transition: "SawingBoardA" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario/t0BW-stock-to-machine.yaml b/config/datasource/smart-factory-original-scenario/t0BW-stock-to-machine.yaml new file mode 100644 index 0000000..3e114ef --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/t0BW-stock-to-machine.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportM1B" +spec: + name: "TransportM1B" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R3" + start: "STW" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardWResource" + number: 1 + lastState: "" + size: + length: "" + width: "200" + depth: "150" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "boardWResource" + number: 1 + change: "" + size: + length: "" + width: "200" + depth: "150" + - object: "handoverBoardR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario/t0W-stock-to-machine.yaml b/config/datasource/smart-factory-original-scenario/t0W-stock-to-machine.yaml new file mode 100644 index 0000000..acdefe3 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/t0W-stock-to-machine.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "TransportMW" +spec: + name: "TransportMW" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R4" + start: "STW" + end: "W" + selection: genericProbability + distribution: [1.0] + input: + - object: "barWResource" + number: 1 + lastState: "" + size: + length: "200" + width: "" + depth: "" + - object: "crossWResource" + number: 1 + lastState: "" + size: + length: "160" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> MW" + output: + - object: "barWResource" + number: 1 + change: "" + size: + length: "200" + width: "" + depth: "" + - object: "crossWResource" + number: 1 + change: "" + size: + length: "160" + width: "" + depth: "" + - object: "handoverBarR" + number: 1 + change: "" + size: + transition: "SawingBarW" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario/t1-stock-to-assembly.yaml b/config/datasource/smart-factory-original-scenario/t1-stock-to-assembly.yaml new file mode 100644 index 0000000..e9481fa --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/t1-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSA" +spec: + name: "TransportSA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R5" + start: "STS" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw1" + number: 15 + lastState: "" + size: + - object: "pinW" + number: 20 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw1" + number: 15 + change: "" + size: + - object: "pinW" + number: 20 + change: "" + size: + - object: "handover" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario/t1A-machine-to-assembly.yaml b/config/datasource/smart-factory-original-scenario/t1A-machine-to-assembly.yaml new file mode 100644 index 0000000..e8afa44 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/t1A-machine-to-assembly.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "TransportMAlA" +spec: + name: "TransportMAlA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R6" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barA" + number: 4 + lastState: "sanded" + size: + length: "180" + width: "" + depth: "" + - object: "crossA" + number: 6 + lastState: "sanded" + size: + length: "190" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MA -> assembly" + output: + - object: "barA" + number: 4 + change: "sanded" + size: + length: "180" + width: "" + depth: "" + - object: "crossA" + number: 6 + change: "sanded" + size: + length: "190" + width: "" + depth: "" + - object: "handoverBarA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario/t1A-stock-to-assembly.yaml b/config/datasource/smart-factory-original-scenario/t1A-stock-to-assembly.yaml new file mode 100644 index 0000000..dcfa6b7 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/t1A-stock-to-assembly.yaml @@ -0,0 +1,42 @@ +kind: datasource +name: "TransportSAAl" +spec: + name: "TransportSAAl" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R7" + start: "ST" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "screw2" + number: 8 + lastState: "" + size: + - object: "pinA" + number: 24 + lastState: "" + size: + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: stock -> assembly" + output: + - object: "screw2" + number: 8 + change: "" + size: + - object: "pinA" + number: 24 + change: "" + size: + - object: "handoverA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 2 diff --git a/config/datasource/smart-factory-original-scenario/t1BA-machine-to-assembly.yaml b/config/datasource/smart-factory-original-scenario/t1BA-machine-to-assembly.yaml new file mode 100644 index 0000000..c201519 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/t1BA-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMAlAB" +spec: + name: "TransportMAlAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R8" + start: "Al" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardA" + number: 3 + lastState: "sanded" + size: + length: "" + width: "20" + depth: "20" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MAl -> assembly" + output: + - object: "boardA" + number: 3 + change: "sanded" + size: + length: "" + width: "20" + depth: "20" + - object: "handoverBoardA" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario/t1BW-machine-to-assembly.yaml b/config/datasource/smart-factory-original-scenario/t1BW-machine-to-assembly.yaml new file mode 100644 index 0000000..94b9366 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/t1BW-machine-to-assembly.yaml @@ -0,0 +1,40 @@ +kind: datasource +name: "TransportMWAB" +spec: + name: "TransportMWAB" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R9" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "boardW" + number: 5 + lastState: "sanded" + size: + length: "" + width: "40" + depth: "30" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "boardW" + number: 5 + change: "sanded" + size: + length: "" + width: "40" + depth: "30" + - object: "handoverBoard" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario/t1W-machine-to-assembly.yaml b/config/datasource/smart-factory-original-scenario/t1W-machine-to-assembly.yaml new file mode 100644 index 0000000..480386a --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/t1W-machine-to-assembly.yaml @@ -0,0 +1,54 @@ +kind: datasource +name: "TransportMWA" +spec: + name: "TransportMWA" + group: "transport" + type: objectCentric + workforce: hasWorkforce + workstation: "R10" + start: "W" + end: "A" + selection: genericProbability + distribution: [1.0] + input: + - object: "barW" + number: 4 + lastState: "sanded" + size: + length: "50" + width: "" + depth: "" + - object: "crossW" + number: 4 + lastState: "sanded" + size: + length: "20" + width: "" + depth: "" + workforces: + - workforce: "transportRobot" + number: 1 + eventData: + - activity: + name: "transport: MW -> assembly" + output: + - object: "barW" + number: 4 + change: "sanded" + size: + length: "50" + width: "" + depth: "" + - object: "crossW" + number: 4 + change: "sanded" + size: + length: "20" + width: "" + depth: "" + - object: "handoverBar" + number: 1 + change: "" + size: + transition: "Assembly" + duration: 1 diff --git a/config/datasource/smart-factory-original-scenario/warehouse_stock.yaml b/config/datasource/smart-factory-original-scenario/warehouse_stock.yaml new file mode 100644 index 0000000..cff84fa --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/warehouse_stock.yaml @@ -0,0 +1,66 @@ +kind: stock +name: "default" +spec: + stocks: + - object: "order2" + number: 1000 + lastState: + size: + - object: "barAResource" + number: 150 + lastState: "" + size: + length: "500" + width: "" + depth: "" + - object: "barWResource" + number: 150 + lastState: "" + size: + length: "500" + width: "" + depth: "" + - object: "boardAResource" + number: 150 + lastState: "" + size: + length: "" + width: "500" + depth: "500" + - object: "boardWResource" + number: 150 + lastState: "" + size: + length: "" + width: "500" + depth: "500" + - object: "crossAResource" + number: 150 + lastState: "" + size: + length: "500" + width: "" + depth: "" + - object: "crossWResource" + number: 150 + lastState: "" + size: + length: "500" + width: "" + depth: "" + - object: "pinA" + number: 150 + lastState: "" + size: + - object: "pinW" + number: 150 + lastState: "" + size: + - object: "screw1" + number: 150 + lastState: "" + size: + - object: "screw2" + number: 150 + lastState: "" + size: \ No newline at end of file diff --git a/config/datasource/smart-factory-original-scenario/workforces.yaml b/config/datasource/smart-factory-original-scenario/workforces.yaml new file mode 100644 index 0000000..0397857 --- /dev/null +++ b/config/datasource/smart-factory-original-scenario/workforces.yaml @@ -0,0 +1,13 @@ +kind: workforces +name: "default" +spec: + workforces: + - name: "transportRobot" + startLocation: "A" + number: 8 + - name: "machineWorker" + startLocation: "W" + number: 8 + - name: "machineWorker" + startLocation: "Al" + number: 8 \ No newline at end of file diff --git a/config/simulation/countbased.yaml b/config/simulation/countbased.yaml new file mode 100644 index 0000000..2baf22a --- /dev/null +++ b/config/simulation/countbased.yaml @@ -0,0 +1,7 @@ +kind: simulation +name: countBasedSimulation +spec: + type: countBased + steps: 1000 + caseId: increasing + maxConcurrentCases: 10 \ No newline at end of file diff --git a/config/simulation/loadtest.yaml b/config/simulation/loadtest.yaml new file mode 100644 index 0000000..8cb2cee --- /dev/null +++ b/config/simulation/loadtest.yaml @@ -0,0 +1,12 @@ +kind: simulation +name: assembly-line-simulation +spec: + type: loadTest + steps: 100 + caseId: increasing + genTimeframesTilStart: 10 + timeframe: 1000 + maxConcurrentCases: 5 + load: + loadBehavior: constant + load: 10 \ No newline at end of file diff --git a/config/simulation/stream.yaml b/config/simulation/stream.yaml new file mode 100644 index 0000000..854b44d --- /dev/null +++ b/config/simulation/stream.yaml @@ -0,0 +1,9 @@ +kind: simulation +name: streamSimulation +spec: + type: stream + caseId: increasing + maxConcurrentCases: 5 + load: + loadBehavior: constant + load: 10 \ No newline at end of file diff --git a/config/sink/console-sink.yaml b/config/sink/console-sink.yaml new file mode 100644 index 0000000..8e2649e --- /dev/null +++ b/config/sink/console-sink.yaml @@ -0,0 +1,27 @@ +kind: sink +name: console-sink +spec: + type: console + id: "Sensor" + dataSourceRefs: + - "GoodsDelivery" + - "MaterialPreparation" + - "AssemblyLineSetup" + - "Assembling" + - "QualityControl" + - "Packaging" + - "Shipping" + - "OutgoingStock" + - "Assembly" + - "SawingBar" + - "DrillingBar" + - "SandingBar" + - "OrderPlacement" + - "TransportM1" + - "TransportM1A" + - "TransportSA" + - "A" + - "B" + - "C" + - "D" + - "E" \ No newline at end of file diff --git a/config/sink/kafka-sink.yaml b/config/sink/kafka-sink.yaml new file mode 100644 index 0000000..aed5cc0 --- /dev/null +++ b/config/sink/kafka-sink.yaml @@ -0,0 +1,18 @@ +kind: sink +name: kafka-sink +spec: + type: kafka + bootstrapServer: "minikube:31986" + clientId: "client1" + topic: "line" + partition: + type: "constant" + partition: 0 + dataSourceRefs: + - "GoodsDelivery" + - "MaterialPreparation" + - "AssemblyLineSetup" + - "Assembling" + - "QualityControl" + - "Packaging" + - "Shipping" \ No newline at end of file diff --git a/config/sink/loadtest-sink.yaml b/config/sink/loadtest-sink.yaml new file mode 100644 index 0000000..2ddc8c0 --- /dev/null +++ b/config/sink/loadtest-sink.yaml @@ -0,0 +1,15 @@ +kind: sink +name: http-sink +spec: + type: http + id: "Sensor" + timeframe: 1000 + url: "http://localhost:8080/loadgenerator" + dataSourceRefs: + - "GoodsDelivery" + - "MaterialPreparation" + - "AssemblyLineSetup" + - "Assembling" + - "QualityControl" + - "Packaging" + - "Shipping" diff --git a/config/sink/ocel.yaml b/config/sink/ocel.yaml new file mode 100644 index 0000000..00599f5 --- /dev/null +++ b/config/sink/ocel.yaml @@ -0,0 +1,70 @@ +kind: sink +name: ocelConsole +spec: + type: ocel + id: "Sensor" + dataSourceRefs: + - "GoodsDelivery" + - "MaterialPreparation" + - "AssemblyLineSetup" + - "Assembling" + - "QualityControl" + - "Packaging" + - "Shipping" + - "OutgoingStock" + - "OutgoingStockA" + - "Assembly" + - "Assembly1" + - "Assembly2" + - "SawingBar" + - "SawingBarA" + - "SawingBarW" + - "DrillingBar" + - "DrillingBarW" + - "DrillingBarA" + - "DrillingBarC" + - "SandingCrossA" + - "SandingCrossW" + - "SandingBar" + - "SandingBarA" + - "SandingBarW" + - "OrderPlacement" + - "OrderPlacementA" + - "TransportM1" + - "TransportM1Bar" + - "TransportM1A" + - "TransportM1ABar" + - "TransportSA" + - "Forging" + - "ForgingA" + - "ForgingB" + - "ShippingA" + - "ShippingB" + - "Shipping1" + - "Shipping2" + - "SawingBoard" + - "SawingBoardA" + - "SawingBoardW" + - "DrillingBoard" + - "SandingBoard" + - "SandingBoardW" + - "SandingBoardA" + - "QualityControl" + - "QualityControl1" + - "QualityControl2" + - "A" + - "B" + - "C" + - "D" + - "E" + - "TransportM1B" + - "TransportM1AB" + - "TransportMA" + - "TransportMW" + - "TransportMAlA" + - "TransportSAAl" + - "TransportMAlAB" + - "TransportMWAB" + - "TransportMWA" + - "TransportM1BA" + - "ResourceDelivery" \ No newline at end of file diff --git a/config/sink/sink-ui.yaml b/config/sink/sink-ui.yaml new file mode 100644 index 0000000..9dabc3b --- /dev/null +++ b/config/sink/sink-ui.yaml @@ -0,0 +1,10 @@ +kind: sink +name: ui-sink +spec: + type: ui + id: "UI" + dataSourceRefs: + - "Assembling" + - "QualityControl" + - "Packaging" + - "Shipping" \ No newline at end of file diff --git a/config/sink/test-sink.yaml b/config/sink/test-sink.yaml new file mode 100644 index 0000000..fae8af5 --- /dev/null +++ b/config/sink/test-sink.yaml @@ -0,0 +1,13 @@ +kind: sink +name: test +spec: + type: test + id: "test" + dataSourceRefs: + - "GoodsDelivery" + - "MaterialPreparation" + - "AssemblyLineSetup" + - "Assembling" + - "QualityControl" + - "Packaging" + - "Shipping" diff --git a/config/warehouse.yml b/config/warehouse.yml deleted file mode 100644 index 1a29868..0000000 --- a/config/warehouse.yml +++ /dev/null @@ -1,102 +0,0 @@ -numberOfDataSources: - type: static - count: 7 -caseId: increasing -type: load -loadType: constant -tickCount: 100 -load: 10 -dataSourceTopology: - defaultSink: - type: console - dataSources: - - name: "GoodsReceiving" - groupId: "warehouse" - eventGeneration: - selection: genericProbability - distribution: [0.1, 0.6, 0.3] - from: - events: - - activity: "Reject" - transition: 6 - duration: 1 - - activity: "Store" - transition: 1 - duration: 1 - - activity: "Repackage" - transition: 1 - duration: - type: uniform - lowerBound: 3 - upperBound: 7 - - name: "Storage" - groupId: "warehouse" - eventGeneration: - selection: genericProbability - distribution: [ 0.3, 0.7 ] - from: - events: - - activity: "Picked up" - duration: - type: uniform - lowerBound: 1 - upperBound: 2 - transition: 2 - - activity: "Still storing" - transition: 1 - duration: 1 - - name: "Picking" - groupId: "warehouse" - eventGeneration: - selection: genericProbability - distribution: [ 0.5, 0.1, 0.4 ] - from: - events: - - activity: "Transport To Storage" - transition: 1 - duration: 1 - - activity: "Transport To Returns Handling" - transition: 4 - duration: 1 - - activity: "Transport to shipping" - transition: 5 - duration: - type: uniform - lowerBound: 5 - upperBound: 10 - - name: "Packaging" - groupId: "warehouse" - eventGeneration: - selection: genericProbability - distribution: [ 1.0 ] - from: - events: - - activity: "Packaging completed" - transition: 2 - duration: 3 - - name: "ReturnsHandling" - groupId: "warehouse" - eventGeneration: - selection: genericProbability - distribution: [ 1.0 ] - from: - events: - - activity: "Analysis" - transition: 2 - duration: - type: uniform - lowerBound: 30 - upperBound: 60 - - name: "Shipping" - groupId: "warehouse" - eventGeneration: - selection: uniform - distribution: [ 0.8, 0.2 ] - from: - events: - - activity: "Package waits for sending" - transition: 5 - duration: 180 - - activity: "Package sent" - transition: 6 - duration: 1 \ No newline at end of file diff --git a/core/datasource.py b/core/datasource.py deleted file mode 100644 index 7af40c9..0000000 --- a/core/datasource.py +++ /dev/null @@ -1,112 +0,0 @@ -from abc import abstractmethod, ABC -from typing import List - -from core.event import Event, StartEvent, EndEvent, AbstractEvent -from provider.eventselection import EventSelectionProvider -from provider.event.event_provider import EventDataProvider, StartEventProvider, EndEventProvider -from provider.sink.sink_provider import Sink -from core.datasource_id import DataSourceId, START_SENSOR_ID, END_DATA_SOURCE_ID -from provider.transition.transition_provider_factory import NextSensorProvider - - -class DataSource(ABC): - - @abstractmethod - def emit_event(self, case, activity_name, timestamp) -> None: - pass - - @abstractmethod - def get_event_provider(self) -> EventDataProvider: - pass - - @abstractmethod - def get_id(self) -> DataSourceId: - pass - - @abstractmethod - def get_event_log(self) -> List[AbstractEvent]: - pass - - -class StartDataSource(DataSource): - - def __init__(self, transition_provider: NextSensorProvider, sender): - self.event_log = [] - self.transition_provider = transition_provider - self.sender = sender - - def get_event_provider(self) -> EventDataProvider: - return StartEventProvider() - - def emit_event(self, case, activity, timestamp) -> None: - event = StartEvent(case) - self.event_log.append(event) - self.sender.send(event) - - def get_sensor_transition(self) -> tuple[int, int]: - return 0, self.transition_provider.get_next_sensor() - - def get_id(self) -> DataSourceId: - return START_SENSOR_ID - - def get_event_log(self) -> List[AbstractEvent]: - return self.event_log - - -class EndDataSource(DataSource): - - def __init__(self, sender): - self.event_log = [] - self.sender = sender - - def emit_event(self, case, activity, timestamp) -> None: - event = EndEvent(case) - self.event_log.append(event) - self.sender.send(event) - - def get_event_provider(self) -> EventDataProvider: - return EndEventProvider() - - def get_sensor_transition(self) -> tuple[int, int]: - raise ValueError("There is no transition on the end datasource") - - def get_id(self) -> DataSourceId: - return END_DATA_SOURCE_ID - - def get_event_log(self) -> List[AbstractEvent]: - return self.event_log - - -class GenericDataSource(DataSource): - def __init__( - self, - sensor_id: DataSourceId, - group_id: str, - event_provider: EventSelectionProvider, - sink: Sink, - ): - self.sensor_id: DataSourceId = sensor_id - self.group_id: str = group_id - self.sender = sink - self.event_provider = event_provider - self.event_log: List[AbstractEvent] = [] - - def get_id(self) -> DataSourceId: - return self.sensor_id - - def get_event_provider(self): - return self.event_provider - - def emit_event(self, case, activity_name, timestamp) -> None: - event = Event( - timestamp=timestamp.strftime("%Y-%m-%d %H:%M:%S"), - sensor_value=activity_name, - case_id=case, - sensor_name=self.sensor_id.get_name(), - group_id=self.group_id - ) - self.event_log.append(event) - self.sender.send(event) - - def get_event_log(self) -> List[AbstractEvent]: - return self.event_log diff --git a/core/event.py b/core/event.py deleted file mode 100644 index 878a8b0..0000000 --- a/core/event.py +++ /dev/null @@ -1,55 +0,0 @@ -from abc import abstractmethod, ABC - - -class CaseId: - def __init__(self, case_id: str): - self.case_id = case_id - - -class Activity: - def __init__(self, activity: str): - self.activity = activity - - -class AbstractEvent(ABC): - @abstractmethod - def get_case(self) -> CaseId: - pass - - -class StartEvent(AbstractEvent): - def __init__(self, case_id: CaseId): - self.case_id = case_id - - def get_case(self): - return self.case_id - - def __str__(self): - return f"" - - -class EndEvent(AbstractEvent): - - def __init__(self, case_id: CaseId): - self.case_id = case_id - - def get_case(self): - return self.case_id - - def __str__(self): - return f"" - - -class Event(AbstractEvent): - def __init__(self, timestamp, sensor_value, case_id: CaseId, sensor_name, group_id): - self.timestamp = timestamp - self.sensor_value: any = sensor_value - self.case_id: CaseId = case_id - self.sensor_name: str = sensor_name - self.group_id: str = group_id - - def get_case(self): - return self.case_id - - def __str__(self): - return str(self.__dict__) diff --git a/core/__init__.py b/distributed_event_factory/__init__.py similarity index 100% rename from core/__init__.py rename to distributed_event_factory/__init__.py diff --git a/provider/__init__.py b/distributed_event_factory/core/__init__.py similarity index 100% rename from provider/__init__.py rename to distributed_event_factory/core/__init__.py diff --git a/distributed_event_factory/core/abstract_datasource.py b/distributed_event_factory/core/abstract_datasource.py new file mode 100644 index 0000000..7ca6fbe --- /dev/null +++ b/distributed_event_factory/core/abstract_datasource.py @@ -0,0 +1,29 @@ +from abc import ABC, abstractmethod +from typing import List + +from process_mining_core.datastructure.core.event import Event + +from distributed_event_factory.core.datasource_id import DataSourceId +from distributed_event_factory.provider.event.event_data import EventData + +class DataSource(ABC): + + @abstractmethod + def emit_event(self, case, activity_name, timestamp) -> None: + pass + + @abstractmethod + def get_event_data(self) -> EventData: + pass + + @abstractmethod + def get_id(self) -> DataSourceId: + pass + + @abstractmethod + def get_event_log(self) -> List[Event]: + pass + + #@abstractmethod + #def get_input_objects(self): + # pass diff --git a/distributed_event_factory/core/abstract_object_source.py b/distributed_event_factory/core/abstract_object_source.py new file mode 100644 index 0000000..a8e6a7f --- /dev/null +++ b/distributed_event_factory/core/abstract_object_source.py @@ -0,0 +1,21 @@ +from abc import ABC, abstractmethod +from distributed_event_factory.core.object_id import ObjectId + + +class ObjectSource(ABC): + + @abstractmethod + def emit_object(self, id, object_name, timestamp) -> None: + pass + + @abstractmethod + def get_id(self) -> ObjectId: + pass + + @abstractmethod + def get_object_type(self) -> str: + pass + + #@abstractmethod + #def get_input_objects(self) -> []: + # pass diff --git a/distributed_event_factory/core/core_decisions_datasource.py b/distributed_event_factory/core/core_decisions_datasource.py new file mode 100644 index 0000000..f44879b --- /dev/null +++ b/distributed_event_factory/core/core_decisions_datasource.py @@ -0,0 +1,34 @@ +class GenericDecisions: + def __init__( + self, + simulation_provider, + input_objects, + workstation, + workforce, + start, + end + ): + self.simulation_provider = simulation_provider + self.input_objects= input_objects + self.workstation = workstation + self.workforce = workforce + self.start = start + self.end = end + + def get_event_data(self): + return self.simulation_provider.get_event_data() + + def get_input_data(self): + return self.input_objects + + def get_workstation(self): + return self.workstation + + def get_workforce(self): + return self.workforce + + def get_start(self): + return self.start + + def get_end(self): + return self.end \ No newline at end of file diff --git a/distributed_event_factory/core/datasource.py b/distributed_event_factory/core/datasource.py new file mode 100644 index 0000000..26d9eb7 --- /dev/null +++ b/distributed_event_factory/core/datasource.py @@ -0,0 +1,42 @@ +from typing import List + +from process_mining_core.datastructure.core.event import Event + +from distributed_event_factory.core.abstract_datasource import DataSource +from distributed_event_factory.core.datasource_id import DataSourceId +from distributed_event_factory.provider.eventselection.event_selection_provider import EventSelectionProvider + +class GenericDataSource(DataSource): + def __init__( + self, + data_source_id: DataSourceId, + group_id: str, + event_provider: EventSelectionProvider, + ): + self.sensor_id: DataSourceId = data_source_id + self.group_id: str = group_id + self.event_provider: EventSelectionProvider = event_provider + self.event_log: List[Event] = [] + + def get_id(self) -> DataSourceId: + return self.sensor_id + + def get_event_provider(self): + return self.event_provider + + def get_event_data(self): + return self.event_provider.get_event_data() + + def emit_event(self, case, activity_name, timestamp) -> Event: + event = Event( + timestamp=timestamp.strftime("%Y-%m-%d %H:%M:%S"), + sensor_value=activity_name, + case_id=case, + sensor_name=self.sensor_id.get_name(), + group_id=self.group_id + ) + self.event_log.append(event) + return event + + def get_event_log(self) -> List[Event]: + return self.event_log diff --git a/core/datasource_id.py b/distributed_event_factory/core/datasource_id.py similarity index 90% rename from core/datasource_id.py rename to distributed_event_factory/core/datasource_id.py index 58ab972..2c72e0b 100644 --- a/core/datasource_id.py +++ b/distributed_event_factory/core/datasource_id.py @@ -14,3 +14,4 @@ def get_name(self): START_SENSOR_ID = DataSourceId("") END_DATA_SOURCE_ID = DataSourceId("") +ROUTING_ID = DataSourceId("") diff --git a/distributed_event_factory/core/end_datasource.py b/distributed_event_factory/core/end_datasource.py new file mode 100644 index 0000000..5a791c5 --- /dev/null +++ b/distributed_event_factory/core/end_datasource.py @@ -0,0 +1,33 @@ +from typing import List + +from process_mining_core.datastructure.core.event import Event + +from distributed_event_factory.core.abstract_datasource import DataSource +from distributed_event_factory.core.datasource_id import END_DATA_SOURCE_ID, DataSourceId +from distributed_event_factory.core.event import EndEvent +from distributed_event_factory.provider.event.event_provider import EventDataProvider, EndEventProvider +from provider.object.input.input_provider import InputObjectProvider + + +class EndDataSource(DataSource): + def __init__(self): + self.event_log = [] + + def emit_event(self, case, activity, timestamp) -> None: + event = EndEvent(case) + self.event_log.append(event) + + def get_event_data(self) -> EventDataProvider: + return EndEventProvider().get_event_data() + + def get_sensor_transition(self) -> tuple[int, int]: + raise ValueError("There is no transition on the end datasource") + + def get_id(self) -> DataSourceId: + return END_DATA_SOURCE_ID + + def get_event_log(self) -> List[Event]: + return self.event_log + + #def get_input_objects(self): + # return InputObjectProvider().get_input_objects() \ No newline at end of file diff --git a/distributed_event_factory/core/event.py b/distributed_event_factory/core/event.py new file mode 100644 index 0000000..85fcfe2 --- /dev/null +++ b/distributed_event_factory/core/event.py @@ -0,0 +1,37 @@ +from distributed_event_factory.provider.transition.transition.transition_provider import TransitionProvider + +class CaseId: + def __init__(self, case_id: str): + self.case_id = case_id + +class Activity: + def __init__(self, activity: str): + self.activity = activity + +class StartEvent: + def __init__(self, case_id: CaseId, transition_provider: TransitionProvider): + self.case_id = case_id + self.transition_provider = transition_provider + self.node = "start" + + def get_case(self): + return self.case_id + + def get_next_sensor(self): + return self.transition_provider.get_transition() + + def __str__(self): + return f"" + + +class EndEvent: + def __init__(self, case_id: CaseId): + self.case_id = case_id + + def get_case(self): + return self.case_id + + def __str__(self): + return f"" + + diff --git a/distributed_event_factory/core/object.py b/distributed_event_factory/core/object.py new file mode 100644 index 0000000..46e53db --- /dev/null +++ b/distributed_event_factory/core/object.py @@ -0,0 +1,63 @@ +from typing import List + +from distributed_event_factory.core.abstract_object_source import ObjectSource +from distributed_event_factory.core.object_id import ObjectId + + +class ObjectData: + def __init__( + self, + timestamp, + object_state: str, + object_id: ObjectId + ): + self.timestamp = timestamp + self.object_state = object_state + # Maybe call that object type + self.object_id = object_id + + +class GenericObjectSource(ObjectSource): + + def __init__( + self, + object_id_name: str, + object_type: str, + size + ): + self.values_changed: List[ObjectData] = [] + self.object_id_name = object_id_name + self.object_id = ObjectId(object_id_name) + self.object_type = object_type + self.size = size + + def emit_object(self, id, object_name, timestamp) -> ObjectData: + object = ObjectData( + timestamp=timestamp.strftime("%Y-%m-%d %H:%M:%S"), + object_type=self.object_type, + object_id=self.object_id + ) + self.values_changed.append(object) + return object + + def get_id(self) -> ObjectId: + return self.object_id + + def get_object_type(self) -> str: + return self.object_type + + def get_size(self): + return self.size + + def get_last_changed_value(self): + if self.values_changed: + return self.values_changed[-1].object_state + return None + + def add_change(self, change): + self.values_changed.append(change) + + def clone(self): + return GenericObjectSource(self.object_id_name, + self.object_type, + self.size) diff --git a/distributed_event_factory/core/object_id.py b/distributed_event_factory/core/object_id.py new file mode 100644 index 0000000..813c3e5 --- /dev/null +++ b/distributed_event_factory/core/object_id.py @@ -0,0 +1,17 @@ +import uuid +class ObjectId: + def __init__(self, data_source_id: str): + self.id: str = data_source_id + self.unique_id = str(uuid.uuid4()) + + def __eq__(self, other): + return hasattr(other, "id") and self.id == other.id + + def __hash__(self): + return hash(self.id) + + def get_name(self): + return self.id + + def get_unique_id(self): + return self.unique_id \ No newline at end of file diff --git a/distributed_event_factory/core/route.py b/distributed_event_factory/core/route.py new file mode 100644 index 0000000..fb6ae8e --- /dev/null +++ b/distributed_event_factory/core/route.py @@ -0,0 +1,26 @@ +class Route: + + def __init__( + self, + route_for_activity: str, + start: str, + end: str, + duration: int + + ): + self.route_for_activity = route_for_activity + self.start = start + self.end = end + self.duration = duration + + def get_route_for_activity(self): + return self.route_for_activity + + def get_start(self): + return self.start + + def get_end(self): + return self.end + + def get_duration(self): + return self.duration \ No newline at end of file diff --git a/distributed_event_factory/core/start_datasource.py b/distributed_event_factory/core/start_datasource.py new file mode 100644 index 0000000..a8e5594 --- /dev/null +++ b/distributed_event_factory/core/start_datasource.py @@ -0,0 +1,32 @@ +from typing import List + +from distributed_event_factory.core.abstract_datasource import DataSource +from distributed_event_factory.core.datasource_id import START_SENSOR_ID, DataSourceId +from distributed_event_factory.core.event import StartEvent, AbstractEvent +from distributed_event_factory.provider.event.event_provider import EventDataProvider, StartEventProvider +from distributed_event_factory.provider.transition.transition.transition_provider import TransitionProvider + + +class StartDataSource(DataSource): + + def __init__(self, transition_provider: TransitionProvider): + self.event_log = [] + self.transition_provider = transition_provider + + def get_event_data(self) -> EventDataProvider: + return StartEventProvider(self.transition_provider).get_event_data() + + def emit_event(self, case, activity, timestamp) -> AbstractEvent: + return StartEvent(case, self.transition_provider) + + def get_sensor_transition(self) -> tuple[int, int]: + return 0, self.transition_provider.get_transition() + + def get_id(self) -> DataSourceId: + return START_SENSOR_ID + + def get_event_log(self) -> List[AbstractEvent]: + return self.event_log + + #def get_input_objects(self): + # return None \ No newline at end of file diff --git a/distributed_event_factory/core/workforce.py b/distributed_event_factory/core/workforce.py new file mode 100644 index 0000000..46b16d5 --- /dev/null +++ b/distributed_event_factory/core/workforce.py @@ -0,0 +1,29 @@ +from core.object_id import ObjectId +from core.route import Route +from simulation.simulator_objects.route_management import RouteManagement + + +class Workforce: + def __init__(self, name:str, location:str): + self.name = name + self.location = location + self.available = True + self.object_id = ObjectId(name) + + def get_duration_to_get_to_location(self, location:str, routeManagement:RouteManagement): + route: Route = routeManagement.get_route_for_start_end(self.location, location) + return route.duration + + def get_location(self): + return self.location + + def is_transfer_to_location_possible(self, location:str, routeManagement:RouteManagement): + if self.available: + return routeManagement.route_for_start_end_exists(self.location, location) + return False + + def set_available(self, available:bool): + self.available = available + + def is_available(self): + return self.available diff --git a/distributed_event_factory/event_factory.py b/distributed_event_factory/event_factory.py new file mode 100644 index 0000000..4c2983d --- /dev/null +++ b/distributed_event_factory/event_factory.py @@ -0,0 +1,139 @@ +import os +import yaml + +from distributed_event_factory.core.end_datasource import EndDataSource +from distributed_event_factory.parser.datasource.event.activity.activity_parser import ActivityParser +from distributed_event_factory.parser.datasource.event.transition.transition_parser import TransitionParser +from distributed_event_factory.parser.object.object_source_parser import ObjectSourceParser +from distributed_event_factory.parser.parser_registry import ParserRegistry +from distributed_event_factory.parser.simulation.case.case_id_parser import CaseIdParser +from distributed_event_factory.parser.simulation.load.load_parser import LoadParser +from distributed_event_factory.parser.sink.sink_parser import SinkParser +from distributed_event_factory.provider.sink.sink_provider import Sink +from parser.datasource.event.output.output_parser import OutputParser +from parser.route.route_parser import RouteParser +from parser.stock.stock_parser import StockParser +from parser.workforce.workforce_start_positions import WorkforceStartPositionParser + + +class EventFactory: + def __init__(self): + self.routes = dict() + self.stocks = dict() + self.sinks = dict() + self.simulations = dict() + self.datasources = dict() + self.objects = dict() + self.workforce_start_positions = dict() + self.datasources[""] = EndDataSource() + self.parser = ParserRegistry() + + def add_load_parser(self, key: str, parser: LoadParser): + self.parser.load_parser.add_dependency(key, parser) + return self + + def add_case_id_parser(self, key: str, parser: CaseIdParser): + self.parser.case_id_parser.add_dependency(key, parser) + return self + + def add_transition_parser(self, key: str, parser: TransitionParser): + self.parser.transition_parser.add_dependency(key, parser) + return self + + def add_activity_parser(self, key: str, parser: ActivityParser): + self.parser.activity_parser.add_dependency(key, parser) + return self + + def add_sink_parser(self, key: str, parser: SinkParser): + self.parser.sink_parser.add_dependency(key, parser) + return self + + def add_selection_parser(self, key: str, parser: SinkParser): + self.parser.probability_selection_parser.add_dependency(key, parser) + return self + + def add_output_parser(self, key: str, parser: OutputParser): + self.parser.output_parser.add_dependency(key, parser) + return self + + def add_object_source_parser(self, key: str, parser: ObjectSourceParser): + self.parser.object_source_parser.add_dependency(key, parser) + + def add_route_parser(self, key: str, parser: RouteParser): + self.parser.route_parser.add_dependency(key, parser) + + def add_workforce_start_position_parser(self, key: str, parser: WorkforceStartPositionParser): + self.parser.workforce_start_position_parser.add_dependency(key, parser) + + def add_stock_parser(self, key: str, parser: StockParser): + self.parser.warehouse_stock_parser.add_dependency(key, parser) + + def get_datasource(self, datasource_key): + return self.datasources[datasource_key] + + def get_sink(self, sink_key): + return self.sinks[sink_key] + + def get_object_source(self, object_key): + return self.objects[object_key] + + def add_directory(self, directory): + for filename in os.listdir(directory): + if not filename.startswith(".."): + self.add_file(directory + "/" + filename) + return self + + def add_sink(self, name, sink: Sink): + self.sinks[name] = sink + return self + + def add_datasource(self, name, datasource): + self.datasources[name] = datasource + return self + + def add_simulation(self, name, simulation): + self.simulations[name] = simulation + return self + + def add_object(self, name, object_source): + self.objects[name] = object_source + return self + + def add_route(self, name, routes): + self.routes[name] = routes + return self + + def add_stock(self, name, stock): + self.stocks[name] = stock + return self + + def add_workforce_start_positions(self, name, workforce_start_positions): + self.workforce_start_positions[name] = workforce_start_positions + return self + + def add_file(self, filename): + with open(filename) as file: + configuration = yaml.safe_load(file) + kind = configuration['kind'] + name = configuration['name'] + parsed_object = self.parser.kind_parser.parse(configuration) + if kind == "simulation": + self.add_simulation(name, parsed_object) + elif kind == "datasource": + self.add_datasource(name, parsed_object) + elif kind == "sink": + self.add_sink(name, parsed_object) + elif kind == "object": + self.add_object(name, parsed_object) + elif kind == "route": + self.add_route(name, parsed_object) + elif kind == "stock": + self.add_stock(name, parsed_object) + elif kind == "workforces": + self.add_workforce_start_positions(name, parsed_object) + return self + + def run(self, content_root, hook=lambda: None): + for simulation in self.simulations: + self.simulations[simulation].run_simulation(self.datasources, self.sinks, self.objects, self.routes, + self.stocks, self.workforce_start_positions, content_root, hook) diff --git a/distributed_event_factory/event_factory_main.py b/distributed_event_factory/event_factory_main.py new file mode 100644 index 0000000..ff6c753 --- /dev/null +++ b/distributed_event_factory/event_factory_main.py @@ -0,0 +1,26 @@ +import os +import sys + +from dotenv import load_dotenv +from distributed_event_factory.event_factory import EventFactory + +if __name__ == '__main__': + if "local" in sys.argv: + load_dotenv() + datasource = os.environ["DATASOURCE"] + sink = os.environ["SINK"] + simulation = os.environ["SIMULATION"] + content_root = os.environ["ROOT"] + event_factory = EventFactory() + + print("Running with config:") + print(f"datasource directory: {datasource}") + print(f"Sink: {sink}") + print(f"Simulation: {simulation}") + print(f"Content root: {content_root}") + + (event_factory + .add_directory(f"{content_root}/config/datasource/{datasource}") + .add_file(f"{content_root}/config/simulation/{simulation}") + .add_file(f"{content_root}/config/sink/{sink}") + ).run(content_root = content_root) diff --git a/provider/activity/__init__.py b/distributed_event_factory/parser/__init__.py similarity index 100% rename from provider/activity/__init__.py rename to distributed_event_factory/parser/__init__.py diff --git a/provider/activity/generation/__init__.py b/distributed_event_factory/parser/base/__init__.py similarity index 100% rename from provider/activity/generation/__init__.py rename to distributed_event_factory/parser/base/__init__.py diff --git a/distributed_event_factory/parser/base/constant_count_parser.py b/distributed_event_factory/parser/base/constant_count_parser.py new file mode 100644 index 0000000..1e7b5b2 --- /dev/null +++ b/distributed_event_factory/parser/base/constant_count_parser.py @@ -0,0 +1,11 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.data.constant_count_provider import ConstantCountProvider + + +class ConstantCountParser(Parser): + + def parse(self, config): + return ConstantCountProvider(config) + + def add_dependency(self, key: str, dependency): + pass \ No newline at end of file diff --git a/provider/activity/selection/__init__.py b/distributed_event_factory/parser/datasource/__init__.py similarity index 100% rename from provider/activity/selection/__init__.py rename to distributed_event_factory/parser/datasource/__init__.py diff --git a/distributed_event_factory/parser/datasource/data_source_parser.py b/distributed_event_factory/parser/datasource/data_source_parser.py new file mode 100644 index 0000000..fd624d6 --- /dev/null +++ b/distributed_event_factory/parser/datasource/data_source_parser.py @@ -0,0 +1,20 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.core.datasource import GenericDataSource +from distributed_event_factory.core.datasource_id import DataSourceId + +class DataSourceParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return GenericDataSource( + data_source_id=DataSourceId(config["name"]), + group_id=config["group"], + event_provider=self.dependencies["eventData"].parse(config) + ) + diff --git a/provider/activity/selection/ordered/__init__.py b/distributed_event_factory/parser/datasource/event/__init__.py similarity index 100% rename from provider/activity/selection/ordered/__init__.py rename to distributed_event_factory/parser/datasource/event/__init__.py diff --git a/provider/activity/selection/single/__init__.py b/distributed_event_factory/parser/datasource/event/activity/__init__.py similarity index 100% rename from provider/activity/selection/single/__init__.py rename to distributed_event_factory/parser/datasource/event/activity/__init__.py diff --git a/distributed_event_factory/parser/datasource/event/activity/activity_parser.py b/distributed_event_factory/parser/datasource/event/activity/activity_parser.py new file mode 100644 index 0000000..78bc6d3 --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/activity/activity_parser.py @@ -0,0 +1,20 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.activity.activity_provider import ConstantActivityProvider +from provider.activity.activity_provider import ObjectConstantActivityProvider + + +class ActivityParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + if isinstance(config, str): + return ConstantActivityProvider(config) + elif isinstance(config, dict): + return ObjectConstantActivityProvider(config["name"], self.dependencies["output"].parse(config["output"])) + return self.dependencies[config["type"]].parse(config) \ No newline at end of file diff --git a/distributed_event_factory/parser/datasource/event/distribution_parser.py b/distributed_event_factory/parser/datasource/event/distribution_parser.py new file mode 100644 index 0000000..4ad3e9c --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/distribution_parser.py @@ -0,0 +1,13 @@ +from distributed_event_factory.parser.parser import Parser + + +class DistributionParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return [float(element) for element in config] \ No newline at end of file diff --git a/provider/activity/selection/uniform/__init__.py b/distributed_event_factory/parser/datasource/event/duration/__init__.py similarity index 100% rename from provider/activity/selection/uniform/__init__.py rename to distributed_event_factory/parser/datasource/event/duration/__init__.py diff --git a/distributed_event_factory/parser/datasource/event/duration/constant_duration_parser.py b/distributed_event_factory/parser/datasource/event/duration/constant_duration_parser.py new file mode 100644 index 0000000..5501324 --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/duration/constant_duration_parser.py @@ -0,0 +1,11 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.transition.duration.constant_duration import ConstantDurationProvider + + +class ConstantDurationParser(Parser): + + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return ConstantDurationProvider(config["duration"]) \ No newline at end of file diff --git a/distributed_event_factory/parser/datasource/event/duration/duration_parser.py b/distributed_event_factory/parser/datasource/event/duration/duration_parser.py new file mode 100644 index 0000000..785211f --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/duration/duration_parser.py @@ -0,0 +1,17 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.transition.duration.constant_duration import ConstantDurationProvider + + +class DurationParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + if isinstance(config, int): + return ConstantDurationProvider(config) + return self.dependencies[config["type"]].parse(config) \ No newline at end of file diff --git a/distributed_event_factory/parser/datasource/event/duration/gaussian_duration_parser.py b/distributed_event_factory/parser/datasource/event/duration/gaussian_duration_parser.py new file mode 100644 index 0000000..508505d --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/duration/gaussian_duration_parser.py @@ -0,0 +1,11 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.transition.duration.gaussian_duration import GaussianDurationProvider + + +class GaussianDurationParser(Parser): + + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return GaussianDurationProvider(config["mu"], config["sigma"]) \ No newline at end of file diff --git a/distributed_event_factory/parser/datasource/event/duration/uniform_duration_parser.py b/distributed_event_factory/parser/datasource/event/duration/uniform_duration_parser.py new file mode 100644 index 0000000..d6eca1b --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/duration/uniform_duration_parser.py @@ -0,0 +1,11 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.transition.duration.uniform_duration import UniformDurationProvider + + +class UniformDurationParser(Parser): + + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return UniformDurationProvider(config["lowerBound"], config["upperBound"]) \ No newline at end of file diff --git a/distributed_event_factory/parser/datasource/event/event_data_list_parser.py b/distributed_event_factory/parser/datasource/event/event_data_list_parser.py new file mode 100644 index 0000000..ee41a16 --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/event_data_list_parser.py @@ -0,0 +1,19 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.event.event_provider import CustomEventDataProvider + +class EventDataListParser(Parser): + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + event_list = [] + for event in config: + event_list.append(CustomEventDataProvider( + duration_provider=self.dependencies["duration"].parse(event["duration"]), + activity_provider=self.dependencies["activity"].parse(event["activity"]), + transition_provider=self.dependencies["transition"].parse(event["transition"]))) + return event_list diff --git a/distributed_event_factory/parser/datasource/event/event_selection_parser.py b/distributed_event_factory/parser/datasource/event/event_selection_parser.py new file mode 100644 index 0000000..dfeed88 --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/event_selection_parser.py @@ -0,0 +1,20 @@ +from core.core_decisions_datasource import GenericDecisions +from distributed_event_factory.parser.parser import Parser + + +class EventSelectionParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return GenericDecisions(self.dependencies[config['selection']].parse(config), + self.dependencies[config['type']].parse(config), + config['workstation'], + self.dependencies[config['workforce']].parse(config), + config['start'], + config['end']) diff --git a/distributed_event_factory/parser/datasource/event/input/input_parser.py b/distributed_event_factory/parser/datasource/event/input/input_parser.py new file mode 100644 index 0000000..230ec1c --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/input/input_parser.py @@ -0,0 +1,25 @@ +from distributed_event_factory.parser.parser import Parser +from provider.object.input.input_provider import InputObjectProvider +from provider.object.size_params_provider import SizeParamsProvider + + +class InputParser(Parser): + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + object_list = [] + for object_element in config["input"]: + size_params = None + if object_element["size"]: + size_params = SizeParamsProvider(width=object_element["size"]["width"], + depth=object_element["size"]["depth"], + length=object_element["size"]["length"]) + object_list.append( + InputObjectProvider(object_element["object"], object_element["number"], object_element["lastState"], + size_params)) + return object_list \ No newline at end of file diff --git a/distributed_event_factory/parser/datasource/event/output/output_parser.py b/distributed_event_factory/parser/datasource/event/output/output_parser.py new file mode 100644 index 0000000..d80a05f --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/output/output_parser.py @@ -0,0 +1,38 @@ +from distributed_event_factory.parser.parser import Parser +from provider.object.size_params_provider import SizeParamsProvider +from provider.transition.output.output_provider import OutputObjectProvider + + +class OutputParser(Parser): + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + object_list = [] + for object_element in config: + size_params = None + if object_element["size"]: + size_params = SizeParamsProvider(width=object_element["size"]["width"], + depth=object_element["size"]["depth"], + length=object_element["size"]["length"]) + object_list.append( + OutputObjectProvider(object_element["object"], object_element["number"], object_element["change"], + size_params)) + return object_list + + +class DummyObjectParser(Parser): + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + object_list = [] + return object_list \ No newline at end of file diff --git a/provider/data/__init__.py b/distributed_event_factory/parser/datasource/event/selection/__init__.py similarity index 100% rename from provider/data/__init__.py rename to distributed_event_factory/parser/datasource/event/selection/__init__.py diff --git a/distributed_event_factory/parser/datasource/event/selection/drifting_probability_event_selection_parser.py b/distributed_event_factory/parser/datasource/event/selection/drifting_probability_event_selection_parser.py new file mode 100644 index 0000000..b760d0d --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/selection/drifting_probability_event_selection_parser.py @@ -0,0 +1,20 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.eventselection.drifting_probability_event_selection_provider import \ + DriftingProbabilityEventSelectionProvider + + +class DriftingProbabilityEventSelectionParser(Parser): + def __init__(self): + self.dependencies=dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return DriftingProbabilityEventSelectionProvider( + starting_probability_distribution=self.dependencies["distribution"].parse(config["startDistribution"]), + end_probability_distribution=self.dependencies["distribution"].parse(config["endDistribution"]), + steps=config["steps"], + potential_events=self.dependencies["eventData"].parse(config["eventData"]) + ) \ No newline at end of file diff --git a/distributed_event_factory/parser/datasource/event/selection/generic_probability_event_selection_parser.py b/distributed_event_factory/parser/datasource/event/selection/generic_probability_event_selection_parser.py new file mode 100644 index 0000000..dabc83d --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/selection/generic_probability_event_selection_parser.py @@ -0,0 +1,18 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.eventselection.generic_probability_event_selection_provider import \ + GenericProbabilityEventSelectionProvider + + +class GenericProbabilityEventSelectionParser(Parser): + def __init__(self): + self.dependencies=dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return GenericProbabilityEventSelectionProvider( + self.dependencies["distribution"].parse(config["distribution"]), + self.dependencies["eventData"].parse(config["eventData"]) + ) \ No newline at end of file diff --git a/distributed_event_factory/parser/datasource/event/selection/ordered_event_selection_parser.py b/distributed_event_factory/parser/datasource/event/selection/ordered_event_selection_parser.py new file mode 100644 index 0000000..e36e624 --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/selection/ordered_event_selection_parser.py @@ -0,0 +1,10 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.eventselection.ordered_selection_provider import OrderedEventSelectionProvider + + +class OrderedEventSelectionParser(Parser): + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return OrderedEventSelectionProvider(config["eventData"]) \ No newline at end of file diff --git a/distributed_event_factory/parser/datasource/event/selection/parallel_event_selection_parser.py b/distributed_event_factory/parser/datasource/event/selection/parallel_event_selection_parser.py new file mode 100644 index 0000000..8b3020a --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/selection/parallel_event_selection_parser.py @@ -0,0 +1,14 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.eventselection.parallel_selection_provider import ParallelEventSelectionProvider + + +class ParallelEventSelectionParser(Parser): + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return ParallelEventSelectionProvider(self.dependencies["eventData"].parse(config["eventData"])) \ No newline at end of file diff --git a/distributed_event_factory/parser/datasource/event/selection/uniform_event_selection.py b/distributed_event_factory/parser/datasource/event/selection/uniform_event_selection.py new file mode 100644 index 0000000..73665a2 --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/selection/uniform_event_selection.py @@ -0,0 +1,12 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.eventselection.uniform_selction_provider import UniformEventSelectionProvider + + +class UniformEventSelectionParser(Parser): + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return UniformEventSelectionProvider( + potential_events=config["eventData"] + ) \ No newline at end of file diff --git a/provider/datasource/__init__.py b/distributed_event_factory/parser/datasource/event/transition/__init__.py similarity index 100% rename from provider/datasource/__init__.py rename to distributed_event_factory/parser/datasource/event/transition/__init__.py diff --git a/distributed_event_factory/parser/datasource/event/transition/transition_parser.py b/distributed_event_factory/parser/datasource/event/transition/transition_parser.py new file mode 100644 index 0000000..b5715a3 --- /dev/null +++ b/distributed_event_factory/parser/datasource/event/transition/transition_parser.py @@ -0,0 +1,16 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.transition.transition.constant_transition import ConstantTransitionProvider + + +class TransitionParser(Parser): + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + if isinstance(config, str): + return ConstantTransitionProvider(config) + return self.dependencies[config["type"]].parse(config) \ No newline at end of file diff --git a/distributed_event_factory/parser/datasource/object/object_parser.py b/distributed_event_factory/parser/datasource/object/object_parser.py new file mode 100644 index 0000000..0d195ab --- /dev/null +++ b/distributed_event_factory/parser/datasource/object/object_parser.py @@ -0,0 +1,13 @@ +from distributed_event_factory.parser.parser import Parser + +class InputObjectParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return self.dependencies[config['input']].parse(config) \ No newline at end of file diff --git a/distributed_event_factory/parser/kind_parser.py b/distributed_event_factory/parser/kind_parser.py new file mode 100644 index 0000000..9983c12 --- /dev/null +++ b/distributed_event_factory/parser/kind_parser.py @@ -0,0 +1,13 @@ +from distributed_event_factory.parser.parser import Parser + +class KindParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return self.dependencies[config["kind"]].parse(config["spec"]) diff --git a/distributed_event_factory/parser/object/object_source_parser.py b/distributed_event_factory/parser/object/object_source_parser.py new file mode 100644 index 0000000..ca7e971 --- /dev/null +++ b/distributed_event_factory/parser/object/object_source_parser.py @@ -0,0 +1,25 @@ +from distributed_event_factory.core.object import GenericObjectSource +from distributed_event_factory.core.object_id import ObjectId +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.object.input.input_provider import InputObjectProvider +from provider.object.size_params_provider import SizeParamsProvider + + +class ObjectSourceParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + size_params = None + if config["size"]: + size_params = SizeParamsProvider(length=config["size"]["length"], depth=config["size"]["depth"], + width=config["size"]["width"]) + return GenericObjectSource( + object_id_name=ObjectId(config["name"]), + object_type=config["type"], + size=size_params + ) diff --git a/distributed_event_factory/parser/parser.py b/distributed_event_factory/parser/parser.py new file mode 100644 index 0000000..81ff9ae --- /dev/null +++ b/distributed_event_factory/parser/parser.py @@ -0,0 +1,12 @@ +from abc import ABC, abstractmethod + + +class Parser(ABC): + + @abstractmethod + def add_dependency(self, key: str, dependency): + pass + + @abstractmethod + def parse(self, config): + pass \ No newline at end of file diff --git a/distributed_event_factory/parser/parser_registry.py b/distributed_event_factory/parser/parser_registry.py new file mode 100644 index 0000000..48deec4 --- /dev/null +++ b/distributed_event_factory/parser/parser_registry.py @@ -0,0 +1,197 @@ +from distributed_event_factory.parser.base.constant_count_parser import ConstantCountParser +from distributed_event_factory.parser.datasource.event.activity.activity_parser import ActivityParser +from distributed_event_factory.parser.datasource.event.duration.constant_duration_parser import \ + ConstantDurationParser +from distributed_event_factory.parser.datasource.event.duration.duration_parser import DurationParser +from distributed_event_factory.parser.datasource.event.duration.gaussian_duration_parser import \ + GaussianDurationParser +from distributed_event_factory.parser.datasource.event.duration.uniform_duration_parser import \ + UniformDurationParser +from distributed_event_factory.parser.datasource.event.selection.drifting_probability_event_selection_parser import \ + DriftingProbabilityEventSelectionParser +from distributed_event_factory.parser.datasource.event.selection.generic_probability_event_selection_parser import \ + GenericProbabilityEventSelectionParser +from distributed_event_factory.parser.datasource.event.selection.ordered_event_selection_parser import \ + OrderedEventSelectionParser +from distributed_event_factory.parser.datasource.event.selection.parallel_event_selection_parser import \ + ParallelEventSelectionParser +from distributed_event_factory.parser.datasource.event.selection.uniform_event_selection import \ + UniformEventSelectionParser +from distributed_event_factory.parser.datasource.event.transition.transition_parser import TransitionParser +from distributed_event_factory.parser.object.object_source_parser import ObjectSourceParser +from distributed_event_factory.parser.simulation.case.case_id_parser import CaseIdParser +from distributed_event_factory.parser.datasource.data_source_parser import DataSourceParser +from distributed_event_factory.parser.datasource.event.distribution_parser import DistributionParser +from distributed_event_factory.parser.datasource.event.event_data_list_parser import EventDataListParser +from distributed_event_factory.parser.datasource.event.event_selection_parser import EventSelectionParser +from distributed_event_factory.parser.kind_parser import KindParser +from distributed_event_factory.parser.simulation.load.constant_load_parser import ConstantLoadParser +from distributed_event_factory.parser.simulation.load.gradual_load_parser import GradualLoadParser +from distributed_event_factory.parser.simulation.load.load_parser import LoadParser +from distributed_event_factory.parser.simulation.load.sinus_load_parser import SinusLoadParser +from distributed_event_factory.parser.simulation.simulation_parser import SimulationParser +from distributed_event_factory.parser.simulation.variant.countbased_simulation_parser import CountBasedSimulationParser +from distributed_event_factory.parser.simulation.variant.loadtest_simulation_parser import LoadTestSimulationParser +from distributed_event_factory.parser.simulation.variant.stream_simulation_parser import StreamSimulationParser +from distributed_event_factory.parser.sink.http_sink_parser import HttpSinkParser +from distributed_event_factory.parser.sink.kafka.case_partition_parser import CasePartitionParser +from distributed_event_factory.parser.sink.kafka.constant_partition_parser import ConstantPartitionParser +from distributed_event_factory.parser.sink.kafka.kafka_sink_parser import KafkaSinkParser +from distributed_event_factory.parser.sink.kafka.partition_parser import PartitionParser +from distributed_event_factory.parser.sink.print_console_sink_parser import PrintConsoleSinkParser +from distributed_event_factory.parser.sink.sink_parser import SinkParser +from distributed_event_factory.parser.sink.ui_sink_parser import UiSinkParser +from distributed_event_factory.provider.data.increasing_case import IncreasingCaseIdProvider +from parser.datasource.event.input.input_parser import InputParser +from parser.datasource.event.output.output_parser import OutputParser, DummyObjectParser +from parser.route.route_parser import RouteParser +from parser.sink.ocel_sink_parser import OcelConsoleSinkParser +from parser.stock.stock_parser import StockParser +from parser.workforce.workforce_parser import WorkforceParser, DummyWorkforceParser +from parser.workforce.workforce_start_positions import WorkforceStartPositionParser + + +class ParserRegistry: + + def __init__(self): + # Objects + self.output_parser = OutputParser() + self.dummy_object_parser = DummyObjectParser() + self.input_parser = InputParser() + self.workforce_parser = WorkforceParser() + self.dummy_workforce_parser = DummyWorkforceParser() + + # Count + self.constant_count_parser = ConstantCountParser() + + # Partitioning + self.constant_partition_parser = ConstantPartitionParser() + self.case_partition_parser = CasePartitionParser() + self.partition_parser = (PartitionParser() + .add_dependency("constant", self.constant_partition_parser) + .add_dependency("case", self.case_partition_parser)) + + # Sinks + self.kafka_sink_parser = (KafkaSinkParser()).add_dependency("partition", self.partition_parser) + self.console_sink_parser = (PrintConsoleSinkParser()) + self.ocel_console_sink_parser = (OcelConsoleSinkParser()) + self.ui_sink_parser = (UiSinkParser()) + self.http_sink_parser = (HttpSinkParser()) + self.sink_parser = (SinkParser() + .add_dependency("console", self.console_sink_parser) + .add_dependency("ui", self.ui_sink_parser) + .add_dependency("http", self.http_sink_parser) + .add_dependency("kafka", self.kafka_sink_parser) + .add_dependency("ocel", self.ocel_console_sink_parser)) + ########## + # Activity + self.activity_parser = ActivityParser().add_dependency("output", self.output_parser) + + # Duration + self.constant_duration_parser = ConstantDurationParser() + self.uniform_duration_parser = UniformDurationParser() + self.gaussian_duration_parser = GaussianDurationParser() + self.duration_parser = (DurationParser() + .add_dependency("constant", self.constant_duration_parser) + .add_dependency("uniform", self.uniform_duration_parser) + .add_dependency("gaussian", self.gaussian_duration_parser)) + + # Transition + self.transition_parser = TransitionParser() + + # Event Data List + self.event_data_list_parser = (EventDataListParser() + .add_dependency("duration", self.duration_parser) + .add_dependency("activity", self.activity_parser) + .add_dependency("transition", self.transition_parser)) + + # Distribution + self.distribution_parser = (DistributionParser()) + + self.uniform_event_selection_parser = (UniformEventSelectionParser()) + self.ordered_event_selection_parser = (OrderedEventSelectionParser()) + self.parallel_event_selection_parser = (ParallelEventSelectionParser() + .add_dependency("eventData", self.event_data_list_parser)) + + self.drifting_selection_parser = (DriftingProbabilityEventSelectionParser() + .add_dependency("distribution", self.distribution_parser) + .add_dependency("eventData", self.event_data_list_parser)) + + self.probability_selection_parser = (GenericProbabilityEventSelectionParser() + .add_dependency("distribution", self.distribution_parser) + .add_dependency("eventData", self.event_data_list_parser)) + + # Event Selection + self.event_selection_parser = (EventSelectionParser() + .add_dependency("ordered", self.ordered_event_selection_parser) + .add_dependency("uniform", self.uniform_event_selection_parser) + .add_dependency("genericProbability", self.probability_selection_parser) + .add_dependency("driftingProbability", self.drifting_selection_parser) + .add_dependency("parallel", self.parallel_event_selection_parser) + .add_dependency("objectCentric", self.input_parser) + .add_dependency("hasWorkforce", self.workforce_parser) + .add_dependency("noWorkforce", self.dummy_workforce_parser) + .add_dependency("default", self.dummy_object_parser)) + + # DataSource + self.datasource_parser = (DataSourceParser() + .add_dependency("eventData", self.event_selection_parser)) + + # Input + self.object_source_parser = ObjectSourceParser() + self.workforce_start_position_parser = WorkforceStartPositionParser() + + # Route + self.route_parser = RouteParser() + + # Warehouse Stocks + self.warehouse_stock_parser = StockParser() + + ########## + # Case + self.increasing_case_id_parser = IncreasingCaseIdProvider() + self.case_id_parser: CaseIdParser = (CaseIdParser() + .add_dependency("increasing", self.increasing_case_id_parser)) + + # Load + self.constant_load_parser = ConstantLoadParser() + self.gradual_load_parser = GradualLoadParser() + self.gaussian_load_parser = GradualLoadParser() + self.sinus_load_parser = SinusLoadParser() + self.load_parser: LoadParser = (LoadParser() + .add_dependency("constant", self.constant_load_parser) + .add_dependency("gradual", self.gradual_load_parser) + .add_dependency("sinus", self.sinus_load_parser)) + + # Simulation + self.count_based_simulation: CountBasedSimulationParser = (CountBasedSimulationParser() + .add_dependency("caseId", self.case_id_parser) + .add_dependency("maxConcurrentCases", + self.constant_count_parser)) + + self.load_test_simulation: LoadTestSimulationParser = (LoadTestSimulationParser() + .add_dependency("load", self.load_parser) + .add_dependency("caseId", self.case_id_parser) + .add_dependency("maxConcurrentCases", + self.constant_count_parser)) + + self.stream_simulation: StreamSimulationParser = (StreamSimulationParser() + .add_dependency("load", self.load_parser) + .add_dependency("caseId", self.case_id_parser) + .add_dependency("maxConcurrentCases", + self.constant_count_parser)) + + self.simulation_parser: SimulationParser = (SimulationParser() + .add_dependency("stream", self.stream_simulation) + .add_dependency("countBased", self.count_based_simulation) + .add_dependency("loadTest", self.load_test_simulation)) + + # Kind + self.kind_parser: KindParser = (KindParser() + .add_dependency("sink", self.sink_parser) + .add_dependency("datasource", self.datasource_parser) + .add_dependency("simulation", self.simulation_parser) + .add_dependency("object", self.object_source_parser) + .add_dependency("route", self.route_parser) + .add_dependency("stock", self.warehouse_stock_parser) + .add_dependency("workforces", self.workforce_start_position_parser)) diff --git a/distributed_event_factory/parser/route/route_parser.py b/distributed_event_factory/parser/route/route_parser.py new file mode 100644 index 0000000..7fb7c14 --- /dev/null +++ b/distributed_event_factory/parser/route/route_parser.py @@ -0,0 +1,22 @@ +from core.route import Route +from parser.parser import Parser + + +class RouteParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + route_list = [] + for route in config["routes"]: + route_list.append(Route( + route_for_activity=route["routeForActivity"], + start=route["start"], + end=route["end"], + duration=route["duration"] + )) + return route_list \ No newline at end of file diff --git a/provider/event/__init__.py b/distributed_event_factory/parser/simulation/__init__.py similarity index 100% rename from provider/event/__init__.py rename to distributed_event_factory/parser/simulation/__init__.py diff --git a/provider/eventselection/__init__.py b/distributed_event_factory/parser/simulation/case/__init__.py similarity index 100% rename from provider/eventselection/__init__.py rename to distributed_event_factory/parser/simulation/case/__init__.py diff --git a/distributed_event_factory/parser/simulation/case/case_id_parser.py b/distributed_event_factory/parser/simulation/case/case_id_parser.py new file mode 100644 index 0000000..7cb84a7 --- /dev/null +++ b/distributed_event_factory/parser/simulation/case/case_id_parser.py @@ -0,0 +1,13 @@ +from distributed_event_factory.parser.parser import Parser + + +class CaseIdParser(Parser): + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return self.dependencies[config] \ No newline at end of file diff --git a/distributed_event_factory/parser/simulation/case/increasing_case_id_parser.py b/distributed_event_factory/parser/simulation/case/increasing_case_id_parser.py new file mode 100644 index 0000000..34a1cca --- /dev/null +++ b/distributed_event_factory/parser/simulation/case/increasing_case_id_parser.py @@ -0,0 +1,11 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.data.case_provider import IncreasingCaseIdProvider + + +class IncreasingCaseIdParser(Parser): + + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return IncreasingCaseIdProvider() \ No newline at end of file diff --git a/provider/generic/__init__.py b/distributed_event_factory/parser/simulation/load/__init__.py similarity index 100% rename from provider/generic/__init__.py rename to distributed_event_factory/parser/simulation/load/__init__.py diff --git a/distributed_event_factory/parser/simulation/load/constant_load_parser.py b/distributed_event_factory/parser/simulation/load/constant_load_parser.py new file mode 100644 index 0000000..e2338d5 --- /dev/null +++ b/distributed_event_factory/parser/simulation/load/constant_load_parser.py @@ -0,0 +1,17 @@ +import os + +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.load.load_provider import ConstantLoadProvider + + +class ConstantLoadParser(Parser): + + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + if "load" in os.environ: + load = int(os.environ["LOAD"]) + else: + load = config["load"] + return ConstantLoadProvider(load) \ No newline at end of file diff --git a/distributed_event_factory/parser/simulation/load/gradual_load_parser.py b/distributed_event_factory/parser/simulation/load/gradual_load_parser.py new file mode 100644 index 0000000..8206685 --- /dev/null +++ b/distributed_event_factory/parser/simulation/load/gradual_load_parser.py @@ -0,0 +1,11 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.load.load_provider import GradualIncreasingLoadProvider + + +class GradualLoadParser(Parser): + + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return GradualIncreasingLoadProvider(config["tickCount"], config["minimalLoad"], config["load"]) \ No newline at end of file diff --git a/distributed_event_factory/parser/simulation/load/load_parser.py b/distributed_event_factory/parser/simulation/load/load_parser.py new file mode 100644 index 0000000..11cb8a2 --- /dev/null +++ b/distributed_event_factory/parser/simulation/load/load_parser.py @@ -0,0 +1,15 @@ +from distributed_event_factory.parser.parser import Parser + + +class LoadParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return self.dependencies[config["loadBehavior"]].parse(config) + diff --git a/distributed_event_factory/parser/simulation/load/sinus_load_parser.py b/distributed_event_factory/parser/simulation/load/sinus_load_parser.py new file mode 100644 index 0000000..780e7c3 --- /dev/null +++ b/distributed_event_factory/parser/simulation/load/sinus_load_parser.py @@ -0,0 +1,10 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.load.sinus_load_provider import SinusLoadProvider + + +class SinusLoadParser(Parser): + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return SinusLoadProvider(config["mean"], config["amplitude"], config["phase"]) \ No newline at end of file diff --git a/distributed_event_factory/parser/simulation/simulation_parser.py b/distributed_event_factory/parser/simulation/simulation_parser.py new file mode 100644 index 0000000..d224dd7 --- /dev/null +++ b/distributed_event_factory/parser/simulation/simulation_parser.py @@ -0,0 +1,11 @@ +class SimulationParser: + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return self.dependencies[config["type"]].parse(config) \ No newline at end of file diff --git a/distributed_event_factory/parser/simulation/variant/countbased_simulation_parser.py b/distributed_event_factory/parser/simulation/variant/countbased_simulation_parser.py new file mode 100644 index 0000000..cfc0490 --- /dev/null +++ b/distributed_event_factory/parser/simulation/variant/countbased_simulation_parser.py @@ -0,0 +1,18 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.simulation.countbased import CountBasedSimulation + + +class CountBasedSimulationParser(Parser): + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return CountBasedSimulation( + simulation_steps=config["steps"], + case_id_provider=self.dependencies["caseId"].parse(config["caseId"]), + max_concurrent_cases=self.dependencies["maxConcurrentCases"].parse(config["maxConcurrentCases"]) + ) diff --git a/distributed_event_factory/parser/simulation/variant/loadtest_simulation_parser.py b/distributed_event_factory/parser/simulation/variant/loadtest_simulation_parser.py new file mode 100644 index 0000000..f72e17f --- /dev/null +++ b/distributed_event_factory/parser/simulation/variant/loadtest_simulation_parser.py @@ -0,0 +1,19 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.simulation.loadtest import LoadTestSimulation + + +class LoadTestSimulationParser(Parser): + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return LoadTestSimulation( + case_id_provider=self.dependencies["caseId"].parse(config["caseId"]), + load_provider=self.dependencies["load"].parse(config["load"]), + generated_timeframes_until_start=config["genTimeframesTilStart"], + max_concurrent_cases=self.dependencies["maxConcurrentCases"].parse(config["maxConcurrentCases"]) + ) \ No newline at end of file diff --git a/distributed_event_factory/parser/simulation/variant/stream_simulation_parser.py b/distributed_event_factory/parser/simulation/variant/stream_simulation_parser.py new file mode 100644 index 0000000..a2aedaa --- /dev/null +++ b/distributed_event_factory/parser/simulation/variant/stream_simulation_parser.py @@ -0,0 +1,18 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.simulation.stream import StreamSimulation + + +class StreamSimulationParser(Parser): + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return StreamSimulation( + case_id_provider=self.dependencies["caseId"].parse(config["caseId"]), + load_provider=self.dependencies["load"].parse(config["load"]), + max_concurrent_cases=self.dependencies["maxConcurrentCases"].parse(config["maxConcurrentCases"]) + ) \ No newline at end of file diff --git a/provider/load/__init__.py b/distributed_event_factory/parser/sink/__init__.py similarity index 100% rename from provider/load/__init__.py rename to distributed_event_factory/parser/sink/__init__.py diff --git a/distributed_event_factory/parser/sink/http_sink_parser.py b/distributed_event_factory/parser/sink/http_sink_parser.py new file mode 100644 index 0000000..1d31963 --- /dev/null +++ b/distributed_event_factory/parser/sink/http_sink_parser.py @@ -0,0 +1,15 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.sink.http.http_sink import LoadTestHttpSink +from distributed_event_factory.provider.sink.ui.terminal_ui_sink import UiSink + + +class HttpSinkParser(Parser): + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return LoadTestHttpSink( + url=config["url"], + data_source_ref=config["dataSourceRefs"], + frame_duration=config["timeframe"] + ) \ No newline at end of file diff --git a/provider/sink/__init__.py b/distributed_event_factory/parser/sink/kafka/__init__.py similarity index 100% rename from provider/sink/__init__.py rename to distributed_event_factory/parser/sink/kafka/__init__.py diff --git a/distributed_event_factory/parser/sink/kafka/case_partition_parser.py b/distributed_event_factory/parser/sink/kafka/case_partition_parser.py new file mode 100644 index 0000000..9ebf154 --- /dev/null +++ b/distributed_event_factory/parser/sink/kafka/case_partition_parser.py @@ -0,0 +1,9 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.sink.kafka.partition.case_partition import CaseIdPartitionProvider + +class CasePartitionParser(Parser): + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return CaseIdPartitionProvider(number_of_partitions=config["partitionCount"]) \ No newline at end of file diff --git a/distributed_event_factory/parser/sink/kafka/constant_partition_parser.py b/distributed_event_factory/parser/sink/kafka/constant_partition_parser.py new file mode 100644 index 0000000..4f238c5 --- /dev/null +++ b/distributed_event_factory/parser/sink/kafka/constant_partition_parser.py @@ -0,0 +1,10 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.sink.kafka.partition.constant_partition import ConstantPartitionProvider + + +class ConstantPartitionParser(Parser): + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return ConstantPartitionProvider(partition=config["partition"]) \ No newline at end of file diff --git a/distributed_event_factory/parser/sink/kafka/kafka_sink_parser.py b/distributed_event_factory/parser/sink/kafka/kafka_sink_parser.py new file mode 100644 index 0000000..c4ca05f --- /dev/null +++ b/distributed_event_factory/parser/sink/kafka/kafka_sink_parser.py @@ -0,0 +1,25 @@ +from select import select + +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.parser.sink.sink_parser import SinkParser +from distributed_event_factory.provider.sink.kafka.kafka_sink import KafkaSink + + +class KafkaSinkParser(Parser): + + def __init__(self): + super().__init__() + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return KafkaSink( + config["bootstrapServer"], + config["clientId"], + config["topic"], + self.dependencies["partition"].parse(config["partition"]), + config["dataSourceRefs"] + ) \ No newline at end of file diff --git a/distributed_event_factory/parser/sink/kafka/partition_parser.py b/distributed_event_factory/parser/sink/kafka/partition_parser.py new file mode 100644 index 0000000..93f7da7 --- /dev/null +++ b/distributed_event_factory/parser/sink/kafka/partition_parser.py @@ -0,0 +1,13 @@ +from distributed_event_factory.parser.parser import Parser + +class PartitionParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return self.dependencies[config["type"]].parse(config) \ No newline at end of file diff --git a/distributed_event_factory/parser/sink/ocel_sink_parser.py b/distributed_event_factory/parser/sink/ocel_sink_parser.py new file mode 100644 index 0000000..b6968a7 --- /dev/null +++ b/distributed_event_factory/parser/sink/ocel_sink_parser.py @@ -0,0 +1,10 @@ +from distributed_event_factory.parser.parser import Parser +from provider.sink.ocel.ocel_sink import OcelConsole + + +class OcelConsoleSinkParser(Parser): + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return OcelConsole(config["id"], config["dataSourceRefs"]) \ No newline at end of file diff --git a/distributed_event_factory/parser/sink/print_console_sink_parser.py b/distributed_event_factory/parser/sink/print_console_sink_parser.py new file mode 100644 index 0000000..17dfae2 --- /dev/null +++ b/distributed_event_factory/parser/sink/print_console_sink_parser.py @@ -0,0 +1,10 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.sink.console.console_sink import PrintConsole + + +class PrintConsoleSinkParser(Parser): + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return PrintConsole(config["id"], config["dataSourceRefs"]) \ No newline at end of file diff --git a/distributed_event_factory/parser/sink/sink_parser.py b/distributed_event_factory/parser/sink/sink_parser.py new file mode 100644 index 0000000..12978fd --- /dev/null +++ b/distributed_event_factory/parser/sink/sink_parser.py @@ -0,0 +1,13 @@ +from distributed_event_factory.parser.parser import Parser + +class SinkParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + return self.dependencies[config["type"]].parse(config) \ No newline at end of file diff --git a/distributed_event_factory/parser/sink/ui_sink_parser.py b/distributed_event_factory/parser/sink/ui_sink_parser.py new file mode 100644 index 0000000..eace1ef --- /dev/null +++ b/distributed_event_factory/parser/sink/ui_sink_parser.py @@ -0,0 +1,10 @@ +from distributed_event_factory.parser.parser import Parser +from distributed_event_factory.provider.sink.ui.terminal_ui_sink import UiSink + + +class UiSinkParser(Parser): + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return UiSink(config["id"], config["dataSourceRefs"]) \ No newline at end of file diff --git a/distributed_event_factory/parser/stock/stock_parser.py b/distributed_event_factory/parser/stock/stock_parser.py new file mode 100644 index 0000000..60f8a3f --- /dev/null +++ b/distributed_event_factory/parser/stock/stock_parser.py @@ -0,0 +1,28 @@ +from parser.parser import Parser +from provider.object.input.input_provider import InputObjectProvider +from provider.object.size_params_provider import SizeParamsProvider + + +class StockParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + stocks_list = [] + for stock in config["stocks"]: + size_params = None + if stock["size"]: + size_params = SizeParamsProvider(width=stock["size"]["width"], + depth=stock["size"]["depth"], + length=stock["size"]["length"]) + stocks_list.append(InputObjectProvider( + objectName=stock["object"], + numberOfObject=stock["number"], + lastState=stock["lastState"], + size=size_params, + )) + return stocks_list \ No newline at end of file diff --git a/distributed_event_factory/parser/workforce/workforce_parser.py b/distributed_event_factory/parser/workforce/workforce_parser.py new file mode 100644 index 0000000..d137634 --- /dev/null +++ b/distributed_event_factory/parser/workforce/workforce_parser.py @@ -0,0 +1,34 @@ +from distributed_event_factory.parser.parser import Parser +from provider.workforce.InputWorkforceProvider import InputWorkforceProvider + + +class WorkforceParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + workforce_for_step_list = [] + if config["workforces"]: + for input in config["workforces"]: + workforce_for_step_list.append(InputWorkforceProvider( + name=input["workforce"], + numberOfWorkforce=input["number"] + )) + return workforce_for_step_list + +class DummyWorkforceParser(Parser): + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + self.dependencies[key] = dependency + return self + + def parse(self, config): + workforce_for_step_list = [] + return workforce_for_step_list \ No newline at end of file diff --git a/distributed_event_factory/parser/workforce/workforce_start_positions.py b/distributed_event_factory/parser/workforce/workforce_start_positions.py new file mode 100644 index 0000000..8a37932 --- /dev/null +++ b/distributed_event_factory/parser/workforce/workforce_start_positions.py @@ -0,0 +1,22 @@ +from distributed_event_factory.parser.parser import Parser +from provider.workforce.InputWorkforceProvider import InputWorkforceProvider, WorkforceStartPositionProvider + + +class WorkforceStartPositionParser(Parser): + + def __init__(self): + self.dependencies = dict() + + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + workforce_with_start_position = [] + if config["workforces"]: + for workforce in config["workforces"]: + workforce_with_start_position.append(WorkforceStartPositionProvider( + name=workforce["name"], + numberOfWorkforce=workforce["number"], + location=workforce["startLocation"], + )) + return workforce_with_start_position \ No newline at end of file diff --git a/provider/sink/kafka/__init__.py b/distributed_event_factory/provider/__init__.py similarity index 100% rename from provider/sink/kafka/__init__.py rename to distributed_event_factory/provider/__init__.py diff --git a/provider/activity/README.md b/distributed_event_factory/provider/activity/README.md similarity index 100% rename from provider/activity/README.md rename to distributed_event_factory/provider/activity/README.md diff --git a/provider/sink/kafka/partition/__init__.py b/distributed_event_factory/provider/activity/__init__.py similarity index 100% rename from provider/sink/kafka/partition/__init__.py rename to distributed_event_factory/provider/activity/__init__.py diff --git a/distributed_event_factory/provider/activity/activity_provider.py b/distributed_event_factory/provider/activity/activity_provider.py new file mode 100644 index 0000000..4bce60b --- /dev/null +++ b/distributed_event_factory/provider/activity/activity_provider.py @@ -0,0 +1,36 @@ +from abc import ABC, abstractmethod + + +class ActivityProvider(ABC): + + @abstractmethod + def get_activity(self): + pass + + @abstractmethod + def get_output(self): + pass + + +class ConstantActivityProvider(ActivityProvider): + + def __init__(self, activity_name): + self.activity_name = activity_name + + def get_activity(self): + return self.activity_name + + def get_output(self): + return None + +class ObjectConstantActivityProvider(ActivityProvider): + + def __init__(self, activity_name, output): + self.activity_name = activity_name + self.output = output + + def get_activity(self): + return self.activity_name + + def get_output(self): + return self.output diff --git a/provider/transition/__init__.py b/distributed_event_factory/provider/activity/generation/__init__.py similarity index 100% rename from provider/transition/__init__.py rename to distributed_event_factory/provider/activity/generation/__init__.py diff --git a/provider/activity/generation/activity_generation_provider.py b/distributed_event_factory/provider/activity/generation/activity_generation_provider.py similarity index 95% rename from provider/activity/generation/activity_generation_provider.py rename to distributed_event_factory/provider/activity/generation/activity_generation_provider.py index 2c20431..2524a72 100644 --- a/provider/activity/generation/activity_generation_provider.py +++ b/distributed_event_factory/provider/activity/generation/activity_generation_provider.py @@ -2,9 +2,6 @@ from string import ascii_uppercase as alphabet from typing import List -from provider.generic.count_provider import CountProvider - - class ActivityGenerationProvider(abc.ABC): @abc.abstractmethod diff --git a/provider/transition/duration/__init__.py b/distributed_event_factory/provider/activity/selection/__init__.py similarity index 100% rename from provider/transition/duration/__init__.py rename to distributed_event_factory/provider/activity/selection/__init__.py diff --git a/provider/activity/selection/activity_selection_provider.py b/distributed_event_factory/provider/activity/selection/activity_selection_provider.py similarity index 99% rename from provider/activity/selection/activity_selection_provider.py rename to distributed_event_factory/provider/activity/selection/activity_selection_provider.py index 031e109..a7f9c2c 100644 --- a/provider/activity/selection/activity_selection_provider.py +++ b/distributed_event_factory/provider/activity/selection/activity_selection_provider.py @@ -2,6 +2,7 @@ class ActivitySelectionProvider(ABC): + @abstractmethod def emit_activity(self): pass diff --git a/provider/transition/nextsensor/__init__.py b/distributed_event_factory/provider/activity/selection/ordered/__init__.py similarity index 100% rename from provider/transition/nextsensor/__init__.py rename to distributed_event_factory/provider/activity/selection/ordered/__init__.py diff --git a/provider/activity/selection/ordered/ordered_selection_provider.py b/distributed_event_factory/provider/activity/selection/ordered/ordered_selection_provider.py similarity index 70% rename from provider/activity/selection/ordered/ordered_selection_provider.py rename to distributed_event_factory/provider/activity/selection/ordered/ordered_selection_provider.py index 6618b50..e10f825 100644 --- a/provider/activity/selection/ordered/ordered_selection_provider.py +++ b/distributed_event_factory/provider/activity/selection/ordered/ordered_selection_provider.py @@ -1,9 +1,10 @@ from typing import List -from core.event import Activity -from provider.activity.generation.activity_generation_provider import ActivityGenerationProvider -from provider.activity.selection.activity_selection_provider import ActivitySelectionProviderFactory, \ - ActivitySelectionProvider +from distributed_event_factory.core.event import Activity +from distributed_event_factory.provider.activity.generation.activity_generation_provider import \ + ActivityGenerationProvider +from distributed_event_factory.provider.activity.selection.activity_selection_provider import \ + ActivitySelectionProviderFactory, ActivitySelectionProvider class OrderedActivitySelectionProviderFactory(ActivitySelectionProviderFactory): diff --git a/simulation/__init__.py b/distributed_event_factory/provider/activity/selection/single/__init__.py similarity index 100% rename from simulation/__init__.py rename to distributed_event_factory/provider/activity/selection/single/__init__.py diff --git a/provider/activity/selection/single/single_selection_provider.py b/distributed_event_factory/provider/activity/selection/single/single_selection_provider.py similarity index 69% rename from provider/activity/selection/single/single_selection_provider.py rename to distributed_event_factory/provider/activity/selection/single/single_selection_provider.py index 15d64ed..cbaa5df 100644 --- a/provider/activity/selection/single/single_selection_provider.py +++ b/distributed_event_factory/provider/activity/selection/single/single_selection_provider.py @@ -1,6 +1,6 @@ -from core.event import Activity -from provider.activity.selection.activity_selection_provider import ActivitySelectionProvider, \ - ActivitySelectionProviderFactory +from distributed_event_factory.core.event import Activity +from distributed_event_factory.provider.activity.selection.activity_selection_provider import \ + ActivitySelectionProviderFactory, ActivitySelectionProvider class SingleActivitySelectionProviderFactory(ActivitySelectionProviderFactory): diff --git a/simulation/eventloop/__init__.py b/distributed_event_factory/provider/activity/selection/uniform/__init__.py similarity index 100% rename from simulation/eventloop/__init__.py rename to distributed_event_factory/provider/activity/selection/uniform/__init__.py diff --git a/provider/activity/selection/uniform/uniform_selection_provider.py b/distributed_event_factory/provider/activity/selection/uniform/uniform_selection_provider.py similarity index 69% rename from provider/activity/selection/uniform/uniform_selection_provider.py rename to distributed_event_factory/provider/activity/selection/uniform/uniform_selection_provider.py index 0810fb2..06a9ad7 100644 --- a/provider/activity/selection/uniform/uniform_selection_provider.py +++ b/distributed_event_factory/provider/activity/selection/uniform/uniform_selection_provider.py @@ -1,10 +1,11 @@ import random from typing import List -from core.event import Activity -from provider.activity.generation.activity_generation_provider import ActivityGenerationProvider -from provider.activity.selection.activity_selection_provider import ActivitySelectionProviderFactory, \ - ActivitySelectionProvider +from distributed_event_factory.core.event import Activity +from distributed_event_factory.provider.activity.generation.activity_generation_provider import \ + ActivityGenerationProvider +from distributed_event_factory.provider.activity.selection.activity_selection_provider import \ + ActivitySelectionProviderFactory, ActivitySelectionProvider class UniformActivitySelectionProviderFactory(ActivitySelectionProviderFactory): diff --git a/view/__init__.py b/distributed_event_factory/provider/data/__init__.py similarity index 100% rename from view/__init__.py rename to distributed_event_factory/provider/data/__init__.py diff --git a/distributed_event_factory/provider/data/case_provider.py b/distributed_event_factory/provider/data/case_provider.py new file mode 100644 index 0000000..8a53ad2 --- /dev/null +++ b/distributed_event_factory/provider/data/case_provider.py @@ -0,0 +1,9 @@ +import abc +from random import random + + +class CaseIdProvider: + + @abc.abstractmethod + def get(self): + pass diff --git a/distributed_event_factory/provider/data/constant_count_provider.py b/distributed_event_factory/provider/data/constant_count_provider.py new file mode 100644 index 0000000..f804145 --- /dev/null +++ b/distributed_event_factory/provider/data/constant_count_provider.py @@ -0,0 +1,10 @@ +from distributed_event_factory.provider.data.count_provider import CountProvider + + +class ConstantCountProvider(CountProvider): + + def __init__(self, count): + self.count=count + + def get(self) -> int: + return self.count \ No newline at end of file diff --git a/distributed_event_factory/provider/data/count_provider.py b/distributed_event_factory/provider/data/count_provider.py new file mode 100644 index 0000000..1d7dbdb --- /dev/null +++ b/distributed_event_factory/provider/data/count_provider.py @@ -0,0 +1,8 @@ +from abc import abstractmethod + + +class CountProvider: + + @abstractmethod + def get(self) -> int: + pass \ No newline at end of file diff --git a/distributed_event_factory/provider/data/increasing_case.py b/distributed_event_factory/provider/data/increasing_case.py new file mode 100644 index 0000000..bc9f09c --- /dev/null +++ b/distributed_event_factory/provider/data/increasing_case.py @@ -0,0 +1,10 @@ +from distributed_event_factory.provider.data.case_provider import CaseIdProvider + +class IncreasingCaseIdProvider(CaseIdProvider): + + def __init__(self): + self.current_case_id = 0 + + def get(self): + self.current_case_id += 1 + return f"case_{str(self.current_case_id)}" diff --git a/provider/sink/kafka/partition/README.md b/distributed_event_factory/provider/datasource/__init__.py similarity index 100% rename from provider/sink/kafka/partition/README.md rename to distributed_event_factory/provider/datasource/__init__.py diff --git a/provider/datasource/data_source_registry.py b/distributed_event_factory/provider/datasource/data_source_registry.py similarity index 62% rename from provider/datasource/data_source_registry.py rename to distributed_event_factory/provider/datasource/data_source_registry.py index 76a1df3..2dfebd8 100644 --- a/provider/datasource/data_source_registry.py +++ b/distributed_event_factory/provider/datasource/data_source_registry.py @@ -1,10 +1,11 @@ from typing import List -from core.datasource import GenericDataSource -from core.datasource_id import DataSourceId -from provider.eventselection.event_selection_provider_registry import EventSelectionProviderRegistry -from provider.sink.sink_provider import SinkProvider -from provider.sink.sink_provider_registry import SinkProviderRegistry +from distributed_event_factory.core.datasource import GenericDataSource +from distributed_event_factory.core.datasource_id import DataSourceId +from distributed_event_factory.provider.eventselection.event_selection_provider_registry import \ + EventSelectionProviderRegistry +from distributed_event_factory.provider.sink.sink_provider import SinkProvider +from distributed_event_factory.provider.sink.sink_provider_registry import SinkProviderRegistry class DataSourceRegistry: @@ -20,8 +21,8 @@ def get(self, data_source_definitions: List[str], default_sink: SinkProvider): sensor_id = definition["name"] data_sources.append( GenericDataSource( - sensor_id=DataSourceId(sensor_id), - group_id=definition.get("groupId", "default group"), + data_source_id=DataSourceId(sensor_id), + group_id=definition.get("groupId", "default group_id"), event_provider=EventSelectionProviderRegistry().get(config=definition["eventGeneration"]), sink=self.get_sink(definition, sensor_id, default_sink) ) diff --git a/provider/datasource/datasource_id_provider.py b/distributed_event_factory/provider/datasource/datasource_id_provider.py similarity index 89% rename from provider/datasource/datasource_id_provider.py rename to distributed_event_factory/provider/datasource/datasource_id_provider.py index fa1a9ab..8287167 100644 --- a/provider/datasource/datasource_id_provider.py +++ b/distributed_event_factory/provider/datasource/datasource_id_provider.py @@ -1,6 +1,6 @@ -from abc import ABC, abstractmethod +from abc import abstractmethod, ABC -from core.datasource_id import DataSourceId +from distributed_event_factory.core.datasource_id import DataSourceId class DataSourceIdProvider(ABC): diff --git a/distributed_event_factory/provider/event/__init__.py b/distributed_event_factory/provider/event/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/event/event_data.py b/distributed_event_factory/provider/event/event_data.py new file mode 100644 index 0000000..63a9cc4 --- /dev/null +++ b/distributed_event_factory/provider/event/event_data.py @@ -0,0 +1,24 @@ +from distributed_event_factory.provider.activity.activity_provider import ActivityProvider +from distributed_event_factory.provider.transition.duration.duration_provider import DurationProvider +from distributed_event_factory.provider.transition.transition.transition_provider import TransitionProvider + + +class EventData: + def __init__( + self, + duration_provider: DurationProvider, + activity_provider: ActivityProvider, + transition_provider: TransitionProvider + ): + self.duration_provider = duration_provider + self.activity_provider = activity_provider + self.transition_provider = transition_provider + + def get_duration(self): + return self.duration_provider.get_duration() + + def get_next_sensor(self): + return self.transition_provider.get_transition() + + def get_activity_provider(self): + return self.activity_provider diff --git a/provider/event/event_provider.py b/distributed_event_factory/provider/event/event_provider.py similarity index 50% rename from provider/event/event_provider.py rename to distributed_event_factory/provider/event/event_provider.py index bddd252..6305449 100644 --- a/provider/event/event_provider.py +++ b/distributed_event_factory/provider/event/event_provider.py @@ -1,12 +1,12 @@ from abc import ABC, abstractmethod from typing import List -from provider.activity.activity_provider import DistinctActivityProvider -from provider.activity.selection.activity_selection_provider import ActivitySelectionProvider -from provider.event.event_data import EventData -from provider.transition.duration.duration_provider import DurationProvider, StaticDurationProvider -from provider.transition.nextsensor.next_sensor_provider import NextSensorProvider, DistinctNextSensorProvider - +from distributed_event_factory.provider.activity.activity_provider import ConstantActivityProvider, ActivityProvider +from distributed_event_factory.provider.event.event_data import EventData +from distributed_event_factory.provider.transition.duration.constant_duration import ConstantDurationProvider +from distributed_event_factory.provider.transition.duration.duration_provider import DurationProvider +from distributed_event_factory.provider.transition.transition.constant_transition import ConstantTransitionProvider +from distributed_event_factory.provider.transition.transition.transition_provider import TransitionProvider class EventDataProvider(ABC): @@ -29,8 +29,8 @@ class CustomEventDataProvider(EventDataProvider): def __init__( self, duration_provider: DurationProvider, - activity_provider: ActivitySelectionProvider, - transition_provider: NextSensorProvider + activity_provider: ActivityProvider, + transition_provider: TransitionProvider ): self.duration_provider = duration_provider self.activity_provider = activity_provider @@ -43,30 +43,33 @@ def get_event_data(self): self.transition_provider ) - def get_activity(self): - return self.activity_provider.emit_activity() + def get_activity_provider(self): + return self.activity_provider def get_duration(self): return self.duration_provider.get_duration() - def get_next_sensor(self): - return self.transition_provider.get_next_sensor() + def get_transition(self): + return self.transition_provider.get_transition() class StartEventProvider(EventDataProvider): + def __init__(self, transtition_provider): + self.transtition_provider = transtition_provider + def get_event_data(self): return EventData( - StaticDurationProvider(0), - DistinctActivityProvider("start"), - DistinctNextSensorProvider(0), + ConstantDurationProvider(0), + ConstantActivityProvider("start"), + self.transtition_provider ) class EndEventProvider(EventDataProvider): def get_event_data(self): return EventData( - StaticDurationProvider(0), - DistinctActivityProvider("end"), - DistinctNextSensorProvider(0), + ConstantDurationProvider(0), + ConstantActivityProvider("end"), + ConstantTransitionProvider(0) ) diff --git a/distributed_event_factory/provider/eventselection/__init__.py b/distributed_event_factory/provider/eventselection/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/eventselection/drifting_probability_event_selection_provider.py b/distributed_event_factory/provider/eventselection/drifting_probability_event_selection_provider.py new file mode 100644 index 0000000..1ab9dce --- /dev/null +++ b/distributed_event_factory/provider/eventselection/drifting_probability_event_selection_provider.py @@ -0,0 +1,32 @@ +from typing import List + +from numpy import random + +from distributed_event_factory.provider.event.event_provider import EventDataProvider +from distributed_event_factory.provider.eventselection.event_selection_provider import EventSelectionProvider + +class DriftingProbabilityEventSelectionProvider(EventSelectionProvider): + + def __init__(self, + steps: int, + starting_probability_distribution: List[float], + end_probability_distribution: List[float], + potential_events: List[EventDataProvider]): + self.starting_probability_distribution = starting_probability_distribution + self.end_probability_distribution = end_probability_distribution + self.potential_events = potential_events + self.steps = steps + self.step = 0 + + def get_event_data(self): + self.step = self.step + 1 + r = self.step / self.steps + if r < 1: + current_probability_distribution = [] + for i in range(len(self.starting_probability_distribution)): + current_probability_distribution.append((1-r) * self.starting_probability_distribution[i] + r * self.end_probability_distribution[i]) + else: + current_probability_distribution = self.end_probability_distribution + + index = random.choice(len(self.potential_events), p=current_probability_distribution) + return self.potential_events[index] diff --git a/provider/eventselection/event_selection_provider.py b/distributed_event_factory/provider/eventselection/event_selection_provider.py similarity index 100% rename from provider/eventselection/event_selection_provider.py rename to distributed_event_factory/provider/eventselection/event_selection_provider.py diff --git a/provider/eventselection/generic_probability_event_selection_provider.py b/distributed_event_factory/provider/eventselection/generic_probability_event_selection_provider.py similarity index 66% rename from provider/eventselection/generic_probability_event_selection_provider.py rename to distributed_event_factory/provider/eventselection/generic_probability_event_selection_provider.py index 0ca19a6..be4ff2e 100644 --- a/provider/eventselection/generic_probability_event_selection_provider.py +++ b/distributed_event_factory/provider/eventselection/generic_probability_event_selection_provider.py @@ -2,15 +2,15 @@ from numpy import random -from provider.eventselection.event_selection_provider import EventSelectionProvider -from provider.event.event_provider import EventDataProvider +from distributed_event_factory.provider.event.event_provider import EventDataProvider +from distributed_event_factory.provider.eventselection.event_selection_provider import EventSelectionProvider class GenericProbabilityEventSelectionProvider(EventSelectionProvider): def __init__(self, probability_distribution: List[float], potential_events: List[EventDataProvider]): - self.potential_events = potential_events self.probability_distribution = probability_distribution + self.potential_events = potential_events def get_event_data(self): index = random.choice(len(self.potential_events), p=self.probability_distribution) - return self.potential_events[index] + return self.potential_events diff --git a/provider/eventselection/ordered_selection_provider.py b/distributed_event_factory/provider/eventselection/ordered_selection_provider.py similarity index 66% rename from provider/eventselection/ordered_selection_provider.py rename to distributed_event_factory/provider/eventselection/ordered_selection_provider.py index d6232ea..1d094b5 100644 --- a/provider/eventselection/ordered_selection_provider.py +++ b/distributed_event_factory/provider/eventselection/ordered_selection_provider.py @@ -1,7 +1,7 @@ from typing import List -from provider.eventselection.event_selection_provider import EventSelectionProvider -from provider.event.event_provider import EventDataProvider +from distributed_event_factory.provider.event.event_provider import EventDataProvider +from distributed_event_factory.provider.eventselection.event_selection_provider import EventSelectionProvider class OrderedEventSelectionProvider(EventSelectionProvider): diff --git a/distributed_event_factory/provider/eventselection/parallel_selection_provider.py b/distributed_event_factory/provider/eventselection/parallel_selection_provider.py new file mode 100644 index 0000000..cf0dacd --- /dev/null +++ b/distributed_event_factory/provider/eventselection/parallel_selection_provider.py @@ -0,0 +1,13 @@ +from typing import List + +from distributed_event_factory.provider.event.event_provider import EventDataProvider +from distributed_event_factory.provider.eventselection.event_selection_provider import EventSelectionProvider + + +class ParallelEventSelectionProvider(EventSelectionProvider): + + def __init__(self, potential_events: List[EventDataProvider]): + self.potential_events = potential_events + + def get_event_data(self): + return self.potential_events \ No newline at end of file diff --git a/provider/eventselection/uniform_selction_provider.py b/distributed_event_factory/provider/eventselection/uniform_selction_provider.py similarity index 63% rename from provider/eventselection/uniform_selction_provider.py rename to distributed_event_factory/provider/eventselection/uniform_selction_provider.py index 77204e1..a05c0c4 100644 --- a/provider/eventselection/uniform_selction_provider.py +++ b/distributed_event_factory/provider/eventselection/uniform_selction_provider.py @@ -1,8 +1,8 @@ import random from typing import List -from provider.eventselection.event_selection_provider import EventSelectionProvider -from provider.event.event_provider import EventDataProvider +from distributed_event_factory.provider.event.event_provider import EventDataProvider +from distributed_event_factory.provider.eventselection.event_selection_provider import EventSelectionProvider class UniformEventSelectionProvider(EventSelectionProvider): diff --git a/distributed_event_factory/provider/load/__init__.py b/distributed_event_factory/provider/load/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/provider/load/load_provider.py b/distributed_event_factory/provider/load/load_provider.py similarity index 100% rename from provider/load/load_provider.py rename to distributed_event_factory/provider/load/load_provider.py diff --git a/distributed_event_factory/provider/load/sinus_load_provider.py b/distributed_event_factory/provider/load/sinus_load_provider.py new file mode 100644 index 0000000..ac78aa9 --- /dev/null +++ b/distributed_event_factory/provider/load/sinus_load_provider.py @@ -0,0 +1,15 @@ +import math + +from distributed_event_factory.provider.load.load_provider import LoadProvider + + +class SinusLoadProvider(LoadProvider): + def __init__(self, mean, amplitude, phase): + self.i = 0 + self.mean = mean + self.amplitude = amplitude + self.phase = phase + + def get_load_value(self): + self.i = self.i + 1 + return self.amplitude * math.sin(self.i * (math.pi / self.phase)) + self.mean diff --git a/distributed_event_factory/provider/object/input/input_provider.py b/distributed_event_factory/provider/object/input/input_provider.py new file mode 100644 index 0000000..4672934 --- /dev/null +++ b/distributed_event_factory/provider/object/input/input_provider.py @@ -0,0 +1,15 @@ +class InputObjectProvider: + def __init__(self, objectName, numberOfObject, lastState, size): + self.objectName = objectName + self.numberOfObject = numberOfObject + self.lastState = lastState + self.size = size + + def __str__(self): + if self.lastState: + return str(self.__dict__) + return str({ + key: (str(value) if key == "size" else value) + for key, value in self.__dict__.items() + if value + }) diff --git a/distributed_event_factory/provider/object/size_params_provider.py b/distributed_event_factory/provider/object/size_params_provider.py new file mode 100644 index 0000000..c5e28e9 --- /dev/null +++ b/distributed_event_factory/provider/object/size_params_provider.py @@ -0,0 +1,8 @@ +class SizeParamsProvider: + def __init__(self, width:str, length:str, depth:str): + self.width : float = float(width) if width else None + self.length : float = float(length) if length else None + self.depth : float = float(depth) if depth else None + + def __str__(self): + return str({key: value for key, value in self.__dict__.items() if value}) \ No newline at end of file diff --git a/provider/sink/README.md b/distributed_event_factory/provider/sink/README.md similarity index 100% rename from provider/sink/README.md rename to distributed_event_factory/provider/sink/README.md diff --git a/distributed_event_factory/provider/sink/__init__.py b/distributed_event_factory/provider/sink/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/sink/console/__init__.py b/distributed_event_factory/provider/sink/console/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/sink/console/console_sink.py b/distributed_event_factory/provider/sink/console/console_sink.py new file mode 100644 index 0000000..620dafc --- /dev/null +++ b/distributed_event_factory/provider/sink/console/console_sink.py @@ -0,0 +1,24 @@ +from process_mining_core.datastructure.core.event import Event + +from distributed_event_factory.provider.sink.sink_provider import Sink, SinkProvider + + +class PrintConsole(Sink): + + def __init__(self, id, data_source_ref): + super().__init__(data_source_ref) + self.id = id + + def send(self, event: Event, root, object_sources, object_store) -> None: + #print(event.timestamp) + print("Sensor " + event.node + ": " + str(event)) + + def start_timeframe(self): + pass + + def end_timeframe(self): + pass + +class PrintConsoleSinkProvider(SinkProvider): + def get_sender(self, id) -> Sink: + return PrintConsole(id) diff --git a/distributed_event_factory/provider/sink/http/__init__.py b/distributed_event_factory/provider/sink/http/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/sink/http/http_sink.py b/distributed_event_factory/provider/sink/http/http_sink.py new file mode 100644 index 0000000..15183b4 --- /dev/null +++ b/distributed_event_factory/provider/sink/http/http_sink.py @@ -0,0 +1,48 @@ +import json + +from process_mining_core.datastructure.core.event import Event + +from distributed_event_factory.provider.sink.sink_provider import Sink +import requests + +class TimeFrame: + def __init__(self, duration): + self.duration = duration + self.events = [] + + def add_event(self, event): + self.events.append(event) + + def toJson(self): + return json.dumps( + self, + default=lambda o: o.__dict__, + sort_keys=True, + indent=4) + +class LoadTestHttpSink(Sink): + + def __init__(self, url, frame_duration, data_source_ref): + super().__init__(data_source_ref) + self.timeframe = None + self.url = url + self.frame_duration = frame_duration + + def start_timeframe(self): + self.timeframe = TimeFrame(duration=self.frame_duration*1000) # conversion microseconds to milliseconds + + def add_event(self, event): + self.timeframe.add_event(event) + + def end_timeframe(self): + requests.post( + url=self.url + "/register", + data=self.timeframe.toJson(), + headers={'Content-Type': 'application/json'} + ) + + def start(self): + requests.post(url=self.url + "/start") + + def send(self, event: Event, root, object_sources, object_store) -> None: + self.timeframe.add_event(event) diff --git a/provider/sink/kafka/README.md b/distributed_event_factory/provider/sink/kafka/README.md similarity index 100% rename from provider/sink/kafka/README.md rename to distributed_event_factory/provider/sink/kafka/README.md diff --git a/distributed_event_factory/provider/sink/kafka/__init__.py b/distributed_event_factory/provider/sink/kafka/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/sink/kafka/kafka_sink.py b/distributed_event_factory/provider/sink/kafka/kafka_sink.py new file mode 100644 index 0000000..0ca56df --- /dev/null +++ b/distributed_event_factory/provider/sink/kafka/kafka_sink.py @@ -0,0 +1,28 @@ +import json +import string + +from process_mining_core.datastructure.core.event import Event +from distributed_event_factory.provider.sink.kafka.partition.partition_provider import PartitionProvider +from distributed_event_factory.provider.sink.sink_provider import Sink + +class KafkaSink(Sink): + def __init__(self, bootstrap_server_url: string, client_id: string, topic: string, + partition_provider: PartitionProvider, data_source_ref): + super().__init__(data_source_ref) + from kafka import KafkaProducer + + self.producer = KafkaProducer( + bootstrap_servers=bootstrap_server_url, + client_id=client_id, + key_serializer=lambda key: str.encode(key), + value_serializer=lambda value: str.encode(value) + ) + self.topic = topic + self.partition_provider = partition_provider + + def send(self, event: Event, root, object_sources, object_store) -> None: + self.producer.send( + self.topic, + value=json.dumps(event.__dict__), + key=event.get_case(), + partition=self.partition_provider.get_partition(event)).add_callback(lambda data: print(data)) diff --git a/provider/sink/kafka/kafka_validation_sink.py b/distributed_event_factory/provider/sink/kafka/kafka_validation_sink.py similarity index 52% rename from provider/sink/kafka/kafka_validation_sink.py rename to distributed_event_factory/provider/sink/kafka/kafka_validation_sink.py index 19c79c2..99f3357 100644 --- a/provider/sink/kafka/kafka_validation_sink.py +++ b/distributed_event_factory/provider/sink/kafka/kafka_validation_sink.py @@ -1,11 +1,9 @@ import json -import string +from process_mining_core.datastructure.core.event import Event - -from core.event import AbstractEvent -from provider.sink.kafka.partition.partition_provider import ConstantPartitionProvider, PartitionProvider -from provider.sink.sink_provider import Sink, SinkProvider +from distributed_event_factory.provider.sink.kafka.partition.partition_provider import ConstantPartitionProvider +from distributed_event_factory.provider.sink.sink_provider import Sink class KafkaValidationSink(Sink): @@ -31,7 +29,7 @@ def __init__( self.validation_topic = validation_topic self.validation_split = validation_split - def send(self, event: AbstractEvent) -> None: + def send(self, event: Event, root, object_sources, object_store) -> None: if hash(event.get_case()) % self.validation_split == 0: send_topic = self.validation_topic send_partition = ConstantPartitionProvider(partition=0) @@ -45,29 +43,3 @@ def send(self, event: AbstractEvent) -> None: key=event.get_case(), partition=send_partition.get_partition(event) ).add_callback(lambda record_metadata: print(record_metadata)) - - -class KafkaValidationSinkProvider(SinkProvider): - def __init__( - self, - bootstrap_server: string, - topic: string, - partition_provider: PartitionProvider, - validation_topic: string, - validation_split: string - ): - self.bootstrapServer = bootstrap_server - self.topic = topic - self.partition_provider = partition_provider - self.validation_topic = validation_topic - self.validation_split = validation_split - - def get_sender(self, id) -> Sink: - return KafkaValidationSink( - bootstrap_server_url=self.bootstrapServer, - client_id=str(id), - topic=self.topic, - partition_provider=self.partition_provider, - validation_topic=self.validation_topic, - validation_split=self.validation_split - ) diff --git a/distributed_event_factory/provider/sink/kafka/partition/__init__.py b/distributed_event_factory/provider/sink/kafka/partition/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/sink/kafka/partition/case_partition.py b/distributed_event_factory/provider/sink/kafka/partition/case_partition.py new file mode 100644 index 0000000..c7cac71 --- /dev/null +++ b/distributed_event_factory/provider/sink/kafka/partition/case_partition.py @@ -0,0 +1,11 @@ +from process_mining_core.datastructure.core.event import Event + +from distributed_event_factory.provider.sink.kafka.partition.partition_provider import PartitionProvider + + +class CaseIdPartitionProvider(PartitionProvider): + def __init__(self, number_of_partitions): + self.max_number_of_partitions = number_of_partitions + + def get_partition(self, event: Event) -> int: + return hash(event.get_case()) % self.max_number_of_partitions diff --git a/distributed_event_factory/provider/sink/kafka/partition/constant_partition.py b/distributed_event_factory/provider/sink/kafka/partition/constant_partition.py new file mode 100644 index 0000000..605a4d2 --- /dev/null +++ b/distributed_event_factory/provider/sink/kafka/partition/constant_partition.py @@ -0,0 +1,10 @@ +from distributed_event_factory.provider.sink.kafka.partition.partition_provider import PartitionProvider + + +class ConstantPartitionProvider(PartitionProvider): + + def __init__(self, partition): + self.partition = partition + + def get_partition(self, event): + return self.partition diff --git a/distributed_event_factory/provider/sink/kafka/partition/partition_provider.py b/distributed_event_factory/provider/sink/kafka/partition/partition_provider.py new file mode 100644 index 0000000..db6908d --- /dev/null +++ b/distributed_event_factory/provider/sink/kafka/partition/partition_provider.py @@ -0,0 +1,10 @@ +from abc import ABC, abstractmethod + +from process_mining_core.datastructure.core.event import Event + + +class PartitionProvider(ABC): + @abstractmethod + def get_partition(self, event: Event): + pass + diff --git a/distributed_event_factory/provider/sink/newsink/__init__.py b/distributed_event_factory/provider/sink/newsink/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/sink/newsink/newsink.py b/distributed_event_factory/provider/sink/newsink/newsink.py new file mode 100644 index 0000000..9e08ccd --- /dev/null +++ b/distributed_event_factory/provider/sink/newsink/newsink.py @@ -0,0 +1,54 @@ +import copy +import time +from copy import deepcopy +from queue import Queue +from threading import Thread, Lock + +from scheduled_futures import ScheduledThreadPoolExecutor +from distributed_event_factory.provider.sink.http.http_sink import TimeFrame + +class NewSink: + + def begin_timeframe(self, duration: int): + pass + + def add_event(self, event): + pass + + def end_timeframe(self): + pass + + def start(self): + pass + +class ConsoleNewSink(NewSink): + + def __init__(self): + self.queue: Queue = Queue() + + def begin_timeframe(self, duration: int): + self.time_frame = TimeFrame(duration) + + def add_event(self, event): + self.time_frame.add_event(event) + + def end_timeframe(self): + self.queue.put(self.time_frame) + + def print(self, data): + print(data) + + def start(self): + with ScheduledThreadPoolExecutor() as executor: + while True: + events = self.queue.get().events + event_iterator = iter(events) + events_length = len(events) + duration = self.time_frame.duration + if events_length != 0: + scheduler = executor.schedule( + lambda: self.print(next(event_iterator)), + period=duration / events_length + ) + time.sleep(duration) + scheduler.cancel() diff --git a/distributed_event_factory/provider/sink/newsink/sinkqueue.py b/distributed_event_factory/provider/sink/newsink/sinkqueue.py new file mode 100644 index 0000000..948c6d5 --- /dev/null +++ b/distributed_event_factory/provider/sink/newsink/sinkqueue.py @@ -0,0 +1,20 @@ +from queue import Queue + +from distributed_event_factory.provider.sink.http.http_sink import TimeFrame + + +class SinkQueue: + def __init__(self): + self.queue: Queue = Queue() + + def begin_timeframe(self, duration: int): + self.timeframe = TimeFrame(duration=1000) + + def add_event(self, event): + self.timeframe.add_event(event) + + def end_timeframe(self): + self.queue.put(self.timeframe) + + def get(self): + return self.queue.get() diff --git a/distributed_event_factory/provider/sink/ocel/ocel_sink.py b/distributed_event_factory/provider/sink/ocel/ocel_sink.py new file mode 100644 index 0000000..0904b35 --- /dev/null +++ b/distributed_event_factory/provider/sink/ocel/ocel_sink.py @@ -0,0 +1,181 @@ +from datetime import datetime +from typing import Dict + +import pm4py +from process_mining_core.datastructure.core.event import Event + +from distributed_event_factory.provider.sink.sink_provider import Sink, SinkProvider +import pandas as pd +import ast + +from provider.object.size_params_provider import SizeParamsProvider + + +class OcelConsole(Sink): + + def __init__(self, id, data_source_ref): + super().__init__(data_source_ref) + self.id = id + self.object_types = [] + self.el = [] + self.rowsList = [] + self.contentRoot = None + self.index = 0 + self.object_types = [] + self.input_counter = 0 + self.output_counter = 0 + self.start_time = None + self.end_time = None + self.problem_event_counter = 0 + + def send(self, event: Event, root, object_sources, object_store) -> None: + if self.start_time is None: + self.start_time = event.timestamp + + if "Failure:" in event.activity: + self.problem_event_counter += 1 + + if not self.object_types: + for object_source in object_sources.values(): + if object_source.object_type not in self.object_types: + self.object_types.append(object_source.object_type) + print("Sensor " + event.node + ": " + str(event)) + self.el.append("Sensor " + event.node + ": " + str(event)) + new_row = {} + new_row["ocel:eid"] = event.node + str(self.index) + new_row["ocel:timestamp"] = event.timestamp + new_row["ocel:activity"] = event.activity + new_row["ocel:node"] = event.node + new_row["ocel:workstation"]: event.group + type_objects: Dict[str, list[ObjectSummary]] = {} + for type in self.object_types: + input_objects = self.get_objects_of_type(type, event.input, object_store) + output_objects = self.get_objects_of_type(type, event.output, object_store) + self.input_counter += len(input_objects) + self.output_counter += len(output_objects) + involved_objects = [] + for input_object in input_objects: + if input_object in output_objects: + output_objects.remove(input_object) + input_object.set_is_output(True) + input_object.set_is_input(True) + involved_objects.append(input_object) + for output_object in output_objects: + output_object.set_is_output(True) + involved_objects.append(output_object) + type_objects[type] = involved_objects + for type, involved_object in type_objects.items(): + new_row[type + "-name"] = ", ".join( + [item.name for item in involved_object if item.name is not None]) + new_row[type + "-size"] = ", ".join( + [str(item.size) for item in involved_object if item.size is not None]) + new_row[type + "-lastChange"] = ", ".join( + [item.last_change for item in involved_object if item.last_change is not None]) + new_row[type] = ", ".join( + [str(item.unique_ids) for item in involved_object if item.unique_ids is not None]) + new_row[type + "-input"] = ", ".join( + [str(item.is_input) for item in involved_object if item.is_input is not None]) + new_row[type + "-output"] = ", ".join( + [str(item.is_output) for item in involved_object if item.is_output is not None]) + self.rowsList.append(new_row) + self.contentRoot = root + self.index += 1 + self.end_time = event.timestamp + + def start_timeframe(self): + pass + + def end_timeframe(self): + df =pd.DataFrame.from_records(data = self.rowsList)#.to_csv(self.contentRoot + "/ocel.csv", index=False, sep=";") + type_attributes: Dict[str, list[str]] = {} + for object_type in self.object_types: + type_attributes[object_type] = [object_type + "-name", object_type + "-size", + object_type + "-lastChange",object_type + "-oid", + object_type + "-input", object_type + "-output"] + ocel = pm4py.convert.convert_log_to_ocel(log=df, activity_column="ocel:activity", + timestamp_column="ocel:timestamp", + object_types=self.object_types, obj_separator=", ", + additional_event_attributes=["ocel:node", "ocel:workstation"], + additional_object_attributes=type_attributes) + petri_net=pm4py.algo.discovery.ocel.ocpn.variants.classic.apply(ocel=ocel, parameters=ocel.parameters) + pm4py.visualization.ocel.ocpn.visualizer.apply(ocpn=petri_net).view() + pm4py.objects.ocel.exporter.jsonocel.exporter.apply(ocel=ocel, target_path=self.contentRoot + "/ocel.jsonocel") + #pm4py.algo.conformance.alignments.petri_net.variants(obj=df, petri_net=petri_net, initial_marking=None, final_marking=None) + + start_time_dt = datetime.strptime(self.start_time, "%Y-%m-%d %H:%M:%S") + end_time_dt = datetime.strptime(self.end_time, "%Y-%m-%d %H:%M:%S") + + petri_nety_per_object_type = petri_net.get("petri_nets") + simplicity_nodes = [] + simplicity_transition = [] + for object_type in self.object_types: + petri_type = petri_nety_per_object_type.get(object_type) + if petri_type is not None: + simplicity_nodes.append(len(petri_type[0].places)) + simplicity_transition.append(len(petri_type[0].transitions)) + + print("Time: " + str(end_time_dt - start_time_dt)) + print("Duration: " + str(datetime.now() - start_time_dt)) + print("Simplicity nodes: " + str(simplicity_nodes)) + print("Simplicity transitions: " + str(simplicity_transition)) + print("Problems Events: "+ str(self.problem_event_counter)) + print("Input objects per event: "+ str(self.input_counter/self.index)) + print("Output objects per event: "+ str(self.output_counter/self.index)) + + + def get_objects_of_type(self, type, objects, object_store): + objects_of_type = [] + for obj in objects.split("{\'name\': \'"): + if type in obj: + count = obj.split("Count = {")[1].split("}")[0].strip() + unique_ids_part = ast.literal_eval(obj.split("Unique IDs = {")[1].split("}")[0].strip()) + object_example = object_store.find_object_by_id(unique_ids_part[0]) + if object_example: + object_summary = ObjectSummary(object_example.object_id_name.id, object_example.object_type, + object_example.size, + object_example.get_last_changed_value(), count, unique_ids_part) + if object_summary not in objects_of_type: + objects_of_type.append(object_summary) + else: + length = None + width = None + depth = None + size = None + name = obj.split(",")[0] + obj_type = obj.split("\'object_type\': \'")[0].split("\',")[0].strip() + if "size" in obj: + size = obj.split(",")[2].split("{")[1].split("}")[0] + if "length" in size: + length = size.split("length\':")[1].strip() + if "width" in size: + width = size.split("width\':")[1].strip() + if "depth" in size: + depth = size.split("depth\':")[1].strip() + size = SizeParamsProvider(width, length, depth) + object_summary = ObjectSummary(name, obj_type, size, None, count, unique_ids_part) + if object_summary not in objects_of_type: + objects_of_type.append(object_summary) + return objects_of_type + + +class PrintOcelConsoleSinkProvider(SinkProvider): + def get_sender(self, id) -> Sink: + return OcelConsole(id) + + +class ObjectSummary: + def __init__(self, name, type, size, last_change, count, unique_ids): + self.name = name + self.type = type + self.size = size + self.last_change = last_change + self.count = count + self.unique_ids = unique_ids + self.is_input = False + self.is_output = False + + def set_is_input(self, is_input: bool): + self.is_input = is_input + + def set_is_output(self, is_output: bool): + self.is_output = is_output diff --git a/distributed_event_factory/provider/sink/sink_provider.py b/distributed_event_factory/provider/sink/sink_provider.py new file mode 100644 index 0000000..e519435 --- /dev/null +++ b/distributed_event_factory/provider/sink/sink_provider.py @@ -0,0 +1,22 @@ +import abc + +from process_mining_core.datastructure.core.event import Event + + +class Sink: + def __init__(self, data_source_ref): + self.data_source_ref = data_source_ref + + @abc.abstractmethod + def send(self, event: Event, root, object_sources, object_store) -> None: + pass + + def get_datasource_ref(self): + return self.data_source_ref + + +class SinkProvider: + + @abc.abstractmethod + def get_sender(self, id) -> Sink: + pass diff --git a/distributed_event_factory/provider/sink/test/__init__.py b/distributed_event_factory/provider/sink/test/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/sink/test/test_sink.py b/distributed_event_factory/provider/sink/test/test_sink.py new file mode 100644 index 0000000..9b492e9 --- /dev/null +++ b/distributed_event_factory/provider/sink/test/test_sink.py @@ -0,0 +1,16 @@ +from typing import List + +from process_mining_core.datastructure.core.event import Event + +from distributed_event_factory.provider.sink.sink_provider import Sink + +class TestSink(Sink): + def __init__(self, data_source_ref): + super().__init__(data_source_ref) + self.event_log: List[Event] = [] + + def send(self, event: Event, root, object_sources, object_store) -> None: + self.event_log.append(event) + + def contains_event(self, event): + return event in self.event_log \ No newline at end of file diff --git a/distributed_event_factory/provider/sink/test/test_sink_parser.py b/distributed_event_factory/provider/sink/test/test_sink_parser.py new file mode 100644 index 0000000..312486d --- /dev/null +++ b/distributed_event_factory/provider/sink/test/test_sink_parser.py @@ -0,0 +1,10 @@ +from distributed_event_factory.parser.sink.sink_parser import SinkParser +from distributed_event_factory.provider.sink.test.test_sink import TestSink + + +class TestSinkParser(SinkParser): + def add_dependency(self, key: str, dependency): + pass + + def parse(self, config): + return TestSink(config["dataSourceRefs"]) \ No newline at end of file diff --git a/distributed_event_factory/provider/sink/ui/__init__.py b/distributed_event_factory/provider/sink/ui/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/sink/ui/terminal_ui_sink.py b/distributed_event_factory/provider/sink/ui/terminal_ui_sink.py new file mode 100644 index 0000000..e1b084e --- /dev/null +++ b/distributed_event_factory/provider/sink/ui/terminal_ui_sink.py @@ -0,0 +1,28 @@ +from process_mining_core.datastructure.core.event import Event + +from distributed_event_factory.provider.sink.sink_provider import Sink, SinkProvider +from distributed_event_factory.view.terminal import Terminal + +class TerminalGui(Sink): + def __init__(self, terminal): + self.terminal: Terminal = terminal + + def send(self, event: Event, root, object_sources, object_store): + self.terminal.print(event) + +class UiSink(Sink): + def __init__(self, id, data_source_ref): + self.ui = Terminal(title=id, start_position=0) + self.data_source_ref = data_source_ref + + def send(self, event: Event, root, object_sources, object_store) -> None: + self.ui.print(event) + + +class TerminalGuiSinkProvider(SinkProvider): + def __init__(self): + self.i = -1 + + def get_sender(self, id) -> Sink: + self.i += 1 + return TerminalGui(Terminal(title=id, start_position=self.i)) \ No newline at end of file diff --git a/distributed_event_factory/provider/transition/__init__.py b/distributed_event_factory/provider/transition/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/transition/duration/__init__.py b/distributed_event_factory/provider/transition/duration/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/transition/duration/constant_duration.py b/distributed_event_factory/provider/transition/duration/constant_duration.py new file mode 100644 index 0000000..7bb242f --- /dev/null +++ b/distributed_event_factory/provider/transition/duration/constant_duration.py @@ -0,0 +1,8 @@ +from distributed_event_factory.provider.transition.duration.duration_provider import DurationProvider + +class ConstantDurationProvider(DurationProvider): + def __init__(self, duration): + self.duration = duration + + def get_duration(self): + return self.duration diff --git a/distributed_event_factory/provider/transition/duration/duration_provider.py b/distributed_event_factory/provider/transition/duration/duration_provider.py new file mode 100644 index 0000000..dde1cd2 --- /dev/null +++ b/distributed_event_factory/provider/transition/duration/duration_provider.py @@ -0,0 +1,7 @@ +from abc import abstractmethod + +class DurationProvider: + + @abstractmethod + def get_duration(self): + pass \ No newline at end of file diff --git a/distributed_event_factory/provider/transition/duration/gaussian_duration.py b/distributed_event_factory/provider/transition/duration/gaussian_duration.py new file mode 100644 index 0000000..da6edf5 --- /dev/null +++ b/distributed_event_factory/provider/transition/duration/gaussian_duration.py @@ -0,0 +1,12 @@ +import random + +from distributed_event_factory.provider.transition.duration.duration_provider import DurationProvider + + +class GaussianDurationProvider(DurationProvider): + def __init__(self, mu, sigma): + self.mu = mu + self.sigma = sigma + + def get_duration(self): + return random.gauss(mu=self.mu, sigma=self.sigma) \ No newline at end of file diff --git a/distributed_event_factory/provider/transition/duration/uniform_duration.py b/distributed_event_factory/provider/transition/duration/uniform_duration.py new file mode 100644 index 0000000..e72a0cc --- /dev/null +++ b/distributed_event_factory/provider/transition/duration/uniform_duration.py @@ -0,0 +1,13 @@ +import random + +from distributed_event_factory.provider.transition.duration.duration_provider import DurationProvider + + +class UniformDurationProvider(DurationProvider): + + def __init__(self, lower_bound, upper_bound): + self.lower_border = lower_bound + self.upper_border = upper_bound + + def get_duration(self): + return random.uniform(self.lower_border, self.upper_border) diff --git a/distributed_event_factory/provider/transition/output/output_provider.py b/distributed_event_factory/provider/transition/output/output_provider.py new file mode 100644 index 0000000..3e90410 --- /dev/null +++ b/distributed_event_factory/provider/transition/output/output_provider.py @@ -0,0 +1,15 @@ +class OutputObjectProvider: + def __init__(self, objectName, numberOfObject, change, size): + self.objectName = objectName + self.numberOfObject = numberOfObject + self.change = change + self.size = size + + def __str__(self): + if self.change: + return str(self.__dict__) + return str({ + key: (str(value) if key == "size" else value) + for key, value in self.__dict__.items() + if value + }) \ No newline at end of file diff --git a/distributed_event_factory/provider/transition/transition/__init__.py b/distributed_event_factory/provider/transition/transition/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/provider/transition/transition/constant_transition.py b/distributed_event_factory/provider/transition/transition/constant_transition.py new file mode 100644 index 0000000..46dcc5e --- /dev/null +++ b/distributed_event_factory/provider/transition/transition/constant_transition.py @@ -0,0 +1,8 @@ +from distributed_event_factory.provider.transition.transition_provider import TransitionProvider + +class ConstantTransitionProvider(TransitionProvider): + def __init__(self, next_sensor_index): + self.next_sensor_index = next_sensor_index + + def get_transition(self): + return self.next_sensor_index diff --git a/provider/transition/nextsensor/next_sensor_provider.py b/distributed_event_factory/provider/transition/transition/transition_provider.py similarity index 56% rename from provider/transition/nextsensor/next_sensor_provider.py rename to distributed_event_factory/provider/transition/transition/transition_provider.py index 25c630d..224e814 100644 --- a/provider/transition/nextsensor/next_sensor_provider.py +++ b/distributed_event_factory/provider/transition/transition/transition_provider.py @@ -1,18 +1,18 @@ from abc import ABC, abstractmethod import numpy -class AbstractNextSensorProvider(ABC): +class TransitionProvider(ABC): @abstractmethod - def get_next_sensor(self): + def get_transition(self): pass -class NextSensorProvider(AbstractNextSensorProvider): +class ChoiceTransitionProvider(TransitionProvider): def __init__(self, probability_distribution): self.probability_distribution = probability_distribution - def get_next_sensor(self) -> int: + def get_transition(self) -> int: return numpy.random.choice(len(self.probability_distribution), p=numpy.array(self.probability_distribution)) @@ -20,17 +20,11 @@ class NextSensorChooseProvider: def __init__(self, number_of_data_sources): self.number_of_sensors = number_of_data_sources - def get(self, probability_distribution) -> NextSensorProvider: + def get(self, probability_distribution) -> ChoiceTransitionProvider: distribution = probability_distribution[0:self.number_of_sensors - 1] remaining_probability = 1.0 - sum(distribution) distribution.append(remaining_probability) - return NextSensorProvider(distribution) + return ChoiceTransitionProvider(distribution) -class DistinctNextSensorProvider(AbstractNextSensorProvider): - def __init__(self, next_sensor_index): - self.next_sensor_index = next_sensor_index - - def get_next_sensor(self): - return self.next_sensor_index diff --git a/provider/transition/transition_provider.py b/distributed_event_factory/provider/transition/transition_provider.py similarity index 84% rename from provider/transition/transition_provider.py rename to distributed_event_factory/provider/transition/transition_provider.py index eecfae8..df9e763 100644 --- a/provider/transition/transition_provider.py +++ b/distributed_event_factory/provider/transition/transition_provider.py @@ -3,7 +3,7 @@ class TransitionProvider(ABC): @abstractmethod - def get_next_sensor(self) -> int: + def get_transition(self) -> int: pass diff --git a/provider/transition/transition_provider_factory.py b/distributed_event_factory/provider/transition/transition_provider_factory.py similarity index 100% rename from provider/transition/transition_provider_factory.py rename to distributed_event_factory/provider/transition/transition_provider_factory.py diff --git a/distributed_event_factory/provider/workforce/InputWorkforceProvider.py b/distributed_event_factory/provider/workforce/InputWorkforceProvider.py new file mode 100644 index 0000000..71e8715 --- /dev/null +++ b/distributed_event_factory/provider/workforce/InputWorkforceProvider.py @@ -0,0 +1,9 @@ +class InputWorkforceProvider: + def __init__(self, name, numberOfWorkforce): + self.name = name + self.numberOfWorkforce = numberOfWorkforce + +class WorkforceStartPositionProvider(InputWorkforceProvider): + def __init__(self, name, location, numberOfWorkforce): + InputWorkforceProvider.__init__(self, name, numberOfWorkforce) + self.location = location diff --git a/distributed_event_factory/simulation/__init__.py b/distributed_event_factory/simulation/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/distributed_event_factory/simulation/abstract_simulation.py b/distributed_event_factory/simulation/abstract_simulation.py new file mode 100644 index 0000000..43abec4 --- /dev/null +++ b/distributed_event_factory/simulation/abstract_simulation.py @@ -0,0 +1,21 @@ +from abc import ABC + + +class Simulation(ABC): + def __init__(self): + self.datasource_sink_mapping = dict() + + def send_event(self, event, root, object_sources, object_store:None): + if event.node in self.datasource_sink_mapping: + for sink in self.datasource_sink_mapping[event.node]: + sink.send(event, root, object_sources, object_store) + else: + print(f"Skip event. No sink configured. Event: {event}") + + def setup_datasource_sink_mapping(self, sinks): + for sink in sinks: + if sinks[sink].data_source_ref: + for data_source in sinks[sink].data_source_ref: + if data_source not in self.datasource_sink_mapping: + self.datasource_sink_mapping[data_source] = [] + self.datasource_sink_mapping[data_source].append(sinks[sink]) \ No newline at end of file diff --git a/distributed_event_factory/simulation/countbased.py b/distributed_event_factory/simulation/countbased.py new file mode 100644 index 0000000..55e96f0 --- /dev/null +++ b/distributed_event_factory/simulation/countbased.py @@ -0,0 +1,50 @@ +from distributed_event_factory.provider.data.case_provider import CaseIdProvider +from distributed_event_factory.provider.data.count_provider import CountProvider +from distributed_event_factory.simulation.abstract_simulation import Simulation +from simulation.process_simulation_object_centric import ProcessSimulationObjectCentric +from simulation.simulator_objects.object_storage import ObjectStorage + +from distributed_event_factory.simulation.process_simulation import ProcessSimulator + + +class CountBasedSimulation(Simulation): + + def __init__(self, simulation_steps: int, case_id_provider: CaseIdProvider, max_concurrent_cases: CountProvider): + super().__init__() + self.case_id_provider = case_id_provider + self.simulation_steps = simulation_steps + self.sinks = dict() + self.max_concurrent_cases = max_concurrent_cases + + def end_timeframe(self): + for sink in self.sinks.values(): + sink.end_timeframe() + + def run_simulation(self, datasources, sinks, objects, routes, stocks, workforce_start_positions, root, hook=lambda: None): + self.setup_datasource_sink_mapping(sinks) + self.sinks = sinks + if objects and len(objects)>0: + process_simulator = ProcessSimulationObjectCentric( + object_storage=ObjectStorage(), + data_sources=datasources, + objects=objects, + routes=routes, + stocks=stocks, + workforce_start_positions=workforce_start_positions + ) + + for i in range(self.simulation_steps): + event, object_store = process_simulator.simulate() + self.send_event(event, root, objects, object_store) + self.end_timeframe() + hook() + else: + process_simulator = ProcessSimulator( + case_id_provider=self.case_id_provider, + data_sources=datasources, + max_concurrent_cases=self.max_concurrent_cases) + + for i in range(self.simulation_steps): + event = process_simulator.simulate() + self.send_event(event, root, objects, None) + hook() diff --git a/distributed_event_factory/simulation/loadtest.py b/distributed_event_factory/simulation/loadtest.py new file mode 100644 index 0000000..604d8ad --- /dev/null +++ b/distributed_event_factory/simulation/loadtest.py @@ -0,0 +1,65 @@ +from typing import Dict + +from core.object import ObjectData +from core.route import Route +from distributed_event_factory.core.datasource import DataSource +from distributed_event_factory.provider.data.case_provider import CaseIdProvider +from distributed_event_factory.provider.data.count_provider import CountProvider +from distributed_event_factory.provider.load.load_provider import LoadProvider +from distributed_event_factory.provider.sink.http.http_sink import LoadTestHttpSink +from distributed_event_factory.simulation.abstract_simulation import Simulation +from distributed_event_factory.simulation.process_simulation import ProcessSimulator +from provider.object.input.input_provider import InputObjectProvider +from provider.workforce.InputWorkforceProvider import WorkforceStartPositionProvider + + +class LoadTestSimulation(Simulation): + def __init__( + self, + load_provider: LoadProvider, + case_id_provider: CaseIdProvider, + generated_timeframes_until_start: int, + max_concurrent_cases: CountProvider + ): + super().__init__() + self.case_id_provider = case_id_provider + self.load_provider = load_provider + self.generated_timeframes_until_start = generated_timeframes_until_start + self.max_concurrent_cases = max_concurrent_cases + self.sink = [] + + def start_timeframe(self, sinks): + for sink in self.sink: + sink.start_timeframe() + + def end_timeframe(self, sinks): + for sink in self.sink: + sink.end_timeframe() + + def start_simulation(self, sinks): + for sink in self.sink: + sink.start() + + def run_simulation(self, data_sources: Dict[str, DataSource], datasource_sink_mapping: Dict[str, LoadTestHttpSink], + objects: Dict[str, ObjectData], routes: Dict[str, Route], stocks: Dict[str, InputObjectProvider], + workforce: Dict[str, WorkforceStartPositionProvider], root, + hook=lambda: None): + self.setup_datasource_sink_mapping(datasource_sink_mapping) + for sink in datasource_sink_mapping: + self.sink.append(datasource_sink_mapping[sink]) + + process_simulator = ProcessSimulator( + case_id_provider=self.case_id_provider, + data_sources=data_sources, + max_concurrent_cases=self.max_concurrent_cases + ) + iteration = 0 + while True: + if iteration == self.generated_timeframes_until_start: + self.start_simulation(self.datasource_sink_mapping) + self.start_timeframe(self.datasource_sink_mapping) + for _ in range(int(self.load_provider.get_load_value())): + self.send_event(process_simulator.simulate(), root, objects) + hook() + self.end_timeframe(self.datasource_sink_mapping) + iteration = iteration + 1 diff --git a/distributed_event_factory/simulation/object_event.py b/distributed_event_factory/simulation/object_event.py new file mode 100644 index 0000000..acc38e7 --- /dev/null +++ b/distributed_event_factory/simulation/object_event.py @@ -0,0 +1,20 @@ +from process_mining_core.datastructure.core.event import Event + + +class ObjectEvent(Event): + def __init__(self, timestamp, activity, node, group_id, input, output): + Event.__init__(self, timestamp, activity, None, node, group_id) + self.input = input + self.output = output + + def getInput(self): + return self.input + + def getOutput(self): + return self.output + + def getDifference(self): + return self.input + "->" + self.output + + def __str__(self): + return str(self.__dict__).replace("\\", "") \ No newline at end of file diff --git a/distributed_event_factory/simulation/process_simulation.py b/distributed_event_factory/simulation/process_simulation.py new file mode 100644 index 0000000..9e7e600 --- /dev/null +++ b/distributed_event_factory/simulation/process_simulation.py @@ -0,0 +1,96 @@ +import string +from datetime import datetime, timedelta +from queue import PriorityQueue +from typing import Dict + +from distributed_event_factory.provider.data.count_provider import CountProvider +from process_mining_core.datastructure.core.event import Event + +from distributed_event_factory.core.datasource import DataSource +from distributed_event_factory.core.datasource_id import START_SENSOR_ID, END_DATA_SOURCE_ID, DataSourceId +from distributed_event_factory.provider.data.case_provider import CaseIdProvider + +class ProcessSimulator: + def __init__( + self, + data_sources: Dict[str, DataSource], + case_id_provider: CaseIdProvider, + max_concurrent_cases: CountProvider + ): + + self.max_concurrent_cases = max_concurrent_cases + self.tokens: PriorityQueue[Token] = PriorityQueue(self.max_concurrent_cases.get()) + self.datasources: Dict[str, DataSource] = data_sources + self.case_id_provider = case_id_provider + self.last_timestamp = datetime.now() + + def simulate(self) -> Event: + emit_event = None + while not emit_event: + if len(self.tokens.queue) < self.max_concurrent_cases.get(): + token = self.start_new_case() + else: + token = self.tokens.get() + + emit_event = token.event + if token.data_source_id == END_DATA_SOURCE_ID: + token = self.start_new_case() + + if token.data_source_id == START_SENSOR_ID: + token.data_source_id = DataSourceId(self._get_sensor_with_id(START_SENSOR_ID).get_event_data().get_transition()) + + current_data_source = self._get_sensor_with_id(token.data_source_id) + event = current_data_source.get_event_data() + next_datasource = event.get_transition() + activity = event.get_activity() + token.add_to_last_timestamp(event.get_duration()) + token.set_data_source_id(self.datasources[next_datasource].get_id()) + self.last_timestamp = token.last_timestamp + token.event = self._build_event(token.case, activity, self.last_timestamp, current_data_source) + self.tokens.put(token) + + return emit_event + + def start_new_case(self): + case_id = self.case_id_provider.get() + token = Token(case_id, START_SENSOR_ID, self.last_timestamp, None) + return token + + def _build_event(self, case, activity, timestamp, datasource): + if hasattr(datasource, "sensor_id"): + return Event( + timestamp=timestamp.strftime("%Y-%m-%d %H:%M:%S"), + activity=activity, + case_id=case, + node=datasource.sensor_id.get_name(), + group_id=datasource.group_id + ) + + def _get_sensor_with_id(self, data_source_id) -> DataSource: + for sensor in self.datasources: + if self.datasources[sensor].get_id() == data_source_id: + return self.datasources[sensor] + raise ValueError("Sensor not found") + + +class Token: + def __init__( + self, + case: string, + data_source_id: DataSourceId, + last_timestamp: datetime, + event: Event + ): + self.case = case + self.data_source_id = data_source_id + self.last_timestamp = last_timestamp + self.event = event + + def set_data_source_id(self, data_source_id): + self.data_source_id = data_source_id + + def add_to_last_timestamp(self, duration): + self.last_timestamp += timedelta(minutes=duration) + + def __lt__(self, other): + return self.last_timestamp < other.last_timestamp \ No newline at end of file diff --git a/distributed_event_factory/simulation/process_simulation_object_centric.py b/distributed_event_factory/simulation/process_simulation_object_centric.py new file mode 100644 index 0000000..70cdf46 --- /dev/null +++ b/distributed_event_factory/simulation/process_simulation_object_centric.py @@ -0,0 +1,174 @@ +from datetime import datetime +from typing import List, Dict + +from process_mining_core.datastructure.core.event import Event + +from core.abstract_datasource import DataSource +from core.datasource_id import DataSourceId +from core.object import ObjectData +from core.route import Route +from core.workforce import Workforce +from provider.object.input.input_provider import InputObjectProvider +from provider.workforce.InputWorkforceProvider import WorkforceStartPositionProvider +from simulation.simulator_objects.object_storage import ObjectStorage +from simulation.simulator_objects.object_utility import ObjectUtility +from simulation.simulator_objects.route_management import RouteManagement +from simulation.simulator_objects.workforce_storage import WorkforceStorage +from simulation.simulator_objects.workprocessstep import WorkProcessStep +from simulation.simulator_objects.workstation import WorkStation +from simulation.simulator_objects.workstation_service import WorkstationService + + +class ProcessSimulationObjectCentric: + def __init__( + self, + object_storage: ObjectStorage, + data_sources: Dict[str, DataSource], + objects: Dict[str, ObjectData], + routes: Dict[str, Route], + stocks: Dict[str, InputObjectProvider], + workforce_start_positions: Dict[str, WorkforceStartPositionProvider] + ): + self.workstations = [] + self.workstation_service = WorkstationService() + self.workforce_storage = None + self.last_timestamp = datetime.now() + self.object_storage = object_storage + self.objects = objects + self.data_sources = data_sources + self.routeManagement = RouteManagement(routes.get("default")) + self.stocks: Dict[str, InputObjectProvider] = stocks + self.configureWorkStationsAndSteps() + self.add_configured_stocks_in_warehouse() + self.configureWorkforceStartPositions(workforce_start_positions) + self.prior_step: str = "" + self.parallel_workstation_step_start_time = [] + + def simulate(self) -> (Event, ObjectStorage): + if self.parallel_workstation_step_start_time: + next_workstation, next_step, self.last_timestamp = self.parallel_workstation_step_start_time[0] + self.parallel_workstation_step_start_time = self.parallel_workstation_step_start_time[1:] + else: + available_workstations: List[WorkStation] = ( + self.workstation_service.get_activatable_workstations(self.workstations, self.object_storage, + self.workforce_storage)) + next_step, next_workstation = self.get_next_workstation_and_step(available_workstations) + self.prior_step = next_step.node + self.last_timestamp = next_workstation.add_to_last_timestamp(self.last_timestamp, next_step.duration) + ingoing_objects, outgoing_objects = self.object_storage.manage_input_and_output_of_steps( + next_step.input_objects, next_step.output_objects, + self.objects, self.last_timestamp) + if self.workforce_storage: + self.workforce_storage.manage_workforce_changes(next_step, self.routeManagement) + event = next_step.produce_event(self.last_timestamp, + next_workstation.work_station_name, ingoing_objects, outgoing_objects) + return event, self.object_storage + + def _get_next_step_by_event_provider(self, data_source) -> List[str]: + events = self._get_sensor_with_id(DataSourceId(data_source)).get_event_data() + if len(events) == 1: + return [events[0].transition_provider.next_sensor_index] + elif len(events) > 1: + next_sensors = [] + for e in events: + next_sensors.append(e.transition_provider.next_sensor_index) + return next_sensors + return None + + def get_next_workstation_and_step(self, available_workstations): + workstation_step_pairs_ascending = self.workstation_service.get_next_workstations_and_step_sorted_duration_ascending( + object_storage=self.object_storage, workstations=available_workstations, workforce_storage= self.workforce_storage) + + if self.prior_step: + next_available_steps = self._get_next_step_by_event_provider(self.prior_step) + if next_available_steps[0]: + next_workstation_step_pairs = self.workstation_service.get_next_workstation_step_pair_parallel( + next_available_steps, workstation_step_pairs_ascending, self.object_storage, self.workforce_storage, + self.routeManagement) + + if not next_workstation_step_pairs: + return ValueError("No available workstations") + elif len(next_workstation_step_pairs) == 1: + next_workstation, next_step = next_workstation_step_pairs[0] + return next_step, next_workstation + elif len(next_workstation_step_pairs) > 1: + next_workstation, next_step = next_workstation_step_pairs[0] + next_workstation_step_pairs.remove((next_workstation, next_step)) + for workstation, step in next_workstation_step_pairs: + self.parallel_workstation_step_start_time.append((workstation, step, self.last_timestamp)) + return next_step, next_workstation + + next_step, next_workstation = self.get_random_workstation_step_or_parallel_start( + workstation_step_pairs_ascending) + return next_step, next_workstation + + def get_random_workstation_step_or_parallel_start(self, workstation_steps_ascending): + if len(workstation_steps_ascending) > 1: + parallel_workstation_step_time = [] + + possible_step = self.object_storage.contains_all_object_of_data_for_steps(workstation_steps_ascending) + if self.workforce_storage: + possible_step = self.workforce_storage.contains_all_workforces_for_steps( + steps=workstation_steps_ascending, routeManagement=self.routeManagement) + if possible_step: + for workstation, step in possible_step: + parallel_workstation_step_time.append( + (workstation, step, self.last_timestamp)) + self.parallel_workstation_step_start_time.extend(parallel_workstation_step_time[1:]) + next_workstation, next_step, _ = parallel_workstation_step_time[0] + else: + next_workstation, next_step = workstation_steps_ascending[0] + return next_step, next_workstation + + def _get_sensor_with_id(self, data_source_id) -> DataSource: + for sensor in self.data_sources: + if self.data_sources[sensor].get_id() == data_source_id: + return self.data_sources[sensor] + raise ValueError("Sensor not found") + + ### preparing methods ### + def add_configured_stocks_in_warehouse(self): + for stock in self.stocks.get("default"): + self.object_storage.add_objects( + ObjectUtility().convert_object_data_to_generic_objects(generic_objects_possible=self.objects, + object_data=stock, + timestamp=self.last_timestamp)) + + def configureWorkStationsAndSteps(self): + for data_source in self.data_sources: + if data_source != "" and data_source != "": + data_source_id = DataSourceId(data_source) + events = self._get_sensor_with_id(DataSourceId(data_source)).get_event_data() + event_provider = self._get_sensor_with_id(DataSourceId(data_source)).event_provider + input_objects = event_provider.input_objects + workstation = event_provider.workstation + workforce = event_provider.workforce + start_location = event_provider.start + end_location = event_provider.end + workstation_steps = [] + for e in events: + workstation_steps.append(WorkProcessStep(activity=e.get_activity_provider().get_activity(), + node=data_source_id.get_name(), + group_id=self._get_sensor_with_id( + data_source_id).group_id, + input_objects=input_objects, + output_objects=e.get_activity_provider().get_output(), + duration=e.get_duration(), + workforces_needed=workforce, + start_location=start_location, + end_location=end_location)) + matching_workstation = self.workstation_service.get_workstation_by_name(workstation, self.workstations) + if matching_workstation: + matching_workstation.add_steps_to_workstation(workstation_steps) + else: + self.workstations.append( + WorkStation(work_station_name=workstation, work_process_steps=workstation_steps)) + + def configureWorkforceStartPositions(self, workforce_start_positions): + if not workforce_start_positions: + return + self.workforce_storage = WorkforceStorage() + for workforce_start_position in workforce_start_positions.get("default"): + for i in range(workforce_start_position.numberOfWorkforce): + self.workforce_storage.add_workforce( + Workforce(name=workforce_start_position.name, location=workforce_start_position.location)) diff --git a/distributed_event_factory/simulation/simulator_objects/object_storage.py b/distributed_event_factory/simulation/simulator_objects/object_storage.py new file mode 100644 index 0000000..5e64e60 --- /dev/null +++ b/distributed_event_factory/simulation/simulator_objects/object_storage.py @@ -0,0 +1,265 @@ +from typing import List, Dict + +from core.object import ObjectData, GenericObjectSource +from provider.object.input.input_provider import InputObjectProvider +from provider.object.size_params_provider import SizeParamsProvider +from provider.transition.output.output_provider import OutputObjectProvider +from simulation.simulator_objects.object_utility import ObjectUtility +from simulation.simulator_objects.workprocessstep import WorkProcessStep + + +class ObjectStorage: + + def __init__(self): + self.objects: List[GenericObjectSource] = [] + + def contains_all_object_of_data(self, objects: List[InputObjectProvider]): + for obj in objects: + if not obj.lastState: + if not obj.size: + if sum(1 for item in self.objects if + item.object_id.id.id == obj.objectName and not item.values_changed and not item.size) < obj.numberOfObject: + return False + else: + if sum(1 for item in self.objects if + item.object_id.id.id == obj.objectName and not item.values_changed and self.object_size_smaller_or_equal( + item.size, obj.size)) < obj.numberOfObject: + return False + else: + if not obj.size: + if (sum(1 for item in self.objects if + item.object_id.id.id == obj.objectName and item.get_last_changed_value() == obj.lastState and not item.size) + < obj.numberOfObject): + return False + else: + if (sum(1 for item in self.objects if + item.object_id.id.id == obj.objectName and item.get_last_changed_value() == obj.lastState and self.object_size_smaller_or_equal( + item.size, obj.size)) + < obj.numberOfObject): + return False + return True + + def contains_all_object_of_data_for_steps(self, steps: List[WorkProcessStep]): + object_forecast = self.objects.copy() + possible_workstation_step_pairs = [] + for workstation, step in steps: + all_objects_possible = True + for obj in step.input_objects: + if not obj.lastState: + if not obj.size: + all_objects_possible = self.contains_objects_without_last_state_without_size_for_steps( + all_objects_possible, obj, + object_forecast) + else: + all_objects_possible = self.contains_objects_without_last_state_with_size_for_steps( + all_objects_possible, obj, + object_forecast) + else: + if not obj.size: + all_objects_possible = self.contains_objects_with_last_state_without_size_for_steps( + all_objects_possible, + obj, + object_forecast) + else: + all_objects_possible = self.contains_objects_with_last_state_with_size_for_steps( + all_objects_possible, + obj, + object_forecast) + if all_objects_possible: + possible_workstation_step_pairs.append((workstation, step)) + return possible_workstation_step_pairs + + def contains_objects_with_last_state_without_size_for_steps(self, all_objects_possible, obj, object_forecast): + if not (sum(1 for item in object_forecast if + item.object_id.id.id == obj.objectName and item.get_last_changed_value() == obj.lastState and not item.size) + < obj.numberOfObject): + for i in range(obj.numberOfObject): + obj_to_remove = self.find_object_of_data_in_storage(obj, object_forecast) + object_forecast.remove(obj_to_remove) + else: + all_objects_possible = False + return all_objects_possible + + def contains_objects_without_last_state_without_size_for_steps(self, all_objects_possible, obj, object_forecast): + if not sum(1 for item in object_forecast if + item.object_id.id.id == obj.objectName and not item.values_changed and not item.size) < obj.numberOfObject: + for i in range(obj.numberOfObject): + obj_to_remove = self.find_object_of_data_in_storage(obj, object_forecast) + object_forecast.remove(obj_to_remove) + else: + all_objects_possible = False + return all_objects_possible + + def contains_objects_without_last_state_with_size_for_steps(self, all_objects_possible, obj, object_forecast): + if not sum(1 for item in object_forecast if + item.object_id.id.id == obj.objectName and not item.values_changed and self.object_size_smaller_or_equal( + item.size, obj.size)) < obj.numberOfObject: + for i in range(obj.numberOfObject): + obj_to_remove = self.find_object_of_data_in_storage(obj, object_forecast) + object_forecast.remove(obj_to_remove) + else: + all_objects_possible = False + return all_objects_possible + + def contains_objects_with_last_state_with_size_for_steps(self, all_objects_possible, obj, object_forecast): + if not (sum(1 for item in object_forecast if + item.object_id.id.id == obj.objectName and item.get_last_changed_value() == obj.lastState and self.object_size_smaller_or_equal( + item.size, obj.size)) + < obj.numberOfObject): + for i in range(obj.numberOfObject): + obj_to_remove = self.find_object_of_data_in_storage(obj, object_forecast) + object_forecast.remove(obj_to_remove) + else: + all_objects_possible = False + return all_objects_possible + + def object_size_smaller_or_equal(self, given_size, wanted_size): + if (not wanted_size.length and given_size.length) or ( + wanted_size.length and not given_size.length) or ( + given_size.length and wanted_size.length and given_size.length < wanted_size.length): + return False + if (not wanted_size.width and given_size.width) or ( + wanted_size.width and not given_size.width) or ( + given_size.width and wanted_size.width and given_size.width < wanted_size.width): + return False + if (not wanted_size.depth and given_size.depth) or ( + wanted_size.depth and not given_size.depth) or ( + given_size.depth and wanted_size.depth and given_size.depth < wanted_size.depth): + return False + return True + + def get_times_given_object_generates_wanted_object(self, given_size, wanted_size): + if self.object_size_smaller_or_equal(given_size, wanted_size): + depth_times = None + width_times = None + length_times = None + if given_size.depth and wanted_size.depth: + depth_times = round(given_size.depth / wanted_size.depth) + if given_size.width and wanted_size.width: + width_times = round(given_size.width / wanted_size.width) + if given_size.length and wanted_size.length: + length_times = round(given_size.length / wanted_size.length) + filtered_numbers = [n for n in [depth_times, width_times, length_times] if n is not None] + return min(filtered_numbers) + return 0 + + def get_leftover_size_of_given_object(self, given_size, wanted_size): + factor = self.get_times_given_object_generates_wanted_object(given_size, wanted_size) + if factor > 0: + depth = given_size.depth + width = given_size.width + length = given_size.length + if given_size.depth and wanted_size.depth: + depth = given_size.depth - (wanted_size.depth * factor) + if given_size.width and wanted_size.width: + width = given_size.width - (wanted_size.width * factor) + if given_size.length and wanted_size.length: + length = given_size.length - (wanted_size.length * factor) + return SizeParamsProvider(depth=depth, width=width, length=length) + return given_size + + def are_size_params_empty(self, size_params): + if not size_params or (not size_params.depth and not size_params.width and not size_params.length): + return True + return False + + def add_object(self, obj: GenericObjectSource): + self.objects.append(obj) + + def add_objects(self, objects: List[GenericObjectSource]): + for obj in objects: + self.add_object(obj) + + def find_object_of_data_in_local_storage(self, obj): + return self.find_object_of_data_in_storage(obj, self.objects) + + def find_object_of_data_in_storage(self, obj, objects): + if obj.lastState: + if obj.size: + return next((item for item in objects if + item.object_id.id.id == obj.objectName and item.get_last_changed_value() == obj.lastState and self.object_size_smaller_or_equal( + item.size, obj.size)), + None) + else: + return next((item for item in objects if + item.object_id.id.id == obj.objectName and item.get_last_changed_value() == obj.lastState and not item.size), + None) + else: + if obj.size: + return next((item for item in objects if + item.object_id.id.id == obj.objectName and not item.values_changed and self.object_size_smaller_or_equal( + item.size, obj.size)), + None) + else: + return next((item for item in objects if + item.object_id.id.id == obj.objectName and not item.values_changed and not item.size), + None) + + def find_object_in_input_objects(self, obj, objects): + return next((item for item in objects if + item.object_id.id.id == obj.objectName), None) + + def find_object_by_id(self, uid): + return next((item for item in self.objects if + item.object_id.unique_id == uid), None) + + def manage_input_and_output_of_steps(self, input_objects: List[InputObjectProvider], + output_objects: List[OutputObjectProvider], + object_templates: Dict[str, ObjectData], timestamp): + ingoing_objects = [] + outgoing_objects = [] + for input_object in input_objects: + for i in range(input_object.numberOfObject): + obj = self.find_object_of_data_in_local_storage(input_object) + if obj: + ingoing_objects.append(obj) + self.objects.remove(obj) + if obj.size and input_object.size: + leftover_size = self.get_leftover_size_of_given_object(obj.size, input_object.size) + if not self.are_size_params_empty(leftover_size): + obj = obj.clone() + obj.add_change(ObjectData(timestamp=timestamp.strftime("%Y-%m-%d %H:%M:%S"), + object_state="size: "+str(leftover_size), + object_id=obj.object_id)) + obj.size = leftover_size + self.add_object(obj) + outgoing_objects.append(obj) + else: + return ValueError("Object not found") + ingoing_objects_copy = ingoing_objects[:] + outgoing_objects.extend(self.add_output_changed_objects_to_store(ingoing_objects_copy, object_templates, output_objects, + timestamp)) + return ingoing_objects, outgoing_objects + + def add_output_changed_objects_to_store(self, objects, object_templates, output_objects, timestamp): + outgoing_objects = [] + for output_object in output_objects: + for i in range(output_object.numberOfObject): + obj = self.find_object_in_input_objects(output_object, objects) + if obj: + if output_object.change: + obj.add_change(ObjectData(timestamp=timestamp.strftime("%Y-%m-%d %H:%M:%S"), + object_state=output_object.change, + object_id=obj.object_id)) + if output_object.size: + obj.size.length = output_object.size.length + obj.size.width = output_object.size.width + obj.size.depth = output_object.size.depth + self.add_object(obj) + outgoing_objects.append(obj) + objects.remove(obj) + else: + obj = ObjectUtility().convert_object_name_to_generic_object(object_templates, + output_object.objectName).clone() + if output_object.change: + obj.add_change(ObjectData(timestamp=timestamp.strftime("%Y-%m-%d %H:%M:%S"), + object_state=output_object.change, + object_id=obj.object_id)) + + if output_object.size: + obj.size.length = output_object.size.length + obj.size.width = output_object.size.width + obj.size.depth = output_object.size.depth + self.add_object(obj) + outgoing_objects.append(obj) + return outgoing_objects diff --git a/distributed_event_factory/simulation/simulator_objects/object_utility.py b/distributed_event_factory/simulation/simulator_objects/object_utility.py new file mode 100644 index 0000000..f706dcf --- /dev/null +++ b/distributed_event_factory/simulation/simulator_objects/object_utility.py @@ -0,0 +1,20 @@ +from core.object import GenericObjectSource, ObjectData +from typing import Dict, List + + +class ObjectUtility: + + def convert_object_data_to_generic_objects(self, generic_objects_possible:Dict[str,GenericObjectSource], object_data:ObjectData, timestamp): + objects:List[GenericObjectSource]=[] + obj = generic_objects_possible[object_data.objectName].clone() + for i in range(object_data.numberOfObject): + obj = obj.clone() + if object_data.lastState: + obj.add_change(ObjectData(timestamp=timestamp.strftime("%Y-%m-%d %H:%M:%S"), object_state=object_data.lastState, + object_id=obj.object_id)) + objects.append(obj) + return objects + + def convert_object_name_to_generic_object(self, generic_objects_possible: Dict[str,GenericObjectSource], + object_name: str): + return generic_objects_possible[object_name] diff --git a/distributed_event_factory/simulation/simulator_objects/route_management.py b/distributed_event_factory/simulation/simulator_objects/route_management.py new file mode 100644 index 0000000..f9a8e78 --- /dev/null +++ b/distributed_event_factory/simulation/simulator_objects/route_management.py @@ -0,0 +1,46 @@ +from typing import List + +from core.route import Route + + +class RouteManagement: + def __init__(self, routes: List[Route]): + self.routes = routes + + def get_route_for_start_end(self, start, end): + for route in self.routes: + if route.start == start and route.end == end: + return route + return None + + def get_route_for_start(self, start): + for route in self.routes: + if route.start == start: + return route + return None + + def route_for_start_end_exists(self, start, end): + for route in self.routes: + if route.start == start and route.end == end: + return True + return False + + def closest_to_location(self, location:str): + min_route = self.get_route_for_start(location) + min_duration = min_route.duration + + for route in self.routes: + if route.start == location: + if min_duration > route.duration: + min_duration = route.duration + min_route = route + return min_route + + + def closest_to_location_order(self, location:str): + possible_routes = [] + for route in self.routes: + if route.end == location: + possible_routes.append(route) + possible_routes.sort(key=lambda route: route.duration) + return possible_routes \ No newline at end of file diff --git a/distributed_event_factory/simulation/simulator_objects/workforce_storage.py b/distributed_event_factory/simulation/simulator_objects/workforce_storage.py new file mode 100644 index 0000000..c6504ce --- /dev/null +++ b/distributed_event_factory/simulation/simulator_objects/workforce_storage.py @@ -0,0 +1,129 @@ +from typing import List + +from core.workforce import Workforce +from provider.workforce.InputWorkforceProvider import InputWorkforceProvider +from simulation.simulator_objects.route_management import RouteManagement + + +class WorkforceStorage: + def __init__(self): + self.workforces: List[Workforce] = [] + + def get_workforce_at_location_available(self, workforce_input: InputWorkforceProvider, location: str, + workforce_storage): + number_of_matching_workforces = 0 + workforce_set = [] + for workforce in workforce_storage: + if workforce.location == location and workforce.name == workforce_input.name: + number_of_matching_workforces += 1 + workforce_set.append(workforce) + if number_of_matching_workforces == workforce_input.numberOfWorkforce: + return workforce_set + return workforce_set + + def get_all_workforces_at_location_available(self, workforces_input: List[InputWorkforceProvider], location: str, + workforce_storage): + workforce_set = [] + is_complete = True + for workforce in workforces_input: + preserved_workforces = self.get_workforce_at_location_available(workforce, location, workforce_storage) + if not preserved_workforces or len(preserved_workforces) != workforce.numberOfWorkforce: + is_complete = False + for preserved_workforce in preserved_workforces: + workforce_set.append(preserved_workforce) + return workforce_set, is_complete + + def is_workforce_type_available(self, workforce_input: InputWorkforceProvider): + number_of_matching_workforces = 0 + for workforce in self.workforces: + if workforce.name == workforce_input.name: + number_of_matching_workforces += 1 + return number_of_matching_workforces >= workforce_input.numberOfWorkforce + + def are_all_workforces_types_available(self, workforces_input: List[InputWorkforceProvider]): + for workforce in workforces_input: + if not self.is_workforce_type_available(workforce): + return False + return True + + def get_available_workforce_closest_to_location(self, location: str, type: str, workforce_storage, + routeManagement: RouteManagement): + locations = routeManagement.closest_to_location_order(location) + for closest_location in locations: + for workforce in workforce_storage: + if workforce.name == type and workforce.location == closest_location.start: + route = routeManagement.get_route_for_start_end(closest_location.start, location) + return workforce, route + return None, None + + def contains_all_workforces_for_steps(self, steps, routeManagement: RouteManagement, preselected=None): + workforce_forecast = self.workforces.copy() + possible_workstation_step_pairs = [] + currently_not_at_location = [] + for workstation, step in steps: + if step.workforces_needed: + reserved_workforces, is_complete = self.get_all_workforces_at_location_available(step.workforces_needed, + step.start_location, + workforce_forecast) + if reserved_workforces and is_complete: + for reserved_workforce in reserved_workforces: + workforce_forecast.remove(reserved_workforce) + possible_workstation_step_pairs.append((workstation, step)) + elif not is_complete and reserved_workforces: + return ValueError(len(reserved_workforces), step) + else: + if preselected and step.node in preselected: + prefered_currently_not_at_location = [(workstation, step)] + possible_workstation_step_pairs = self.contains_workforces_near_by( + prefered_currently_not_at_location, possible_workstation_step_pairs, routeManagement, + workforce_forecast) + else: + currently_not_at_location.append((workstation, step)) + else: + possible_workstation_step_pairs.append((workstation, step)) + + return self.contains_workforces_near_by(currently_not_at_location, possible_workstation_step_pairs, + routeManagement, workforce_forecast) + + def contains_workforces_near_by(self, currently_not_at_location, possible_workstation_step_pairs, routeManagement, + workforce_forecast): + for workstation, step in currently_not_at_location: + all_workforces_at_location = True + steps_with_duration = [] + for workforce in step.workforces_needed: + workforce, route = self.get_available_workforce_closest_to_location(step.start_location, + workforce.name, + workforce_forecast, routeManagement) + if workforce: + step = step.clone() + step.duration = step.duration + route.duration + self.workforces.remove(workforce) + workforce.location = step.start_location + self.workforces.append(workforce) + else: + all_workforces_at_location = False + if all_workforces_at_location and steps_with_duration: + possible_workstation_step_pairs.append((workstation, step)) + return possible_workstation_step_pairs + + def manage_workforce_changes(self, step, routeManagement: RouteManagement): + if step.start_location != step.end_location and step.workforces_needed: + workforces, is_complete = self.get_all_workforces_at_location_available(step.workforces_needed, step.start_location, + self.workforces) + if workforces: + for workforce in workforces: + self.workforces.remove(workforce) + workforce.location = step.end_location + self.workforces.append(workforce) + else: + for workforce in step.workforces_needed: + workforce, _ = self.get_available_workforce_closest_to_location(step.start_location, + workforce.name, + self.workforces, + routeManagement) + self.workforces.remove(workforce) + workforce.location = step.end_location + self.workforces.append(workforce) + + def add_workforce(self, workforce: Workforce): + self.workforces.append(workforce) diff --git a/distributed_event_factory/simulation/simulator_objects/workprocessstep.py b/distributed_event_factory/simulation/simulator_objects/workprocessstep.py new file mode 100644 index 0000000..eb73ac6 --- /dev/null +++ b/distributed_event_factory/simulation/simulator_objects/workprocessstep.py @@ -0,0 +1,97 @@ +from simulation.object_event import ObjectEvent +from collections import defaultdict + +Y_M_D_H_M_S = "%Y-%m-%d %H:%M:%S" + +class WorkProcessStep: + + def __init__( + self, + activity, + input_objects, + output_objects, + duration, + node, + group_id, + workforces_needed, + start_location, + end_location + ): + self.input_objects = input_objects + self.workforces_needed = workforces_needed + self.output_objects = output_objects + self.duration = duration + self.activity = activity + self.node = node + self.group_id = group_id + self.start_location = start_location + self.end_location = end_location + + def clone(self): + return WorkProcessStep(self.activity, + self.input_objects, + self.output_objects, + self.duration, + self.node, + self.group_id, + self.workforces_needed, + self.start_location, + self.end_location) + + def produce_event(self, current_timestamp, workstation, ingoing_objects, outgoing_objects) -> ObjectEvent: + ingoing_summary = self.summary_of_objects(objects=ingoing_objects) + outgoing_summary = self.summary_of_objects(objects=outgoing_objects) + return ObjectEvent( + timestamp=current_timestamp.strftime(Y_M_D_H_M_S), + activity=self.activity, + node=self.node, + group_id=workstation, + input=ingoing_summary, + output=outgoing_summary + ) + + def summary_of_objects(self, objects): + summary = "" + counter = ObjectCounter(objects) + result = counter.count_and_memorize() + for key, value in result.items(): + summary += str(key) + ": Count = {" + str(value['count']) + "}, Unique IDs = {" + str( + value['uniqueIds']) + "}, " + return summary[:-2] + + +class ObjectCounter: + def __init__(self, objects): + self.objects = objects + self.memory = {} + + def count_and_memorize(self): + groups = defaultdict(list) + + for obj in self.objects: + key = str(ObjectIdenticalParameters(obj)) + if not groups.get(key): + groups[key] = [obj.get_id().get_unique_id()] + else: + unique_ids = groups.pop(key) + unique_ids.append(obj.get_id().get_unique_id()) + groups[key] = unique_ids + + for key, unique_ids in groups.items(): + self.memory[key] = {'count': len(unique_ids), 'uniqueIds': unique_ids} + + return self.memory + + +class ObjectIdenticalParameters: + def __init__(self, object): + self.name = object.object_id_name.id + self.object_type = object.object_type + self.size = object.size + + def __str__(self): + return str({ + key: (str(value) if key == "size" or "objects" else value) + for key, value in self.__dict__.items() + if value + }) diff --git a/distributed_event_factory/simulation/simulator_objects/workstation.py b/distributed_event_factory/simulation/simulator_objects/workstation.py new file mode 100644 index 0000000..e1d2e2f --- /dev/null +++ b/distributed_event_factory/simulation/simulator_objects/workstation.py @@ -0,0 +1,93 @@ +import random +from typing import List +from datetime import timedelta +from simulation.simulator_objects.object_storage import ObjectStorage +from simulation.simulator_objects.workforce_storage import WorkforceStorage +from simulation.simulator_objects.workprocessstep import WorkProcessStep + +class WorkStation: + def __init__(self, work_station_name: str, work_process_steps: List[WorkProcessStep]): + self.work_station_name = work_station_name + self.work_process_steps = work_process_steps + self.last_event_end_timestamp = None + + def _is_activatable(self, object_storage: ObjectStorage): + for workstation_step in self.work_process_steps: + if object_storage.contains_all_object_of_data(workstation_step.input_objects): + return True + + return False + + def _is_activatable_including_workforce(self, object_storage: ObjectStorage, workforce_storage: WorkforceStorage): + for workstation_step in self.work_process_steps: + if object_storage.contains_all_object_of_data( + workstation_step.input_objects) and workforce_storage.are_all_workforces_types_available( + workstation_step.workforces_needed): + return True + + return False + + def get_activatable_work_steps(self, object_storage: ObjectStorage): + activatable_workstations = [] + + for workstation_step in self.work_process_steps: + if object_storage.contains_all_object_of_data(workstation_step.input_objects): + activatable_workstations.append(workstation_step) + + return activatable_workstations + + def get_activatable_work_steps_including_workforce(self, object_storage: ObjectStorage, + workforce_storage: WorkforceStorage): + activatable_workstations = [] + + for workstation_step in self.work_process_steps: + if object_storage.contains_all_object_of_data( + workstation_step.input_objects) and workforce_storage.are_all_workforces_types_available( + workstation_step.workforces_needed): + activatable_workstations.append(workstation_step) + + return activatable_workstations + + def get_prefered_activatable_work_steps(self, object_storage: ObjectStorage, prefered_workstation_steps: List[str], + workforce_storage: WorkforceStorage = None): + if workforce_storage: + activatable_steps = self.get_activatable_work_steps_including_workforce(object_storage, workforce_storage) + else: + activatable_steps = self.get_activatable_work_steps(object_storage) + work_step_selected = [] + + for workstation_step in activatable_steps: + if workstation_step.node in prefered_workstation_steps: + work_step_selected.append(workstation_step) + + return work_step_selected[random.randint(0, len(work_step_selected) - 1)] + + def workstation_has_preselected_activatable_steps(self, object_storage: ObjectStorage, + prefered_workstation_steps: List[str], + workforce_storage: WorkforceStorage = None) -> bool: + if workforce_storage: + activatable_steps = self.get_activatable_work_steps_including_workforce(object_storage, workforce_storage) + else: + activatable_steps = self.get_activatable_work_steps(object_storage) + + for workstation_step in activatable_steps: + if workstation_step.node in prefered_workstation_steps: + return True + + return False + + def get_random_activatable_workstation_step(self, object_storage: ObjectStorage, + workforce_storage: WorkforceStorage = None) -> WorkProcessStep: + if workforce_storage: + activatable_steps = self.get_activatable_work_steps_including_workforce(object_storage, workforce_storage) + else: + activatable_steps = self.get_activatable_work_steps(object_storage) + return activatable_steps[random.randint(0, len(activatable_steps) - 1)] + + def add_to_last_timestamp(self, current_timestamp, duration): + self.last_event_end_timestamp = current_timestamp + timedelta(seconds=duration) + return self.last_event_end_timestamp + + def add_steps_to_workstation(self, steps): + for step in steps: + self.work_process_steps.append(step) \ No newline at end of file diff --git a/distributed_event_factory/simulation/simulator_objects/workstation_service.py b/distributed_event_factory/simulation/simulator_objects/workstation_service.py new file mode 100644 index 0000000..a33dd02 --- /dev/null +++ b/distributed_event_factory/simulation/simulator_objects/workstation_service.py @@ -0,0 +1,91 @@ +from typing import List + +from simulation.simulator_objects.object_storage import ObjectStorage +from simulation.simulator_objects.route_management import RouteManagement +from simulation.simulator_objects.workforce_storage import WorkforceStorage +from simulation.simulator_objects.workstation import WorkStation + + +class WorkstationService: + + def get_activatable_workstations(self, workstations: List[WorkStation], object_storage: ObjectStorage, + workforce_storage: WorkforceStorage = None) -> List[WorkStation]: + activatable_workstations = [] + + for workstation in workstations: + if workforce_storage: + if workstation._is_activatable_including_workforce(object_storage, workforce_storage): + activatable_workstations.append(workstation) + else: + if workstation._is_activatable(object_storage): + activatable_workstations.append(workstation) + + return activatable_workstations + + def get_workstation_by_name(self, workstation_name, workstations: List[WorkStation]): + for workstation in workstations: + if workstation.work_station_name == workstation_name: + return workstation + return None + + def get_next_workstation_step_pair_parallel(self, next_available_steps, workstation_steps_ascending, + object_storage: ObjectStorage, + workforce_storage: WorkforceStorage = None, route_management: RouteManagement = None): + steps_in_priority = [] + workstations_preselected = self.get_workstations_preselected([item[0] for item in workstation_steps_ascending], + next_available_steps, object_storage, + workforce_storage) + self.append_possible_preselected_workstation_step_pairs(next_available_steps, object_storage, steps_in_priority, + workstations_preselected, workforce_storage) + for workstation, step in workstation_steps_ascending: + if ((type(workstations_preselected) is WorkStation and workstation != workstations_preselected) or + (type( + workstations_preselected) is list and workstation not in workstations_preselected) or not workstations_preselected): + steps_in_priority.append((workstation, step)) + possible_steps = object_storage.contains_all_object_of_data_for_steps(steps_in_priority) + if workforce_storage: + possible_steps = workforce_storage.contains_all_workforces_for_steps(possible_steps, route_management, next_available_steps) + possible_steps.sort(key=lambda x: x[1].duration) + return possible_steps + + def append_possible_preselected_workstation_step_pairs(self, next_available_steps, object_storage, + steps_in_priority, workstations_preselected, + workforce_storage: WorkforceStorage = None): + if workstations_preselected: + if type(workstations_preselected) is WorkStation: + steps_in_priority.append((workstations_preselected, + workstations_preselected.get_prefered_activatable_work_steps(object_storage, + next_available_steps, + workforce_storage))) + else: + for workstation in workstations_preselected: + steps_in_priority.append((workstation, + workstation.get_prefered_activatable_work_steps(object_storage, + next_available_steps, + workforce_storage))) + + def get_next_workstations_and_step_sorted_duration_ascending(self, object_storage: ObjectStorage, + workstations: List[WorkStation], + workforce_storage: WorkforceStorage = None): + workstations_step_pair = [] + for workstation in workstations: + step = workstation.get_random_activatable_workstation_step(object_storage=object_storage, + workforce_storage=workforce_storage) + workstations_step_pair.append((workstation, step)) + workstations_step_pair.sort(key=lambda x: x[1].duration) + return workstations_step_pair + + def get_workstations_preselected(self, workstations: List[WorkStation], prefered_workstation_steps: List[str], + object_storage: ObjectStorage, + workforce_storage: WorkforceStorage = None): + workstation_selected = [] + for workstation in workstations: + if workstation.workstation_has_preselected_activatable_steps(object_storage=object_storage, + prefered_workstation_steps=prefered_workstation_steps, + workforce_storage=workforce_storage): + workstation_selected.append(workstation) + if len(workstation_selected) == 1: + return workstation_selected[0] + elif len(workstation_selected) > 1: + return workstation_selected + return None diff --git a/distributed_event_factory/simulation/stream.py b/distributed_event_factory/simulation/stream.py new file mode 100644 index 0000000..972e1cc --- /dev/null +++ b/distributed_event_factory/simulation/stream.py @@ -0,0 +1,38 @@ +import time + +from scheduled_futures import ScheduledThreadPoolExecutor +from distributed_event_factory.provider.data.case_provider import CaseIdProvider +from distributed_event_factory.provider.data.count_provider import CountProvider +from distributed_event_factory.provider.load.load_provider import LoadProvider +from distributed_event_factory.simulation.abstract_simulation import Simulation +from distributed_event_factory.simulation.process_simulation import ProcessSimulator + +class StreamSimulation(Simulation): + def __init__( + self, + load_provider: LoadProvider, + case_id_provider: CaseIdProvider, + max_concurrent_cases: CountProvider + ): + super().__init__() + self.case_id_provider = case_id_provider + self.load_provider = load_provider + self.max_concurrent_cases = max_concurrent_cases + self.sinks = dict() + + def run_simulation(self, datasources, sinks, objects, routes, stocks, workforce_start_positions, root, hook): + self.setup_datasource_sink_mapping(sinks) + process_simulator = ProcessSimulator( + case_id_provider=self.case_id_provider, + data_sources=datasources, + max_concurrent_cases=self.max_concurrent_cases + ) + while True: + with ScheduledThreadPoolExecutor() as executor: + scheduler = executor.schedule( + lambda: self.send_event(process_simulator.simulate(), root, objects), + period=1 / self.load_provider.get_load_value() + ) + hook() + time.sleep(1) + scheduler.cancel() diff --git a/distributed_event_factory/view/__init__.py b/distributed_event_factory/view/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/view/terminal.py b/distributed_event_factory/view/terminal.py similarity index 89% rename from view/terminal.py rename to distributed_event_factory/view/terminal.py index 9b83bf0..2fc5d09 100644 --- a/view/terminal.py +++ b/distributed_event_factory/view/terminal.py @@ -1,10 +1,8 @@ -import tkinter as tk -from tkinter.scrolledtext import ScrolledText import threading - class Terminal(threading.Thread): def __init__(self, title="Terminal", start_position=0): + self.start_position = start_position self.title = title self.root = None @@ -20,11 +18,13 @@ def close(self): self.scrolled_text = None def run(self): + import tkinter as tk + from tkinter.scrolledtext import ScrolledText self.root = tk.Tk() self.root.protocol("WM_DELETE_WINDOW", self.close) self.root.title(self.title) self.root.geometry("600x400") - self.root.geometry(f"+{50 +((self.start_position % 3)*700)}+{int(self.start_position / 3) * 500}") + self.root.geometry(f"+{50 +((self.start_position % 3)*900)}+{int(self.start_position / 3) * 500}") self.scrolled_text = ScrolledText(self.root) self.scrolled_text.pack() self.root.mainloop() diff --git a/factory.png b/docs/factory.png similarity index 100% rename from factory.png rename to docs/factory.png diff --git a/markov.png b/docs/markov.png similarity index 100% rename from markov.png rename to docs/markov.png diff --git a/install-requirements.sh b/install-requirements.sh new file mode 100644 index 0000000..fd499dd --- /dev/null +++ b/install-requirements.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +python3 -m pip install --upgrade pip --extra-index-url https://test.pypi.org/simple -r requirements.txt \ No newline at end of file diff --git a/main.py b/main.py deleted file mode 100644 index 6d8fbcd..0000000 --- a/main.py +++ /dev/null @@ -1,11 +0,0 @@ -import os - -from simulation.distributed_event_factory import DistributedEventFactory - -if __name__ == '__main__': - if "CONFIG_FILE" in os.environ: - config_file = os.environ["CONFIG_FILE"] - else: - config_file = "config/assembly_line.yml" - - DistributedEventFactory(config_file).start() diff --git a/provider/activity/activity_provider.py b/provider/activity/activity_provider.py deleted file mode 100644 index 2d545d3..0000000 --- a/provider/activity/activity_provider.py +++ /dev/null @@ -1,17 +0,0 @@ -from abc import ABC, abstractmethod - - -class ActivityProvider(ABC): - - @abstractmethod - def get_activity(self): - pass - - -class DistinctActivityProvider(ActivityProvider): - - def __init__(self, activity_name): - self.activity_name = activity_name - - def get_activity(self): - return self.activity_name diff --git a/provider/activity/generation/activity_generation_registry.py b/provider/activity/generation/activity_generation_registry.py deleted file mode 100644 index f9b3227..0000000 --- a/provider/activity/generation/activity_generation_registry.py +++ /dev/null @@ -1,15 +0,0 @@ -from provider.activity.generation.activity_generation_provider import ActivityGenerationProvider, \ - DistinctActivityGenerationProvider, ListBasedActivityGenerationProvider -from provider.generic.count_provider_registry import CountProviderRegistry - - -class ActivityGenerationProviderRegistry: - def __init__(self): - self.count_provider_registry = CountProviderRegistry() - - def get(self, config) -> ActivityGenerationProvider: - registry = dict() - registry["distinct"] = lambda config: DistinctActivityGenerationProvider( - number_of_activities_provider=self.count_provider_registry.get(config["count"])) - registry["list"] = lambda config: ListBasedActivityGenerationProvider(sensor_id_activity_map=config["values"]) - return registry[config["type"]](config) diff --git a/provider/activity/selection/activity_selection_provider_registry.py b/provider/activity/selection/activity_selection_provider_registry.py deleted file mode 100644 index e80c26b..0000000 --- a/provider/activity/selection/activity_selection_provider_registry.py +++ /dev/null @@ -1,24 +0,0 @@ -from provider.activity.generation.activity_generation_registry import ActivityGenerationProviderRegistry -from provider.activity.selection.activity_selection_provider import ActivitySelectionProviderFactory -from provider.activity.selection.ordered.ordered_selection_provider import OrderedActivitySelectionProviderFactory -from provider.activity.selection.single.single_selection_provider import SingleActivitySelectionProviderFactory -from provider.activity.selection.uniform.uniform_selection_provider import UniformActivitySelectionProviderFactory - - -class ActivitySelectionProviderRegistry: - def get(self, config) -> ActivitySelectionProviderFactory: - registry = dict() - registry["uniform"] = lambda config: ( - UniformActivitySelectionProviderFactory( - potential_activities_provider=ActivityGenerationProviderRegistry().get(config["from"]) - ) - ) - registry["ordered"] = lambda config: ( - OrderedActivitySelectionProviderFactory( - potential_activities_provider=ActivityGenerationProviderRegistry().get(config["from"]) - ) - ) - if "selection" not in config: - return SingleActivitySelectionProviderFactory(config) - - return registry[config["selection"]](config) diff --git a/provider/data/case_provider.py b/provider/data/case_provider.py deleted file mode 100644 index c6d8375..0000000 --- a/provider/data/case_provider.py +++ /dev/null @@ -1,25 +0,0 @@ -import abc - - -class CaseIdProvider: - - @abc.abstractmethod - def get(self): - pass - - -class CaseIdProviderRegistry: - def get(self, type: str) -> CaseIdProvider: - registry = dict() - registry["increasing"] = IncreasingCaseIdProvider() - return registry[type] - - -class IncreasingCaseIdProvider(CaseIdProvider): - - def __init__(self): - self.current_case_id = 0 - - def get(self): - self.current_case_id += 1 - return "case " + str(self.current_case_id) diff --git a/provider/datasource/README.md b/provider/datasource/README.md deleted file mode 100644 index 6957aa4..0000000 --- a/provider/datasource/README.md +++ /dev/null @@ -1,26 +0,0 @@ -# Data Source - -Data Sources are the heart of DEF. They are defined by 3 properties: - -- `name:` Simply the name of the data source -- `groupId:` The name of the group it belongs to -- [`eventGenerator:`](../event/README.md) A method which defines which events it produces -- [`sink:`](../sink/README.md) A sik nk where it sends the generated events to - -## Default sink -Instead of giving each data source its own sink a default sink can be defined which applies for all sink. - -It is defined in this way: -```yaml -defaultSink: - type: console -``` - -## Example Configuration -An exemplary example of a data source looks like this -```yaml -name: "GoodsDelivery" -groupId: "factory" -eventGeneration: [...] -sink: console -``` \ No newline at end of file diff --git a/provider/datasource/sensor_topology.py b/provider/datasource/sensor_topology.py deleted file mode 100644 index d7a4502..0000000 --- a/provider/datasource/sensor_topology.py +++ /dev/null @@ -1,32 +0,0 @@ -from abc import abstractmethod -from typing import List - -from core.datasource import DataSource, StartDataSource, EndDataSource -from core.datasource_id import START_SENSOR_ID, END_DATA_SOURCE_ID -from provider.sink.console.console_sink import PrintConsoleSinkProvider -from provider.transition.nextsensor.next_sensor_provider import NextSensorProvider - - -class DataSourceTopologyProvider: - @abstractmethod - def get_sensor_topology(self, number_of_sensors) -> List[DataSource]: - pass - - -class ConcreteDataSourceTopologyProvider(DataSourceTopologyProvider): - def __init__(self, data_source_list: List[DataSource]): - self.data_source_list = data_source_list - - def get_sensor_topology(self, number_of_sensors): - data_sources = [] - transitions = [0.0] * number_of_sensors - transitions[0] = 1.0 - data_sources.append( - StartDataSource( - transition_provider=NextSensorProvider(transitions), - sender=PrintConsoleSinkProvider().get_sender(START_SENSOR_ID.get_name()))) - for data_source in self.data_source_list: - data_sources.append(data_source) - - data_sources.append(EndDataSource(sender=PrintConsoleSinkProvider().get_sender(END_DATA_SOURCE_ID.get_name()))) - return data_sources diff --git a/provider/datasource/sensor_topology_registry.py b/provider/datasource/sensor_topology_registry.py deleted file mode 100644 index c4f0047..0000000 --- a/provider/datasource/sensor_topology_registry.py +++ /dev/null @@ -1,15 +0,0 @@ -from provider.datasource.data_source_registry import DataSourceRegistry -from provider.datasource.sensor_topology import DataSourceTopologyProvider, ConcreteDataSourceTopologyProvider -from provider.sink.sink_provider_registry import SinkProviderRegistry - - -class DataSourceProviderRegistry: - - def get(self, config) -> DataSourceTopologyProvider: - registry = dict() - - registry["concrete"] = lambda config: ConcreteDataSourceTopologyProvider( - data_source_list=DataSourceRegistry().get(data_source_definitions=config["dataSources"], default_sink=SinkProviderRegistry().get(config=config["defaultSink"])) - ) - return registry["concrete"](config) - diff --git a/provider/event/README.md b/provider/event/README.md deleted file mode 100644 index beb00b2..0000000 --- a/provider/event/README.md +++ /dev/null @@ -1,12 +0,0 @@ -# Event Generator - -An event is generated in DEF when a transition on the Markov chain has been taken. -Hence, it has the following properties: - -- [Activity]() -- [Next Data Source]() -- [Duration]() - -Each data source can define multiple possibly generated events. -Which of these events is selected is examined by the [event selection function](../eventselection/README.md) - diff --git a/provider/event/event_data.py b/provider/event/event_data.py deleted file mode 100644 index f5c0ce6..0000000 --- a/provider/event/event_data.py +++ /dev/null @@ -1,24 +0,0 @@ -from provider.activity.activity_provider import ActivityProvider -from provider.transition.duration.duration_provider import DurationProvider -from provider.transition.nextsensor.next_sensor_provider import AbstractNextSensorProvider - - -class EventData: - def __init__( - self, - duration_provider: DurationProvider, - activity_provider: ActivityProvider, - transition_provider: AbstractNextSensorProvider - ): - self.duration_provider = duration_provider - self.activity_provider = activity_provider - self.transition_provider = transition_provider - - def get_duration(self): - return self.duration_provider.get_duration() - - def get_next_sensor(self): - return self.transition_provider.get_next_sensor() - - def get_activity(self): - return self.activity_provider.get_activity() diff --git a/provider/event/event_provider_registry.py b/provider/event/event_provider_registry.py deleted file mode 100644 index c2c97df..0000000 --- a/provider/event/event_provider_registry.py +++ /dev/null @@ -1,22 +0,0 @@ -from provider.activity.selection.activity_selection_provider_registry import ActivitySelectionProviderRegistry -from provider.event.event_provider import EventDataProvider, CustomEventDataProvider -from provider.transition.duration.duration_registry import DurationProviderRegistry -from provider.transition.nextsensor.next_sensor_provider_registry import NextSensorProviderRegistry - - -class EventProviderRegistry: - - def get(self, config) -> EventDataProvider: - registry = dict() - registry["classic"] = lambda config: ( - CustomEventDataProvider( - duration_provider=DurationProviderRegistry().get(config=config["duration"]), - transition_provider=NextSensorProviderRegistry().get(config["transition"]), - activity_provider=ActivitySelectionProviderRegistry() - .get(config=config["activity"]) - .get_activity_provider(), - )) - - - - return registry["classic"](config) diff --git a/provider/eventselection/README.md b/provider/eventselection/README.md deleted file mode 100644 index bc8572d..0000000 --- a/provider/eventselection/README.md +++ /dev/null @@ -1,10 +0,0 @@ -# Event Selection - -The event selection function defines how an event is selected from possibly multiple defined -events that could be produced by a datasource. - -Currently, these event selection functions are supported: - -- By Probability Distribution -- In Order -- Random with uniform distribution \ No newline at end of file diff --git a/provider/eventselection/event_selection_provider_registry.py b/provider/eventselection/event_selection_provider_registry.py deleted file mode 100644 index bf2f439..0000000 --- a/provider/eventselection/event_selection_provider_registry.py +++ /dev/null @@ -1,39 +0,0 @@ -from typing import List - -from provider.eventselection.event_selection_provider import EventSelectionProvider -from provider.eventselection.generic_probability_event_selection_provider import \ - GenericProbabilityEventSelectionProvider -from provider.eventselection.ordered_selection_provider import OrderedEventSelectionProvider -from provider.eventselection.uniform_selction_provider import UniformEventSelectionProvider -from provider.event.event_provider import EventDataProvider -from provider.event.event_provider_registry import EventProviderRegistry - - -class EventSelectionProviderRegistry: - - def _transform_list(self, config): - event_providers: List[EventDataProvider] = [] - events = config["events"] - for event in events: - event_providers.append(EventProviderRegistry().get(event)) - return event_providers - - def get(self, config) -> EventSelectionProvider: - registry = dict() - registry["uniform"] = lambda config: ( - UniformEventSelectionProvider( - potential_events=self._transform_list(config["from"]) - ) - ) - registry["ordered"] = lambda config: ( - OrderedEventSelectionProvider( - potential_events=self._transform_list(config["from"]) - ) - ) - registry["genericProbability"] = lambda config: ( - GenericProbabilityEventSelectionProvider( - probability_distribution=config["distribution"], - potential_events=self._transform_list(config["from"]) - ) - ) - return registry[config["selection"]](config) diff --git a/provider/generic/count_provider.py b/provider/generic/count_provider.py deleted file mode 100644 index d1fa355..0000000 --- a/provider/generic/count_provider.py +++ /dev/null @@ -1,25 +0,0 @@ -import random -from abc import abstractmethod - - -class CountProvider: - @abstractmethod - def get(self): - pass - - -class StaticCountProvider(CountProvider): - def __init__(self, count): - self.count = count - - def get(self): - return self.count - - -class UniformCountProvider(CountProvider): - def __init__(self, minimal_value, maximal_value): - self.minimal_value = minimal_value - self.maximal_value = maximal_value - - def get(self): - return int(int(random.uniform(self.minimal_value, self.maximal_value))) diff --git a/provider/generic/count_provider_registry.py b/provider/generic/count_provider_registry.py deleted file mode 100644 index 1d8bb17..0000000 --- a/provider/generic/count_provider_registry.py +++ /dev/null @@ -1,8 +0,0 @@ -from provider.generic.count_provider import CountProvider, UniformCountProvider, StaticCountProvider - -class CountProviderRegistry: - def get(self, config) -> CountProvider: - registry = dict() - registry["static"] = lambda config: StaticCountProvider(config["count"]) - registry["uniform"] = lambda config: UniformCountProvider(config["min"], config["max"]) - return registry[config["type"]](config) diff --git a/provider/load/README.md b/provider/load/README.md deleted file mode 100644 index a759420..0000000 --- a/provider/load/README.md +++ /dev/null @@ -1 +0,0 @@ -## Load \ No newline at end of file diff --git a/provider/load/load_provider_registry.py b/provider/load/load_provider_registry.py deleted file mode 100644 index 53330a7..0000000 --- a/provider/load/load_provider_registry.py +++ /dev/null @@ -1,9 +0,0 @@ -from provider.load.load_provider import LoadProvider, ConstantLoadProvider, GradualIncreasingLoadProvider - -class LoadProviderRegistry: - def get(self, config) -> LoadProvider: - registry = dict() - registry["constant"] = lambda config: ConstantLoadProvider(config["load"]) - registry["gradual"] = lambda config: GradualIncreasingLoadProvider(config["tickCount"], config["minimalLoad"], - config["load"]) - return registry[config["loadType"]](config) diff --git a/provider/provider_registry.py b/provider/provider_registry.py deleted file mode 100644 index 301da68..0000000 --- a/provider/provider_registry.py +++ /dev/null @@ -1,23 +0,0 @@ -from provider.data.case_provider import CaseIdProviderRegistry -from provider.datasource.sensor_topology_registry import DataSourceProviderRegistry -from provider.generic.count_provider_registry import CountProviderRegistry -from provider.load.load_provider_registry import LoadProviderRegistry -from provider.transition.duration.duration_registry import DurationProviderRegistry -from simulation.eventloop.event_loop_registry import EventLoopRegistry - -providers = dict() -providers["numberOfDataSources"] = lambda config, field: CountProviderRegistry().get(config[field]) -providers["caseId"] = lambda config, field: CaseIdProviderRegistry().get(config[field]) -providers["duration"] = lambda config, field: DurationProviderRegistry().get(config[field]) -providers["eventLoop"] = lambda config, field: EventLoopRegistry().get(config) -providers["loadProfile"] = lambda config, field: LoadProviderRegistry().get(config[field]) -providers["dataSourceTopology"] = lambda config, field: DataSourceProviderRegistry().get(config[field]) - - -class ProviderRegistry: - - def __init__(self, configuration): - self.configuration = configuration - - def get(self, field): - return providers[field](self.configuration, field) diff --git a/provider/sink/console/console_sink.py b/provider/sink/console/console_sink.py deleted file mode 100644 index e931eaf..0000000 --- a/provider/sink/console/console_sink.py +++ /dev/null @@ -1,16 +0,0 @@ -from core.event import AbstractEvent -from provider.sink.sink_provider import Sink, SinkProvider - -class PrintConsole(Sink): - - def __init__(self, id): - self.id = id - - def send(self, event: AbstractEvent) -> None: - print("Sensor " + self.id + ": " + str(event)) - - -class PrintConsoleSinkProvider(SinkProvider): - def get_sender(self, id) -> Sink: - return PrintConsole(id) - diff --git a/provider/sink/kafka/kafka_sink.py b/provider/sink/kafka/kafka_sink.py deleted file mode 100644 index 0ad95ce..0000000 --- a/provider/sink/kafka/kafka_sink.py +++ /dev/null @@ -1,45 +0,0 @@ -import json -import string - - -from core.event import AbstractEvent -from provider.sink.kafka.partition.partition_provider import PartitionProvider -from provider.sink.sink_provider import Sink, SinkProvider - - -class KafkaSink(Sink): - def __init__(self, bootstrap_server_url: string, client_id: string, topic: string, partition_provider: PartitionProvider): - from kafka import KafkaProducer - - self.producer = KafkaProducer( - bootstrap_servers=bootstrap_server_url, - client_id=client_id, - key_serializer=lambda key: str.encode(key), - value_serializer=lambda value: str.encode(value) - ) - self.topic = topic - self.partition_provider = partition_provider - - def send(self, event: AbstractEvent) -> None: - self.producer.send( - self.topic, - value=json.dumps(event.__dict__), - key=event.get_case(), - partition=self.partition_provider.get_partition(event) - ).add_callback(lambda record_metadata: print(record_metadata)) - - -class KafkaSinkProvider(SinkProvider): - - def __init__(self, bootstrap_server: string, topic: string, partition_provider: PartitionProvider): - self.bootstrapServer = bootstrap_server - self.topic = topic - self.partition_provider = partition_provider - - def get_sender(self, id) -> Sink: - return KafkaSink( - bootstrap_server_url=self.bootstrapServer, - client_id=str(id), - partition_provider=self.partition_provider, - topic=self.topic - ) diff --git a/provider/sink/kafka/partition/partition_provider.py b/provider/sink/kafka/partition/partition_provider.py deleted file mode 100644 index 4597c14..0000000 --- a/provider/sink/kafka/partition/partition_provider.py +++ /dev/null @@ -1,28 +0,0 @@ -from abc import ABC, abstractmethod - -from core.event import Event, AbstractEvent - - -class PartitionProvider(ABC): - @abstractmethod - def get_partition(self, event: AbstractEvent) -> int: - pass - - -class ConstantPartitionProvider(PartitionProvider): - - def __init__(self, partition): - self.partition = partition - - def get_partition(self, event): - return self.partition - - -class CaseIdPartitionProvider(PartitionProvider): - def __init__(self, max_number_of_partitions): - self.max_number_of_partitions = max_number_of_partitions - - def get_partition(self, event: Event) -> int: - return hash(event.case_id) % self.max_number_of_partitions - - diff --git a/provider/sink/kafka/partition/partition_registry.py b/provider/sink/kafka/partition/partition_registry.py deleted file mode 100644 index 1bedb25..0000000 --- a/provider/sink/kafka/partition/partition_registry.py +++ /dev/null @@ -1,10 +0,0 @@ -from provider.sink.kafka.partition.partition_provider import ConstantPartitionProvider, CaseIdPartitionProvider - - -class PartitionProviderRegistry: - - def get(self, config): - registry = dict() - registry["constant"] = lambda config: ConstantPartitionProvider(config["number"]) - registry["caseId"] = lambda config: CaseIdPartitionProvider(config["numberPartitions"]) - return registry[config["type"]](config) \ No newline at end of file diff --git a/provider/sink/sink_provider.py b/provider/sink/sink_provider.py deleted file mode 100644 index 9abf59e..0000000 --- a/provider/sink/sink_provider.py +++ /dev/null @@ -1,16 +0,0 @@ -import abc -from core.event import AbstractEvent - - -class Sink: - - @abc.abstractmethod - def send(self, event: AbstractEvent) -> None: - pass - - -class SinkProvider: - - @abc.abstractmethod - def get_sender(self, id) -> Sink: - pass diff --git a/provider/sink/sink_provider_registry.py b/provider/sink/sink_provider_registry.py deleted file mode 100644 index 4f1d8d1..0000000 --- a/provider/sink/sink_provider_registry.py +++ /dev/null @@ -1,31 +0,0 @@ -from provider.sink.console.console_sink import PrintConsoleSinkProvider -from provider.sink.kafka.kafka_sink import KafkaSinkProvider -from provider.sink.kafka.kafka_validation_sink import KafkaValidationSinkProvider -from provider.sink.kafka.partition.partition_registry import PartitionProviderRegistry -from provider.sink.sink_provider import SinkProvider - - -class SinkProviderRegistry: - - def get_ui(self): - from provider.sink.ui.terminal_ui_sink import TerminalGuiSinkProvider - return TerminalGuiSinkProvider() - - def get(self, config) -> SinkProvider: - registry = dict() - registry["kafka"] = lambda config: KafkaSinkProvider( - bootstrap_server=config["bootstrapServer"], - topic=config["topic"], - partition_provider=PartitionProviderRegistry().get(config["partition"]) - ) - registry["kafkaValidation"] = lambda config: KafkaValidationSinkProvider( - bootstrap_server=config["bootstrapServer"], - topic=config["topic"], - partition_provider=PartitionProviderRegistry().get(config["partition"]), - validation_topic=config["validationTopic"], - validation_split=config["validationSplit"] - ) - registry["ui"] = lambda config: self.get_ui() - registry["console"] = lambda config: PrintConsoleSinkProvider() - - return registry[config["type"]](config) \ No newline at end of file diff --git a/provider/sink/ui/terminal_ui_sink.py b/provider/sink/ui/terminal_ui_sink.py deleted file mode 100644 index bfed1f9..0000000 --- a/provider/sink/ui/terminal_ui_sink.py +++ /dev/null @@ -1,21 +0,0 @@ -from core.event import AbstractEvent -from provider.sink.sink_provider import Sink, SinkProvider -from view.terminal import Terminal - - -class TerminalGui(Sink): - def __init__(self, terminal): - self.terminal: Terminal = terminal - - def send(self, event: AbstractEvent): - self.terminal.print(event) - - -class TerminalGuiSinkProvider(SinkProvider): - - def __init__(self): - self.i = -1 - - def get_sender(self, id) -> Sink: - self.i += 1 - return TerminalGui(Terminal(title=id, start_position=self.i)) \ No newline at end of file diff --git a/provider/transition/duration/duration_provider.py b/provider/transition/duration/duration_provider.py deleted file mode 100644 index f94305a..0000000 --- a/provider/transition/duration/duration_provider.py +++ /dev/null @@ -1,36 +0,0 @@ -import random -from abc import abstractmethod - -class DurationProvider: - - @abstractmethod - def get_duration(self): - pass - - -class UniformDurationProvider(DurationProvider): - - def __init__(self, lower_bound, upper_bound): - self.lower_border = lower_bound - self.upper_border = upper_bound - - def get_duration(self): - return random.uniform(self.lower_border, self.upper_border) - - -class StaticDurationProvider(DurationProvider): - def __init__(self, duration): - self.duration = duration - - def get_duration(self): - return self.duration - - -class GaussianDurationProvider(DurationProvider): - def __init__(self, mu, sigma): - self.mu = mu - self.sigma = sigma - - def get_duration(self): - return random.gauss(mu=self.mu, sigma=self.sigma) - diff --git a/provider/transition/duration/duration_registry.py b/provider/transition/duration/duration_registry.py deleted file mode 100644 index 1009bc0..0000000 --- a/provider/transition/duration/duration_registry.py +++ /dev/null @@ -1,15 +0,0 @@ -from provider.transition.duration.duration_provider import DurationProvider, StaticDurationProvider, \ - UniformDurationProvider, GaussianDurationProvider - - -class DurationProviderRegistry(DurationProvider): - def get(self, config) -> DurationProvider: - registry = dict() - registry["static"] = lambda config: StaticDurationProvider(config["duration"]) - registry["uniform"] = lambda config: UniformDurationProvider(config["lowerBound"], config["upperBound"]) - registry["gaussian"] = lambda config: GaussianDurationProvider(config["mu"], config["sigma"]) - - if type(config) is int: - return StaticDurationProvider(config) - - return registry[config["type"]](config) diff --git a/provider/transition/next_state_provider.py b/provider/transition/next_state_provider.py deleted file mode 100644 index c1a51a2..0000000 --- a/provider/transition/next_state_provider.py +++ /dev/null @@ -1,30 +0,0 @@ -from abc import abstractmethod -import random -from typing import List - - -class ProbabilityDistributionProvider: - - @abstractmethod - def get_next_states(self, number_of_data_sources) -> List[int]: - pass - - -def get_random_distinct(max_length, count) -> List[int]: - random_elements: List[int] = [] - if count > max_length: - raise ValueError("Count must be smaller than array length") - while len(random_elements) < count: - next_element = int(random.uniform(0, max_length)) - if next_element not in random_elements: - random_elements.append(next_element) - return random_elements - - -class DistinctProbabilityDistributionProvider(ProbabilityDistributionProvider): - def __init__(self, number_of_next_state_provider): - self.number_of_next_state_provider = number_of_next_state_provider - - def get_next_states(self, possible_next_state) -> List[int]: - number_of_next_state = self.number_of_next_state_provider.get() - return get_random_distinct(possible_next_state, number_of_next_state) diff --git a/provider/transition/nextsensor/next_sensor_provider_registry.py b/provider/transition/nextsensor/next_sensor_provider_registry.py deleted file mode 100644 index c666bbb..0000000 --- a/provider/transition/nextsensor/next_sensor_provider_registry.py +++ /dev/null @@ -1,14 +0,0 @@ -from provider.transition.nextsensor.next_sensor_provider import NextSensorProvider, DistinctNextSensorProvider - -class NextSensorProviderRegistry: - - def get(self, config): - registry = dict() - - registry["classic"] = lambda config: NextSensorProvider(config["transition"]) - registry["next_sensor"] = lambda config: DistinctNextSensorProvider(config["index"]) - - if type(config) is int: - return DistinctNextSensorProvider(config) - - return registry[config["type"]](config) \ No newline at end of file diff --git a/provider/transition/transition_matrix_creation_strategy.py b/provider/transition/transition_matrix_creation_strategy.py deleted file mode 100644 index 12ceafe..0000000 --- a/provider/transition/transition_matrix_creation_strategy.py +++ /dev/null @@ -1,52 +0,0 @@ -from abc import ABC, abstractmethod -import random - -from provider.generic.count_provider_registry import CountProviderRegistry -from provider.transition.nextsensor.next_sensor_provider import NextSensorProvider, NextSensorChooseProvider -from provider.transition.next_state_provider import DistinctProbabilityDistributionProvider - - -class TransitionMatrixCreationStrategy(ABC): - @abstractmethod - def next(self, number_of_sensors) -> NextSensorProvider: - pass - - -class RandomTransitionMatrixCreationStrategy(TransitionMatrixCreationStrategy): - - def __init__(self, probability_distribution): - self.transition_indices_provider = probability_distribution - - def next(self, number_of_sensors) -> NextSensorProvider: - transition_indices = self.transition_indices_provider.get_next_states(number_of_sensors) - random_numbers = [0.0] * number_of_sensors - remaining_prob = 1.0 - for i in range(len(transition_indices) - 1): - random_value = round(random.random() * remaining_prob, 2) - remaining_prob -= random_value - random_numbers[transition_indices[i]] = random_value - - if remaining_prob > 0: - random_numbers[transition_indices[len(transition_indices) - 1]] = round(remaining_prob, 2) - return NextSensorChooseProvider(number_of_sensors).get(random_numbers) - - -class RandomTransitionMatrixProviderRegistry: - - def __init__(self): - self.number_of_next_sensors_provider_registry = CountProviderRegistry() - - def get(self, type: str, args) -> RandomTransitionMatrixCreationStrategy: - registry = dict() - registry["random"] = lambda config: ( - RandomTransitionMatrixCreationStrategy( - probability_distribution= - DistinctProbabilityDistributionProvider( - number_of_next_state_provider= - self.number_of_next_sensors_provider_registry.get( - config["numberOfTransitions"] - ) - ) - ) - ) - return registry[type](args) diff --git a/provider/transition/transition_probability_provider.py b/provider/transition/transition_probability_provider.py deleted file mode 100644 index b2c1645..0000000 --- a/provider/transition/transition_probability_provider.py +++ /dev/null @@ -1,28 +0,0 @@ -import abc -from abc import abstractmethod -from typing import List - - -class TransitionProbabilityProvider: - - @abstractmethod - def get_transition_probabilities(self): - pass - - -class MatrixBasedTransitionProvider(TransitionProbabilityProvider): - - def __init__(self, transition_matrix: List[List[float]]): - self.transition_matrix = transition_matrix - self.transition_iterator = iter(transition_matrix) - - def get_transition_probabilities(self) -> List[float]: - return next(self.transition_iterator) - - -class TransitionProbabilityProviderFactory(abc.ABC): - - @abc.abstractmethod - def get(self, number_of_data_sources): - pass - diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..7f3d194 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,20 @@ +[project] +name = "distributed-event-factory" +version = "0.2.2" +authors = [ + { name="Hendrik Reiter", email="hendrik.reiter@email.uni-kiel.de" }, +] +description = "A tool for generating distributed event logs" +readme = "README.md" +requires-python = ">=3.8" +classifiers = [ + "Programming Language :: Python :: 3", + "Operating System :: OS Independent", +] + +[project.urls] +Homepage = "https://github.com/cau-se/DistributedEventFactory" + +[build-system] +requires = ["hatchling"] +build-backend = "hatchling.build" diff --git a/requirements.txt b/requirements.txt index 57d97e2..66e0e22 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,10 +1,10 @@ -numpy~=1.24.1 +numpy~=1.26.4 matplotlib~=3.6.2 networkx~=3.0 -websockets~=10.4 -rel==0.4.9 -websocket-client==1.6.1 kafka-python==2.0.2 scheduled-futures==1.1.0 PyYAML~=6.0.1 -python-dotenv~=1.0.1 \ No newline at end of file +python-dotenv~=1.0.1 +future~=0.18.2 +requests~=2.25.1 +process-mining-core~=0.1.3 \ No newline at end of file diff --git a/run-load-backend.sh b/run-load-backend.sh new file mode 100755 index 0000000..65c18f1 --- /dev/null +++ b/run-load-backend.sh @@ -0,0 +1 @@ +docker run -d -e BOOTSTRAP_SERVER=$1 -e TOPIC=$2 --network=host hendrikreiter/def-loadtest-backend:0.1.0 \ No newline at end of file diff --git a/scalability-test.py b/scalability-test.py deleted file mode 100644 index f03bf3f..0000000 --- a/scalability-test.py +++ /dev/null @@ -1,14 +0,0 @@ -import os -import threading - -from simulation.distributed_event_factory import DistributedEventFactory - -if __name__ == '__main__': - if "CONFIG_FILE" in os.environ: - config_file = os.environ["CONFIG_FILE"] - else: - config_file = "config/maturity-test.yml" - - distributed_event_factory = DistributedEventFactory(config_file) - - threading.Timer(10.0, distributed_event_factory.start).start() \ No newline at end of file diff --git a/simulation/distributed_event_factory.py b/simulation/distributed_event_factory.py deleted file mode 100644 index ba25a06..0000000 --- a/simulation/distributed_event_factory.py +++ /dev/null @@ -1,23 +0,0 @@ -import yaml - -from provider.provider_registry import ProviderRegistry -from simulation.simulation import Simulation - - -class DistributedEventFactory: - - def __init__(self, configuration_file): - self.configuration_file = configuration_file - - def start(self): - with open(self.configuration_file) as file: - configuration = yaml.safe_load(file) - registry = ProviderRegistry(configuration) - - simulation = Simulation( - number_of_data_sources_provider=registry.get("numberOfDataSources"), - case_id_provider=registry.get("caseId"), - event_loop=registry.get("eventLoop"), - data_source_topology_provider=registry.get("dataSourceTopology"), - ) - simulation.start() diff --git a/simulation/eventloop/README.md b/simulation/eventloop/README.md deleted file mode 100644 index 84945c1..0000000 --- a/simulation/eventloop/README.md +++ /dev/null @@ -1,7 +0,0 @@ -# Event Loop - -Currently, two types of event loops are supported - -`type: load` creates an event loop where the speed of the simulation can be controlled. This should normally be used. - -`type: debug` addresses the issue that the load type does not give stack trace during development \ No newline at end of file diff --git a/simulation/eventloop/event_loop.py b/simulation/eventloop/event_loop.py deleted file mode 100644 index 71d1f69..0000000 --- a/simulation/eventloop/event_loop.py +++ /dev/null @@ -1,47 +0,0 @@ -from abc import abstractmethod, ABC -import time - -from scheduled_futures import ScheduledThreadPoolExecutor - - -class EventLoop(ABC): - - @abstractmethod - def run(self, process_simulator): - pass - - def get_number_of_generated_events(self): - pass - - -class DebugEventLoop(EventLoop): - - def __init__(self): - self.tick_count = 0 - - def run(self, process_simulator): - while True: - self.tick_count += 1 - process_simulator.simulate() - - def get_number_of_generated_events(self): - return self.tick_count - - -class LoadEventLoop(EventLoop): - def __init__(self, load_provider): - self.load_provider = load_provider - - def run(self, process_simulator): - with ScheduledThreadPoolExecutor() as executor: - while True: - scheduler = executor.schedule( - process_simulator.simulate, - period=1/self.load_provider.get_load_value() - ) - time.sleep(1) - scheduler.cancel() - - def get_number_of_generated_events(self): - pass - diff --git a/simulation/eventloop/event_loop_registry.py b/simulation/eventloop/event_loop_registry.py deleted file mode 100644 index 5781283..0000000 --- a/simulation/eventloop/event_loop_registry.py +++ /dev/null @@ -1,11 +0,0 @@ -from provider.load.load_provider_registry import LoadProviderRegistry -from simulation.eventloop.event_loop import DebugEventLoop, LoadEventLoop - - -class EventLoopRegistry: - - def get(self, config): - registry = dict() - registry["debug"] = lambda config: DebugEventLoop() - registry["load"] = lambda config: LoadEventLoop(LoadProviderRegistry().get(config)) - return registry[config["type"]](config) diff --git a/simulation/process_simulator.py b/simulation/process_simulator.py deleted file mode 100644 index 8efd86e..0000000 --- a/simulation/process_simulator.py +++ /dev/null @@ -1,63 +0,0 @@ -import random -import string -from datetime import datetime, timedelta -from typing import List - -from core.datasource import DataSource -from core.datasource_id import END_DATA_SOURCE_ID, START_SENSOR_ID, DataSourceId -from provider.data.case_provider import CaseIdProvider - - -class ProcessSimulator: - def __init__( - self, - data_sources: List[DataSource], - case_id_provider: CaseIdProvider): - self.tokens: List[Token] = [] - self.sensors: List[DataSource] = data_sources - self.case_id_provider = case_id_provider - self.last_time = datetime.now() - - def simulate(self): - if not self.tokens: - case_id = self.case_id_provider.get() - self.tokens.append(Token(case_id, START_SENSOR_ID, self.last_time)) - - token = self.tokens[int(random.uniform(0, len(self.tokens)))] - current_data_source = self._get_sensor_with_id(token.data_source_id) - event = current_data_source.get_event_provider().get_event_data() - - if token.data_source_id == END_DATA_SOURCE_ID: - current_data_source.emit_event(token.case, event.get_activity(), token.last_timestamp) - self.tokens.remove(token) - else: - activity = event.get_activity() - token.add_to_last_timestamp(duration=event.get_duration()) - last_timestamp = token.last_timestamp - current_data_source.emit_event(token.case, activity, last_timestamp) - self.last_time = last_timestamp - token.set_data_source_id(self.sensors[event.get_next_sensor() + 1].get_id()) - - def _get_sensor_with_id(self, sensor_id) -> DataSource: - for sensor in self.sensors: - if sensor.get_id() == sensor_id: - return sensor - raise ValueError("Sensor not found") - - -class Token: - def __init__( - self, - case: string, - data_source_id: DataSourceId, - last_timestamp: datetime - ): - self.case = case - self.data_source_id = data_source_id - self.last_timestamp = last_timestamp - - def set_data_source_id(self, data_source_id): - self.data_source_id = data_source_id - - def add_to_last_timestamp(self, duration): - self.last_timestamp += timedelta(minutes=duration) diff --git a/simulation/simulation.py b/simulation/simulation.py deleted file mode 100644 index 9d9b45f..0000000 --- a/simulation/simulation.py +++ /dev/null @@ -1,33 +0,0 @@ -from simulation.eventloop.event_loop import EventLoop -from simulation.process_simulator import ProcessSimulator -from provider.data.case_provider import CaseIdProvider -from provider.generic.count_provider import CountProvider -from provider.datasource.sensor_topology import DataSourceTopologyProvider - - -class Simulation: - - def __init__( - self, - number_of_data_sources_provider: CountProvider, - data_source_topology_provider: DataSourceTopologyProvider, - case_id_provider: CaseIdProvider, - event_loop: EventLoop - ): - self.number_of_data_sources_provider: CountProvider = number_of_data_sources_provider - self.data_source_topology_provider: DataSourceTopologyProvider = data_source_topology_provider - self.case_id_provider: CaseIdProvider = case_id_provider - self.event_loop = event_loop - - def start(self): - number_of_data_sources = self.number_of_data_sources_provider.get() - data_sources = self.data_source_topology_provider.get_sensor_topology(number_of_data_sources) - process_simulator = ProcessSimulator( - data_sources=data_sources, - case_id_provider=self.case_id_provider, - ) - try: - self.event_loop.run(process_simulator) - except KeyboardInterrupt: - print(self.event_loop.get_number_of_generated_events()) - print("Simulation ended by user") \ No newline at end of file diff --git a/test/__init__.py b/test/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/test/integration_test.py b/test/integration_test.py new file mode 100644 index 0000000..0226e53 --- /dev/null +++ b/test/integration_test.py @@ -0,0 +1,18 @@ +import unittest + +from distributed_event_factory.event_factory import EventFactory +from distributed_event_factory.provider.sink.test.test_sink import TestSink +from distributed_event_factory.provider.sink.test.test_sink_parser import TestSinkParser + + +class IntegrationTest(unittest.TestCase): + def test_integration(self): + event_factory = EventFactory() + event_factory.add_sink_parser("test", TestSinkParser()) + (event_factory + .add_directory(directory="config/datasource/assemblyline") + .add_file("config/simulation/countbased.yaml") + .add_file("config/sink/test-sink.yaml") + .run()) + sink_mock: TestSink = event_factory.get_sink("test") + self.assertEqual(100, len(sink_mock.event_log))