SOMIM : An open-source program code for the numerical Search for Optimal Measurements by an Iterative Method

Kean Loon Lee, Jiangwei Shang, Wee Kang Chua, Shiang Yong Looi, and Berthold-Georg Englert



SOMIM is an open-source program code that implements a Search for Optimal Measurements by using an Iterative Method. For a given set of statistical operators, SOMIM finds the POVMs that maximize the accessed information, and thus determines the accessible information and one or all of the POVMs that retrieve it. The maximization procedure is a steepest-ascent method that follows the gradient in the POVM space, and also uses conjugate gradients for speed-up.


License Agreement


SOMIM is an open-source program that, for a given set of statistical operators, implements a Search for Optimal Measurements by using an Iterative Method. Copyright © 2007, 2010 K.L. Lee, J.W. Shang, W.K. Chua, S.Y. Looi and B.-G. Englert. SOMIM is a free software. You can redistribute it and/or modify it under the terms of the GNU General Public License Version 3 as published by the Free Software Foundation. SOMIM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR PARTICULAR PURPOSE. See the GNU General Public License at for details


What can SOMIM be used for?


Given a set of statistical operators ρj, SOMIM calculates the accessible information associated with these statistical operators, and finds the POVM that retrieves the AI, or rather, it finds one of the optimal POVMs, as the optimum need not be unique. Repeated runs of SOMIM for the same input data but different random seeds may yield alternative optimal POVMs. The calculation is performed using a combination of the steepest-ascent method (see Ref. [1] and Section 11.5 in Ref. [2]) and the conjugate-gradients (CG) method [3]. The percentage chance to calculate with one method or the other can be specified by the user. The implementation in SOMIM also makes use of the golden-section search method.




All: all.tar.gz

Windows-version executable files + sample input & output: somim.tar.gz

Source for compilation: source.tar.gz

Manual for SOMIM: Manual.pdf

Sample input and output: inout.tar.gz


Contact information

Please send your comments, suggestions, or bug reports to the following email account:




[1] J. Rehacek, B.-G. Englert, and D. Kaszlikowski, Iterative procedure for computing accessible information in quantum communication, Phys. Rev. A 71, 054303 (2005); eprint available at

J. Suzuki, S. M. Assad, and B.-G. Englert, "Accessible information about quantum states: An open optimization problem", Chapter 11 in Mathematics of Quantum Computation and Quantum Technology, edited by G. Chen, S. J. Lomonaco, and L. Kauffman (Chapman & Hall/CRC, Boca Raton 2007), pp. 309-348; also available at

W. H. Press, B. P. Flannery, S. A. Teukolsky, W. T. Vetterling, "Minimization or Maximazation of Functions", Chapter 10 in Numerical Recipes in C: The Art of Scientific Computating, (Cambridge University Press, 2nd edition 1992), pp. 394-455.