Integer linear programming (ILP) encompasses a very important class of
optimization problems that are of great interest to both academia and industry.
Several algorithms are available that attempt to explore the solution space of
this class efficiently, while requiring a reasonable compute time. However,
although these algorithms have reached various degrees of success over the
years, they still face considerable challenges when confronted with
particularly hard problem instances, such as those of the MIPLIB 2010 library.
In this work we propose a radically different non-algorithmic approach to ILP
based on a novel physics-inspired computing paradigm: Memcomputing. This
paradigm is based on digital (hence scalable) machines represented by
appropriate electrical circuits with memory. These machines can be either built
in hardware or, as we do here, their equations of motion can be efficiently
simulated on our traditional computers. We first describe a new circuit
architecture of memcomputing machines specifically designed to solve for the
linear inequalities representing a general ILP problem. We call these
self-organizing algebraic circuits, since they self-organize dynamically to
satisfy the correct (algebraic) linear inequalities. We then show simulations
of these machines using MATLAB running on a single core of a Xeon processor for
several ILP benchmark problems taken from the MIPLIB 2010 library, and compare
our results against a renowned commercial solver. We show that our approach is
very efficient when dealing with these hard problems. In particular, we find
within minutes feasible solutions for one of these hard problems (f2000 from
MIPLIB 2010) whose feasibility, to the best of our knowledge, has remained
unknown for the past eight years.