New release: Hexaly 13.0

We are pleased to announce the release of Hexaly 13.0, which includes many new features and performance enhancements. The “gaps” mentioned below are the relative gaps in % between the solutions computed by Hexaly within 1 minute 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.

Routing

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

  • Dial-a-Ride Problem (DARP): 81 new records over the 96 instances of the realistic Chassaing dataset with up to 128 points obtained within 1 minute, with an average improvement of 2.7% of the best known solutions in the research; average gap of 3.6% in 1 minute for the classical Cordeau dataset with up to 144 points.
  • Team Orienteering Problem (TOP): average gap of 0.8% within 1 minute for instances with up to 401 points.
  • Heterogeneous Vehicle Routing Problem (HVRP): average gap of 0.9% within 1 minute for instances with up to 144 points.

The lower bounds delivered by Hexaly 13.0 are significantly improved for Vehicle Routing problems using automated reformulations and Branch-Cut-Price techniques. For example, for the Capacitated Vehicle Routing Problem (CVRP):

  • Optimality gap below 0.1% after 1 minute for all instances with up to 100 points.
  • Optimality gap below 2.1% after 1 minute for all instances with up to 200 points.

Scheduling

Hexaly 13.0 brings significant performance improvements for Job Shop Scheduling Problems (JSSP) and Resource-Constrained Project Scheduling Problems (RCPSP):

Modeler & APIs

Now we are Hexaly. We deploy this new identity to the heart of our products by renaming all Hexaly APIs. The old APIs will be supported for one year to ensure a smooth transition for all our clients and users. More details can be found on this dedicated webpage.

Hexaly 13.0 introduces a hull operator to get the smallest interval which contains all intervals given in operands. It offers a compact way of retrieving the total resource usage:

tasks[0...nbTasks] <- interval(0, horizon);
//...
span <- hull(tasks);
minimize length(span);

Hexaly 13.0 also introduces a stepArray operator to describe an array of constants with an optimized memory footprint. This new operator can be used to model very large-scale scheduling problems with intensities:

// dense form : {1,1,1,1,1,0,0,1,1,1,1,1,0,0}
intensity <- stepArray({5,7,12,14}, {1, 0, 1, 0});

Templates

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

Register here to try Hexaly 13.0 for free. If you need any further information or support, don’t hesitate to contact us.