Changeset 961 for html


Ignore:
Timestamp:
Sep 16, 2004 4:52:36 PM (15 years ago)
Author:
ddelanu
Message:

Clarified a couple of answers and added several news QandAs? about the barrier code

File:
1 edited

Legend:

Unmodified
Added
Removed
  • html/trunk/Clp/faq.html

    r954 r961  
    6262-->
    6363
    64 <div class="qandaset"><dl><dt>Q: <a href="index.html#id4693599">
     64<!--                            -->
     65<!-- Begin DocBook content here -->
     66<!--                            -->
     67<div class="qandaset"><dl><dt>Q: <a href="#id4693599">
    6568  What is CLP?
    66   </a></dt><dt>Q: <a href="index.html#id4695256">
     69  </a></dt><dt>Q: <a href="#id4694311">
    6770  What are some of the features of CLP?
    68   </a></dt><dt>Q: <a href="index.html#id4695282">
     71  </a></dt><dt>Q: <a href="#id4694338">
     72  How do I obtain and install CLP?
     73  </a></dt><dt>Q: <a href="#id4695264">
     74  Is CLP reliable?
     75  </a></dt><dt>Q: <a href="#id4695295">
     76  On which platforms does CLP run?   
     77  </a></dt><dt>Q: <a href="#id4695346">
     78  Is there any documentation for CLP? 
     79  </a></dt><dt>Q: <a href="#id4757338">
     80  Is CLP as fast as OSL?
     81  </a></dt><dt>Q: <a href="#id4757359">
     82  When will version 1.0 of CLP be available? 
     83  </a></dt><dt>Q: <a href="#id4757390">
    6984  The barrier method sounds interesting, what are some of the details?
    70   </a></dt><dt>Q: <a href="index.html#id4695308">
    71   How do I obtain and install CLP?
    72   </a></dt><dt>Q: <a href="index.html#id4695346">
    73   Is CLP reliable?
    74   </a></dt><dt>Q: <a href="index.html#id4694232">
    75   On which platforms does CLP run?   
    76   </a></dt><dt>Q: <a href="index.html#id4694283">
    77   Is there any documentation for CLP? 
    78   </a></dt><dt>Q: <a href="index.html#id4694316">
    79   Is CLP as fast as OSL?
    80   </a></dt><dt>Q: <a href="index.html#id4694337">
    81   When will version 1.0 of CLP be available? 
    82   </a></dt><dt>Q: <a href="index.html#id4757333">
     85  </a></dt><dt>Q: <a href="#id4757416">
     86  Which Cholesky factorizations codes are supported?
     87  </a></dt><dt>Q: <a href="#id4757480">
     88  When will CLP have a good native ordering?
     89  </a></dt><dt>Q: <a href="#id4757501">
     90  Is the interior point code as mature as the simplex code?
     91  </a></dt><dt>Q: <a href="#id4757525">
     92  Which algorithm should I use for quadratic programming and should I keep an
     93  eye open for any issues?
     94  </a></dt><dt>Q: <a href="#id4757558">
    8395  What can the community do to help?
    8496  </a></dt></dl><table border="0" summary="Q and A Set"><col align="left" width="1%"><tbody><tr class="question"><td align="left" valign="top"><a name="id4693599"></a><a name="id4693601"></a><b>Q:</b></td><td align="left" valign="top"><p>
     
    90102  CLP is written in C++, and is primarily intended to be used as a callable
    91103  library (though a rudimentary stand-alone executable exists).
    92   The first release was version .90.  The current release is version .99.8.
    93   </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4695256"></a><a name="id4695258"></a><b>Q:</b></td><td align="left" valign="top"><p>
     104  The first release was version .90.  The current release is version .99.9.
     105  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4694311"></a><a name="id4694314"></a><b>Q:</b></td><td align="left" valign="top"><p>
    94106  What are some of the features of CLP?
    95107  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
    96108  (DN 08/27/04) CLP includes primal and dual Simplex solvers.  Both dual and primal algorithms
    97109  can use matrix storage methods provided by the user (0-1 and network matrices
    98   already supported in addition the default sparse matrix). The dual algorithm
    99   has Dantzig and Steepest edge row pivot choices and new ones may be provided by
     110  are already supported in addition the default sparse matrix). The dual algorithm
     111  has Dantzig and Steepest edge row pivot choices; new ones may be provided by
    100112  the user. The same is true for the column pivot choice of the primal algorithm.
    101113  The primal can also use a non linear cost which should work for piecewise
    102114  linear convex functions.  CLP also includes a barrier method for solving LPs.
    103   </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4695282"></a><a name="id4695285"></a><b>Q:</b></td><td align="left" valign="top"><p>
     115  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4694338"></a><a name="id4694340"></a><b>Q:</b></td><td align="left" valign="top"><p>
     116  How do I obtain and install CLP?
     117  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
     118  (DN 08/27/04) Please see the
     119  <a href="http://www.coin-or.org/faqs.html" target="_top">COIN-OR FAQ</a>
     120  for details on how to
     121  <a href="http://www.coin-or.org/faqs.html#ObtainSrcCode" target="_top">obtain</a>
     122  and
     123  <a href="http://www.coin-or.org/faqs.html#BuildCode" target="_top">install</a>
     124  COIN-OR modules.
     125  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4695264"></a><a name="id4695266"></a><b>Q:</b></td><td align="left" valign="top"><p>
     126  Is CLP reliable?
     127  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
     128  (DN 09/07/04) CLP has been tested on many problems of up to 1.5 million
     129  constraints and has shown itself as reliable as OSL. It is also being tested
     130  in the context of
     131  <a href="http://www.coin-or.org/faqs.html#SBB" target="_top">SBB</a>
     132  ("Simple Branch and Bound", which is used to solve integer
     133  programs, but more testing is needed before it can get to version 1.0.
     134  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4695295"></a><a name="id4695297"></a><b>Q:</b></td><td align="left" valign="top"><p>
     135  On which platforms does CLP run?   
     136  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
     137  (DN 08/27/04) CLP compiles and has been tested (to varying degrees) on the following
     138  platforms:
     139  </p><div class="itemizedlist"><ul type="disc"><li><p>
     140  Linux using g++ version 3.1.1 (or later).
     141  </p></li><li><p>
     142  Windows using Microsoft Visual C++ 6
     143  </p></li><li><p>
     144  Windows using cygwin
     145  </p></li><li><p>
     146  AIX using xIC (not supported in the current Makefile)
     147  </p></li></ul></div></td></tr><tr class="question"><td align="left" valign="top"><a name="id4695346"></a><a name="id4695348"></a><b>Q:</b></td><td align="left" valign="top"><p>
     148  Is there any documentation for CLP? 
     149  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
     150  (DN 08/27/04) A User Guide should be available in time for the release of version 1.0 of CLP.
     151  Also available is a list of
     152  <a href="http://www.coin-or.org/Doxygen/Clp/" target="_top">CLP class descriptions</a>.
     153  More on CLP documentation is available on the
     154  <a href="http://www.coin-or.org/Clp/documentation.html" target="_top">CLP documentation webpage</a>.
     155  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4757338"></a><a name="id4757340"></a><b>Q:</b></td><td align="left" valign="top"><p>
     156  Is CLP as fast as OSL?
     157  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
     158   (DN 08/27/04) It uses sparse matrix techniques designed for very large
     159   problems. The design criteria were for it not to be too slow. Some speed
     160   has been sacrificed to make the code less opaque than OSL (not
     161   difficult!).
     162  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4757359"></a><a name="id4757361"></a><b>Q:</b></td><td align="left" valign="top"><p>
     163  When will version 1.0 of CLP be available? 
     164  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
     165  (DN 08/27/04) It is expected that version 1.0 will be released in time for the 2004
     166  <a href="http://www.informs.org" target="_top">INFORMS</a>
     167  <a href="http://www.informs.org/Conf/Denver2004/" target="_top">Annual Meeting</a>
     168  (24-27 October, 2004).
     169  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4757390"></a><a name="id4757393"></a><b>Q:</b></td><td align="left" valign="top"><p>
    104170  The barrier method sounds interesting, what are some of the details?
    105171  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
     
    109175  expected to have a reasonable factorization implementation by the release of
    110176  CLP version 1.0.  However, the sparse factorization requires a good ordering
    111   algorithm, which the user is expected to provide the ordering code, and
    112   perhaps a better factorization code as well.
    113   </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4695308"></a><a name="id4695311"></a><b>Q:</b></td><td align="left" valign="top"><p>
    114   How do I obtain and install CLP?
    115   </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
    116   (DN 08/27/04) Please see the
    117   <a href="http://www.coin-or.org/faqs.html/" target="_top">COIN-OR FAQ</a>
    118   for details on how to
    119   <a href="http://www.coin-or.org/faqs.html/#ObtainSrcCode" target="_top">obtain</a>
    120   and
    121   <a href="http://www.coin-or.org/faqs.html/#BuildCode" target="_top">install</a>
    122   COIN-OR modules.
    123   </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4695346"></a><a name="id4695348"></a><b>Q:</b></td><td align="left" valign="top"><p>
    124   Is CLP reliable?
    125   </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
    126   (DN 08/27/04) CLP has been tested on many problems of up to 1.5 million constraints and has
    127   shown itself as reliable as OSL. It is also being tested in the context of
    128   <a href="http://www.coin-or.org/faqs.html#SBB" target="_top">SBB</a>, but more testing
    129   is needed before it can get to version 1.0.
    130   </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4694232"></a><a name="id4694234"></a><b>Q:</b></td><td align="left" valign="top"><p>
    131   On which platforms does CLP run?   
    132   </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
    133   (DN 08/27/04) CLP compiles and has been tested (to varying degrees) on the following
    134   platforms:
     177  algorithm, which the user is expected to provide (perhaps a better
     178  factorization code as well).
     179  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4757416"></a><a name="id4757418"></a><b>Q:</b></td><td align="left" valign="top"><p>
     180  Which Cholesky factorizations codes are supported?
     181  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
     182  (DN 09/16/04) The Cholesky interface is flexible enough so that any of a variety of Cholesky
     183  ordering and factorization codes can be used.  Interfaces are provided to each
     184  of the following:
    135185  </p><div class="itemizedlist"><ul type="disc"><li><p>
    136   Linux using g++ version 3.1.1 (or later).
    137   </p></li><li><p>
    138   Windows using Microsoft Visual C++ 6
    139   </p></li><li><p>
    140   Windows using cygwin
    141   </p></li><li><p>
    142   AIX using xIC (not supported in the current Makefile)
    143   </p></li></ul></div></td></tr><tr class="question"><td align="left" valign="top"><a name="id4694283"></a><a name="id4694285"></a><b>Q:</b></td><td align="left" valign="top"><p>
    144   Is there any documentation for CLP? 
    145   </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
    146   (DN 08/27/04) A User Guide should be available in time for the release of version 1.0 of CLP.
    147   Also available is a list of
    148   <a href="http://www.coin-or.org/Doxygen/Clp/" target="_top">CLP class descriptions</a>.
    149   More on CLP documentation is available on the
    150   <a href="http://www.coin-or.org/Clp/documentation.html" target="_top">CLP documentation webpage</a>.
    151   </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4694316"></a><a name="id4694318"></a><b>Q:</b></td><td align="left" valign="top"><p>
    152   Is CLP as fast as OSL?
    153   </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
    154    (DN 08/27/04) It uses sparse techniques designed for very large problems. The design
    155    criteria were for it not to be too slow. Some speed has been sacrificed
    156    to make the code less opaque than OSL (not difficult!).
    157   </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4694337"></a><a name="id4694339"></a><b>Q:</b></td><td align="left" valign="top"><p>
    158   When will version 1.0 of CLP be available? 
    159   </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
    160   (DN 08/27/04) It is expected that version 1.0 will be released in time for the 2004
    161   <a href="http://www.informs.org" target="_top">INFORMS</a>
    162   <a href="http://www.informs.org/Conf/Denver2004/" target="_top">Annual Meeting</a>
    163   (24-27 October, 2004).
    164   </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4757333"></a><a name="id4757335"></a><b>Q:</b></td><td align="left" valign="top"><p>
     186  Anshul Gupta's WSSMP parallel enabled ordering and factorization code
     187  </p></li><li><p>
     188  Sivan Toledo's TAUCS parallel enabled factorization code (the package includes
     189  third party ordering codes)
     190  </p></li><li><p>
     191  University of Florida's Approximate Minimum Degree ordering code (AMD) (the
     192  CLP native factorization code is used with this ordering code)
     193  </p></li><li><p>
     194  CLP native code: very weak ordering but competitive nonparallel factorization
     195  </p></li><li><p>
     196  Fast dense factorization
     197  </p></li></ul></div><p>
     198  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4757480"></a><a name="id4757482"></a><b>Q:</b></td><td align="left" valign="top"><p>
     199  When will CLP have a good native ordering?
     200  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
     201  (DN 09/16/04) The best outcome would be to have an existing ordering code available as part
     202  of the COIN distribution under the CPL.  However, if this is not possible, the
     203  native ordering will be made respectable.
     204  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4757501"></a><a name="id4757503"></a><b>Q:</b></td><td align="left" valign="top"><p>
     205  Is the interior point code as mature as the simplex code?
     206  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
     207  (DN 09/16/04) The simplex code has been exposed to user testing for more than a year and
     208  and the principal author, John Forrest, knows more about simplex algorithms
     209  than interior point algorithms, so the answer is "no".  However, it
     210  performs well on test sets and seems to be more reliable than some
     211  commercially available codes (including OSL).
     212  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4757525"></a><a name="id4757528"></a><b>Q:</b></td><td align="left" valign="top"><p>
     213  Which algorithm should I use for quadratic programming and should I keep an
     214  eye open for any issues?
     215  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
     216  (DN 09/16/04) The interior point algorithm for quadratic programming is much more elegant
     217  and normally much faster than the quadratic simplex code.  Caution is
     218  suggested with the presolve as not all bugs have been found and squashed when
     219  a quadratic objective is used.  One may wish to switch off the crossover to a
     220  basic feasible solution as the simplex code can be slow.  The sequential
     221  linear code is useful as a "crash" to the simplex code; its
     222  convergence is poor but, say, 100 iterations could set up the problem well for
     223  the simplex code.
     224  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4757558"></a><a name="id4757560"></a><b>Q:</b></td><td align="left" valign="top"><p>
    165225  What can the community do to help?
    166226  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
    167   (DN 08/27/04) A lot!  A good first step would be to join the CLP
     227  (DN 09/09/04) A lot!  A good first step would be to join the CLP
    168228  <a href="http://www.coin-or.org/mail.html" target="_top">mailing lists</a>.  Some
    169229  other possibilities:
     
    175235  Add non-English language support in your own favo(u)rite language.
    176236  </p></li><li><p>
    177   Improve the Clp executable
    178   </p></li><li><p>
    179   Etc.
     237  Improve the CLP executable.  In particular it would be nice to be able to link
     238  the executable's online help system with the existing CLP Samples (e.g. entering
     239  <b class="userinput"><tt>presol???</tt></b> would give the user references to all
     240  CLP Sample files which use presolve).
     241  </p></li><li><p>
     242  Implement a dual Simplex method for QPs (quadratic programs)
     243  </p></li><li><p>
     244  Implement a parametric Simplex method
     245  </p></li><li><p>
     246  Implement a true network Simplex method (network matrix and factorization
     247  are already in place, but the method is not)
     248  </p></li><li><p>
     249  Fill the holes in the barrier method mentioned above.
    180250  </p></li></ul></div></td></tr></tbody></table></div>
     251
     252<!--                            -->
     253<!--  End DocBook content here  -->
     254<!--                            -->
    181255
    182256        </div>
Note: See TracChangeset for help on using the changeset viewer.