home *** CD-ROM | disk | FTP | other *** search
/ GEMini Atari / GEMini_Atari_CD-ROM_Walnut_Creek_December_1993.iso / files / math / lpsolves / readme < prev    next >
Text File  |  1993-07-28  |  2KB  |  64 lines

  1. CONTENTS:
  2.  
  3. This package contains the ANSI C sources for a very efficient (mixed integer)
  4. linear problem solver. To compile without warnings, you need ANSI include
  5. files as well. Its base is a sparse matrix dual simplex LP solver.  MILP
  6. problems are solved with a branch-and-bound iteration over LP solutions.
  7.  
  8. It uses a lex and yacc parser to read a human-friendly algebraic input format.
  9.  
  10. The author has used the program to solve LP problems up to about 30000
  11. variables and 50000 constraints (on a 22 MFLOPS HP9000/750).
  12.  
  13.  
  14. VECTOR PROCESSORS:
  15.  
  16. For alliant users, there are pragmas in dual.c which allow to compile it in
  17. vector mode. This reduces the cpu usage with 40% on a FX/8. Do not compile any
  18. of the other files with vector optimization; this will just slow things down.
  19. It should easily be possible to use vector capabilities of other computers.
  20.  
  21.  
  22. KNOWN BUGS / PROBLEMS
  23.  
  24. The program does not store simple bounds on variables in the main matrix.
  25. Therefore, simple problems like:
  26.  
  27. x + y;
  28. x < 1;
  29. y < 1;
  30.  
  31. define an empty matrix. This sometimes causes the program to crash. All
  32. real-life problems do not have this property, fortunately.
  33.  
  34. FUTURE ENHANCEMENTS:
  35.  
  36. The program lacks two things:
  37.  
  38. - matrix optimization as preprocessing
  39. - matrix normalization to increase numerical stability
  40.  
  41. Contributions are welcome.
  42.  
  43.  
  44. AUTHOR:
  45.  
  46. For any comment on the sources, contact: michel@es.ele.tue.nl
  47.  
  48.  
  49.  
  50. INSTALL:
  51.  
  52. Look into file INSTALL for installation hints.
  53.  
  54.  
  55. TESTING:
  56.  
  57. After a succesful build, run:
  58.  
  59. lp_solve < ex[12345].lp
  60.  
  61. The results should be close to (floating point accuracy is important) the
  62. results in  ex[12345].out.
  63.  
  64.