Encoding Binary Arithmetic Operations in Integer Programming Formulations

This paper presents the encoding of binary arithmetic operations within Integer Programming (IP) formulations, specifically the encoding of binary multiplication and addition/subtraction. This allows the direct manipulation of integer quantities represented as binary strings of arbitrary size. Many articles published in the past within the Chemical Engineering community have used this representation of integer quantities within Mixed-Integer formulations for Process Optimization and Design. Applications such as these can benefit from the formulations derived in this work. As a demonstrative application we consider the simple number factorization problem, according to which given an odd number C factors A and B are to be found such that C equals their product. If any such factors are found the number is factorable, else it is proven to be prime. An IP formulation is derived involving upper and lower bounding logical constraints to encode for the value of the binary string digits. The formulation involves ${\cal O}(\log C)$ binary variables, ${\cal O}((\log C)^{2})$ continuous variables, and ${\cal O}((\log C)^{2})$ constraints to describe the problem. Computational results demonstrate the validity of this approach, highlighting also the fact that such formulations are not very tight thus resulting in large numbers of iterations of the Branch and Bound algorithm used. It is also observed that the formulations become significantly tighter if logical upper bounding constraints forcing continuous variables involved to be zero are included.

[1]  Sivarama P. Dandamudi Fundamentals of Computer Organization and Design , 2003, Texts in Computer Science.

[2]  David Kendrick,et al.  GAMS, a user's guide , 1988, SGNM.

[3]  Y. Manin,et al.  Introduction to Modern Number Theory , 2008 .

[4]  Martin Dietzfelbinger,et al.  Primality Testing in Polynomial Time , 2004, Lecture Notes in Computer Science.

[5]  I. Grossmann Review of Nonlinear Mixed-Integer and Disjunctive Programming Techniques , 2002 .

[6]  Leslie E. Trotter,et al.  On the capacitated vehicle routing problem , 2003, Math. Program..

[7]  Warren P. Adams,et al.  Base-2 Expansions for Linearizing Products of Functions of Discrete Variables , 2012, Oper. Res..

[8]  Laurence A. Wolsey,et al.  Production Planning by Mixed Integer Programming (Springer Series in Operations Research and Financial Engineering) , 2006 .

[9]  G. Laporte,et al.  A branch and bound algorithm for the capacitated vehicle routing problem , 1983 .

[10]  Ignacio E. Grossmann,et al.  Decomposition techniques for multistage scheduling problems using mixed-integer and constraint programming methods , 2002 .

[11]  Oktay Günlük,et al.  Minimum cost capacity installation for multicommodity network flows , 1998, Math. Program..

[12]  Manindra Agrawal,et al.  PRIMES is in P , 2004 .

[13]  Hanif D. Sherali,et al.  Ideal representations of lexicographic orderings and base-2 expansions of integer variables , 2013, Oper. Res. Lett..

[14]  Ignacio E. Grossmann,et al.  Mathematical programming approaches to the synthesis of chemical process systems , 1999 .

[15]  Heather Fry,et al.  A user’s guide , 2003 .

[16]  Jaime Cerdá,et al.  State-of-the-art review of optimization methods for short-term scheduling of batch processes , 2006, Comput. Chem. Eng..