Gassmann, Horand; Ma, Jun; Martin, Kipp Communication protocols for options and results in a distributed optimization environment. (English) Zbl 1342.90231 Math. Program. Comput. 8, No. 2, 161-189 (2016). Summary: Much has been written about optimization instance formats. The MPS standard for linear mixed-integer programs is well known and has been around for many years. Other extensible formats are available for other optimization categories such as stochastic and nonlinear programming. However, the problem instance is not the only piece of information shared between the instance generator and the solver. Solver options and solver results must also be communicated. To our knowledge there is no commonly accepted format for representing either solver options or solver results. In this paper we propose a framework and theory for solver option and solver result representation in a modern distributed computing environment. A software implementation of the framework is available as an open-source COIN-OR project. MSC: 90C99 Mathematical programming 65K05 Numerical mathematical programming methods 49N99 Miscellaneous topics in calculus of variations and optimal control 68N01 General topics in the theory of software Keywords:optimization; framework; design pattern; system; software; solver options; solver communication; result representation; optimization services Software:Gurobi; DyLP; MiniZinc; CMPL; pyCMPL; NEOS; KQML; COIN-OR/GAMSLinks; XMLSpy; lp_solve; Cbc; LINDO; OSiL; Mosek; Globus Toolkit; Bonmin; CLP; GAMS; MPL; LINGO; AMPL; SYMPHONY; Zinc; GLPK; Couenne; CPLEX; COIN-OR; Ipopt; LPFML PDFBibTeX XMLCite \textit{H. Gassmann} et al., Math. Program. Comput. 8, No. 2, 161--189 (2016; Zbl 1342.90231) Full Text: DOI References: [1] Al-Masri, E., Mahmoud, Q.H.: Investigating web services on the world wide web. In: WWW ’08: Proceedings of the 17th international conference on the World Wide Web, pp. 795-804 (2008) [2] Altova: XMLSpy XML Editor. http://www.altova.com/xmlspy.html. Accessed 2 May 2014 [3] Brooke, A., Kendrick, D., Meeraus, A., Raman, R.: GAMS: a User’s Guide. GAMS Development Corporation. Washington, DC. http://www.gams.com/dd/docs/bigdocs/GAMSUsersGuide.pdf (2011) [4] Cplex: IBM ILOG CPLEX Optimizer. http://www-01.ibm.com/software/integration/optimization/cplex-optimizer/. Accessed 14 June 2013 [5] Czyzyk, J., Mesnier, M.P., Moré, J.J.: The NEOS server. Comput. Sci. Eng. IEEE 5, 68-75 (1998) [6] de la Banda, M.G., Marriott, K., Rafeh, R., Wallace, M.: The modelling language Zinc. In: Principles and practice of constraint programming—CP, Lecture Notes in Computer Science, vol. 4204, pp. 700-705. Springer, New York (2006) · Zbl 1146.68352 [7] Finin, T.; McKay, D.; Fritzson, R.; McEntire, R.; Fuchi, K. (ed.); Yokoi, T. (ed.), KQML: an information and knowledge exchange protocol (1994), Beijing [8] Forrest, J.: Cbc, a COIN-OR project. https://projects.coin-or.org/Cbc. Accessed 14 June 2013 [9] Forrest, J.: Clp project wiki. https://projects.coin-or.org/Clp. Accessed 14 June 2013 [10] Foundation for Intelligent Physical Agents: FIPA ACL message structure specification. http://www.fipa.org/specs/fipa00061/SC00061G.html (2002) [11] Foundation for Intelligent Physical Agents: Welcome to FIPA! http://www.fipa.org/ (2014) [12] Fourer, R., Gay, D.M., Kernighan, B.W.: AMPL: a modeling language for mathematical programming, 2nd edn. Brooks/Cole Publishing Company/Cengage Learning (2002) · Zbl 0701.90062 [13] Fourer, R., Lopes, L., Martin, K.: LPFML: A W3C XML schema for linear and integer programming. INFORMS J. Comput. 17, 139-158 (2005) · Zbl 1239.90071 [14] Fourer, R., Ma, J., Martin, K.: Optimization services: a framework for distributed optimization. Oper. Res. 58, 1624-1636 (2010) · Zbl 1210.65081 [15] Fourer, R., Ma, J., Martin, K.: OSiL: an instance language for optimization. Comput. Optim. Appl. 45(1), 181-203 (2010) · Zbl 1189.90007 [16] Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design patterns: elements of reusable Object-Oriented Software. Addison-Wesley, Boston (1994) · Zbl 0887.68013 [17] GAMS Development Corporation: Cplex solver manual. http://www.gams.com/dd/docs/solvers/cplex.pdf. Accessed 14 June 2013 [18] Gassmann, H., Ma, J., Martin, K.: OS project wiki. https://projects.coin-or.org/OS. Accessed 4 May 2014 [19] Gassmann, H., Ma, J., Martin, K., Sheng, W.: Optimization Services 2.6 user’s manual. Technical report, COIN-OR. https://projects.coin-or.org/svn/OS/releases/2.6.0/OS/doc/osUsersManual.pdf [20] Gay, D.M.: Hooking your solver to AMPL. Technical Report 97-4-06, Computing Sciences Research Center, Bell Laboratories, Murray Hill. http://www.ampl.com/REFS/hooking2.pdf (1997) [21] Grüninger, M., Menzel, C.: The process specification language (PSL): theory and applications. AI Mag. 24, 63-74 (2003) [22] Hafer, L.: DyLP project wiki. https://projects.coin-or.org/DyLP. Accessed 14 June 2013 [23] Kristjánsson, B.: http://www.maximalsoftware.com/mpl/. Accessed 14 June 2013 [24] LINDO Systems Inc. http://www.lindo.com/. Accessed 14 June 2013 [25] LINDO Systems Inc: An overview of LINGO. http://www.lindo.com/index.php?option=com_content&view=article&id=2&Itemid=10. Accessed 29 November 2011 [26] lp \[\_\]_solve development group: MPS file format. http://lpsolve.sourceforge.net/5.1/mps-format.htm. Accessed 14 June 2013 [27] Ma, J.: Optimization Services (OS). Ph.D. thesis, Industrial Engineering and Management Sciences, Northwestern University (2005) [28] Makhorin, A.: GLPK (GNU Linear Programming Kit). http://www.gnu.org/s/glpk/. Accessed 14 June 2013 (2008) [29] Marriott, K., Nethercote, N., Rafeh, R., Stuckey, P.J., de la Banda, M.G., Wallace, M.: The design of the Zinc modelling language. Constraints 13(3), 229-267 (2008) · Zbl 1146.68352 [30] Marriott, K., Stuckey, P.J.: A minizinc tutorial. http://www.minizinc.org/downloads/doc-latest/minizinc-tute.pdf. Accessed 11 November 2014 [31] Murtagh, B.A.: Advanced Linear Programming. McGraw-Hill, USA (1981) · Zbl 0525.90062 [32] Nethercote, N., Stuckey, P.J., Becket, R., Brand, S., Duck, G.J., Tack, G.: MiniZinc: Towards a standard CP modelling language. In: Principles and Practice of Constraint Programming CP 2007, Lecture Notes in Computer Science, vol. 4741, pp. 529-543. Springer (2007) · Zbl 1146.68352 [33] Open Grid Forum: https://www.ogf.org/ogf/doku.php/about. Accessed 23 May 2014 [34] Ralphs, T.K.: SYMPHONY project wiki. https://projects.coin-or.org/SYMPHONY. Accessed 14 June 2013 [35] Riehle, D.: Framework design: a role modeling approach. Ph.D. thesis, ETH Zürich, Switzerland (2000) [36] Saltzman, M., Hafer, L.: Personal communication. Accessed 15 November 2011 [37] SAP AG: Discovering services in the services registry. http://help.sap.com/saphelp_nwpi711/helpdata/en/2e/8526937af346a0bc446905ea964ceb/content.htm (2014) [38] Steglich, M.: CMPL—COIN Mathematical Programming Language. https://projects.coin-or.org/Cmpl. Accessed 14 June 2013 · Zbl 1189.90007 [39] The Apache Software Foundation: The Apache Xerces Project. http://xerces.apache.org/. Accessed 14 June 2013 (2011) · Zbl 1189.90007 [40] The World Wide Web Consortium (W3C): Document Object Model (DOM). http://www.w3.org/DOM/. Accessed 14 June 2013 (2005) · Zbl 1239.90071 [41] The World Wide Web Consortium (W3C): SOAP version 1.2 Part 1. http://www.w3.org/TR/soap12-part1/. Accessed 14 June 2013 (2007) [42] The World Wide Web Consortium (W3C): Extensible Markup Language (XML) 1.0 (Fifth edition). http://www.w3.org/TR/REC-xml. Accessed 14 June 2014 (2008) [43] The World Wide Web Consortium (W3C): The Extensible Stylesheet Language Family (XSL). http://www.w3.org/Style/XSL/. Accessed 14 June 2013 (2011) [44] Vigerske, S.: GAMSlinks project wiki. https://projects.coin-or.org/GAMSlinks. Accessed 14 June 2013 · Zbl 1239.90071 [45] Waechter, A.: Ipopt project wiki. https://projects.coin-or.org/Ipopt. Accessed 14 June 2013 · Zbl 1146.68352 [46] Welch, V., (ed.): Globus Toolkit Version 4 Grid Security Infrastructure: a standards perspective. The Globus Alliance (2005) [47] Wikipedia: Design pattern. http://en.wikipedia.org/wiki/Design_pattern. Accessed 23 May 2014 [48] Wikipedia: Document object model. http://en.wikipedia.org/wiki/Document_Object_Model [49] Wikipedia: Java Architecture for XML Binding. http://en.wikipedia.org/wiki/JAXB [50] Wikipedia: Open database connectivity. http://en.wikipedia.org/wiki/Open_Database_Connectivity [51] Wikipedia: Open grid services architecture. http://en.wikipedia.org/wiki/Open_Grid_Services_Architecture. Accessed 23 May 2014 [52] Wikipedia: Universal description discovery and integration. http://en.wikipedia.org/wiki/Universal_Description_Discovery_and_Integration [53] Wikipedia: Web services discovery. http://en.wikipedia.org/wiki/Web_Services_Discovery [54] Williams, H.P.: Model building in mathematical programming, 5th edn. Wiley, New York (2013) · Zbl 1261.90003 This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.