Giter Club home page Giter Club logo

jssenv's Introduction

Job-Shop Scheduling Environment Build Status

An optimized OpenAi gym's environment to simulate the Job-Shop Scheduling problem.

til

If you've found our work useful for your research, you can cite the paper as follows:

@misc{tassel2021reinforcement,
      title={A Reinforcement Learning Environment For Job-Shop Scheduling}, 
      author={Pierre Tassel and Martin Gebser and Konstantin Schekotihin},
      year={2021},
      eprint={2104.03760},
      archivePrefix={arXiv},
      primaryClass={cs.LG}
}

Getting Started

This repository is available as a pip package:

pip install JSSEnv==1.0.0

Once installed, the environment will be available in your OpenAi's gym environment and can be used to train a reinforcement learning agent:

import gym
env = gym.make('JSSEnv:jss-v1', env_config={'instance_path': 'INSTANCE_PATH'})

Important: Your instance must follow Taillard's specification.

Project Organization

├── README.md             <- The top-level README for developers using this project.
├── JSSEnv
│   └── envs              <- Contains the environment.
│       └── instances     <- Contains some intances from the litterature.
│
└── tests                 
    │
    ├── test_state.py     <- Unit tests focus on testing the state produced by
    │                        the environment.
    │
    ├── test_rendering.py <- Unit tests for the rendering, mainly used as an example
    |                        how to render the environment.
    │
    └── test_solutions.py <- Unit tests to ensure that our environment is correct checking
                             known solution in the litterature leads to the intended make-
                             span. We also check if all actions provided by the solution are
                             legal in our environment.

License

MIT License

jssenv's People

Contributors

ingambe avatar

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.