Welcome to FactorySim Artifact
We strongly recommend using our Docker image and pre-built JAR files to save time and effort. However, the full source code is also available in its respective folders if you want to explore the implementation or run the FactorySim natively.
- How to Run FactorySim (Docker + JAR)
To run FactorySim using Docker and the JAR file, please follow these in order:
-
Instruction 1 – How to set up and run MO Adaptive Scheduler using Docker.
-
Instruction 2 – How to run FactorySim app using the JAR file on your local machine.
-
We also strongly recommend to check the provided "GUI-Usage-Description.txt" file in order to be familiar of how to use the Graphical User Interface of the FactorySim Artifact.
After completing Instruction 1 and Instruction 2 and reading the how to use, you are ready to experience & experiment the FactorySim.
- Exploring & Running the MO Adaptive Scheduler
You can explore and run the MO Adaptive Scheduler implemented in Python independently of the Java application. This allows you to test the scheduling logic on its own.
Requirements:
- Python 3.x (e.g., 3.10 or 3.11)
- A Python IDE or editor (e.g. Spyder, VS Code, PyCharm, etc.)
- The provided
requirements.txtfile
Step-by-Step Guidance:
-
Open your preferred Python IDE (e.g., Spyder) or a terminal.
-
Navigate to the folder containing the Python scheduler code and
requirements.txt. -
(Optional but recommended) Create and activate a virtual environment.
-
Install the dependencies:
bash pip install -r requirements.txt
-
Open the scheduler project in your IDE and run the scheduler script (scheduler.py)
By following these steps, you can test the scheduler and its logic even without running the FactorySim Java app.
- Exploring & Running the FactorySim Java App using Source Code
If you prefer to explore and run the FactorySim Java application from source, you can do so using a Java IDE.
Requirements:
- Java JDK 21 or newer
- A Java IDE such as IntelliJ IDEA (recommended), Eclipse, or VS Code
- Maven support (IntelliJ IDEA has built-in Maven support)
Step-by-Step Guidance:
-
Open your Java IDE (e.g., IntelliJ IDEA).
-
Choose “Open Project” (or similar) and select the "FactorySim" Java project folder that we provide.
-
Let the IDE import the project as a Maven project (it will detect the
pom.xmlitself). -
Ensure that the project SDK/JDK is set to Java 21 (or the version specified in the
pom.xml). -
In the IDE, locate the main class ("factory.Main") and run it from there.
-
Alternatively, you can use Maven from the terminal:
bash mvn clean package
and then run the produced JAR as described in Instruction 2.
Notes:
-
For the fastest setup, use:
- Docker (Instruction 1)
- Pre-built JAR (Instruction 2)
-
To inspect and experiment with the scheduling logic:
- Use the Python scheduler with 'requirements.txt' in a Python IDE.
-
To explore or extend the UI and full simulation logic:
- Open the "FactorySim" Java project in IntelliJ IDEA (or another Java IDE) using the provided project folder.
Enjoy exploring and experimenting with FactorySim!
License:
Licensed under Apache License 2.0. See 'LICENSE' and 'NOTICE'.