Hexaly Optimizer 14.5

We are pleased to announce the release of Hexaly Optimizer 14.5, which continues to deliver improved performance on routing, scheduling, packing, and many other problems (see the benchmarks).

Regarding performance improvement, two types of gaps are mentioned below. When simply written as “gap”, it means the gap to the state of the art (SOTA): the relative gap in % between the solutions computed by Hexaly on a standard server (AMD Ryzen 7 7700 processor, 8 cores, 3.8 GHz, 32MB cache, 32GB RAM) and the best known solutions available by the research, computed using dedicated algorithms within days of running times on much more powerful hardware. When referred to as “optimality gap”, it means the gap to optimality: the relative gap in % between the best feasible solution and the best dual bound found by the solver.

Routing

Hexaly 14.5 brings significant performance improvements for Vehicle Routing Problems (VRP) with various types of constraints and objectives:

Version 14.5 offers significant performance improvements for real-world Vehicle Routing applications with complex timing constraints and objectives (e.g., route amplitude).

Lower bounds for various vehicle routing problems have been improved on 29% of our benchmark instances thanks to column generation stabilization techniques. Hexaly returns solutions with an average optimality gap of 7.1% in 10 minutes for instances up to 200 customers with various constraints (capacities, heterogeneous fleet, time windows, etc.). Hexaly proves the optimality in 10 minutes for 13 new instances of this benchmark compared to the previous version.

Scheduling

Hexaly 14.5 comes with several improvements for multi-mode scheduling, cumulative scheduling, and prize-collecting variants of jobshop problems.

Hexaly 14.5 offers significant performance improvements for real-world Cumulative Scheduling Problems with Calendar Constraints:

constraint and(0...makespan, 
  t => sum[i in 0...nbTasks](weight[i] * calendar[t] * contains(tasks[i], t)) <= capacity);

Hexaly 14.5 also offers significant performance improvements for real-world Disjunctive Scheduling Problems.

Packing

Hexaly 14.5 introduces performance improvements for the Bin Packing Problem with Conflicts (BPPC) modeled using the intersection operator: average gap of 0.3% in 1 minute on the Muritiba instances with up to 1,000 items.

Nonlinear

Hexaly’s new Interior Point algorithm, introduced in the previous version, has been made faster and more robust. The following results are obtained within 1 minute of running time:

  • Portfolio Optimization: optimal solutions found for 210 out of 270 instances of our internal benchmark with up to 4,000 variables.
  • CUTEst Benchmark: feasible solutions with a gap lower than 1% for 983 out of 1,059 instances.

Modeler & APIs

Hexaly 14.5 extends the hull operator to accept variadic constructs, allowing the user to take the hull of scheduled intervals on a specific resource:

function model() {
    l <- list(NB_TASKS);
    x[0...NB_TASKS] <- interval(0, 100);
    h <- hull(l, i => x[i]); // hull of the intervals selected in the list l
    minimize length(h);
}

Templates

New code templates are available for Routing, Scheduling, Packing, and other problems to help you get started effortlessly with Hexaly:

Discover the ease of use and performance of Hexaly through
a free 1-month trial, or enjoy free academic access.

Discover the ease of use and performance of Hexaly