An open source local search optimization engine implementing Constraint-Based Local Search in Scala.
More information : Github.
Local search is a versatile and scalable optimization technique for operations research problems. For instance, it is well suited for optimization problem with a large search space such as routing optimization problems.
It can also easily incorporate dedicated algorithms such as graph or computational geometry.
Local search is also more than just local search; it also encompasses metaheuristics such as tabu search, restart, simulated annealing, destroy & rebuild, generalized local search, ejection chains, VLSN etc.
Developing a local search solution if often expensive because:
OscaR.cbls is about reducing these costs.
OscaR.cbls is a smart tool for optimization engineers. It is packaged as an open source software library (LGPL). Programming in Scala or Java is required to implement solution using OscaR.cbls library. A few examples are provided with the library.
To use OscaR.cbls, knowledge about local search and metaheuristics is needed for crafting and parametrizing proper models and search heuristics for specific applications.
OscaR.cbls relies on the following general philosophy:
OscaR.cbls provides advanced support both for modeling and searching:
OscaR.cbls was sparkled in 2011 and was enriched throughout research and industrial projects. The overall objective was about how to properly package the relevant research results from academia into a clean and well-architectured solver.
It evolved over years and various aspects were added including:
In 2024, we started a deep rewriting of OscaR.cbls because it has been developed as a research prototype and various modules were relying on obsolete technologies. In early 2025, we presented the first release-brade version of OscaR.cbls. It notably features a reference API that has been engineered to be stable against future evolution of OscaR.cbls.
OscaR.cbls comes with three variable types: Int, IntSet and IntSequence.
IntSequence is a particular type of variable for representing vehicle routes; for more details, read the routing optimization section below.
OscaR.cbls provides a rich library of efficient constraints on these variables including:
Check our API for the full list of supported constraints.
Local search requires a search procedure. This procedure must consider the problem at hand.
OscaR.cbls offers a unique approach where a search procedure are crafted by combining search neighborhoods with neighborhood combinators [Del18]
OscaR.cbls also offers support for elaborating the search procedure, notably :
Check our API for the full list of supported combinators.
Routing optimization is a common application for local search optimization.
OscaR.cbls provides specific support for routing optimization, base on our paper [Del18b] namely:
[Del18] De Landtsheer, R., Guyot, Y., Ospina, G., Ponsard, C. (2018). Combining Neighborhoods into Local Search Strategies. In: Amodeo, L., Talbi, EG., Yalaoui, F. (eds) Recent Developments in Metaheuristics. Operations Research/Computer Science Interfaces Series, vol 62. Springer, Cham. https://doi.org/10.1007/978-3-319-58253-5_3
[Del18b] Renaud De Landtsheer, Yoann Guyot, Gustavo Ospina, Fabian Germeau, Christophe Ponsard, Reasoning on Sequences in Constraint-Based Local Search Frameworks, 15th International Conference on the Integration of Constraint Programming, Artificial Intelligence, and Operations Research (CPAIOR), Delft, The Netherlands, June 26-29, 2018 https://www.cetic.be/Reasoning-on-Sequences-in-Constraint-Based-Local-Search-Frameworks
[Del21c] De Landtsheer, R., Germeau, F., Fayolle, T., Ospina, G., Ponsard, C. (2021). Generic Support for Precomputation-Based Global Routing Constraints in Local Search Optimization. In: Yalaoui, F., Amodeo, L., Talbi, EG. (eds) Heuristics for Optimization and Learning. Studies in Computational Intelligence, vol 906. Springer, Cham. https://doi.org/10.1007/978-3-030-58930-1_10
[Os21] Ospina, Gustavo & De Landtsheer, Renaud. (2021). Towards Distributed Local Search Through Neighborhood Combinators, in Proceedings of the 10th International Conference on Operations Research and Enterprise Systems - ICORES, 248-255, 2021, https://www.cetic.be/Towards-Distributed-Local-Search-Through-Neighborhood-Combinators
[Os22] Ospina, G., De Landtsheer, R. Defining Parallel Local Search Procedures with Neighborhood Combinators. SN COMPUT. SCI. 3, 231 (2022). https://doi.org/10.1007/s42979-022-01120-1
The platform that utilizes advanced planning and optimization algorithms to...
More
Easier access to digital simulation technologies
More
Optimization of operating theater planning
More
Applications et Recherche pour une Intelligence Artificielle de Confiance
More
Agenda
See relevant events
08.02.2024
08.02.2024
CETIC talks
The Belgian Operational Research Society conference
En savoir plus
11.09.2020
11.09.2020
CETIC talks
International Conference on Principles and Practice of Constraint Programming
En savoir plus
07.07.2020
07.07.2020
CETIC talks
An application of the OscaR optimisation engine in the area of risk analysis in system design will be presented at the ICSOFT conference (online)...
En savoir plus
05.05.2019
05.05.2019
CETIC talks
CETIC will present an efficient and innovative implementation of optimal risk-oriented project planning algorithms at the ICEIS conference in...
En savoir plus
Publications
08.01.2025
08.01.2025
Publications scientifiques
Thomas Fayolle, Quentin Meurisse, Renaud De Landtsheer, Fabian Germeau, Stefano Michelini, ’OscaR.cbls 6.0 : Review after 12 years of Continuous...
En savoir plus
01.04.2021
01.04.2021
Publications scientifiques
Ponsard C., Grandclaudon J., Massonet P., A goal-driven approach for the joint deployment of safety and security standards for operators of...
En savoir plus
04.02.2021
04.02.2021
Publications scientifiques
Ospina, Gustavo & De Landtsheer, Renaud. (2021). Towards Distributed Local Search Through Neighborhood Combinators, in Proceedings of the...
En savoir plus