source: html/trunk/Clp/userguide/apa.html @ 966

Last change on this file since 966 was 966, checked in by ddelanu, 17 years ago

Temporary version, trying to fix problems in server change, real release to follow

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 13.8 KB
Line 
1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Appendix A. FAQ</title><meta name="generator" content="DocBook XSL Stylesheets V1.66.1"><link rel="start" href="index.html" title="CLP User Guide"><link rel="up" href="index.html" title="CLP User Guide"><link rel="prev" href="ch06.html" title="Chapter 6. 
2  Messages
3  "><link rel="next" href="apb.html" title="Appendix B. Doxygen"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix A. FAQ</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="apb.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="id4782528"></a>Appendix A. FAQ</h2></div></div></div><div class="qandaset"><dl><dt>Q: <a href="apa.html#id4782607">
4  What is CLP?
5  </a></dt><dt>Q: <a href="apa.html#id4782566">
6  What are some of the features of CLP?
7  </a></dt><dt>Q: <a href="apa.html#id4783559">
8  How do I obtain and install CLP?
9  </a></dt><dt>Q: <a href="apa.html#id4783595">
10  Is CLP reliable?
11  </a></dt><dt>Q: <a href="apa.html#id4783627">
12  On which platforms does CLP run?   
13  </a></dt><dt>Q: <a href="apa.html#id4783678">
14  Is there any documentation for CLP? 
15  </a></dt><dt>Q: <a href="apa.html#id4783716">
16  Is CLP as fast as OSL?
17  </a></dt><dt>Q: <a href="apa.html#id4783737">
18  When will version 1.0 of CLP be available? 
19  </a></dt><dt>Q: <a href="apa.html#id4783768">
20  The barrier method sounds interesting, what are some of the details?
21  </a></dt><dt>Q: <a href="apa.html#id4783794">
22  Which Cholesky factorizations codes are supported by CLP's barrier method?
23  </a></dt><dt>Q: <a href="apa.html#id4783858">
24  When will CLP have a good native ordering?
25  </a></dt><dt>Q: <a href="apa.html#id4783879">
26  Is the barrier code as mature as the simplex code?
27  </a></dt><dt>Q: <a href="apa.html#id4783904">
28  Which algorithm should I use for quadratic programming and should I keep an
29  eye open for any issues?
30  </a></dt><dt>Q: <a href="apa.html#id4783936">
31  What can the community do to help?
32  </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="id4782607"></a><a name="id4782610"></a><b>Q:</b></td><td align="left" valign="top"><p>
33  What is <a href="http://www.coin-or.org/Clp/" target="_top">CLP</a>?
34  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
35  (DN 08/27/04) The <a href="http://www.coin-or.org/" target="_top">COIN-OR</a> LP code
36  is designed to be a high quality Simplex code provided under the terms of the
37  <a href="http://opensource.org/licenses/cpl.php" target="_top">Common Public License</a>.
38  CLP is written in C++, and is primarily intended to be used as a callable
39  library (though a rudimentary stand-alone executable exists).
40  The first release was version .90.  The current release is version .99.9.
41  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4782566"></a><a name="id4782568"></a><b>Q:</b></td><td align="left" valign="top"><p>
42  What are some of the features of CLP?
43  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
44  (DN 08/27/04) CLP includes primal and dual Simplex solvers.  Both dual and primal algorithms
45  can use matrix storage methods provided by the user (0-1 and network matrices
46  are already supported in addition to the default sparse matrix). The dual algorithm
47  has Dantzig and Steepest edge row pivot choices; new ones may be provided by
48  the user. The same is true for the column pivot choice of the primal algorithm.
49  The primal can also use a non linear cost which should work for piecewise
50  linear convex functions.  CLP also includes a barrier method for solving LPs.
51  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783559"></a><a name="id4783561"></a><b>Q:</b></td><td align="left" valign="top"><p>
52  How do I obtain and install CLP?
53  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
54  (DN 08/27/04) Please see the
55  <a href="http://www.coin-or.org/faqs.html" target="_top">COIN-OR FAQ</a>
56  for details on how to
57  <a href="http://www.coin-or.org/faqs.html#ObtainSrcCode" target="_top">obtain</a>
58  and
59  <a href="http://www.coin-or.org/faqs.html#BuildCode" target="_top">install</a>
60  COIN-OR modules.
61  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783595"></a><a name="id4783597"></a><b>Q:</b></td><td align="left" valign="top"><p>
62  Is CLP reliable?
63  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
64  (DN 09/07/04) CLP has been tested on many problems of up to 1.5 million
65  constraints and has shown itself as reliable as OSL. It is also being tested
66  in the context of
67  <a href="http://www.coin-or.org/faqs.html#SBB" target="_top">SBB</a>
68  ("Simple Branch and Bound", which is used to solve integer
69  programs), but more testing is needed before it can get to version 1.0.
70  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783627"></a><a name="id4783629"></a><b>Q:</b></td><td align="left" valign="top"><p>
71  On which platforms does CLP run?   
72  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
73  (DN 08/27/04) CLP compiles and has been tested (to varying degrees) on the following
74  platforms:
75  </p><div class="itemizedlist"><ul type="disc"><li><p>
76  Linux using g++ version 3.1.1 (or later)
77  </p></li><li><p>
78  Windows using Microsoft Visual C++ 6
79  </p></li><li><p>
80  Windows using cygwin
81  </p></li><li><p>
82  AIX using xIC (not supported in the current Makefile)
83  </p></li></ul></div></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783678"></a><a name="id4783680"></a><b>Q:</b></td><td align="left" valign="top"><p>
84  Is there any documentation for CLP? 
85  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
86  (DN 09/16/04) An early release of a User Guide is available on the
87  <a href="http://www.coin-or.org/Clp/documentation.html" target="_top">CLP documentation webpage</a>.
88  Also available is a list of
89  <a href="http://www.coin-or.org/Doxygen/Clp/" target="_top">CLP class descriptions</a> generated
90  by <a href="http://www.doxygen.org" target="_top">Doxygen</a>.
91  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783716"></a><a name="id4783718"></a><b>Q:</b></td><td align="left" valign="top"><p>
92  Is CLP as fast as OSL?
93  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
94   (DN 08/27/04) CLP uses sparse matrix techniques designed for very large
95   problems. The design criteria were for it not to be too slow. Some speed
96   has been sacrificed to make the code less opaque OSL (not difficult!).
97  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783737"></a><a name="id4783739"></a><b>Q:</b></td><td align="left" valign="top"><p>
98  When will version 1.0 of CLP be available? 
99  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
100  (DN 08/27/04) It is expected that version 1.0 will be released in time for the 2004
101  <a href="http://www.informs.org" target="_top">INFORMS</a>
102  <a href="http://www.informs.org/Conf/Denver2004/" target="_top">Annual Meeting</a>
103  (24-27 October, 2004).
104  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783768"></a><a name="id4783771"></a><b>Q:</b></td><td align="left" valign="top"><p>
105  The barrier method sounds interesting, what are some of the details?
106  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
107  (DN 08/30/04) The CLP barrier method solves convex QPs as well as LPs. In
108  general, a barrier method requires implementation of the algorithm, as
109  well as a fast Cholesky factorization.  CLP provides the algorithm, and is
110  expected to have a reasonable factorization implementation by the release of
111  CLP version 1.0.  However, the sparse factorization requires a good ordering
112  algorithm, which the user is expected to provide (perhaps a better
113  factorization code as well).
114  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783794"></a><a name="id4783796"></a><b>Q:</b></td><td align="left" valign="top"><p>
115  Which Cholesky factorizations codes are supported by CLP's barrier method?
116  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
117  (DN 09/16/04) The Cholesky interface is flexible enough so that a variety of Cholesky
118  ordering and factorization codes can be used.  Interfaces are provided to each
119  of the following:
120  </p><div class="itemizedlist"><ul type="disc"><li><p>
121  Anshul Gupta's WSSMP parallel enabled ordering and factorization code
122  </p></li><li><p>
123  Sivan Toledo's TAUCS parallel enabled factorization code (the package includes
124  third party ordering codes)
125  </p></li><li><p>
126  University of Florida's Approximate Minimum Degree (AMD) ordering code (the
127  CLP native factorization code is used with this ordering code)
128  </p></li><li><p>
129  CLP native code: very weak ordering but competitive nonparallel factorization
130  </p></li><li><p>
131  Fast dense factorization
132  </p></li></ul></div><p>
133  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783858"></a><a name="id4783860"></a><b>Q:</b></td><td align="left" valign="top"><p>
134  When will CLP have a good native ordering?
135  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
136  (DN 09/16/04) The best outcome would be to have an existing ordering code available as part
137  of the COIN distribution under the CPL.  However, if this is not possible, the
138  native ordering will be made respectable.
139  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783879"></a><a name="id4783881"></a><b>Q:</b></td><td align="left" valign="top"><p>
140  Is the barrier code as mature as the simplex code?
141  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
142  (DN 09/16/04) The simplex code has been exposed to user testing for more than a year and
143  and the principal author, John Forrest, knows more about simplex algorithms
144  than interior point algorithms, so the answer is "no".  However, it
145  performs well on test sets and seems to be more reliable than some
146  commercially available codes (including OSL).
147  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783904"></a><a name="id4783906"></a><b>Q:</b></td><td align="left" valign="top"><p>
148  Which algorithm should I use for quadratic programming and should I keep an
149  eye open for any issues?
150  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
151  (DN 09/16/04) The interior point algorithm for quadratic programming is much more elegant
152  and normally much faster than the quadratic simplex code.  Caution is
153  suggested with the presolve as not all bugs have been found and squashed when
154  a quadratic objective is used.  One may wish to switch off the crossover to a
155  basic feasible solution as the simplex code can be slow.  The sequential
156  linear code is useful as a "crash" to the simplex code; its
157  convergence is poor but, say, 100 iterations could set up the problem well for
158  the simplex code.
159  </p></td></tr><tr class="question"><td align="left" valign="top"><a name="id4783936"></a><a name="id4783938"></a><b>Q:</b></td><td align="left" valign="top"><p>
160  What can the community do to help?
161  </p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
162  (DN 09/09/04) A lot!  A good first step would be to join the CLP
163  <a href="http://www.coin-or.org/mail.html" target="_top">mailing lists</a>.  Some
164  other possibilities:
165  </p><div class="itemizedlist"><ul type="disc"><li><p>
166  Comment on the design
167  </p></li><li><p>
168  Break the code, or better yet, mend it.
169  </p></li><li><p>
170  Add non-English language support in your own favo(u)rite language.
171  </p></li><li><p>
172  Improve the CLP executable.  In particular it would be nice to be able to link
173  the executable's online help system with the existing CLP Samples (e.g. entering
174  <b class="userinput"><tt>presol???</tt></b> would give the user references to all
175  CLP Sample files which use presolve).
176  </p></li><li><p>
177  Implement a dual Simplex method for QPs (quadratic programs)
178  </p></li><li><p>
179  Implement a parametric Simplex method
180  </p></li><li><p>
181  Implement a true network Simplex method (network matrix and factorization
182  are already in place, but the method is not)
183  </p></li><li><p>
184  Fill the holes in the barrier method mentioned above.
185  </p></li></ul></div></td></tr></tbody></table></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="apb.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 6. 
186  Messages
187   </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Appendix B. Doxygen</td></tr></table></div></body></html>
Note: See TracBrowser for help on using the repository browser.