Drools Planner looks interesting. From their website: Drools Planner does automated planning, it solves a planning problem while respecting the constraints as much as possible. Drools Planner can be used on all kinds of planning problems. Let's take a look at some use cases.