Giter VIP home page Giter VIP logo

simprocesd's Introduction

SimPROCESD: Simulated-Production Resource for Operations & Conditions Evaluations to Support Decision-making

SimPROCESD is a discrete event simulation package written in Python that is designed to model the behavior of discrete manufacturing systems. Specifically, it focuses on asynchronous production lines with finite buffers. It also provides functionality for modeling the degradation and maintenance of machines in these systems.

In addition to modeling the behavior of existing systems, SimPROCESD is also intended to help with optimizing those systems by simulating various changes to them and reviewing the results. For instance, users may be interested in evaluating alternative maintenance policies for a particular system.

The software is available for public use through a publicly available GitHub repository. Any user may create a fork (copy) of the repository to freely experiment (e.g., class extensions to model complex processes) with the code without affecting the original source code.

NOTE: SimPROCESD project is in early development and may receive updates that are not backwards compatible.

GitHub Pages

Additional documentation, including API, is available at: https://usnistgov.github.io/simprocesd/

Installation

SimPROCESD can be installed via pip using:

pip install simprocesd

To also include optional dependencies needed to some of the examples:

pip install simprocesd[examples]

Installation Requirements

Using SimPROCESD requires:

  • Python ≥ 3.7:
  • NumPy ≥ 1.21
  • Matplotlib ≥ 3.5 for using plot functions and running certain examples.
  • [optional] scipy ≥ 1.5.2 for running certain examples.

Quickstart

The package provides following objects for modeling a manufacturing process:

  • Source: Introduces new parts to the system.
  • Machine: Retrieves, processes, and relinquishes parts. Can be subject to degradation, failures, and repairs.
  • Buffer: Retrieves, stores, and relinquishes parts.
  • DecisionGate: Conditionally allow parts to pass between its upstream and downstream.
  • Sink: Collects finished parts that exit the system.
  • Maintainer: Performs requested maintenance as soon as possible. Has a configurable capacity.
  • Probes & Sensors: Take periodic or on-demand readings and record them. The recorded data is accessible during the simulation and after.

Examples

A collection of examples is available at examples.

Simantha

SimPROCESD was forked from the original Simantha project which can be found here. Another iteration of Simantha extends a few capabilities and examples to prepare it for the modeling of condition monitoring systems and prognostics and health management tools.

Who We Are

This tool is part of the Smart Manufacturing Industrial AI Management & Metrology project in the Smart Connected Systems Division (Communications Technology Laboratory) at NIST.

Contacts:

License

SimPROCESD and all of it's associated projects are in the public domain (see License). For more information and to provide feedback, please open an issue, submit a pull-request, or email the point of contact (above).

Citing this software

Citation examples can be found at: https://www.nist.gov/open/copyright-fair-use-and-licensing-statements-srd-data-software-and-technical-series-publications

DOI: https://data.nist.gov/od/id/mds2-2733

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.