Skip to main content

Flexible job shop scheduler in Python

Project description


LICENSE PyPI Version Download Build Status Lint Status Docs Status Code Coverage

Documentation | Tutorials | Release Notes | 中文

python-lekin is a Flexible Job Shop Scheduler Library, named after Lekin. As a core function in APS (advanced planning and scheduler), it helps manufacturers optimize the allocation of materials and production capacity optimally to balance demand and capacity.

  • Changeover Optimization
  • Ready for demo, research and maybe production

DEVELOPING - NOT FINISHED AND DON'T USE IT NOW!

Features

  • Multiple solving strategies:
    • Continuous Time Planning (CTP)
    • Construction Heuristics
    • Meta-heuristics (Genetic Algorithm, Simulated Annealing)
    • Reinforcement Learning
    • Operation Research methods
  • Extensible architecture for custom solvers
  • Comprehensive constraint handling
  • Performance metrics and visualization
  • Parallel solving capabilities
  • Solution validation and verification

Tutorial

[Open In Colab]

Installation

pip install lekin

Usage

from lekin import Heuristics, Rule
from lekin import Scheduler

solver = Rule('SPT')
scheduler = Scheduler(solver)
scheduler.solve(job_list, machine_list)

scheduler.draw()

Examples

In real world, Lekin integrates with MES to deploy production plans on the shop floor. Integration with ERP system is also required to exchange information on demand, inventory, and production

Metaheuristics combined with Construction Heuristics to initialize is the recommended choice.

Adding New Constraints

from lekin.solver.constraints import BaseConstraint

class MyCustomConstraint(BaseConstraint):
    def check(self, solution):
        # Implement your constraint checking logic
        pass

Citation

@misc{python-lekin2022,
  author = {Hongying Yue},
  title = {python lekin},
  year = {2022},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/hongyingyue/python-lekin}},
}

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lekin-0.0.2.tar.gz (58.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lekin-0.0.2-py3-none-any.whl (88.5 kB view details)

Uploaded Python 3

File details

Details for the file lekin-0.0.2.tar.gz.

File metadata

  • Download URL: lekin-0.0.2.tar.gz
  • Upload date:
  • Size: 58.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.12

File hashes

Hashes for lekin-0.0.2.tar.gz
Algorithm Hash digest
SHA256 2831916f67454ff26c79383a91662ad9f60b78e4d3ce439654a6e4887c749a2a
MD5 a6c05c0b36e6611654b1805a4a8520e8
BLAKE2b-256 426c05d3b58fdd2c66e0d547805941ae8823cb87a32d14445e096207b3b50193

See more details on using hashes here.

File details

Details for the file lekin-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: lekin-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 88.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.12

File hashes

Hashes for lekin-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 955e484f74cea94729be7b5e793bafa08b917b6b4e7015de9a73acf699256077
MD5 213b2443cd93e85c116abb778f9e0e04
BLAKE2b-256 b0c4db81cdfd55edd85a9c5d07257a9a69579c31114a1115f0ff8dadcde7ca3a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page