timefold-solver
timefold-solver copied to clipboard
Feat: start.timefold.ai (Optimization project skeleton)
Let's say I want to start a new optimization project. I'd probably:
- take one of the solver examples/quickstarts as an inspiration
- set up a maven project
- declared solver/logging dependencies
- set up logger
- declared domain classes
- added timefold annotations
- created some dummy data
- created a single constraint
- created a constraint configuration class
- created a single test using a Constraint verifier
- created simple solver.xml with basic CH/LS, termination, solution/Entity classes, correct constraint provider references
- created a main class to set up a SolverFactory/Solver
Suggestion:
- Create a maven archetype / other (e.g. dummy example repository) that sets up the project skeleton. Ideally a simple java application with a main class that I can run & see some output in the log console.
- Maybe with some explanatory comments (e.g. define your constraints here, change this to update constraint weight for this constraint, etc.).
- Benefit - this avoids repetitive work that needs to be done everytime the developers start a new preoject.
Relevant for Quarkus: https://quarkus.io/guides/extension-codestart