PES is a new machine learning system that combines the flexibility of genetic-based machine learning algorithms, dimensionality reduction, data visualisation, and human insights to learn competitive and interpretable predictive models and business rules. Different from conventional machine learning algorithms, PES allows users (e.g. data scientists and researchers) to monitor the evolutionary/training process of their models and to interactively intervene and decide how models should be built.
PES can be used for both supervised and unsupervised learning tasks. It has been successfully used for a number of logistics and supply chain applications including production scheduling, two-dimensional strip packing, project scheduling, and resource-constraint job scheduling. In these applications, PES can produce simple and reactive solutions which can outperform existing heuristics and optimisation methods in the literature. Other applications in financial trading, credit scoring, and computer vision can also be found in our examples.
- Su Nguyen, Mengjie Zhang, Damminda Alahakoon, Kay Chen Tan. “People-centric Evolutionary System for Dynamic Production Scheduling”, IEEE Transactions on Cybernetics, 2019
- Su Nguyen, Mengjie Zhang, Damminda Alahakoon, Kay Chen Tan. “Visualising the Evolution of Computer Programs for Production Scheduling”, IEEE Computational Intelligence Magazine, Vol. 13, 4, pp. 77-94, 2018
- Symbolic regression
- Binary classification
- Automated design of production heuristics
- Resourse-constrained job scheduling
- Order acceptance and scheduling
All dependencies are included in the lib/ and mitlib/ folders This project is created from PyCharm so Pycharm users can directly open this project
For dynamic job shop scheduling, run src/problems/EvolveProductionHeuristics.java
Generated heuristics are represented as a graph in which nodes represents a particular phenotypic behaviours. Large nodes indicate that the algorithm have revisted programs corresponding to that behaviour frequently.
Users can decide to stop and provide their preferences which can be used by PES to guide the evolution process.