Most real world planning problems are NP complete. The common algorithm approaches to these kind of problems are either very sub-optimal or suffer from terrible scalibility. Drools Planner implements metaheuristics (such as simulated annealing and tabu search) to deal with these problems efficiently, while making it relatively easy to add additional planning constraints and works with simple domain POJO's.
Take a look at some use cases to understand the complexity of planning problems.
Download Drools Planner to try some of the examples, such as the nurse rostering or exam scheduling example with real world data.