Claims
- 1. A method for solving a system of linear inequalities, comprising:
receiving a representation of the system of linear inequalities Ax≦b, wherein A is a matrix with m rows corresponding to m inequalities, and with n columns corresponding to n variables, wherein x includes n variable components, and wherein b includes m scalar components; storing the representation in a memory within a computer system; solving the system of linear inequalities Ax≦b by performing a Gaussian elimination process using only positive multipliers so as not to change the sense of any inequality; wherein for a given column j in the matrix A, performing the Gaussian elimination process involves, if possible,
selecting a primary pivot row r including a primary pivot element, arj, which is nonzero, selecting a secondary pivot row s including a secondary pivot element, asj, which is nonzero and opposite in sign to arj; using the secondary pivot element asj to zero elements opposite in sign to it in the same column of A, except for the primary pivot element arj, adding a copy s′ of the secondary pivot row s to the matrix A, thereby increasing the number of rows in the matrix A, and using the primary pivot element arj to zero elements opposite in sign to it in the same column of A, except for the copy of the secondary pivot element as′j in row s′.
- 2. The method of claim 1, wherein receiving the representation of the system of linear inequalities Ax≦b involves:
receiving a system of linear inequalities with interval coefficients AIx≦bI; and forming an initial matrix A as the center of the interval matrix AI.
- 3. The method of claim 2, further comprising generating a preconditioning matrix B by:
starting with an initial identity matrix B of order m; and performing the same operations on B as are performed on the matrix A during the Gaussian elimination process.
- 4. The method of claim 3, further comprising using the preconditioning matrix B to precondition the system of linear inequalities AIx≦bI to generate a modified system BAIx≦BbI that can be solved with reduced interval width.
- 5. The method of claim 2, wherein receiving the system of linear inequalities with interval coefficients AIx≦bI involves linearizing an initial system of nonlinear inequalities to form the system of linear inequalities with interval coefficients AIx≦bI.
- 6. The method of claim 1, wherein performing the Gaussian elimination process involves performing column interchanges in the system of linear equalities Ax≦b.
- 7. The method of claim 1, wherein selecting the secondary pivot row s involves ensuring that the secondary pivot element asj is as high as possible in its column.
- 8. The method of claim 1, wherein selecting the secondary pivot row s involves ensuring that the secondary pivot element asj is as large in magnitude as possible.
- 9. The method of claim 1, wherein selecting the primary pivot row r involves ensuring that the primary pivot element arj is as large in magnitude as possible.
- 10. A computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for solving a system of linear inequalities, the method comprising:
receiving a representation of the system of linear inequalities Ax≦b, wherein A is a matrix with m rows corresponding to m inequalities, and with n columns corresponding to n variables, wherein x includes n variable components, and wherein b includes m scalar components; storing the representation in a memory within a computer system; solving the system of linear inequalities Ax≦b by performing a Gaussian elimination process using only positive multipliers so as not to change the sense of any inequality; wherein for a given column j in the matrix A, performing the Gaussian elimination process involves, if possible,
selecting a primary pivot row r including a primary pivot element, arj, which is nonzero, selecting a secondary pivot row s including a secondary pivot element, asj, which is nonzero and opposite in sign to arj, using the secondary pivot element asj, to zero elements opposite in sign to it in the same column of A, except for the primary pivot element arj, adding a copy s′ of the secondary pivot row s to the matrix A, thereby increasing the number of rows in the matrix A, and using the primary pivot element arj to zero elements opposite in sign to it in the same column of A, except for the copy of the secondary pivot element as′j in row s′.
- 11. The computer-readable storage medium of claim 10, wherein receiving the representation of the system of linear inequalities Ax≦b involves:
receiving a system of linear inequalities with interval coefficients AIx≦bI; and forming an initial matrix A as the center of the interval matrix AI.
- 12. The computer-readable storage medium of claim 11, wherein the method further comprises generating a preconditioning matrix B by:
starting with an initial identity matrix B of order m; and performing the same operations on B as are performed on the matrix A during the Gaussian elimination process.
- 13. The computer-readable storage medium of claim 12, wherein the method further comprises using the preconditioning matrix B to precondition the system of linear inequalities AIx≦bI to generate a modified system BAIx≦BbI, that can be solved with reduced interval width.
- 14. The computer-readable storage medium of claim 11, wherein receiving the system of linear inequalities with interval coefficients AIx≦bI involves linearizing an initial system of nonlinear inequalities to form the system of linear inequalities with interval coefficients AIx≦bI.
- 15. The computer-readable storage medium of claim 10, wherein performing the Gaussian elimination process involves performing column interchanges in the system of linear equalities Ax≦b.
- 16. The computer-readable storage medium of claim 10, wherein selecting the secondary pivot row s involves ensuring that the secondary pivot element asj is as high as possible in its column.
- 17. The computer-readable storage medium of claim 10, wherein selecting the secondary pivot row s involves ensuring that the secondary pivot element asj is as large in magnitude as possible.
- 18. The computer-readable storage medium of claim 10, wherein selecting the primary pivot row r involves ensuring that the primary pivot element arj is as large in magnitude as possible.
- 19. An apparatus for solving a system of linear inequalities, comprising:
a memory within a computer system for storing a representation of the system of linear inequalities Ax≦b wherein A is a matrix with m rows corresponding to m inequalities, and with n columns corresponding to n variables, wherein x includes n variable components, and wherein b includes m scalar components; a solving mechanism that is configured to solve the system of linear inequalities Ax≦b by performing a Gaussian elimination process using only positive multipliers so as not to change the sense of any inequality; wherein for a given column j in the matrix A, the solving mechanism is configured to,
select a primary pivot row r, if possible, including a primary pivot element, arj which is nonzero, select a secondary pivot row s, if possible, including a secondary pivot element, asj, which is nonzero and opposite in sign to arj, use the secondary pivot element asj to zero elements opposite in sign to it in the same column of A, except for the primary pivot element arj, add a copy s′ of the secondary pivot row s to the matrix A, thereby increasing the number of rows in the matrix A, and to use the primary pivot element arj to zero elements opposite in sign to it in the same column of A, except for the copy of the secondary pivot element as′j in row s′.
- 20. The apparatus of claim 19, wherein the solving mechanism is configured to:
receive a system of linear inequalities with interval coefficients AIx≦bI; and to form an initial matrix A as the center of the interval matrix AI.
- 21. The apparatus of claim 20 wherein the solving mechanism is additionally configured to generate a preconditioning matrix B by:
starting with an initial identity matrix B of order m; and performing the same operations on B as are performed on the matrix A during the Gaussian elimination process.
- 22. The apparatus of claim 21, wherein the solving mechanism is configured to use the preconditioning matrix B to precondition the system of linear inequalities AIx≦bI to generate a modified system BAIx≦BbI that can be solved with reduced interval width.
- 23. The apparatus of claim 20, wherein the solving mechanism is configured to linearize an initial system of nonlinear inequalities to form the system of linear inequalities with interval coefficients AIx≦bI.
- 24. The apparatus of claim 19, wherein the solving mechanism is configured to perform column interchanges in the system of linear equalities Ax≦b.
- 25. The apparatus of claim 19, wherein while selecting the secondary pivot row s, the solving mechanism is configured to ensure that the secondary pivot element asj is as high as possible in its column.
- 26. The apparatus of claim 19, wherein while selecting the secondary pivot row s, the solving mechanism is configured to ensure that the secondary pivot element asj is as large in magnitude as possible.
- 27. The apparatus of claim 19, wherein while selecting the primary pivot row r, the solving mechanism is configured to ensure that the primary pivot element arj is as large in magnitude as possible.
RELATED APPLICATION
[0001] The subject matter of this application is related to the subject matter in a co-pending non-provisional application by the same inventors as the instant application entitled, “Method and Apparatus for Solving an Inequality Constrained Global Optimization Problem”, having serial number 10/042,883, and filing date Jan. 8, 2002 (Attorney Docket No. SUN-P6432-SPL).