|
|
(One intermediate revision by one other user not shown) |
Line 1: |
Line 1: |
| In mathematical [[optimization (mathematics)|optimization theory]], the '''linear complementarity problem (LCP)''' arises frequently in [[computational mechanics]] and encompasses the well-known [[quadratic programming]] as a special case. It was proposed by Cottle and [[George Dantzig|Dantzig]] {{nowrap|in 1968.<ref name="Murty88"/><ref name="CPS92"/><ref>R. W. Cottle and [[G. B. Dantzig]]. Complementary pivot theory of mathematical programming. ''Linear Algebra and its Applications'', 1:103-125, 1968.</ref>}}
| | <br><br>Another day I woke up and noticed - I have also been single for a while today and after much intimidation from buddies I today locate myself [http://www.hotelsedinburgh.org on tour with luke bryan] signed up for on line dating. They assured me that there are plenty of pleasant, standard and interesting individuals to meet up, therefore here goes [http://www.banburycrossonline.com Luke bryan tours 2014] the message!<br>My fam and [http://lukebryantickets.neodga.com luke bryan my kinda night tour] buddies are magnificent and spending some time with them at tavern gigs or dinners is always critical. As I discover you could never have a good dialogue with all the sound I haven't ever been into cabarets. In addition, I got 2 undoubtedly cheeky and quite cunning puppies that are [http://Www.Google.com/search?q=consistently+eager&btnI=lucky consistently eager] to meet up fresh folks.<br>I endeavor to maintain as physically fit as potential staying at the gymnasium many times weekly. [http://www.bing.com/search?q=I+enjoy&form=MSNNWS&mkt=en-us&pq=I+enjoy I enjoy] my sports and try to play or see as many a potential. Being wintertime I am going to regularly at Hawthorn suits. [http://www.museodecarruajes.org luke bryan concert videos] Note: If you will contemplated shopping an activity I do not mind, I've noticed the carnage of wrestling fits at stocktake revenue.<br><br>Feel free to visit my web-site: luke bryan tickets boston ([http://minioasis.com minioasis.com]) |
| | |
| == Formulation ==
| |
| Given a real matrix '''M''' and vector '''q''', the linear complementarity problem seeks vectors '''z''' and '''w''' which satisfy the following constraints:
| |
| | |
| * <math>{w} = {Mz} + {q} \,</math>
| |
| * <math>{w} \ge 0, {z} \ge 0\,</math> (that is, each component of these two vectors is non-negative)
| |
| * <math>{w}_i {z}_i = 0\,</math> for all i. (The [[Complementarity theory|complementarity]] condition)
| |
| | |
| A sufficient condition for existence and uniqueness of a solution to this problem is that '''M''' be [[Symmetric matrix|symmetric]] [[Positive-definite matrix|positive-definite]].
| |
| | |
| The vector <math>{w}\,</math> is a [[slack variable]], and so is generally discarded after <math>{z}\,</math> is found.{{Citation needed|date=March 2012}} As such, the problem can also be formulated as:
| |
| | |
| * <math>{Mz}+{q} \ge {0}\,</math>
| |
| * <math>{z} \ge {0}\,</math>
| |
| * <math>{z}^{\mathrm{T}}({Mz}+{q}) = 0\,</math> (the complementarity condition)
| |
| | |
| ==Convex quadratic-minimization: Minimum conditions==
| |
| | |
| Finding a solution to the linear complementarity problem is associated with minimizing the quadratic function
| |
| | |
| : <math>f({z}) = {z}^{\mathrm{T}}({Mz}+{q})\,</math>
| |
| | |
| subject to the constraints
| |
| | |
| : <math>{Mz}+{q} \ge {0}\,</math>
| |
| : <math>{z} \ge {0}\,</math>
| |
| | |
| These constraints ensure that ''f'' is always non-negative. The minimum of ''f'' is 0 at '''z''' if and only if '''z''' solves the linear complementarity problem.
| |
| | |
| If '''M''' is [[Positive-definite matrix|positive definite]], any algorithm for solving (strictly) convex [[Quadratic programming|QPs]] can solve the LCP. Specially designed basis-exchange pivoting algorithms, such as [[Lemke's algorithm]] and a variant of the [[simplex algorithm|simplex algorithm of Dantzig]] have been used for decades. Besides having polynomial time complexity, interior-point methods are also effective in practice.
| |
| | |
| Also, a quadratic-programming problem stated as minimize <math>f({x})={c}^T{x}+\frac{1}{2}{x}^T{Qx}\,</math> subject to <math>{Ax} \geq {b} \,</math> as well as <math>{x} \ge {0}\,</math> with ''Q'' symmetric
| |
| | |
| is the same as solving the LCP with
| |
| | |
| * <math>{q} = \left[\begin{array}{c}{c}\\-{b}\end{array}\right]\,</math>
| |
| * <math>{M} = \left[\begin{array}{cc} {Q} & -{A}^{T}\\ {A} & 0\end{array}\right]\,</math>
| |
| | |
| This is because the [[Karush–Kuhn–Tucker]] conditions of the QP problem can be written as:
| |
| | |
| * <math>{v} = {Q} {x} - {A}^{T} {\lambda} + {c}\,</math>
| |
| | |
| * <math>{s} = {A} {x} - {b}\,</math>
| |
| | |
| * <math>{x}, {\lambda}, {v}, {s} \ge {0}\,</math>
| |
| | |
| * <math>{x}^{T}{v} + {\lambda}^{T}{s} = {0}\,</math>
| |
| | |
| ...being <math> {v} \,</math> the Lagrange multipliers on the non-negativity constraints,<math> {\lambda} \,</math> the <!-- Lagrange -->multipliers on the inequality constraints, and <math> {s} \,</math> the slack variables for the inequality constraints. The fourth condition derives from the complementarity of each group of variables (<math>{x}, {s}\,</math>) with its set of KKT vectors (optimal Lagrange multipliers) being (<math>{v}, {\lambda}\,</math>). | |
| | |
| In that case,
| |
| | |
| : <math>{z} = \left[\begin{array}{c}{x}\\ {\lambda}\end{array}\right]\,</math>
| |
| : <math>{w} = \left[\begin{array}{c}{v}\\ {s}\end{array}\right]\,</math> | |
| | |
| If the non-negativity constraint on the <math>{x}\,</math> is relaxed, the dimensionality of the LCP problem can be reduced to the number of the inequalities, as long as <math>{Q}\,</math> is non-singular (which is guaranteed if it is [[Positive-definite matrix|positive definite]]). The multipliers <math>{v}\,</math> are no longer present, and the first KKT conditions can be rewritten as:
| |
| | |
| * <math>{Q} {x} = {A}^{T} {\lambda} - {c}\,</math>
| |
| | |
| or: | |
| | |
| : <math> {x} = {Q}^{-1}({A}^{T} {\lambda} - {c})\,</math>
| |
| | |
| pre-multiplying the two sides by <math>{A}\,</math> and subtracting <math>{b}\,</math> we obtain:
| |
| | |
| : <math> {A} {x} - {b} = {A} {Q}^{-1}({A}^{T} {\lambda} - {c}) -{b} \,</math>
| |
| | |
| The left side, due to the second KKT condition, is <math>{s}\,</math>. Substituting and reordering:
| |
| | |
| : <math> {s} = ({A} {Q}^{-1} {A}^{T}) {\lambda} + (- {A} {Q}^{-1} {c} - {b} )\,</math>
| |
| | |
| Calling now <math> {M} \,\overset{\underset{\mathrm{def}}{}}{=}\, ({A} {Q}^{-1} {A}^{T})\,</math> and <math> {q} \,\overset{\underset{\mathrm{def}}{}}{=}\, (- {A} {Q}^{-1} {c} - {b})\,</math> we have an LCP, due to the relation of complementarity between the slack variables <math>{s}\,</math> and their Lagrange multipliers <math>{\lambda}\,</math>. Once we solve it, we may obtain the value of <math>{x}\,</math> from <math>{\lambda}\,</math> through the first KKT condition.
| |
| | |
| Finally, it is also possible to handle additional equality constraints:
| |
| | |
| : <math>{A}_{eq}{x} = {b}_{eq} \,</math>
| |
| | |
| This introduces a vector of Lagrange multipliers <math>{\mu}\,</math>, with the same dimension as <math>{b}_{eq}\,</math>.
| |
| | |
| It is easy to verify that the <math>{M}\,</math> and <math>{q}\,</math> for the LCP system <math> {s} = {M} {\lambda} + {q} \,</math> are now expressed as:
| |
| | |
| : <math> {M} ~\overset{\underset{\mathrm{def}}{}}{=}~ \left(\left[\begin{array}{cc}{A} & {0}\end{array}\right] \left[\begin{array}{cc} {Q} & {A}_{eq}^{T}\\ -{A}_{eq} & {0}\end{array}\right]^{-1} \left[\begin{array}{cc}{A}^{T} \\ {0}\end{array}\right]\right)\,</math>
| |
| | |
| : <math> {q} ~\overset{\underset{\mathrm{def}}{}}{=}~ \left(- \left[\begin{array}{cc}{A} & {0}\end{array}\right] \left[\begin{array}{cc} {Q} & {A}_{eq}^{T}\\ -{A}_{eq} & {0}\end{array}\right]^{-1} \left[\begin{array}{c}{c}\\ {b}_{eq}\end{array}\right] - {b}\right)\,</math>
| |
| | |
| From <math>{\lambda}\,</math> we can now recover the values of both <math>{x}\,</math> and the Lagrange multiplier of equalities <math>{\mu}\,</math>:
| |
| | |
| <math>\left[\begin{array}{c}{x}\\ {\mu}\end{array}\right] = \left[\begin{array}{cc} {Q} & {A}_{eq}^{T}\\ -{A}_{eq} & {0}\end{array}\right]^{-1} \left[\begin{array}{c} {A}^{T}{\lambda}-{c}\\-{b}_{eq}\end{array}\right] \,</math>
| |
| | |
| In fact, most QP solvers work on the LCP formulation, including the [[interior point method]], principal / complementarity pivoting, and [[active set]] methods.<ref name="Murty88">{{harvtxt|Murty|1988}}</ref><ref name="CPS92">{{harvtxt|Cottle|Pang|Stone|1992}}</ref> LCP problems can be solved also by the [[criss-cross algorithm]],<ref>{{harvtxt|Fukuda|Namiki|1994}}</ref><ref>{{harvtxt|Fukuda|Terlaky|1997}}</ref><ref name="HRT">{{cite journal|first1=D. |last1=den Hertog|first2=C.|last2=Roos|first3=T.|last3=Terlaky|title=The linear complementarity problem, sufficient matrices, and the criss-cross method|journal=Linear Algebra and its Applications|volume=187|date=1 July 1993|pages=1–14|doi=10.1016/0024-3795(93)90124-7|url=http://www.sciencedirect.com/science/article/pii/0024379593901247|<!-- ref=harv -->|url=http://arno.uvt.nl/show.cgi?fid=72943|format=pdf}}</ref><ref name="CIsufficient">{{cite journal|first1=Zsolt|last1=Csizmadia|first2=Tibor|last2=Illés|title=New criss-cross type algorithms for linear complementarity problems with sufficient matrices|journal=Optimization Methods and Software|volume=21|year=2006|number=2|pages=247–266|doi=10.1080/10556780500095009|
| |
| url=http://www.cs.elte.hu/opres/orr/download/ORR03_1.pdf|format=pdf|url2=http://www.tandfonline.com/doi/abs/10.1080/10556780500095009|eprint=http://www.tandfonline.com/doi/pdf/10.1080/10556780500095009|mr=2195759|<!-- ref=harv -->}}</ref> conversely, for linear complementarity problems, the criss-cross algorithm terminates finitely only if the matrix is a sufficient matrix.<ref name="HRT"/><ref name="CIsufficient"/> A [[sufficient matrix]] is a generalization both of a [[positive-definite matrix]] and of a [[P-matrix]], whose [[principal minor]]s are each positive.<ref name="HRT"/><ref name="CIsufficient"/><ref>{{cite journal|last1=Cottle|first1=R. W.|authorlink1=Richard W. Cottle|last2=Pang|first2=J.-S.|last3=Venkateswaran|first3=V.|title=Sufficient matrices and the linear complementarity problem|journal=Linear Algebra and its Applications|volume=114–115|year=1989|pages=231–249|doi=10.1016/0024-3795(89)90463-1|url=http://www.sciencedirect.com/science/article/pii/0024379589904631|month=March–April|mr=986877|ref=harv}}</ref>
| |
| Such LCPs can be solved when they are formulated abstractly using [[oriented matroid|oriented-matroid]] theory.<ref name="Todd" >{{harvtxt|Todd|1985|}}</ref><ref>{{harvtxt|Terlaky|Zhang|1993}}: {{cite journal|last1=Terlaky|first1=Tamás|<!-- authorlink1=Tamás Terlaky -->|last2=Zhang|first2=Shu Zhong|title=Pivot rules for linear programming: A Survey on recent theoretical developments|issue=Degeneracy in optimization problems|journal=Annals of Operations Research|volume=46–47|year=1993|issue=1|pages=203–233|doi=10.1007/BF02096264|mr=1260019|id= {{citeseerx|10.1.1.36.7658}} |publisher=Springer Netherlands|issn=0254-5330|ref=harv}}</ref><ref>{{cite book|last=Björner|first=Anders|last2=Las Vergnas|author2-link=Michel Las Vergnas|first2=Michel|last3=Sturmfels|first3=Bernd|authorlink3=Bernd Sturmfels|last4=White|first4=Neil|last5=Ziegler|first5=Günter|authorlink5=Günter M. Ziegler|title=Oriented Matroids|chapter=10 Linear programming|publisher=Cambridge University Press|year=1999|isbn=978-0-521-77750-6|url=http://ebooks.cambridge.org/ebook.jsf?bid=CBO9780511586507|pages=417–479|doi=10.1017/CBO9780511586507|MR=1744046}}</ref>
| |
| | |
| == See also ==
| |
| *[[Complementarity theory]]
| |
| *[[Physics engine]] Impulse/constraint type physics engines for games use this approach.
| |
| *[[Contact dynamics]] Contact dynamics with the nonsmooth approach
| |
| | |
| ==Notes==
| |
| {{Reflist}}
| |
| | |
| == References ==
| |
| | |
| * {{cite book|last1=Cottle|first1=Richard W.|last2=Pang|first2=Jong-Shi|last3=Stone|first3=Richard E.|title=The linear complementarity problem | series=Computer Science and Scientific Computing|publisher=Academic Press, Inc.|location=Boston, MA|year=1992|pages=xxiv+762 pp.|isbn=0-12-192350-9|mr=1150683|ref=harv}}
| |
| *{{cite journal|last1=Cottle|first1=R. W.|authorlink1=Richard W. Cottle|last2=Pang|first2=J.-S.|last3=Venkateswaran|first3=V.|title=Sufficient matrices and the linear complementarity problem|journal=Linear Algebra and its Applications|volume=114–115|year=1989|pages=231–249|doi=10.1016/0024-3795(89)90463-1|url=http://www.sciencedirect.com/science/article/pii/0024379589904631|month=March–April|mr=986877|ref=harv}}
| |
| * {{cite journal|first1=Zsolt|last1=Csizmadia|first2=Tibor|last2=Illés|title=New criss-cross type algorithms for linear complementarity problems with sufficient matrices|journal=Optimization Methods and Software|volume=21|year=2006|number=2|pages=247–266|doi=10.1080/10556780500095009|
| |
| url=http://www.cs.elte.hu/opres/orr/download/ORR03_1.pdf|format=pdf|url2=http://www.tandfonline.com/doi/abs/10.1080/10556780500095009|eprint=http://www.tandfonline.com/doi/pdf/10.1080/10556780500095009|mr=2195759|<!-- ref=harv -->}}
| |
| * {{cite journal|last1=Fukuda|first1=Komei|authorlink1=Komei Fukuda|last2=Namiki|first2=Makoto|title=On extremal behaviors of Murty's least index method|journal=Mathematical Programming|date=March 1994|pages=365–370|volume=64|issue=1|doi=10.1007/BF01582581|ref=harv|mr=1286455}}
| |
| * {{cite journal|first1=D. |last1=den Hertog|first2=C.|last2=Roos|first3=T.|last3=Terlaky|title=The linear complementarity problem, sufficient matrices, and the criss-cross method|journal=Linear Algebra and its Applications|volume=187|date=1 July 1993|pages=1–14|doi=10.1016/0024-3795(93)90124-7|url=http://www.sciencedirect.com/science/article/pii/0024379593901247|<!-- ref=harv -->|url=http://arno.uvt.nl/show.cgi?fid=72943|format=pdf}}
| |
| * {{cite book|last=Murty|first=K. G.|title=Linear complementarity, linear and nonlinear programming|series=Sigma Series in Applied Mathematics|volume=3|publisher=Heldermann Verlag|location=Berlin|year=1988|pages=xlviii+629 pp.|isbn=3-88538-403-5|url=http://ioe.engin.umich.edu/people/fac/books/murty/linear_complementarity_webbook/| mr=949214|id=[http://www-personal.umich.edu/~murty/ Updated and free PDF version at Katta G. Murty's website]|ref=harv}}
| |
| * {{cite journal|first1=Komei|last1=Fukuda|<!-- authorlink1=Komei Fukuda -->|first2=Tamás|last2=Terlaky|<!-- authorlink2=Tamás Terlaky -->|title=Criss-cross methods: A fresh view on pivot algorithms |doi=10.1007/BF02614325|journal=Mathematical Programming: Series B|volume=79
| |
| |issue=1—3|pages=369–395|issue=Papers from the 16th International Symposium on Mathematical Programming held in Lausanne, 1997|editors=Thomas M. Liebling and Dominique de Werra|publisher=North-Holland Publishing Co. |location=Amsterdam|year=1997|doi=10.1016/S0025-5610(97)00062-2|mr=1464775|ref=harv|id=[http://www.cas.mcmaster.ca/~terlaky/files/crisscross.ps Postscript preprint]}}
| |
| *{{cite journal|last=Todd|first=Michael J.|authorlink=Michael J. Todd (mathematician)|title=Linear and quadratic programming in oriented matroids|journal=Journal of Combinatorial Theory|series=Series B|volume=39|year=1985|issue=2|pages=105–133|mr=811116|doi=10.1016/0095-8956(85)90042-5|ref=harv}}
| |
| | |
| ==Further reading==
| |
| * R. W. Cottle and [[G. B. Dantzig]]. Complementary pivot theory of mathematical programming. ''Linear Algebra and its Applications'', 1:103-125, 1968.
| |
| * {{cite journal|last1=Terlaky|first1=Tamás|<!-- authorlink1=Tamás Terlaky -->|last2=Zhang|first2=Shu Zhong|title=Pivot rules for linear programming: A Survey on recent theoretical developments|issue=Degeneracy in optimization problems|journal=Annals of Operations Research|volume=46–47|year=1993|issue=1|pages=203–233|doi=10.1007/BF02096264|mr=1260019|id = {{citeseerx|10.1.1.36.7658}} |publisher=Springer Netherlands|issn=0254-5330|ref=harv}}
| |
| | |
| == External links ==
| |
| * [http://www1.american.edu/econ/gaussres/optimize/quadprog.src LCPSolve] — A simple procedure in GAUSS to solve a linear complementarity problem
| |
| * [http://www.openopt.org/LCP LCPSolve.py] — A Python/NumPy implementation of LCPSolve is part of [[OpenOpt]] since its release 0.32
| |
| * [[Siconos]]/Numerics open-source GPL implementation in C of Lemke's algorithm and other methods to solve LCPs and MLCPs
| |
| | |
| {{Mathematical programming}}
| |
| | |
| [[Category:Linear algebra]]
| |
| [[Category:Mathematical optimization]]
| |