Overview and details of the sessions of this conference. Please select a date or location to show only sessions at that day or location. Please select a single session for detailed view (with abstracts and downloads if available).
|
Session Overview |
Session | ||
TA 13: Solver Interfaces
| ||
Presentations | ||
Automatic Reformulations in AMPL’s New MP Solver Interface Library AMPL Optimization Inc., USA MP is AMPL's new solver interface library. It streamlines iterative model development by offering automatic model reformulations. These include model decompositions (e.g., linearization of logical constraints), model globalization (e.g., filtering of conic constraints), as well as piecewise-linear approximation. Tools are offered to explore reformulations performed on a model. The library also streamlines solver interface development via a flexible type-safe C++ class hierarchy. Automatic reformulations, performed either by a modeling tool or in the solver, can sometimes hide numerical issues with a solution. We discuss examples and workarounds. New solver drivers built with this interface include Gurobi, CPLEX, Xpress, COPT, MOSEK, HiGHS, CBC, SCIP, and GCG. AMPLS Libraries for Flexible and Advanced Algorithm Implementation AMPL Optimization, United States of America AMPLS Solver Libraries allow users to seamlessly export AMPL model instances to persistent solver representations, facilitating advanced solution algorithm implementation. Compatible with C++, Python and C#, these libraries offer flexibility in terms of performance/ease of use tradeoff. The libraries ensure a smooth transition from AMPL modeling to ad-hoc algorithm implementation. Notably, some solver functionalities are mapped to allow the reuse of implementations across solvers, while retaining access to solver-specific features. This mapping streamlines the development process, providing a unified interface for common functionalities while preserving the unique capabilities of each solver. Writing and solving models with the augmented FICO Xpress Solver APIs FICO, Germany FICO Xpress 9.4 introduced a brand-new programming API for building and solving optimization problems in Java and C# using the Xpress Solver. The new FICO Xpress Solver API for Java and C# is designed as an object-based layer ensuring a memory-efficient and reliable experience for the user. With the new API, the use of Solver features such as callbacks becomes easier, and it gives access to the full set of problem types available with Xpress Solver. Among the key features of the new Xpress Solver API are the ability to use modern programming concepts such as Collections, Streams, Lambdas, and operator overloading to build expressions and constraints. The new Solver API offers seamless integration with the Solver and access to cutting-edge features. We observed model building times speedup by a factor of 8 on models with several millions of variables and constraints compared to previous APIs. We will present this new API and will also explore other ways to create and solve optimization problems using FICO Xpress Optimizer in different programming languages. |