MiniBrass - Softer than MiniZinc!

Modeling preferences and soft constraints -- Specifying goals the declarative way

Learn more Install

Welcome to MiniBrass

Many real-life decision problems under constraints are conveniently expressed using a constraint-based modeling language: Meeting or activity scheduling, production plans, matching problems, etc.
They are then solved by powerful constraint programming or mathematical programming solvers. Usually not all constraints can be satisfied -- especially if there are multiple users with individual goals: John wants Fridays off but Mary does not want to stay longer than 2pm on a Friday - still one of them has to work next Friday.

We provide support for over-constrained problems or problems where desirable properties can be modeled as optional (soft) constraints. Our library extensions are built on top of MiniZinc that facilitates modeling constraint optimization problems for various solvers.

Find out more

Easy to model

MiniBrass supports various types and flavours of preferences (better-than relations, penalty points or costs, satisfaction percentages ...)

Modular Preference Specifications

You can use several preference specifications for different users and combine them.

Voting-based Agreements

Make social choices

MiniBrass is provided under the MIT license.