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
- 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
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()
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.
from lekin.solver.constraints import BaseConstraint
class MyCustomConstraint(BaseConstraint):
def check(self, solution):
# Implement your constraint checking logic
pass
@misc{python-lekin2022,
author = {Hongying Yue},
title = {python lekin},
year = {2022},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/hongyingyue/python-lekin}},
}