{"id":1167,"date":"2010-07-07T07:06:20","date_gmt":"2010-07-07T11:06:20","guid":{"rendered":"http:\/\/mat.tepper.cmu.edu\/blog\/?p=1167"},"modified":"2010-07-07T07:06:20","modified_gmt":"2010-07-07T11:06:20","slug":"open-source-replacement-for-solver-in-excel","status":"publish","type":"post","link":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/2010\/07\/07\/open-source-replacement-for-solver-in-excel\/","title":{"rendered":"Open source replacement for Solver in Excel"},"content":{"rendered":"<p><a href=\"http:\/\/www.des.auckland.ac.nz\/uoa\/andrew-mason\"><a href=\"http:\/\/www.opensolver.org\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft\" style=\"margin-left: 5px; margin-right: 5px;\" title=\"OpenSolver\" src=\"http:\/\/opensolver.org\/opensolverwordpress\/wp-content\/uploads\/2010\/05\/modelvisualisation.png\" alt=\"\" width=\"315\" height=\"265\" \/><\/a>Andrew Mason<\/a>, who I got to know very well during my year in Auckland, has put together an open source <a href=\"http:\/\/opensolver.org\/\">Excel add-in that extends Excel&#8217;s built-in Solver<\/a> (a product from <a href=\"http:\/\/www.solver.com\">Frontline Systems<\/a>) and replaces the underlying optimization engine with the optimization code CBC from <a href=\"http:\/\/www.coin-or.org\">COIN-OR<\/a>.\u00a0 OpenSolver allows the solving of models without limits to the number of variables or constraints.\u00a0 Andrew has also provided some enhancements including a model visualizer and the capability for fast reoptimization.<\/p>\n<p>OpenSolver works with linear and (mixed-)integer programming models, but not with nonlinear models.\u00a0 So keep those @IF and @POWER functions away from it!<\/p>\n<p>This add-in a great illustration of both the strengths and weaknesses of open source.\u00a0 On the plus side, all the work that people put into CBC can now find a much wider audience through the efforts of someone else.\u00a0 No coordination was needed:\u00a0 people like Andrew are able to use their own creativity and drive to put together something useful.<\/p>\n<p>However, it is important to note that there are different open source licenses, and that Andrew has licensed this under <a href=\"http:\/\/en.wikipedia.org\/wiki\/GNU_General_Public_License\">GPL<\/a>, while most of COIN-OR is licensed under <a href=\"http:\/\/en.wikipedia.org\/wiki\/Common_Public_License\">CPL<\/a>\/<a href=\"http:\/\/en.wikipedia.org\/wiki\/Eclipse_Public_License\">EPL<\/a>.\u00a0 For most, this licensing difference is not of importance, but any work that is derivative of Andrew&#8217;s work can only be distributed under GPL.\u00a0 Trying to figure out what is a derivative work is beyond me, but is important to those who would like to further develop systems based on Andrew&#8217;s work.\u00a0 I note this fully respecting Andrew&#8217;s right to pick whatever license works best for him!<\/p>\n<p>For me, this will be great to point to in class:\u00a0 MBA student&#8217;s love Solver, but get frustrated with size limits.\u00a0 I can now point to an easy to use add-in that removes those limits without requiring any changes in models.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Andrew Mason, who I got to know very well during my year in Auckland, has put together an open source Excel add-in that extends Excel&#8217;s built-in Solver (a product from Frontline Systems) and replaces the underlying optimization engine with the optimization code CBC from COIN-OR.\u00a0 OpenSolver allows the solving of models without limits to the &hellip; <a href=\"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/2010\/07\/07\/open-source-replacement-for-solver-in-excel\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Open source replacement for Solver in Excel&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[37],"tags":[],"class_list":["post-1167","post","type-post","status-publish","format-standard","hentry","category-open-source"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/posts\/1167","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=1167"}],"version-history":[{"count":0,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/posts\/1167\/revisions"}],"wp:attachment":[{"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=1167"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=1167"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mat.tepper.cmu.edu\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=1167"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}