Welcome to PySCFabSim
A performant & scalable semiconductor fab simulator for scheduling & machine learning
research.
Use our event-based simulator for your research and industrial projects.
Discover
Install
GitHub Repository
how to
contribute?
About PySCFabSim
Our tool is an event-based simulator built in pure Python.
The was developed for simulating factories up to real-world size, aiming to support the research into
new scheduling algorithms from prototyping to large-scale experiments. The simulator comes with a
declarative environment definition framework and is out of the box usable with existing reinforcement
learning methods, priority-based rules, or evolutionary algorithms.
Our Story
This work was partially funded by KWF project 28472, cms electronics GmbH, FunderMax GmbH,
Hirsch Armbänder GmbH, incubed IT GmbH, Infineon Technologies Austria AG, Isovolta AG,
Kostwein Holding GmbH, and Privatstiftung Kärntner Sparkasse.
Our Goals
Extensibility
Performance
Scalability
Easy Integration
Join our team
We welcome contributions to our repository, included new plugins and datasets
Semiconductor Manufacturing Process Model
Our fab model involves many special characteristics and challenges of the semiconductor manufacturing
process.
Re-entrant flow
A lot visits a list of machine multiple times.This characteristic of the semicondutory
manufacturing makes avoiding congestions difficult.
Batch machines
Some machine can process up to 10 lots of the same operation in
parallel.
Breakdowns & maintenances
Machine suffer from regular breakdowns or become unavailable due to
planned maintenance.
Rework & inspection steps
Online route changes are possible for faulty lots.
Additionally, some inspecition steps are only performed for randomly selected lots.
Dedications
Some steps enforce machine dedication in the re-entrant flow.
Thus, the lot has to visit the same machine multiple times, with several steps
in-between.
Sequence-dependent setups
Setup times may depend on both the previous and the required setup.
Our Team
PySCFabSim was developed by the
Production Systems group at the
Department of Artificial Intelligence and
Cybersecurity
of the University of Klagenfurt.
Benjamin Kovács
DEVELOPER
Benjamin Kovács is a Ph.D. candidate in the Institute for Artificial Intelligence and
Cybersecurity at the University of Klagenfurt, Austria. His research topic is the
development and application of simulations for optimizing manufacturing processes.
He is the main developer and maintainer of this simulator project.
Pierre Tassel
DEVELOPER
Pierre Tassel is a Ph.D. candidate in the Institute for Artificial Intelligence and
Cybersecurity at the University of Klagenfurt, Austria. His current research interests
include reinforcement learning methods for combinatorial optimization problems and
constraint programming.
Martin Gebser
SUPERVISOR
Martin Gebser is professor for Production Systems at the University of
Klagenfurt and Graz University of Technology. He received his PhD from the
University of Potsdam in 2011, where he worked on theoretical and practical
aspects of declarative problem solving methods. He works on applications of modern
solving technology addresses, e.g., planning and scheduling, product configuration,
and system design.
Recent Appearances & Publication
Our tool has been published in multiple peer-reviewed scientific conferences.
Further conference and journal submissions are in progress.
Self-Supervised & Reinforcement Learning
Preprint
Poster presentation at the 2023 34th Advanced Semiconductor Manufacturing Conference
Reinforcement Learning Environment
Presentation at the 2022 Winter Simulation Conference
Reinforcement Learning Environment
Paper at the 2022 Winter Simulation Conference
Presentation at the 2022 33rd Advanced Semiconductor Manufacturing Conference
Paper at the 2022 33rd Advanced Semiconductor Manufacturing Conference
Installation
We provide three installation options based on the requirements of your project.
-
Pre-built Docker Containers EASY
- Check out the performance HOT
- Try the Weights & Biases monitoring
plugin
- Generate charts of schedules
- Play with our examples
- Reproduce results in papers
- Use your own datasets
- No setup outside Docker containers
- No option to modify the core simulation
- No option to add custom algorithms
-
PyPI Packages
- Easy installation with pip or conda
- Interfaces for dispatching strategies, planning tools, and evolutionary algorithms
- Create (single- or multi-agent) reinforcement learning environments
- Customize reinforcement learning environments
- Use your own datasets
- Develop custom plugins
- No option to modify the core simulation
-
Latest Source Codes EXPERT
- For experts who look for building upon our tool
- Fully customizable
- Extend the simulator
- Contribute to the codebase
- Write documentation
- Join the community
- Report bugs, feature requests
- Manual installation of package required