Affine arithmetic and its applications

As a hobby, I develop the ASOL -- Affine Solver in C++. The solver finds all solutions to systems of nonlinear equations. Characteristic components of its branch-and-prune algorithm are affine arithmetic as a linearization technique, contracting methods involving constraint propagation on directed acyclic graphs (DAG) and linear programming. The solver has an interface to the AMPL modeling environment.

ASOL -- Affine Solver

Although ASOL is still just a proof-of-concept implementation, it finds even those solutions that are missed by commercial solvers. A high-level presentation of the algorithm is given in the manuscript entitled Computing multiple steady states in homogeneous azeotropic and ideal two-product distillation (DOI). Further implementation details are given in Computation of an extractive distillation column with affine arithmetic (DOI).

The presentation of the algorithm is human readable and independent of chemical engineering.

The primary purpose of this site is to make my papers and source codes publicly available.