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
[]
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
-
Exhaustive search
- branch and bound
-
Construction heuristics
-
Meta heuristics
-
Operation search
-
Reinforcement learning
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}},
}
Metadata
Release files for lekin 0.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| lekin-0.0.2.tar.gz | 58.1 kB | Without provenance | Details for lekin-0.0.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| lekin-0.0.2-py3-none-any.whl | Python 3 | none | any | Details for lekin-0.0.2-py3-none-any.whl |
Total release size: 146.6 kB
Release files / lekin-0.0.2.tar.gz
| Download URL | lekin-0.0.2.tar.gz |
|---|---|
| Size | 58.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2831916f67454ff26c79383a91662ad9f60b78e4d3ce439654a6e4887c749a2a
|
|
BLAKE2b-256 checksum How to use checksums |
426c05d3b58fdd2c66e0d547805941ae8823cb87a32d14445e096207b3b50193
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.12
|
Release files / lekin-0.0.2-py3-none-any.whl
| Download URL | lekin-0.0.2-py3-none-any.whl |
|---|---|
| Size | 88.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
955e484f74cea94729be7b5e793bafa08b917b6b4e7015de9a73acf699256077
|
|
BLAKE2b-256 checksum How to use checksums |
b0c4db81cdfd55edd85a9c5d07257a9a69579c31114a1115f0ff8dadcde7ca3a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.12
|
Security for lekin 0.0.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.