Software development

Algorithms for Decision Support

Expert commercial utilisant une tablette tactile

Product and service configurator


Focus on your customers

Cosling develops product and service configurators to boost your sales by bringing the knowledge of your experts to your sales force.

Une carte électronique

Complex solutions configurator


Think functional

Cosling develops product configurators able to handle complex constraints to help you designing new products faster and more easily.


Process optimization


Optimize your processes

Improve your performance by making the work of your staff simpler with decision support tools able to handle the constraints of your activity.

Un satellite dans l'espace

Operations optimization


Manage your operations easily

Cosling develops planning and scheduling tools to help you make a better use of your resources, in a constrained and dynamical context.

We analyse and model your processes to provide you with the solution that best meets your needs.

Algorithm design

Constraint Programming

Constraint Programming (CP) is a wonderful technology enabling to solve constrained configuration and optimization problems. At the crossroad between Artificial Intelligence and Operations Research, this component-based approach allows to build applications that are flexible, efficient and scalable. We design efficient models as well as advanced components (global constraints, search heuristics, large neighborhood search, etc.). We use different solvers, notably Choco Solver that we develop together with Ecole des Mines de Nantes.

Un réseau

Un polytope

Linear Programming

Linear Programming (LP) is a technology stemming from Operations Research that is used to solve combinatorial problems. We develop linear, integer and mixed models and embeds advanced solving techniques, such as Branch and Cut or CP hybrids. We use both commercial and open source solvers.

Dedicated algorithms

We design specific algorithms to best meet your needs : greedy algorithms, meta-heuristics, etc. Our constraint programming background enables us to design efficient algorithms that are easy to maintain, even if no solver is used.

Un diagramme logique