DragonBreath

DragonBreath: An Optimization Engine based on Constraint Programming and Local Search. The engine is built to solve search problems, i.e., problems for which you don’t really know how to construct a solution but can describe what potential parts a solution can consist of and which restrictions must be satisfied by the parts / the parts’ constellation. Parts can be variables as well as structural components. In addition, you can specify a preference between different solutions, i.e., solve optimization problems. Examples for such problems are scheduling, action planning and configuration. The engine is specifically designed to support: Real time: Instead of switching to an off-line mode for calculating your solution, the engine provides you with solution approximations of increasing quality over time. Dynamics: Even during the search for a solution, changes to your problem specification can easily be incorporated. Also, an existing solution can be adapted in case of changes instead of having to start a complete recalculation. Domain Knowledge: If you know some particular strategies/heuristics for your specific domain, it’s easy to plug in this knowledge to speed up the search process. Extendibility: The engine is built in a very modular way, and if you need to express constraints that are not part of the base distribution, you can add these on your own. The engine is based on artificial intelligence techniques such as constraint programming and local search. More details can be found in the publications Using Global Constraints for Local Search and Applying Local Search to Structural Constraint Satisfaction.

Keywords for this software

Anything in here will be replaced on browsers that support the canvas element