Revision: 2756
Author:
anna.ata...@gmail.com
Date: Mon Feb 24 20:40:31 2014 UTC
Log: issue 133
Enhancement: committing some changes
http://code.google.com/p/ellipsoids/source/detail?r=2756
Modified:
/branches/issue_133_aatanesyan/doc/_build/html/.buildinfo
/branches/issue_133_aatanesyan/doc/_build/html/_sources/chap_reach.txt
/branches/issue_133_aatanesyan/doc/_build/html/_sources/main_manual.txt
/branches/issue_133_aatanesyan/doc/_build/html/_static/basic.css
/branches/issue_133_aatanesyan/doc/_build/html/_static/doctools.js
/branches/issue_133_aatanesyan/doc/_build/html/_static/searchtools.js
/branches/issue_133_aatanesyan/doc/_build/html/chap_acknowledge.html
/branches/issue_133_aatanesyan/doc/_build/html/chap_ellcalc.html
/branches/issue_133_aatanesyan/doc/_build/html/chap_examples.html
/branches/issue_133_aatanesyan/doc/_build/html/chap_functions.html
/branches/issue_133_aatanesyan/doc/_build/html/chap_implement.html
/branches/issue_133_aatanesyan/doc/_build/html/chap_install.html
/branches/issue_133_aatanesyan/doc/_build/html/chap_intro.html
/branches/issue_133_aatanesyan/doc/_build/html/chap_reach.html
/branches/issue_133_aatanesyan/doc/_build/html/chap_summary.html
/branches/issue_133_aatanesyan/doc/_build/html/genindex.html
/branches/issue_133_aatanesyan/doc/_build/html/main_manual.html
/branches/issue_133_aatanesyan/doc/_build/html/objects.inv
/branches/issue_133_aatanesyan/doc/_build/html/search.html
/branches/issue_133_aatanesyan/doc/_build/html/searchindex.js
/branches/issue_133_aatanesyan/doc/_build/latex/elltool_manual.tex
/branches/issue_133_aatanesyan/doc/_build/latex/sphinx.sty
/branches/issue_133_aatanesyan/doc/_build/latex/sphinxmanual.cls
/branches/issue_133_aatanesyan/doc/_build/latex/tabulary.sty
/branches/issue_133_aatanesyan/doc/chap_ellTube.rst
/branches/issue_133_aatanesyan/products/+gras/+ellapx/+smartdb/+test/+examples/example_project.m
/branches/issue_133_aatanesyan/products/+gras/+ellapx/+smartdb/+test/+mlunit/ExamplesTC.m
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/.buildinfo Tue Nov 19
13:44:20 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/.buildinfo Mon Feb 24
20:40:31 2014 UTC
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When
it is not found, a full rebuild will be done.
-config: d4b8e9fef3e78eaf6907d4b8005f1492
+config: 982ebbdc8f2d8f8beaef0b683df722af
tags: 645f666f9bcd5a90fca523b33c5a78b7
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/_sources/chap_reach.txt
Mon Nov 11 19:22:16 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/_sources/chap_reach.txt
Mon Feb 24 20:40:31 2014 UTC
@@ -827,7 +827,7 @@
**Definition.** Given the terminal time :math:`t_1` and target
set :math:`{\mathcal Y}_1`, the
minmax CLBRS :math:`\underline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1)`
of system
-([ctds2]) or [dtds2] at time :math:`t<t_1`, is the set of all states
+:eq:`ctds2` or :eq:`dtds2` at time :math:`t<t_1`, is the set of all states
:math:`y`, for each of which there exists control
:math:`u(\tau, y(\tau))\in{\mathcal U}(\tau)` that for every disturbance
:math:`v(\tau)\in{\mathcal V}(\tau)` assigns terminal state
@@ -1191,7 +1191,7 @@
X_l^-(t)l(t)\rangle^{1/2}}(X_l^{-}(t))^{1/2}l(t).
Similarly to the external case, the terms containing :math:`G(t)` and
-:math:`Q(t)` vanish from the equation ([fwdint1]) for a system without
+:math:`Q(t)` vanish from the equation :eq:`fwdint1` for a system without
disturbance.
The point where the external and internal ellipsoids touch the boundary
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/_sources/main_manual.txt
Tue Nov 19 13:06:03 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/_sources/main_manual.txt
Mon Feb 24 20:40:31 2014 UTC
@@ -15,6 +15,7 @@
chap_install
chap_implement
chap_examples
+ chap_ellTube
chap_summary
chap_acknowledge
chap_functions
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/_static/basic.css Tue
Nov 19 13:44:20 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/_static/basic.css Mon
Feb 24 20:40:31 2014 UTC
@@ -89,6 +89,7 @@
img {
border: 0;
+ max-width: 100%;
}
/* -- search page
----------------------------------------------------------- */
@@ -400,10 +401,6 @@
.field-list p {
margin: 0;
}
-
-.refcount {
- color: #060;
-}
.optional {
font-size: 1.3em;
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/_static/doctools.js Sun
Oct 13 18:40:08 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/_static/doctools.js Mon
Feb 24 20:40:31 2014 UTC
@@ -168,6 +168,9 @@
var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : [];
if (terms.length) {
var body = $('div.body');
+ if (!body.length) {
+ body = $('body');
+ }
window.setTimeout(function() {
$.each(terms, function() {
body.highlightText(this.toLowerCase(), 'highlighted');
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/_static/searchtools.js
Sun Oct 13 18:40:08 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/_static/searchtools.js
Mon Feb 24 20:40:31 2014 UTC
@@ -330,13 +330,13 @@
objectterms.push(tmp[i].toLowerCase());
}
- if ($u.indexOf(stopwords, tmp[i]) != -1 || tmp[i].match(/^\d+$/) ||
+ if ($u.indexOf(stopwords, tmp[i].toLowerCase()) != -1 ||
tmp[i].match(/^\d+$/) ||
tmp[i] === "") {
// skip this "word"
continue;
}
// stem the word
- var word = stemmer.stemWord(tmp[i]).toLowerCase();
+ var word = stemmer.stemWord(tmp[i].toLowerCase());
var toAppend;
// select the correct list
if (word[0] == '-') {
@@ -550,7 +550,7 @@
for (i = 0; i < searchterms.length; i++) {
var word = searchterms[i];
// no match but word was a required one
- if (!(files = terms[word]))
+ if ((files = terms[word]) === undefined)
break;
if (files.length === undefined) {
files = [files];
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/chap_acknowledge.html
Tue Nov 19 13:06:03 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/chap_acknowledge.html
Mon Feb 24 20:40:31 2014 UTC
@@ -107,7 +107,7 @@
</div>
<div class="footer">
© Copyright 2011-2013 Moscow State University, Faculty of
Computational Mathematics and Computer Science, System Analysis Department,
2004-2011 The Regents of the University of California.
- Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2b2.
+ Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2.1.
</div>
</body>
</html>
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/chap_ellcalc.html Thu
Feb 6 19:00:52 2014 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/chap_ellcalc.html Mon
Feb 24 20:40:31 2014 UTC
@@ -54,120 +54,120 @@
<div class="section" id="basic-notions">
<h2>Basic Notions<a class="headerlink" href="#basic-notions"
title="Permalink to this headline">¶</a></h2>
<p>We start with basic definitions.</p>
-<p><strong>Definition.</strong> Ellipsoid <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/> in
-<img class="math"
src="_images/math/9d5b8bcc7aa4f27bc64d1e1817aa4f42c44cffcb.png" alt="{\bf
R}^n"/> with center <img class="math"
src="_images/math/0615acc3725de21025457e7d6f7694dab8e2f758.png" alt="q"/>
and shape matrix <img class="math"
src="_images/math/9866e3a998d628ba0941eb4fea0666ac391d149a.png" alt="Q"/> is
+<p><strong>Definition.</strong> Ellipsoid <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/> in
+<img class="math"
src="_images/math/e1ece5563e1c134d935af18b692ffc3fde4f2fd6.png" alt="{\bf
R}^n"/> with center <img class="math"
src="_images/math/23f1b45408e5b4130c0f940fcbfcec54492cbdcd.png" alt="q"/>
and shape matrix <img class="math"
src="_images/math/7b1816c51f7d31275cd3ad400208fb7b3ce136a0.png" alt="Q"/> is
the set</p>
<div class="math" id="equation-ellipsoid">
-<p><span class="eqno">(1)</span><img
src="_images/math/3a533b8bc1ef5d0561409d914318444d5feb0127.png"
alt="{\mathcal E}(q,Q) = \{ x \in {\bf R}^n ~|~ \langle (x-q),
Q^{-1}(x-q)\rangle\leqslant1 \},"/></p>
-</div><p>wherein <img class="math"
src="_images/math/9866e3a998d628ba0941eb4fea0666ac391d149a.png" alt="Q"/>
is positive definite (<img class="math"
src="_images/math/bd59cd068d766e594478ad09e423d6fb398c63e1.png"
alt="Q=Q^T"/> and
-<img class="math"
src="_images/math/11c656f07afcb5a0afee913b8ac128b5f57249f4.png"
alt="\langle x, Qx\rangle>0"/> for all nonzero <img class="math"
src="_images/math/7bb6c0add112d2fafef9f550e3efdf5a8a90f9fc.png"
alt="x\in{\bf R}^n"/>).
-Here <img class="math"
src="_images/math/18c2678ef7f3f037c1964e63384099f0313a6fd5.png"
alt="\langle\cdot,\cdot\rangle"/> denotes inner
+<p><span class="eqno">(1)</span><img
src="_images/math/1105a32f08d1f916be0da0438afad21219106973.png"
alt="{\mathcal E}(q,Q) = \{ x \in {\bf R}^n ~|~ \langle (x-q),
Q^{-1}(x-q)\rangle\leqslant1 \},"/></p>
+</div><p>wherein <img class="math"
src="_images/math/7b1816c51f7d31275cd3ad400208fb7b3ce136a0.png" alt="Q"/>
is positive definite (<img class="math"
src="_images/math/0660437dc2b00edb9279020d05994777ac52066c.png"
alt="Q=Q^T"/> and
+<img class="math"
src="_images/math/c724c3bb169cc8ca98a06b43453d68859ef975fe.png"
alt="\langle x, Qx\rangle>0"/> for all nonzero <img class="math"
src="_images/math/1877db47ab2d3b518dfb41417f2d46e2d748a6a1.png"
alt="x\in{\bf R}^n"/>).
+Here <img class="math"
src="_images/math/1e09648610740b58687711f87c0e4ca1ecebb234.png"
alt="\langle\cdot,\cdot\rangle"/> denotes inner
product.</p>
<p><strong>Definition.</strong> The support function of a set
-<img class="math"
src="_images/math/b96c8cb69427f15af3797de44c829de5ee81b08d.png"
alt="{\mathcal X}\subseteq{\bf R}^n"/> is</p>
+<img class="math"
src="_images/math/fcd2f0ccef3f6590558baa7fa3c51bd253d19ae9.png"
alt="{\mathcal X}\subseteq{\bf R}^n"/> is</p>
<div class="math">
-<p><img src="_images/math/60bd268c609a7964888987b79b3ff48a56c605c7.png"
alt="\rho(l~|~{\mathcal X}) = \sup_{x\in{\mathcal X}} \langle
l,x\rangle."/></p>
+<p><img src="_images/math/287b14d87c1aad87dd41e543239d690686e714b7.png"
alt="\rho(l~|~{\mathcal X}) = \sup_{x\in{\mathcal X}} \langle
l,x\rangle."/></p>
</div><p>In particular, the support function of the ellipsoid <a
href="#equation-ellipsoid">(1)</a> is</p>
<div class="math" id="equation-ellsupp">
-<p><span class="eqno">(2)</span><img
src="_images/math/55f1bf21ab57c96af2b84ac3af818b29cf14a85b.png"
alt="\rho(l~|~{\mathcal E}(q,Q)) = \langle l, q\rangle + \langle l,
Ql\rangle^{1/2}."/></p>
-</div><p>Although in <a href="#equation-ellipsoid">(1)</a> <img
class="math"
src="_images/math/9866e3a998d628ba0941eb4fea0666ac391d149a.png" alt="Q"/>
is assumed to be positive definite,
-in practice we may deal with situations when <img class="math"
src="_images/math/9866e3a998d628ba0941eb4fea0666ac391d149a.png" alt="Q"/>
is singular, that
+<p><span class="eqno">(2)</span><img
src="_images/math/294e92e961f85bc66a6c5b2d8bbe81e4c9eebf36.png"
alt="\rho(l~|~{\mathcal E}(q,Q)) = \langle l, q\rangle + \langle l,
Ql\rangle^{1/2}."/></p>
+</div><p>Although in <a href="#equation-ellipsoid">(1)</a> <img
class="math"
src="_images/math/7b1816c51f7d31275cd3ad400208fb7b3ce136a0.png" alt="Q"/>
is assumed to be positive definite,
+in practice we may deal with situations when <img class="math"
src="_images/math/7b1816c51f7d31275cd3ad400208fb7b3ce136a0.png" alt="Q"/>
is singular, that
is, with degenerate ellipsoids flat in those directions for which the
corresponding eigenvalues are zero. Therefore, it is useful to give an
alternative definition of an ellipsoid using the expression <a
href="#equation-ellsupp">(2)</a>.</p>
-<p><strong>Definition.</strong> Ellipsoid <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/> in <img class="math"
src="_images/math/9d5b8bcc7aa4f27bc64d1e1817aa4f42c44cffcb.png" alt="{\bf
R}^n"/> with center
-<img class="math"
src="_images/math/0615acc3725de21025457e7d6f7694dab8e2f758.png" alt="q"/>
and shape matrix <img class="math"
src="_images/math/9866e3a998d628ba0941eb4fea0666ac391d149a.png" alt="Q"/>
is the set</p>
+<p><strong>Definition.</strong> Ellipsoid <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/> in <img class="math"
src="_images/math/e1ece5563e1c134d935af18b692ffc3fde4f2fd6.png" alt="{\bf
R}^n"/> with center
+<img class="math"
src="_images/math/23f1b45408e5b4130c0f940fcbfcec54492cbdcd.png" alt="q"/>
and shape matrix <img class="math"
src="_images/math/7b1816c51f7d31275cd3ad400208fb7b3ce136a0.png" alt="Q"/>
is the set</p>
<div class="math" id="equation-ellipsoid2">
-<p><span class="eqno">(3)</span><img
src="_images/math/a9d6137062c23d367d64e918d66059511726c3e8.png"
alt="{\mathcal E}(q,Q) = \{ x \in {\bf R}^n ~|~
+<p><span class="eqno">(3)</span><img
src="_images/math/b59a4c2c954fa8e54bd59ffec6dcd84c226d9356.png"
alt="{\mathcal E}(q,Q) = \{ x \in {\bf R}^n ~|~
\langle l,x\rangle\leqslant\langle l,q\rangle + \langle l,Ql\rangle^{1/2}
\mbox{ for all } l\in{\bf R}^n \},"/></p>
-</div><p>wherein matrix <img class="math"
src="_images/math/9866e3a998d628ba0941eb4fea0666ac391d149a.png" alt="Q"/>
is positive semidefinite (<img class="math"
src="_images/math/bd59cd068d766e594478ad09e423d6fb398c63e1.png"
alt="Q=Q^T"/> and
-<img class="math"
src="_images/math/272f85804947fbbdbccedfcecf671db04b833624.png"
alt="\langle x, Qx\rangle\geqslant0"/> for all <img class="math"
src="_images/math/7bb6c0add112d2fafef9f550e3efdf5a8a90f9fc.png"
alt="x\in{\bf R}^n"/>).
-The volume of ellipsoid <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/> is</p>
+</div><p>wherein matrix <img class="math"
src="_images/math/7b1816c51f7d31275cd3ad400208fb7b3ce136a0.png" alt="Q"/>
is positive semidefinite (<img class="math"
src="_images/math/0660437dc2b00edb9279020d05994777ac52066c.png"
alt="Q=Q^T"/> and
+<img class="math"
src="_images/math/78f09b21b6c7df2aeb5db1519ad53e4dbe3626ba.png"
alt="\langle x, Qx\rangle\geqslant0"/> for all <img class="math"
src="_images/math/1877db47ab2d3b518dfb41417f2d46e2d748a6a1.png"
alt="x\in{\bf R}^n"/>).
+The volume of ellipsoid <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/> is</p>
<div class="math" id="equation-ellvolume">
-<p><span class="eqno">(4)</span><img
src="_images/math/787e26f0936c32e30732956d391475f477c721f7.png" alt="{\bf
Vol}(E(q,Q)) = {\bf Vol}_{\langle x,x\rangle\leqslant1}\sqrt{\det Q},"/></p>
-</div><p>where <img class="math"
src="_images/math/a1c4282ba153b9007e5704a7844b6b912c3cefa4.png" alt="{\bf
Vol}_{\langle x,x\rangle\leqslant1}"/> is the volume of
-the unit ball in <img class="math"
src="_images/math/9d5b8bcc7aa4f27bc64d1e1817aa4f42c44cffcb.png" alt="{\bf
R}^n"/>:</p>
+<p><span class="eqno">(4)</span><img
src="_images/math/78fe7beac543ec8adeef38d58f5f2d54e52ae933.png" alt="{\bf
Vol}(E(q,Q)) = {\bf Vol}_{\langle x,x\rangle\leqslant1}\sqrt{\det Q},"/></p>
+</div><p>where <img class="math"
src="_images/math/3752868835e324244fcc86371ef996846e6078d1.png" alt="{\bf
Vol}_{\langle x,x\rangle\leqslant1}"/> is the volume of
+the unit ball in <img class="math"
src="_images/math/e1ece5563e1c134d935af18b692ffc3fde4f2fd6.png" alt="{\bf
R}^n"/>:</p>
<div class="math" id="equation-ellunitball">
-<p><span class="eqno">(5)</span><img
src="_images/math/e8c3c4bdc6098ca9596103e8b5d8548b105c7d1f.png" alt="{\bf
Vol}_{\langle x,x\rangle\leqslant1} = \left\{\begin{array}{ll}
+<p><span class="eqno">(5)</span><img
src="_images/math/8f16b4ef90c4c5513b137ff1efefcc895ed8bb5d.png" alt="{\bf
Vol}_{\langle x,x\rangle\leqslant1} = \left\{\begin{array}{ll}
\frac{\pi^{n/2}}{(n/2)!}, &
\mbox{ for even } n,\\
\frac{2^n\pi^{(n-1)/2}\left((n-1)/2\right)!}{n!}, &
\mbox{ for odd } n. \end{array}\right."/></p>
-</div><p>The distance from <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/> to the fixed point <img class="math"
src="_images/math/c7d457e388298246adb06c587bccd419ea67f7e8.png" alt="a"/>
+</div><p>The distance from <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/> to the fixed point <img class="math"
src="_images/math/7dd2a5ea01fbd72ad2a58dd1f3d6ecbfde6208a1.png" alt="a"/>
is</p>
<div class="math" id="equation-dist_point">
-<p><span class="eqno">(6)</span><img
src="_images/math/f55ed67a8bdd8cfa80a4d9fb01c31dd322b1bd94.png" alt="{\bf
dist}({\mathcal E}(q,Q),a) = \max_{\langle l,l\rangle=1}\left(\langle
l,a\rangle -
+<p><span class="eqno">(6)</span><img
src="_images/math/55e8156da78ea312035f842922a5ba454894bbb7.png" alt="{\bf
dist}({\mathcal E}(q,Q),a) = \max_{\langle l,l\rangle=1}\left(\langle
l,a\rangle -
\rho(l ~|~ {\mathcal E}(q,Q)) \right) =
\max_{\langle l,l\rangle=1}\left(\langle l,a\rangle - \langle l,q\rangle -
\langle l,Ql\rangle^{1/2}\right)."/></p>
-</div><p>If <img class="math"
src="_images/math/33c2e1c843ee3d20001f0660eb3a595d254df6fa.png" alt="{\bf
dist}({\mathcal E}(q,Q),a) > 0"/>, <img class="math"
src="_images/math/c7d457e388298246adb06c587bccd419ea67f7e8.png" alt="a"/>
lies outside
-<img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/>; if
-<img class="math"
src="_images/math/b5695495d2d339517497d94a81558300a82f054c.png" alt="{\bf
dist}({\mathcal E}(q,Q),a) = 0"/>, <img class="math"
src="_images/math/c7d457e388298246adb06c587bccd419ea67f7e8.png" alt="a"/>
is a boundary
-point of <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/>; if
-<img class="math"
src="_images/math/69b5f49dc7bfaa5204c740c07d10b36cd51d461b.png" alt="{\bf
dist}({\mathcal E}(q,Q),a) < 0"/>, <img class="math"
src="_images/math/c7d457e388298246adb06c587bccd419ea67f7e8.png" alt="a"/>
is an internal
-point of <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/>.</p>
-<p>Given two ellipsoids, <img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> and
-<img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/>, the distance between them is</p>
+</div><p>If <img class="math"
src="_images/math/6e7dfc50d9a13cca5e88654650fc1afe9ac50afa.png" alt="{\bf
dist}({\mathcal E}(q,Q),a) > 0"/>, <img class="math"
src="_images/math/7dd2a5ea01fbd72ad2a58dd1f3d6ecbfde6208a1.png" alt="a"/>
lies outside
+<img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/>; if
+<img class="math"
src="_images/math/91eb5708506bdd439aa7764b1839db88f812b729.png" alt="{\bf
dist}({\mathcal E}(q,Q),a) = 0"/>, <img class="math"
src="_images/math/7dd2a5ea01fbd72ad2a58dd1f3d6ecbfde6208a1.png" alt="a"/>
is a boundary
+point of <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/>; if
+<img class="math"
src="_images/math/3a99c5b746491d43e09f2c3ef18f2263e7e6ee7c.png" alt="{\bf
dist}({\mathcal E}(q,Q),a) < 0"/>, <img class="math"
src="_images/math/7dd2a5ea01fbd72ad2a58dd1f3d6ecbfde6208a1.png" alt="a"/>
is an internal
+point of <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/>.</p>
+<p>Given two ellipsoids, <img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> and
+<img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/>, the distance between them is</p>
<div class="math" id="equation-dist_ell">
-<p><span class="eqno">(7)</span><img
src="_images/math/de6040a2794dfff5ea1ebef5b939911fbf2cfd21.png"
alt="\begin{aligned}
+<p><span class="eqno">(7)</span><img
src="_images/math/e0e514457927e1cbb2a1172a7b3bdc6e8ec4143f.png"
alt="\begin{aligned}
{\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) & =
\max_{\langle l,l\rangle=1}
\left(-\rho(-l ~|~ {\mathcal E}(q_1,Q_1)) - \rho(l ~|~ {\mathcal
E}(q_2,Q_2))\right) \\
& = \max_{\langle l,l\rangle=1}\left(\langle l,q_1\rangle -
\langle l,Q_1l\rangle^{1/2} - \langle l,q_2\rangle -
\langle l,Q_2l\rangle^{1/2}\right).
\end{aligned}"/></p>
-</div><p>If <img class="math"
src="_images/math/79d42ac63334d1f9d165c25408d0ca134d81aef3.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) > 0"/>,
+</div><p>If <img class="math"
src="_images/math/1ff5476e26194f2ac04b0a00f4e8a469df4d8add.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) > 0"/>,
the ellipsoids have no common points; if
-<img class="math"
src="_images/math/40944f178c2e97a4c639bc8e144b6b6b527ed231.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) = 0"/>, the
+<img class="math"
src="_images/math/5103f22d79ee5a53c7c31258094eb229f7779783.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) = 0"/>, the
ellipsoids have one common point - they touch; if
-<img class="math"
src="_images/math/84de77713e3068c4cd1e610b16b75d643fe0f9a7.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) < 0"/>, the
+<img class="math"
src="_images/math/4ea55b39a68608681a51df9e3e7a3861f5be1a8a.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) < 0"/>, the
ellipsoids intersect.</p>
-<p>Finding <img class="math"
src="_images/math/903072eca6104ef9efd2d60b30c5f28df1b51dbf.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))"/>
+<p>Finding <img class="math"
src="_images/math/9f7f645e8c5afdb60b00700c84c08fc7ffd8c021.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))"/>
using QCQP is</p>
<div class="math">
-<p><img src="_images/math/178c2ffca9448494ad1477217df532a2089aacd2.png"
alt="d({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) = \min \langle (x-y),
(x-y)\rangle"/></p>
+<p><img src="_images/math/0b0e21dfbac78ba6b5fa6f018c3d9228a0836431.png"
alt="d({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) = \min \langle (x-y),
(x-y)\rangle"/></p>
</div><p>subject to:</p>
<div class="math">
-<p><img src="_images/math/607483d236037103af14d35c9d8dce873baa3bb9.png"
alt="\begin{aligned}
+<p><img src="_images/math/18b8cc9e7e478943b6ff0da78f5d894efe05ea39.png"
alt="\begin{aligned}
\langle (q_1-x), Q_1^{-1}(q_1-x)\rangle & \leqslant& 1,\\
\langle (q_2-x), Q_2^{-1}(q_2-y)\rangle & \leqslant&
1,\end{aligned}"/></p>
</div><p>where</p>
<div class="math">
-<p><img src="_images/math/fc9516c891e2fff82100c9bc658cdff497c0d775.png"
alt="d({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))=\left\{\begin{array}{ll}
+<p><img src="_images/math/a1272a3ca03a0bb624f743844ea84f8deb8793f2.png"
alt="d({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))=\left\{\begin{array}{ll}
{\bf dist}^2({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) &
\mbox{ if } {\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))>0,
\\
0 & \mbox{ otherwise}. \end{array}\right."/></p>
-</div><p>Checking if <img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
nondegenerate ellipsoids
-<img class="math"
src="_images/math/bba93d24bd1133965590d5dd5390897f12bfdd39.png"
alt="{\mathcal E}(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)"/> have nonempty
+</div><p>Checking if <img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
nondegenerate ellipsoids
+<img class="math"
src="_images/math/2bd136064685123d91fbd0e5b0beddde7bb17326.png"
alt="{\mathcal E}(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)"/> have nonempty
intersection, can be cast as a quadratically constrained quadratic
programming (QCQP) problem:</p>
<div class="math">
-<p><img src="_images/math/883cc66c9220b1a82600e5112a8ddb183cd8f4e4.png"
alt="\min 0"/></p>
+<p><img src="_images/math/8dea39799de59a255ee23c02896e1ba3e7d290fc.png"
alt="\min 0"/></p>
</div><p>subject to:</p>
<div class="math">
-<p><img src="_images/math/448602ad362885e9e460254eadf42db9436cbd85.png"
alt="\langle (x-q_i),Q_i^{-1}(x-q_i)\rangle - 1 \leqslant0, ~~~
i=1,\cdots,k."/></p>
+<p><img src="_images/math/ac3811059f560a33b556305d17e1a641bb8ddd35.png"
alt="\langle (x-q_i),Q_i^{-1}(x-q_i)\rangle - 1 \leqslant0, ~~~
i=1,\cdots,k."/></p>
</div><p>If this problem is feasible, the intersection is nonempty.</p>
-<p><strong>Definition.</strong> Given compact convex set <img class="math"
src="_images/math/b96c8cb69427f15af3797de44c829de5ee81b08d.png"
alt="{\mathcal X}\subseteq{\bf R}^n"/>, its polar
-set, denoted <img class="math"
src="_images/math/9dcf65b34c9b6571c83e870b229364b7513df564.png"
alt="{\mathcal X}^\circ"/>, is</p>
+<p><strong>Definition.</strong> Given compact convex set <img class="math"
src="_images/math/fcd2f0ccef3f6590558baa7fa3c51bd253d19ae9.png"
alt="{\mathcal X}\subseteq{\bf R}^n"/>, its polar
+set, denoted <img class="math"
src="_images/math/45951a7529764afec419aea355bf59a2c7d932b3.png"
alt="{\mathcal X}^\circ"/>, is</p>
<div class="math">
-<p><img src="_images/math/34768e4d22ee40d66173aa700efc505485af8983.png"
alt="{\mathcal X}^\circ = \{x\in{\bf R}^n ~|~ \langle x,y\rangle\leqslant1,
~ y\in{\mathcal X}\},"/></p>
+<p><img src="_images/math/a69ee8022a0772f471abda434796f50f07a80ebe.png"
alt="{\mathcal X}^\circ = \{x\in{\bf R}^n ~|~ \langle x,y\rangle\leqslant1,
~ y\in{\mathcal X}\},"/></p>
</div><p>or, equivalently,</p>
<div class="math">
-<p><img src="_images/math/f96fb36da02664e65571321d81b24b17b81b96f3.png"
alt="{\mathcal X}^\circ = \{l\in{\bf R}^n ~|~ \rho(l ~|~ {\mathcal
X})\leqslant1\}."/></p>
+<p><img src="_images/math/40121a69ac61a1630879777b8b2afd06ace53dd2.png"
alt="{\mathcal X}^\circ = \{l\in{\bf R}^n ~|~ \rho(l ~|~ {\mathcal
X})\leqslant1\}."/></p>
</div><p>The properties of the polar set are</p>
<ul class="simple">
-<li>If <img class="math"
src="_images/math/0285557d288b33952d0cf254b178223c5f746598.png"
alt="{\mathcal X}"/> contains the origin,
-<img class="math"
src="_images/math/511ef974392c7b8ffbba574af743fa446e17a520.png"
alt="({\mathcal X}^\circ)^\circ = {\mathcal X}"/>;</li>
-<li>If <img class="math"
src="_images/math/c8c00b61dc9f5899edcc6e869710149ab4cda213.png"
alt="{\mathcal X}_1\subseteq{\mathcal X}_2"/>,
-<img class="math"
src="_images/math/bfc9604c1bcb2121a81d0af9f7d682220444800b.png"
alt="{\mathcal X}_2^\circ\subseteq{\mathcal X}_1^\circ"/>;</li>
-<li>For any nonsingular matrix <img class="math"
src="_images/math/5bb275b50853b5ef0c861cc788aec212ff538dc5.png"
alt="A\in{\bf R}^{n\times n}"/>,
-<img class="math"
src="_images/math/848746b5aa961701a706011bc49a2cec7645bf03.png"
alt="(A{\mathcal X})^\circ = (A^T)^{-1}{\mathcal X}^\circ"/>.</li>
+<li>If <img class="math"
src="_images/math/130861ff00baf7dd6c37f033a43f9e9795a4201f.png"
alt="{\mathcal X}"/> contains the origin,
+<img class="math"
src="_images/math/982e4209b62a6f62936612eebb5d183005ad2ae0.png"
alt="({\mathcal X}^\circ)^\circ = {\mathcal X}"/>;</li>
+<li>If <img class="math"
src="_images/math/4c4e7b6907a9071322b7d3b259893e2dc6d4338b.png"
alt="{\mathcal X}_1\subseteq{\mathcal X}_2"/>,
+<img class="math"
src="_images/math/e0940707f77994a98cc754eb72a30c509492847a.png"
alt="{\mathcal X}_2^\circ\subseteq{\mathcal X}_1^\circ"/>;</li>
+<li>For any nonsingular matrix <img class="math"
src="_images/math/c13832e000729421d93073205072531572c8afe9.png"
alt="A\in{\bf R}^{n\times n}"/>,
+<img class="math"
src="_images/math/c8b06c4bec90ec0a459eef9a1e1035c064029b20.png"
alt="(A{\mathcal X})^\circ = (A^T)^{-1}{\mathcal X}^\circ"/>.</li>
</ul>
-<p>If a nondegenerate ellipsoid <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/> contains the
+<p>If a nondegenerate ellipsoid <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/> contains the
origin, its polar set is also an ellipsoid:</p>
<div class="math">
-<p><img src="_images/math/a1a60d72293886a86d97110ef0f9554352c8123c.png"
alt="\begin{aligned}
+<p><img src="_images/math/d31f4ff2781a781f1c661c277d71647dba6c7c07.png"
alt="\begin{aligned}
{\mathcal E}^\circ(q,Q) & = \{l\in{\bf R}^n ~|~ \langle l,q\rangle +
\langle l,Ql\rangle^{1/2}\leqslant1 \}\\
& = \{l\in{\bf R}^n ~|~ \langle l,(Q-qq^T)^{-1}l\rangle +
@@ -176,18 +176,18 @@
(Q-qq^T)(l+(Q-qq^T)^{-1}q)\rangle\leqslant1+\langle
q,(Q-qq^T)^{-1}q\rangle \}.\end{aligned}"/></p>
</div><p>The special case is</p>
<div class="math">
-<p><img src="_images/math/2de1ea6fb3f6676930a240b8391a5207e85936a3.png"
alt="{\mathcal E}^\circ(0,Q) = {\mathcal E}(0,Q^{-1})."/></p>
-</div><p><strong>Definition.</strong> Given <img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
compact sets
-<img class="math"
src="_images/math/caa75cd3c3d042f89f0a13f8e5a46481d6b93e65.png"
alt="{\mathcal X}_1, \cdots, {\mathcal X}_k\subseteq{\bf R}^n"/>, their
+<p><img src="_images/math/fe49e6f5d2763a785b1288ba6c5e865c2cee511b.png"
alt="{\mathcal E}^\circ(0,Q) = {\mathcal E}(0,Q^{-1})."/></p>
+</div><p><strong>Definition.</strong> Given <img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
compact sets
+<img class="math"
src="_images/math/44990b4b2da26b458e73703b0429d1840bf9cd92.png"
alt="{\mathcal X}_1, \cdots, {\mathcal X}_k\subseteq{\bf R}^n"/>, their
geometric (Minkowski) sum is</p>
<div class="math" id="equation-minksum">
-<p><span class="eqno">(8)</span><img
src="_images/math/bd592756af7f9948048ca313b4d195268ae78f09.png"
alt="{\mathcal X}_1\oplus\cdots\oplus{\mathcal
X}_k=\bigcup_{x_1\in{\mathcal X}_1}\cdots\bigcup_{x_k\in{\mathcal X}_k}
+<p><span class="eqno">(8)</span><img
src="_images/math/cee8db14ff018c1f747a30552ff70ad8a15eb866.png"
alt="{\mathcal X}_1\oplus\cdots\oplus{\mathcal
X}_k=\bigcup_{x_1\in{\mathcal X}_1}\cdots\bigcup_{x_k\in{\mathcal X}_k}
\{x_1 + \cdots + x_k\} ."/></p>
</div><p><strong>Definition.</strong> Given two compact sets
-<img class="math"
src="_images/math/27de03ccef6bd8fac119dd0ea6c30b4fbcfba669.png"
alt="{\mathcal X}_1, {\mathcal X}_2 \subseteq{\bf R}^n"/>, their
+<img class="math"
src="_images/math/dcaa1593207c64d5833d15668034789d6f9c5c4a.png"
alt="{\mathcal X}_1, {\mathcal X}_2 \subseteq{\bf R}^n"/>, their
geometric (Minkowski) difference is</p>
<div class="math" id="equation-minkdiff">
-<p><span class="eqno">(9)</span><img
src="_images/math/4f1e202eabc0263a7e08bada8ccbc0faa51841fd.png"
alt="{\mathcal X}_1\dot{-}{\mathcal X}_2 = \{x\in{\bf R}^n ~|~ x +
{\mathcal X}_2 \subseteq {\mathcal X}_1 \}."/></p>
+<p><span class="eqno">(9)</span><img
src="_images/math/1993cdbfbbd190bff51cf38f744841e503b79e54.png"
alt="{\mathcal X}_1\dot{-}{\mathcal X}_2 = \{x\in{\bf R}^n ~|~ x +
{\mathcal X}_2 \subseteq {\mathcal X}_1 \}."/></p>
</div><p>Ellipsoidal calculus concerns the following set of operations:</p>
<ul class="simple">
<li>affine transformation of ellipsoid;</li>
@@ -203,76 +203,76 @@
<p>Additional operations implemented in the <em>Ellipsoidal Toolbox</em>
include
external and internal approximations of intersections of ellipsoids with
hyperplanes, halfspaces and polytopes.</p>
-<p><strong>Definition.</strong> Hyperplane <img class="math"
src="_images/math/bac0ae63aec09971dd9b5d57245fb790377c8e10.png"
alt="H(c,\gamma)"/> in
-<img class="math"
src="_images/math/9d5b8bcc7aa4f27bc64d1e1817aa4f42c44cffcb.png" alt="{\bf
R}^n"/> is the set</p>
+<p><strong>Definition.</strong> Hyperplane <img class="math"
src="_images/math/a8ccfc826288cb180dd6b82fe5641d1e17995bc5.png"
alt="H(c,\gamma)"/> in
+<img class="math"
src="_images/math/e1ece5563e1c134d935af18b692ffc3fde4f2fd6.png" alt="{\bf
R}^n"/> is the set</p>
<div class="math" id="equation-hyperplane">
-<p><span class="eqno">(10)</span><img
src="_images/math/b7b6154b1b249806be929c57a4a66bb864455e6b.png" alt="H =
\{x\in{\bf R}^n ~|~ \langle c, x\rangle = \gamma\}"/></p>
-</div><p>with <img class="math"
src="_images/math/39f9cca28279bfc85bbb591230158cd05d2417a1.png"
alt="c\in{\bf R}^n"/> and <img class="math"
src="_images/math/36cc654c162768bcca8a0c1c37f44133bf3c5495.png"
alt="\gamma\in{\bf R}"/> fixed.
-The distance from ellipsoid <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/> to
-hyperplane <img class="math"
src="_images/math/bac0ae63aec09971dd9b5d57245fb790377c8e10.png"
alt="H(c,\gamma)"/> is</p>
+<p><span class="eqno">(10)</span><img
src="_images/math/c640b358538c4fb324413910ec70b8fa56681de1.png" alt="H =
\{x\in{\bf R}^n ~|~ \langle c, x\rangle = \gamma\}"/></p>
+</div><p>with <img class="math"
src="_images/math/96ccbdd6b341ce487449f6c2964a7973b51094b6.png"
alt="c\in{\bf R}^n"/> and <img class="math"
src="_images/math/57f847fa6e01f2399fa757049bacd21d860fd553.png"
alt="\gamma\in{\bf R}"/> fixed.
+The distance from ellipsoid <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/> to
+hyperplane <img class="math"
src="_images/math/a8ccfc826288cb180dd6b82fe5641d1e17995bc5.png"
alt="H(c,\gamma)"/> is</p>
<div class="math" id="equation-dist_hp">
-<p><span class="eqno">(11)</span><img
src="_images/math/f8ba265e6f08a7ae35cbae8aec9f39518239c6ce.png" alt="{\bf
dist}({\mathcal E}(q,Q),H(c,\gamma)) =
+<p><span class="eqno">(11)</span><img
src="_images/math/bf20edda6959eb5cb689bed5a49178cbc34891e6.png" alt="{\bf
dist}({\mathcal E}(q,Q),H(c,\gamma)) =
\frac{\left|\gamma-\langle c,q\rangle\right| -
\langle c,Qc\rangle^{1/2}}{\langle c,c\rangle^{1/2}}."/></p>
-</div><p>If <img class="math"
src="_images/math/d89c46304fa27f54fcb98b16a8e15b7a544495c0.png" alt="{\bf
dist}({\mathcal E}(q,Q),H(c,\gamma))>0"/>, the ellipsoid
+</div><p>If <img class="math"
src="_images/math/8236e97f6b8323341e5d8e5d70ca062268d0449b.png" alt="{\bf
dist}({\mathcal E}(q,Q),H(c,\gamma))>0"/>, the ellipsoid
and the hyperplane do not intersect; if
-<img class="math"
src="_images/math/106d8d3c46c311ff64d55724bfc600d7ac54ec73.png" alt="{\bf
dist}({\mathcal E}(q,Q),H(c,\gamma))=0"/>, the hyperplane is a
+<img class="math"
src="_images/math/73cb45e076173b9e05998e6db64816bac2eb92b2.png" alt="{\bf
dist}({\mathcal E}(q,Q),H(c,\gamma))=0"/>, the hyperplane is a
supporting hyperplane for the ellipsoid; if
-<img class="math"
src="_images/math/960abeff20941af75ff673a99d0c9e44f84dde48.png" alt="{\bf
dist}({\mathcal E}(q,Q),H(c,\gamma))<0"/>, the ellipsoid
+<img class="math"
src="_images/math/9c12c73c947d04884a142b271bf163be7fcd9aad.png" alt="{\bf
dist}({\mathcal E}(q,Q),H(c,\gamma))<0"/>, the ellipsoid
intersects the hyperplane. The intersection of an ellipsoid with a
hyperplane is always an ellipsoid and can be computed directly.</p>
-<p>Checking if the intersection of <img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
nondegenerate ellipsoids
-<img class="math"
src="_images/math/f71c7ba166b0aed1265d134baf256a71de71b358.png"
alt="E(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)"/> intersects hyperplane
-<img class="math"
src="_images/math/bac0ae63aec09971dd9b5d57245fb790377c8e10.png"
alt="H(c,\gamma)"/>, is equivalent to the feasibility check of the QCQP
+<p>Checking if the intersection of <img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
nondegenerate ellipsoids
+<img class="math"
src="_images/math/a2b4b8ac12b5e0bbb03e8f723fd8b5eb925c5bac.png"
alt="E(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)"/> intersects hyperplane
+<img class="math"
src="_images/math/a8ccfc826288cb180dd6b82fe5641d1e17995bc5.png"
alt="H(c,\gamma)"/>, is equivalent to the feasibility check of the QCQP
problem:</p>
<div class="math">
-<p><img src="_images/math/883cc66c9220b1a82600e5112a8ddb183cd8f4e4.png"
alt="\min 0"/></p>
+<p><img src="_images/math/8dea39799de59a255ee23c02896e1ba3e7d290fc.png"
alt="\min 0"/></p>
</div><p>subject to:</p>
<div class="math">
-<p><img src="_images/math/337da0b80c659c1ca0bcbefb9674dd271d44184a.png"
alt="\begin{aligned}
+<p><img src="_images/math/7cbff2362a66989ba7dfa7f3edbbfbb56e83fe3e.png"
alt="\begin{aligned}
\langle (x-q_i),Q_i^{-1}(x-q_i)\rangle - 1 \leqslant0, & &
i=1,\cdots,k,\\
\langle c, x\rangle - \gamma = 0. & &\end{aligned}"/></p>
</div><p>A hyperplane defines two (closed) <em>halfspaces</em>:</p>
<div class="math" id="equation-halfspace1">
-<p><span class="eqno">(12)</span><img
src="_images/math/cc8f0e3cc28cf5f84cafbe8b9674a3fc67f0a866.png" alt="{\bf
S}_1 = \{x\in{\bf R}^n ~|~ \langle c, x\rangle \leqslant\gamma\}"/></p>
+<p><span class="eqno">(12)</span><img
src="_images/math/cfcf4601472cf410ba7939c1b527468ca8129d3a.png" alt="{\bf
S}_1 = \{x\in{\bf R}^n ~|~ \langle c, x\rangle \leqslant\gamma\}"/></p>
</div><p>and</p>
<div class="math" id="equation-halfspace2">
-<p><span class="eqno">(13)</span><img
src="_images/math/5d6d799168a072ff170f28d7ad409178a607fba5.png" alt="{\bf
S}_2 = \{x\in{\bf R}^n ~|~ \langle c, x\rangle \geqslant\gamma\}."/></p>
+<p><span class="eqno">(13)</span><img
src="_images/math/7cd0932d2fce97b1ea61b54f9868e7bd06bd3df7.png" alt="{\bf
S}_2 = \{x\in{\bf R}^n ~|~ \langle c, x\rangle \geqslant\gamma\}."/></p>
</div><p>To avoid confusion, however, we shall further assume that a
hyperplane
-<img class="math"
src="_images/math/bac0ae63aec09971dd9b5d57245fb790377c8e10.png"
alt="H(c,\gamma)"/> specifies the halfspace in the sense <a
href="#equation-halfspace1">(12)</a>.
+<img class="math"
src="_images/math/a8ccfc826288cb180dd6b82fe5641d1e17995bc5.png"
alt="H(c,\gamma)"/> specifies the halfspace in the sense <a
href="#equation-halfspace1">(12)</a>.
In order to refer to the other halfspace, the same hyperplane should be
-defined as <img class="math"
src="_images/math/16e3c1b6fd6e98b81efcca4d744c1d395a580ebd.png"
alt="H(-c,-\gamma)"/>.</p>
+defined as <img class="math"
src="_images/math/4be558bcd2105996f20789c263e00c388c9a5719.png"
alt="H(-c,-\gamma)"/>.</p>
<p>The idea behind the calculation of intersection of an ellipsoid with a
halfspace is to treat the halfspace as an unbounded ellipsoid, that is,
as the ellipsoid with the shape matrix all but one of whose eigenvalues
-are <img class="math"
src="_images/math/b671f1bb7e4ee86584347d5d22f1dc8abdb5bef2.png"
alt="\infty"/>.</p>
-<p><strong>Definition.</strong> Polytope <img class="math"
src="_images/math/7df7554bc8b905a14d174aa3078a101032004660.png"
alt="P(C,g)"/> is the
+are <img class="math"
src="_images/math/91de26172b6cdc7da38314176fcc8023e48525e8.png"
alt="\infty"/>.</p>
+<p><strong>Definition.</strong> Polytope <img class="math"
src="_images/math/6a798b09b2064430073c019ecd65e7f6d3370b6a.png"
alt="P(C,g)"/> is the
intersection of a finite number of closed halfspaces:</p>
<div class="math" id="equation-polytope">
-<p><span class="eqno">(14)</span><img
src="_images/math/ba36465f80659e02db6d1fc06dc138954c5ff94c.png" alt="P =
\{x\in{\bf R}^n ~|~ Cx\leqslant g\},"/></p>
-</div><p>wherein <img class="math"
src="_images/math/1433cbe6516602fafd6b038e814ff937c6e05743.png" alt="C=[c_1
~ \cdots ~ c_m]^T\in{\bf R}^{m\times n}"/> and
-<img class="math"
src="_images/math/1ed2eac522cf78de4379b635f636420ca7dfe910.png"
alt="g=[\gamma_1 ~ \cdots ~ \gamma_m]^T\in{\bf R}^m"/>.
+<p><span class="eqno">(14)</span><img
src="_images/math/9b5c3ff587378e3b45f47300bce758384b90d059.png" alt="P =
\{x\in{\bf R}^n ~|~ Cx\leqslant g\},"/></p>
+</div><p>wherein <img class="math"
src="_images/math/86f818df7e2b254fc720568f339a1b81c7113d58.png" alt="C=[c_1
~ \cdots ~ c_m]^T\in{\bf R}^{m\times n}"/> and
+<img class="math"
src="_images/math/01ca0cd9a8e1fd971cd2fff653566c7037f50d69.png"
alt="g=[\gamma_1 ~ \cdots ~ \gamma_m]^T\in{\bf R}^m"/>.
The distance
-from ellipsoid <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/> to the polytope <img class="math"
src="_images/math/7df7554bc8b905a14d174aa3078a101032004660.png"
alt="P(C,g)"/>
+from ellipsoid <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/> to the polytope <img class="math"
src="_images/math/6a798b09b2064430073c019ecd65e7f6d3370b6a.png"
alt="P(C,g)"/>
is</p>
<div class="math" id="equation-dist_poly">
-<p><span class="eqno">(15)</span><img
src="_images/math/6532442941bab8d7c5d993bd2134aae401810273.png" alt="{\bf
dist}({\mathcal E}(q,Q),P(C,g))=\min_{y\in P(C,g)}{\bf dist}({\mathcal
E}(q,Q),y),"/></p>
-</div><p>where <img class="math"
src="_images/math/5079462083e7ccce01f235396688a1624437c469.png" alt="{\bf
dist}({\mathcal E}(q,Q),y)"/> comes from
+<p><span class="eqno">(15)</span><img
src="_images/math/e1b824e99f4f415338d92d3f1caa2cb845aa0688.png" alt="{\bf
dist}({\mathcal E}(q,Q),P(C,g))=\min_{y\in P(C,g)}{\bf dist}({\mathcal
E}(q,Q),y),"/></p>
+</div><p>where <img class="math"
src="_images/math/5e1b0f6dafe16da12c908c528399a2566ad9dd15.png" alt="{\bf
dist}({\mathcal E}(q,Q),y)"/> comes from
([dist:sub:<cite>p</cite>oint]). If
-<img class="math"
src="_images/math/3cd27bac51d15b2f5983cd901cf89c3eb88282f4.png" alt="{\bf
dist}({\mathcal E}(q,Q),P(C,g))>0"/>, the ellipsoid and the
+<img class="math"
src="_images/math/301a6270ecc76d03a6e2a4d4d25a35c4f85e3714.png" alt="{\bf
dist}({\mathcal E}(q,Q),P(C,g))>0"/>, the ellipsoid and the
polytope do not intersect; if
-<img class="math"
src="_images/math/92cad30470cce7e86b5489d31e58224ca05dbeea.png" alt="{\bf
dist}({\mathcal E}(q,Q),P(C,g))=0"/>, the ellipsoid touches
-the polytope; if <img class="math"
src="_images/math/507c7e0d2c6a83904609d27ffb280ec47f181ad2.png" alt="{\bf
dist}({\mathcal E}(q,Q),P(C,g))<0"/>, the
+<img class="math"
src="_images/math/ace2c816715a8fb00463a886336bd5b624fbad79.png" alt="{\bf
dist}({\mathcal E}(q,Q),P(C,g))=0"/>, the ellipsoid touches
+the polytope; if <img class="math"
src="_images/math/117590df398ae0dc9d9e5a48784444a4515c5cce.png" alt="{\bf
dist}({\mathcal E}(q,Q),P(C,g))<0"/>, the
ellipsoid intersects the polytope.</p>
-<p>Checking if the intersection of <img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
nondegenerate ellipsoids
-<img class="math"
src="_images/math/f71c7ba166b0aed1265d134baf256a71de71b358.png"
alt="E(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)"/> intersects polytope
-<img class="math"
src="_images/math/7df7554bc8b905a14d174aa3078a101032004660.png"
alt="P(C,g)"/> is equivalent to the feasibility check of the QCQP
+<p>Checking if the intersection of <img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
nondegenerate ellipsoids
+<img class="math"
src="_images/math/a2b4b8ac12b5e0bbb03e8f723fd8b5eb925c5bac.png"
alt="E(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)"/> intersects polytope
+<img class="math"
src="_images/math/6a798b09b2064430073c019ecd65e7f6d3370b6a.png"
alt="P(C,g)"/> is equivalent to the feasibility check of the QCQP
problem:</p>
<div class="math">
-<p><img src="_images/math/883cc66c9220b1a82600e5112a8ddb183cd8f4e4.png"
alt="\min 0"/></p>
+<p><img src="_images/math/8dea39799de59a255ee23c02896e1ba3e7d290fc.png"
alt="\min 0"/></p>
</div><p>subject to:</p>
<div class="math">
-<p><img src="_images/math/089dc5f1e3a0b324124f8dde628d1ad36e78555f.png"
alt="\begin{aligned}
+<p><img src="_images/math/376a75821c09232781a91caa13bd33dce59675ad.png"
alt="\begin{aligned}
\langle (x-q_i),Q_i^{-1}(x-q_i)\rangle - 1 \leqslant0, & &
i=1,\cdots,k,\\
\langle c_j, x\rangle - \gamma_j \leqslant0, & &
j=1,\cdots,m.\end{aligned}"/></p>
</div></div>
@@ -281,76 +281,76 @@
<div class="section" id="affine-transformation">
<h3>Affine Transformation<a class="headerlink"
href="#affine-transformation" title="Permalink to this headline">¶</a></h3>
<p>The simplest operation with ellipsoids is an affine transformation. Let
-ellipsoid <img class="math"
src="_images/math/db099b63bb605cd0784d06062609d4b78658990d.png"
alt="{\mathcal E}(q,Q)\subseteq{\bf R}^n"/>, matrix
-<img class="math"
src="_images/math/037c0df54789bf87da84097dbddd312524ab44fd.png"
alt="A\in{\bf R}^{m\times n}"/> and vector <img class="math"
src="_images/math/2de3365ca20ad608bee38a645d05d849a748114c.png"
alt="b\in{\bf R}^m"/>. Then</p>
+ellipsoid <img class="math"
src="_images/math/a297b4b492076049486813278292dbe69e19c043.png"
alt="{\mathcal E}(q,Q)\subseteq{\bf R}^n"/>, matrix
+<img class="math"
src="_images/math/76e1de6d02e41303b5dfb9f70459c076d6348ab3.png"
alt="A\in{\bf R}^{m\times n}"/> and vector <img class="math"
src="_images/math/8a88762b07502c7e120cd65858dbab822ba5f003.png"
alt="b\in{\bf R}^m"/>. Then</p>
<div class="math" id="equation-affinetrans">
-<p><span class="eqno">(16)</span><img
src="_images/math/5b49a8071408cec8a437959a3b7f41cef4c48e56.png"
alt="A{\mathcal E}(q,Q) + b = {\mathcal E}(Aq+b, AQA^T) ."/></p>
+<p><span class="eqno">(16)</span><img
src="_images/math/ec640aa8c887b6e698d85892eed87ca1b0518605.png"
alt="A{\mathcal E}(q,Q) + b = {\mathcal E}(Aq+b, AQA^T) ."/></p>
</div><p>Thus, ellipsoids are preserved under affine transformation. If
the rows
-of <img class="math"
src="_images/math/019e9892786e493964e145e7c5cf7b700314e53b.png" alt="A"/>
are linearly independent (which implies
-<img class="math"
src="_images/math/e12e26bb03985dbe5008e8262f91a3ba187ff3d8.png"
alt="m\leqslant n"/>), and <img class="math"
src="_images/math/fc43f0ea59e862d7db01586894e9eea730d427b7.png"
alt="b=0"/>, the affine transformation is
+of <img class="math"
src="_images/math/0acafa529182e79b4f56165ec677554fba7fcf98.png" alt="A"/>
are linearly independent (which implies
+<img class="math"
src="_images/math/abc34092fae8ac29c4898ef60aa3d796dd2ba0e4.png"
alt="m\leqslant n"/>), and <img class="math"
src="_images/math/bfedd297ccad8f6f651a318a560a8dd7e79553a9.png"
alt="b=0"/>, the affine transformation is
called <em>projection</em>.</p>
</div>
<div class="section" id="geometric-sum">
<h3>Geometric Sum<a class="headerlink" href="#geometric-sum"
title="Permalink to this headline">¶</a></h3>
<p>Consider the geometric sum <a href="#equation-minksum">(8)</a> in which
-<img class="math"
src="_images/math/949123d9e0ed205b634d8ea6b63f0389a11234bb.png"
alt="{\mathcal X}_1,\cdots"/>,<img class="math"
src="_images/math/a27869b9b49cef957925e4de4af37b9e24ae2d58.png"
alt="{\mathcal X}_k"/> are nondegenerate
-ellipsoids <img class="math"
src="_images/math/50cdf21096e1416aee91886590383a10ba319d50.png"
alt="{\mathcal E}(q_1,Q_1),\cdots"/>,
-<img class="math"
src="_images/math/e923683d85eb163281b77dbfc1a1dcee7e1344bb.png"
alt="{\mathcal E}(q_k,Q_k)\subseteq{\bf R}^n"/>. The resulting set is
+<img class="math"
src="_images/math/59b3caf29e86ec876c6d82a6dc7d90d37d650fbf.png"
alt="{\mathcal X}_1,\cdots"/>,<img class="math"
src="_images/math/ee6919f9a7b60c297143dabe511723e5fb075f3f.png"
alt="{\mathcal X}_k"/> are nondegenerate
+ellipsoids <img class="math"
src="_images/math/af4b611ad9cc0f34fa15dff0684e0a85251129ab.png"
alt="{\mathcal E}(q_1,Q_1),\cdots"/>,
+<img class="math"
src="_images/math/034bef2e947d49cb3764c3b8c8719d80be4881f4.png"
alt="{\mathcal E}(q_k,Q_k)\subseteq{\bf R}^n"/>. The resulting set is
not generally an ellipsoid. However, it can be tightly approximated by
the parametrized families of external and internal ellipsoids.</p>
-<p>Let parameter <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>
be some nonzero vector in <img class="math"
src="_images/math/9d5b8bcc7aa4f27bc64d1e1817aa4f42c44cffcb.png" alt="{\bf
R}^n"/>.
-Then the external approximation <img class="math"
src="_images/math/b7ba4ccd31cc16807035190d40c846bc450b6213.png"
alt="{\mathcal E}(q,Q_l^+)"/> and the
-internal approximation <img class="math"
src="_images/math/1ec35dc3d7ef81c4f0c3a43a5776862c9312b6f5.png"
alt="{\mathcal E}(q,Q_l^-)"/> of the sum
-<img class="math"
src="_images/math/c7c30e2dd5f3258c685f0f36043a32320d7601f2.png"
alt="{\mathcal E}(q_1,Q_1)\oplus\cdots\oplus{\mathcal E}(q_k,Q_k)"/> are
-<em>tight</em> along direction <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>,
i.e.,</p>
+<p>Let parameter <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>
be some nonzero vector in <img class="math"
src="_images/math/e1ece5563e1c134d935af18b692ffc3fde4f2fd6.png" alt="{\bf
R}^n"/>.
+Then the external approximation <img class="math"
src="_images/math/556bd66f8e65d6499eebc23c897386ea93e7a589.png"
alt="{\mathcal E}(q,Q_l^+)"/> and the
+internal approximation <img class="math"
src="_images/math/4fdb756fc6e0afb8c20736ffe0a46cd711829418.png"
alt="{\mathcal E}(q,Q_l^-)"/> of the sum
+<img class="math"
src="_images/math/492d135423e70fecca35ff0cf8840a1d3b85118a.png"
alt="{\mathcal E}(q_1,Q_1)\oplus\cdots\oplus{\mathcal E}(q_k,Q_k)"/> are
+<em>tight</em> along direction <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>,
i.e.,</p>
<div class="math">
-<p><img src="_images/math/55c6f83d93b9cfd19c078664baecec2cd4855b19.png"
alt="{\mathcal E}(q,Q_l^-)\subseteq{\mathcal
E}(q_1,Q_1)\oplus\cdots\oplus{\mathcal E}(q_k,Q_k)
+<p><img src="_images/math/8e4af63b2654386bb3eb47d7b0fb050daebd34e8.png"
alt="{\mathcal E}(q,Q_l^-)\subseteq{\mathcal
E}(q_1,Q_1)\oplus\cdots\oplus{\mathcal E}(q_k,Q_k)
\subseteq{\mathcal E}(q,Q_l^+)"/></p>
</div><p>and</p>
<div class="math">
-<p><img src="_images/math/9ac1ae316de090a0a7dd43aed00f3d3d829bee93.png"
alt="\rho(\pm l ~|~ {\mathcal E}(q,Q_l^-)) =
+<p><img src="_images/math/ee8964fbd98ec378c2b852439061f5d7f269135f.png"
alt="\rho(\pm l ~|~ {\mathcal E}(q,Q_l^-)) =
\rho(\pm l ~|~ {\mathcal E}(q_1,Q_1)\oplus\cdots\oplus{\mathcal
E}(q_k,Q_k)) =
\rho(\pm l ~|~ {\mathcal E}(q,Q_l^+))."/></p>
-</div><p>Here the center <img class="math"
src="_images/math/0615acc3725de21025457e7d6f7694dab8e2f758.png" alt="q"/>
is</p>
+</div><p>Here the center <img class="math"
src="_images/math/23f1b45408e5b4130c0f940fcbfcec54492cbdcd.png" alt="q"/>
is</p>
<div class="math" id="equation-minksum_c">
-<p><span class="eqno">(17)</span><img
src="_images/math/c4b627e644a8293c07e69bba06fc492853fc260e.png" alt="q =
q_1 + \cdots + q_k ,"/></p>
-</div><p>the shape matrix of the external ellipsoid <img class="math"
src="_images/math/2259718a4c723981c66c344ce2a73459a8e26f0e.png"
alt="Q_l^+"/> is</p>
+<p><span class="eqno">(17)</span><img
src="_images/math/1167f71241cc7e8dd58a479499d8757da42f0e91.png" alt="q =
q_1 + \cdots + q_k ,"/></p>
+</div><p>the shape matrix of the external ellipsoid <img class="math"
src="_images/math/37c829775c73110eb670404022a2b55ed000ea6b.png"
alt="Q_l^+"/> is</p>
<div class="math" id="equation-minksum_ea">
-<p><span class="eqno">(18)</span><img
src="_images/math/26f359504b0f4259c81dfd8a3cb9d82104205373.png" alt="Q_l^+
= \left(\langle l,Q_1l\rangle^{1/2} + \cdots
+<p><span class="eqno">(18)</span><img
src="_images/math/f7c8bf7003926208bf1b337d32c681669377aed5.png" alt="Q_l^+
= \left(\langle l,Q_1l\rangle^{1/2} + \cdots
+ \langle l,Q_kl\rangle^{1/2}\right)
\left(\frac{1}{\langle l,Q_1l\rangle^{1/2}}Q_1 + \cdots +
\frac{1}{\langle l,Q_kl\rangle^{1/2}}Q_k\right),"/></p>
-</div><p>and the shape matrix of the internal ellipsoid <img class="math"
src="_images/math/5cac05aa42515ef71b03061ea7a3bb933b5024c8.png"
alt="Q_l^-"/> is</p>
+</div><p>and the shape matrix of the internal ellipsoid <img class="math"
src="_images/math/02024f9df5ef2f2be7cf1968bf74b7bae3f405c6.png"
alt="Q_l^-"/> is</p>
<div class="math" id="equation-minksum_ia">
-<p><span class="eqno">(19)</span><img
src="_images/math/9a1efe88cc2f4b3be342e4ce3e57f8f4b2297b8b.png" alt="Q_l^-
= \left(Q_1^{1/2} + S_2Q_2^{1/2} + \cdots + S_kQ_k^{1/2}\right)^T
+<p><span class="eqno">(19)</span><img
src="_images/math/6045ba07bc79dcd9fb906b1c0fd3301f906c3fa3.png" alt="Q_l^-
= \left(Q_1^{1/2} + S_2Q_2^{1/2} + \cdots + S_kQ_k^{1/2}\right)^T
\left(Q_1^{1/2} + S_2Q_2^{1/2} + \cdots + S_kQ_k^{1/2}\right),"/></p>
-</div><p>with matrices <img class="math"
src="_images/math/9e0ec34cd8860ceb97113f81ba768ba739ad5166.png"
alt="S_i"/>, <img class="math"
src="_images/math/0c85d6fd0282e32f0fb6db010435ae19dbdf51f9.png"
alt="i=2,\cdots,k"/>, being orthogonal
-(<img class="math"
src="_images/math/abfa77d99a295cfdec300683a437f78b84152501.png"
alt="S_iS_i^T=I"/>) and such that vectors
-<img class="math"
src="_images/math/c7ed5faab40584a2685ceec6f0d539f256772f45.png"
alt="Q_1^{1/2}l, S_2Q_2^{1/2}l, \cdots, S_kQ_k^{1/2}l"/> are parallel.</p>
-<p>Varying vector <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>
we get exact external and internal
+</div><p>with matrices <img class="math"
src="_images/math/3f1a4e430c239029fe31b52c95bb3278d0bc3d49.png"
alt="S_i"/>, <img class="math"
src="_images/math/0e9e3da9d41bd82937972dabff58228ae0be6445.png"
alt="i=2,\cdots,k"/>, being orthogonal
+(<img class="math"
src="_images/math/ae52758575fc12c2eb8a54d682b3528be7ae62ba.png"
alt="S_iS_i^T=I"/>) and such that vectors
+<img class="math"
src="_images/math/1b97b764da1290c1c0a80d5603f54330a3903be8.png"
alt="Q_1^{1/2}l, S_2Q_2^{1/2}l, \cdots, S_kQ_k^{1/2}l"/> are parallel.</p>
+<p>Varying vector <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>
we get exact external and internal
approximations,</p>
<div class="math">
-<p><img src="_images/math/951d3a4b2425b8c0eb94e7ed305a9b8b80142a39.png"
alt="\bigcup_{\langle l,l\rangle=1} {\mathcal E}(q,Q_l^-) =
+<p><img src="_images/math/c1ae447015217a1788af8a010d0976c71a672cf5.png"
alt="\bigcup_{\langle l,l\rangle=1} {\mathcal E}(q,Q_l^-) =
{\mathcal E}(q_1,Q_1)\oplus\cdots\oplus{\mathcal E}(q_k,Q_k) =
\bigcap_{\langle l,l\rangle=1} {\mathcal E}(q,Q_l^+) ."/></p>
</div><p>For proofs of formulas given in this section, see <a
class="reference internal" href="chap_intro.html#kur1997"
id="id1">[KUR1997]</a>, <a class="reference internal"
href="chap_intro.html#kur2000" id="id2">[KUR2000]</a>.</p>
<p>One last comment is about how to find orthogonal matrices
-<img class="math"
src="_images/math/5d8622c8f78dee53189f0a7db53aa204ef207189.png"
alt="S_2,\cdots,S_k"/> that align vectors
-<img class="math"
src="_images/math/5cafc61a5b67a967d4faee9aacfd00327fad0f70.png"
alt="Q_2^{1/2}l, \cdots, Q_k^{1/2}l"/> with <img class="math"
src="_images/math/0610ca673ec485925fbd1c600179fff9f22bca8c.png"
alt="Q_1^{1/2}l"/>. Let
-<img class="math"
src="_images/math/a3ef75cc31c88a4eb1c121de7a914b0d73882ee2.png" alt="v_1"/>
and <img class="math"
src="_images/math/e3c09383f52ff7db11358e4aa6ca6c0307b02d76.png" alt="v_2"/>
be some unit vectors in <img class="math"
src="_images/math/9d5b8bcc7aa4f27bc64d1e1817aa4f42c44cffcb.png" alt="{\bf
R}^n"/>.
-We have to find matrix <img class="math"
src="_images/math/ad28c83c99a8fd0dd2e2e594c9d02ee532765a0a.png" alt="S"/>
such that
-<img class="math"
src="_images/math/f5f5185b36251ec182e491c4426666d2571552e9.png"
alt="Sv_2\uparrow\uparrow v_1"/>.
+<img class="math"
src="_images/math/0ae496a5c004e33e2c05625e159c4312f565244b.png"
alt="S_2,\cdots,S_k"/> that align vectors
+<img class="math"
src="_images/math/39c0182ffd4c6d196fe8dc6cac2bcc54535c14df.png"
alt="Q_2^{1/2}l, \cdots, Q_k^{1/2}l"/> with <img class="math"
src="_images/math/65070e2defb21dee86a64e8004eddc59902b7287.png"
alt="Q_1^{1/2}l"/>. Let
+<img class="math"
src="_images/math/26bed463602b7b5764b5bdb149c6f77b40c998c3.png" alt="v_1"/>
and <img class="math"
src="_images/math/90f92bbe75a1f67cf7e5561af6a3eaa44e938f49.png" alt="v_2"/>
be some unit vectors in <img class="math"
src="_images/math/e1ece5563e1c134d935af18b692ffc3fde4f2fd6.png" alt="{\bf
R}^n"/>.
+We have to find matrix <img class="math"
src="_images/math/11a85f3c69ae6702cb1d99d3de451913b8f84c04.png" alt="S"/>
such that
+<img class="math"
src="_images/math/b2760be2d44775828f21e389d7cfe3bd34e8d632.png"
alt="Sv_2\uparrow\uparrow v_1"/>.
We suggest explicit formulas for the
calculation of this matrix <a class="reference internal" href="#dar2012"
id="id3">[DAR2012]</a>:</p>
<div class="math" id="equation-valign1">
-<p><span class="eqno">(20)</span><img
src="_images/math/6befdc30041e159b2dc70b0413434071ace7cbeb.png" alt="T = I
+ Q_1(S - I)Q_1^T,"/></p>
+<p><span class="eqno">(20)</span><img
src="_images/math/ad1036b6cd67b2eb25bbec7501bfdf2d7d0628c3.png" alt="T = I
+ Q_1(S - I)Q_1^T,"/></p>
</div><div class="math" id="equation-valign2">
-<p><span class="eqno">(21)</span><img
src="_images/math/13d431115166dafcfd7e6567b0fff7a0eb92d170.png" alt="S =
\begin{pmatrix}
+<p><span class="eqno">(21)</span><img
src="_images/math/8e10fc6179b2dffd1f2eac6f9fcf21b7f2a8d788.png" alt="S =
\begin{pmatrix}
c & s\\
-s & c
\end{pmatrix},\quad c = \langle\hat{v_1},\ \hat{v_2}\rangle,\ \quad s
= \sqrt{1 - c^2},\ \quad \hat{v_i} = \dfrac{v_i}{\|v_i\|}"/></p>
</div><div class="math" id="equation-valign3">
-<p><span class="eqno">(22)</span><img
src="_images/math/61cdc81e61c3c602a3331b5cb5c6a816f38b2704.png" alt="Q_1 =
[q_1 \, q_2]\in \mathbb{R}^{n\times2},\ \quad q_1 = \hat{v_1},\ \quad q_2 =
\begin{cases}
+<p><span class="eqno">(22)</span><img
src="_images/math/0bd74016464a77c91c06d08c1a038bd6d7e46208.png" alt="Q_1 =
[q_1 \, q_2]\in \mathbb{R}^{n\times2},\ \quad q_1 = \hat{v_1},\ \quad q_2 =
\begin{cases}
s^{-1}(\hat{v_2} - c\hat{v_1}),& s\ne 0\\
0,& s = 0.
\end{cases}"/></p>
@@ -358,230 +358,230 @@
<div class="section" id="geometric-difference">
<h3>Geometric Difference<a class="headerlink" href="#geometric-difference"
title="Permalink to this headline">¶</a></h3>
<p>Consider the geometric difference <a href="#equation-minkdiff">(9)</a>
in which the sets
-<img class="math"
src="_images/math/51cb1c05fe424ad46a882c20e73982073f636208.png"
alt="{\mathcal X}_1"/> and <img class="math"
src="_images/math/f1ff206ea244a14735a602e5212cfe96f0589f26.png"
alt="{\mathcal X}_2"/> are nondegenerate
-ellipsoids <img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> and
-<img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/>. We say that ellipsoid
-<img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> is <em>bigger</em> than ellipsoid
-<img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/> if</p>
+<img class="math"
src="_images/math/853515def1716674a4c944fe864e4549e181c85e.png"
alt="{\mathcal X}_1"/> and <img class="math"
src="_images/math/6b3f1274f4eab419b46e18d82168006f6a18e3dc.png"
alt="{\mathcal X}_2"/> are nondegenerate
+ellipsoids <img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> and
+<img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/>. We say that ellipsoid
+<img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> is <em>bigger</em> than ellipsoid
+<img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/> if</p>
<div class="math">
-<p><img src="_images/math/cf9b457145afdb53006860945864f00accd1c618.png"
alt="{\mathcal E}(0,Q_2) \subseteq {\mathcal E}(0,Q_1)."/></p>
+<p><img src="_images/math/3211f0d460f628a205bb2c5c030b827f75777ff5.png"
alt="{\mathcal E}(0,Q_2) \subseteq {\mathcal E}(0,Q_1)."/></p>
</div><p>If this condition is not fulfilled, the geometric difference
-<img class="math"
src="_images/math/a1062fcc8473fb7421323f2b926c485e48337e78.png"
alt="{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)"/> is an empty
+<img class="math"
src="_images/math/66825ba9aa60efb701173375923391658f9e5250.png"
alt="{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)"/> is an empty
set:</p>
<div class="math">
-<p><img src="_images/math/4779d3cbb11c493a1b28a95176a6456b9fadab75.png"
alt="{\mathcal E}(0,Q_2) \not\subseteq {\mathcal E}(0,Q_1) ~~~ \Rightarrow
~~~
+<p><img src="_images/math/5ae04fb5797b8bfda2868afe2b05b4ae73efab73.png"
alt="{\mathcal E}(0,Q_2) \not\subseteq {\mathcal E}(0,Q_1) ~~~ \Rightarrow
~~~
{\mathcal E}(q_1,Q_1) \dot{-}{\mathcal E}(q_2,Q_2) = \emptyset."/></p>
-</div><p>If <img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> is bigger than
-<img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/> and <img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/> is
-bigger than <img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/>, in other words, if
-<img class="math"
src="_images/math/e66315533674b0431cd1558baecb6889c2f20b5e.png"
alt="Q_1=Q_2"/>,</p>
+</div><p>If <img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> is bigger than
+<img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/> and <img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/> is
+bigger than <img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/>, in other words, if
+<img class="math"
src="_images/math/df46f6c25ee94d98f9b5b38aa2bb11bebf94c710.png"
alt="Q_1=Q_2"/>,</p>
<div class="math">
-<p><img src="_images/math/28cc614d5dce7576ad04acdbbb21d6f5368ea6d6.png"
alt="{\mathcal E}(q_1,Q_1) \dot{-}{\mathcal E}(q_2,Q_2) = \{q_1-q_2\} ~~~
\mbox{and} ~~~
+<p><img src="_images/math/5d7ff77e5c369c148cf61301f74bd85ecece4fbe.png"
alt="{\mathcal E}(q_1,Q_1) \dot{-}{\mathcal E}(q_2,Q_2) = \{q_1-q_2\} ~~~
\mbox{and} ~~~
{\mathcal E}(q_2,Q_2) \dot{-}{\mathcal E}(q_1,Q_1) = \{q_2-q_1\}."/></p>
-</div><p>To check if ellipsoid <img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> is bigger than
-ellipsoid <img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/>, we perform simultaneous
-diagonalization of matrices <img class="math"
src="_images/math/c16e423c8f499e0bef8c20078b04126aeb9417bc.png" alt="Q_1"/>
and <img class="math"
src="_images/math/f83bf0891a57ba8a1ee68d8c72f141ccbc14186d.png"
alt="Q_2"/>, that is, we
-find matrix <img class="math"
src="_images/math/2554b6496c3b678897e9b060ef00aa9f0a7d7ece.png" alt="T"/>
such that</p>
+</div><p>To check if ellipsoid <img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> is bigger than
+ellipsoid <img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/>, we perform simultaneous
+diagonalization of matrices <img class="math"
src="_images/math/19a1de5cbb69a1661b424bd7e4ded7ab06e5962c.png" alt="Q_1"/>
and <img class="math"
src="_images/math/0eacc439950241c4631c006603dace97c71ddf04.png"
alt="Q_2"/>, that is, we
+find matrix <img class="math"
src="_images/math/6d42c88506b8da39a2a23653aecbfb7c29728063.png" alt="T"/>
such that</p>
<div class="math">
-<p><img src="_images/math/7d357110ae4ae4dd0d455af7356b89b6dc4bef2f.png"
alt="TQ_1T^T = I ~~~ \mbox{and} ~~~ TQ_2T^T=D,"/></p>
-</div><p>where <img class="math"
src="_images/math/9ffb448918db29f2a72f8f87f421b3b3cad18f95.png" alt="D"/>
is some diagonal matrix. Simultaneous diagonalization
-of <img class="math"
src="_images/math/c16e423c8f499e0bef8c20078b04126aeb9417bc.png" alt="Q_1"/>
and <img class="math"
src="_images/math/f83bf0891a57ba8a1ee68d8c72f141ccbc14186d.png" alt="Q_2"/>
is possible because both are symmetric
+<p><img src="_images/math/520a02519dbbedcf3f82e378afd33b58f0f0de5f.png"
alt="TQ_1T^T = I ~~~ \mbox{and} ~~~ TQ_2T^T=D,"/></p>
+</div><p>where <img class="math"
src="_images/math/9dfa31437b58c0473299320aa638151cd88cf61b.png" alt="D"/>
is some diagonal matrix. Simultaneous diagonalization
+of <img class="math"
src="_images/math/19a1de5cbb69a1661b424bd7e4ded7ab06e5962c.png" alt="Q_1"/>
and <img class="math"
src="_images/math/0eacc439950241c4631c006603dace97c71ddf04.png" alt="Q_2"/>
is possible because both are symmetric
positive definite (see <a class="reference internal" href="#gant1960"
id="id4">[GANT1960]</a>). To find such matrix
-<img class="math"
src="_images/math/2554b6496c3b678897e9b060ef00aa9f0a7d7ece.png" alt="T"/>,
we first do the SVD of <img class="math"
src="_images/math/c16e423c8f499e0bef8c20078b04126aeb9417bc.png"
alt="Q_1"/>:</p>
+<img class="math"
src="_images/math/6d42c88506b8da39a2a23653aecbfb7c29728063.png" alt="T"/>,
we first do the SVD of <img class="math"
src="_images/math/19a1de5cbb69a1661b424bd7e4ded7ab06e5962c.png"
alt="Q_1"/>:</p>
<div class="math" id="equation-simdiag1">
-<p><span class="eqno">(23)</span><img
src="_images/math/4824ec9676cfa0ed6d828e1581a2b0fce5b3f20f.png" alt="Q_1 =
U_1\Sigma_1V_1^T ."/></p>
+<p><span class="eqno">(23)</span><img
src="_images/math/8a846daf2fb7cc80e11d210a83b250001c79ee11.png" alt="Q_1 =
U_1\Sigma_1V_1^T ."/></p>
</div><p>Then the SVD of matrix
-<img class="math"
src="_images/math/dee3d34368b4ff037cfb9a60bee42c69520bc5db.png"
alt="\Sigma_1^{-1/2}U_1^TQ_2U_1\Sigma_1^{-1/2}"/>:</p>
+<img class="math"
src="_images/math/5971310b2d465a06162fd9f58edbbb31d5a700d9.png"
alt="\Sigma_1^{-1/2}U_1^TQ_2U_1\Sigma_1^{-1/2}"/>:</p>
<div class="math" id="equation-simdiag2">
-<p><span class="eqno">(24)</span><img
src="_images/math/0076b21ab5b4e4c82862aa8e261c01040fe877be.png"
alt="\Sigma_1^{-1/2}U_1^TQ_2U_1\Sigma_1^{-1/2} = U_2\Sigma_2V_2^T."/></p>
-</div><p>Now, <img class="math"
src="_images/math/2554b6496c3b678897e9b060ef00aa9f0a7d7ece.png" alt="T"/>
is defined as</p>
+<p><span class="eqno">(24)</span><img
src="_images/math/c839f3f6aa3ab8040fd7e666f53b93f370b19899.png"
alt="\Sigma_1^{-1/2}U_1^TQ_2U_1\Sigma_1^{-1/2} = U_2\Sigma_2V_2^T."/></p>
+</div><p>Now, <img class="math"
src="_images/math/6d42c88506b8da39a2a23653aecbfb7c29728063.png" alt="T"/>
is defined as</p>
<div class="math" id="equation-simdiag3">
-<p><span class="eqno">(25)</span><img
src="_images/math/b8fd8ec4de863e538933814f8119653f05957963.png" alt="T =
U_2^T \Sigma_1^{-1/2}U_1^T."/></p>
-</div><p>If the biggest diagonal element (eigenvalue) of matrix <img
class="math"
src="_images/math/3c30c85dd92830e6eeba03429a3de1619a98365a.png"
alt="D=TQ_2T^T"/>
-is less than or equal to <img class="math"
src="_images/math/dce34f4dfb2406144304ad0d6106c5382ddd1446.png" alt="1"/>,
-<img class="math"
src="_images/math/0eb8863783e03f5430af0160912fc20f07e0f722.png"
alt="{\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)"/>.</p>
-<p>Once it is established that ellipsoid <img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> is
-bigger than ellipsoid <img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/>, we know that their
+<p><span class="eqno">(25)</span><img
src="_images/math/7e4408df1fcb0c257a9281543937a076faf87b21.png" alt="T =
U_2^T \Sigma_1^{-1/2}U_1^T."/></p>
+</div><p>If the biggest diagonal element (eigenvalue) of matrix <img
class="math"
src="_images/math/35c551fb43e529691973bb3c543c665328378241.png"
alt="D=TQ_2T^T"/>
+is less than or equal to <img class="math"
src="_images/math/123e375e88da91240024aaf085abee194c4a2d06.png" alt="1"/>,
+<img class="math"
src="_images/math/e30a04da6f369ae2157711a1d706a40c13262f70.png"
alt="{\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)"/>.</p>
+<p>Once it is established that ellipsoid <img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> is
+bigger than ellipsoid <img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/>, we know that their
geometric difference
-<img class="math"
src="_images/math/a1062fcc8473fb7421323f2b926c485e48337e78.png"
alt="{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)"/> is a nonempty
+<img class="math"
src="_images/math/66825ba9aa60efb701173375923391658f9e5250.png"
alt="{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)"/> is a nonempty
convex compact set. Although it is not generally an ellipsoid, we can
find tight external and internal approximations of this set parametrized
-by vector <img class="math"
src="_images/math/46f0b658f423a1abfb55b768b599f0bdd795786b.png"
alt="l\in{\bf R}^n"/>. Unlike geometric sum, however,
+by vector <img class="math"
src="_images/math/86c01e1de856b6d6856aff8c321b1011a753e4b4.png"
alt="l\in{\bf R}^n"/>. Unlike geometric sum, however,
ellipsoidal approximations for the geometric difference do not exist for
-every direction <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>.
Vectors for which the approximations do not
+every direction <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>.
Vectors for which the approximations do not
exist are called <em>bad directions</em>.</p>
-<p>Given two ellipsoids <img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> and
-<img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/> with
-<img class="math"
src="_images/math/0eb8863783e03f5430af0160912fc20f07e0f722.png"
alt="{\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)"/>, <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>
is a
+<p>Given two ellipsoids <img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> and
+<img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/> with
+<img class="math"
src="_images/math/e30a04da6f369ae2157711a1d706a40c13262f70.png"
alt="{\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)"/>, <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>
is a
bad direction if</p>
<div class="math">
-<p><img src="_images/math/97a034a346a13ec0a32eb72a1a4e2af8df4a2bf3.png"
alt="\frac{\langle l,Q_1l\rangle^{1/2}}{\langle
l,Q_2l\rangle^{1/2}}>r,"/></p>
-</div><p>in which <img class="math"
src="_images/math/b55ca7a0aa88ab7d58f4fc035317fdac39b17861.png" alt="r"/>
is a minimal root of the equation</p>
+<p><img src="_images/math/be90d92357b4be263b4c856fd3e1b3790c4b891c.png"
alt="\frac{\langle l,Q_1l\rangle^{1/2}}{\langle
l,Q_2l\rangle^{1/2}}>r,"/></p>
+</div><p>in which <img class="math"
src="_images/math/2ede365ad144ab396916ec60458da03860803078.png" alt="r"/>
is a minimal root of the equation</p>
<div class="math">
-<p><img src="_images/math/36cef43b268c8b1d7c2ff143aa3e7ce2ec229771.png"
alt="{\bf det}(Q_1-rQ_2) = 0."/></p>
-</div><p>To find <img class="math"
src="_images/math/b55ca7a0aa88ab7d58f4fc035317fdac39b17861.png" alt="r"/>,
compute matrix <img class="math"
src="_images/math/2554b6496c3b678897e9b060ef00aa9f0a7d7ece.png" alt="T"/>
by <a href="#equation-simdiag1">(23)</a>-<a
href="#equation-simdiag3">(25)</a>
+<p><img src="_images/math/68929119a2976e831576e85c0ef6d80e0a8a28da.png"
alt="{\bf det}(Q_1-rQ_2) = 0."/></p>
+</div><p>To find <img class="math"
src="_images/math/2ede365ad144ab396916ec60458da03860803078.png" alt="r"/>,
compute matrix <img class="math"
src="_images/math/6d42c88506b8da39a2a23653aecbfb7c29728063.png" alt="T"/>
by <a href="#equation-simdiag1">(23)</a>-<a
href="#equation-simdiag3">(25)</a>
and define</p>
<div class="math">
-<p><img src="_images/math/78769870143bc4ae404820ed8515038371701c5c.png"
alt="r = \frac{1}{\max({\bf diag}(TQ_2T^T))}."/></p>
-</div><p>If <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>
is <em>not</em> a bad direction, we can find tight external and
-internal ellipsoidal approximations <img class="math"
src="_images/math/cd820e0ffa361e49ddb20b48c10ef28e71eb33bd.png"
alt="{\mathcal E}(q,Q^+_l)"/> and
-<img class="math"
src="_images/math/94f43cc848977a2501ef18eeb62f60f6c7e08d4c.png"
alt="{\mathcal E}(q,Q^-_l)"/> such that</p>
+<p><img src="_images/math/5eb2e07472ef8a0fb9a042a6f584aabc9c37fc4a.png"
alt="r = \frac{1}{\max({\bf diag}(TQ_2T^T))}."/></p>
+</div><p>If <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>
is <em>not</em> a bad direction, we can find tight external and
+internal ellipsoidal approximations <img class="math"
src="_images/math/29bf999b6e9c2b5afb879018212142b9726ea7d3.png"
alt="{\mathcal E}(q,Q^+_l)"/> and
+<img class="math"
src="_images/math/fe17af10ac96e36544e7a9544b3c86bded22eb23.png"
alt="{\mathcal E}(q,Q^-_l)"/> such that</p>
<div class="math">
-<p><img src="_images/math/ee7c4356b5cf1f8dda2ae13f831577457739e4be.png"
alt="{\mathcal E}(q,Q^-_l)\subseteq{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal
E}(q_2,Q_2)\subseteq{\mathcal E}(q,Q^+_l)"/></p>
+<p><img src="_images/math/d201b481df185bd8f9903c7a97ee3bfbb4089fb6.png"
alt="{\mathcal E}(q,Q^-_l)\subseteq{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal
E}(q_2,Q_2)\subseteq{\mathcal E}(q,Q^+_l)"/></p>
</div><p>and</p>
<div class="math">
-<p><img src="_images/math/9ef4ba40b296e5f5580db88dc9ad4e01b9450313.png"
alt="\rho(\pm l ~|~ {\mathcal E}(q,Q_l^-)) =
+<p><img src="_images/math/bdb880f612dbda6449541f96db81901a773e839b.png"
alt="\rho(\pm l ~|~ {\mathcal E}(q,Q_l^-)) =
\rho(\pm l ~|~ {\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)) =
\rho(\pm l ~|~ {\mathcal E}(q,Q_l^+))."/></p>
-</div><p>The center <img class="math"
src="_images/math/0615acc3725de21025457e7d6f7694dab8e2f758.png" alt="q"/>
is</p>
+</div><p>The center <img class="math"
src="_images/math/23f1b45408e5b4130c0f940fcbfcec54492cbdcd.png" alt="q"/>
is</p>
<div class="math" id="equation-minkdiff_c">
-<p><span class="eqno">(26)</span><img
src="_images/math/5d64e144f884c1deefe994ab558b5e6bf32db0f4.png" alt="q =
q_1 - q_2;"/></p>
-</div><p>the shape matrix of the internal ellipsoid <img class="math"
src="_images/math/e6a70802f10ac1eb9ca48e196d2cefb83a3c0ce1.png"
alt="Q^-_l"/> is</p>
+<p><span class="eqno">(26)</span><img
src="_images/math/a4a59c981141d3b58febd0384f069f95d61fd9de.png" alt="q =
q_1 - q_2;"/></p>
+</div><p>the shape matrix of the internal ellipsoid <img class="math"
src="_images/math/6e0f7e12260002b0f54c66d3ed3ffe8bf55b701d.png"
alt="Q^-_l"/> is</p>
<div class="math">
-<p><img src="_images/math/927b9b9b217d5bfc907bcfa669f9b910f8235083.png"
alt="\begin{aligned}
+<p><img src="_images/math/f1dbb521e10ca8882a3833b0ffe88e660d0697ad.png"
alt="\begin{aligned}
&& P = \frac{\sqrt{\langle l, Q_1 l\rangle}}{\sqrt{\langle l, Q_2
\rangle}};\nonumber\\
&& Q^-_l = \left(1 - \dfrac{1}{P}\right)Q_1 + \left(1 -
P\right)Q_2.
\label{minkdiff_ia}\end{aligned}"/></p>
-</div><p>and the shape matrix of the external ellipsoid <img class="math"
src="_images/math/2545b35ab32f3fe2286915cd5a6cf657d1609b23.png"
alt="Q^+_l"/> is</p>
+</div><p>and the shape matrix of the external ellipsoid <img class="math"
src="_images/math/62ef52fe35490b5521023ec17fcd949451b73690.png"
alt="Q^+_l"/> is</p>
<div class="math" id="equation-minkdiff_ea">
-<p><span class="eqno">(27)</span><img
src="_images/math/0c75b04ff8f6b76af3c2814853854993c7857b61.png" alt="Q^+_l
= \left(Q_1^{1/2} - SQ_2^{1/2}\right)^T
+<p><span class="eqno">(27)</span><img
src="_images/math/43a61cab3b71adefb9775acafd05a7733803ba8c.png" alt="Q^+_l
= \left(Q_1^{1/2} - SQ_2^{1/2}\right)^T
\left(Q_1^{1/2} - SQ_2^{1/2}\right)."/></p>
-</div><p>Here <img class="math"
src="_images/math/ad28c83c99a8fd0dd2e2e594c9d02ee532765a0a.png" alt="S"/>
is an orthogonal matrix such that vectors
-<img class="math"
src="_images/math/0610ca673ec485925fbd1c600179fff9f22bca8c.png"
alt="Q_1^{1/2}l"/> and <img class="math"
src="_images/math/668ab12e6757a22530c09e76a96a386df2f078d5.png"
alt="SQ_2^{1/2}l"/> are parallel. <img class="math"
src="_images/math/ad28c83c99a8fd0dd2e2e594c9d02ee532765a0a.png" alt="S"/> is
-found from <a href="#equation-valign1">(20)</a>-<a
href="#equation-valign3">(22)</a>, with <img class="math"
src="_images/math/7b678032d17c8758b9e52d50aecfd6c5b00c2e59.png"
alt="v_1=Q_2^{1/2}l"/> and
-<img class="math"
src="_images/math/38cf7254ff127006e0a7de17fa5acc295c1a35f2.png"
alt="v_2=Q_1^{1/2}l"/>.</p>
-<p>Running <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>
over all unit directions that are not bad, we get</p>
+</div><p>Here <img class="math"
src="_images/math/11a85f3c69ae6702cb1d99d3de451913b8f84c04.png" alt="S"/>
is an orthogonal matrix such that vectors
+<img class="math"
src="_images/math/65070e2defb21dee86a64e8004eddc59902b7287.png"
alt="Q_1^{1/2}l"/> and <img class="math"
src="_images/math/867f1f63c0cc0653879d05607cdb75d1746868f3.png"
alt="SQ_2^{1/2}l"/> are parallel. <img class="math"
src="_images/math/11a85f3c69ae6702cb1d99d3de451913b8f84c04.png" alt="S"/> is
+found from <a href="#equation-valign1">(20)</a>-<a
href="#equation-valign3">(22)</a>, with <img class="math"
src="_images/math/e2f1435d97cc0b8f2e952d3157e754dcce01900b.png"
alt="v_1=Q_2^{1/2}l"/> and
+<img class="math"
src="_images/math/e449606b39263dcf842d82c0cb1e10c409b7e02e.png"
alt="v_2=Q_1^{1/2}l"/>.</p>
+<p>Running <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>
over all unit directions that are not bad, we get</p>
<div class="math">
-<p><img src="_images/math/4ebe43a5f289916d71ff81ff5e22fff63c9b928f.png"
alt="\bigcup_{\langle l,l\rangle=1} {\mathcal E}(q,Q_l^-) =
+<p><img src="_images/math/d57a653513143506d24d5287f79ee308a8f428f3.png"
alt="\bigcup_{\langle l,l\rangle=1} {\mathcal E}(q,Q_l^-) =
{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2) =
\bigcap_{\langle l,l\rangle=1} {\mathcal E}(q,Q_l^+) ."/></p>
</div><p>For proofs of formulas given in this section, see <a
class="reference internal" href="chap_intro.html#kur1997"
id="id5">[KUR1997]</a>.</p>
</div>
<div class="section" id="geometric-difference-sum">
<span id="diff-sum-label"></span><h3>Geometric Difference-Sum<a
class="headerlink" href="#geometric-difference-sum" title="Permalink to
this headline">¶</a></h3>
-<p>Given ellipsoids <img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/>,
-<img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/> and <img class="math"
src="_images/math/e801b0c5b9bcd9cd4bb01a18125df635e8c4334f.png"
alt="{\mathcal E}(q_3,Q_3)"/>, it is
+<p>Given ellipsoids <img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/>,
+<img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/> and <img class="math"
src="_images/math/729827294b68c2cc5d7dd2d378bd1c936b17a94c.png"
alt="{\mathcal E}(q_3,Q_3)"/>, it is
possible to compute families of external and internal approximating
ellipsoids for</p>
<div class="math" id="equation-minkmp">
-<p><span class="eqno">(28)</span><img
src="_images/math/18b730b1ebf285f666e9bc96b6db5d84e2335d99.png"
alt="{\mathcal E}(q_1,Q_1) \dot{-} {\mathcal E}(q_2,Q_2) \oplus {\mathcal
E}(q_3,Q_3)"/></p>
-</div><p>parametrized by direction <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>,
if this set is nonempty
-(<img class="math"
src="_images/math/0eb8863783e03f5430af0160912fc20f07e0f722.png"
alt="{\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)"/>).</p>
+<p><span class="eqno">(28)</span><img
src="_images/math/c99c6b877f2065704f1ef02b15803f4d39077b07.png"
alt="{\mathcal E}(q_1,Q_1) \dot{-} {\mathcal E}(q_2,Q_2) \oplus {\mathcal
E}(q_3,Q_3)"/></p>
+</div><p>parametrized by direction <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>,
if this set is nonempty
+(<img class="math"
src="_images/math/e30a04da6f369ae2157711a1d706a40c13262f70.png"
alt="{\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)"/>).</p>
<p>First, using the result of the previous section, for any direction
-<img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>
that is not bad, we obtain tight external
-<img class="math"
src="_images/math/1ef94097826575e4dfc04c90cf96561350639dd4.png"
alt="{\mathcal E}(q_1-q_2, Q_l^{0+})"/> and internal
-<img class="math"
src="_images/math/4e009ebaa189c3fca73a1ae72a3799282b4190d5.png"
alt="{\mathcal E}(q_1-q_2, Q_l^{0-})"/> approximations of the set
-<img class="math"
src="_images/math/a1062fcc8473fb7421323f2b926c485e48337e78.png"
alt="{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)"/>.</p>
+<img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>
that is not bad, we obtain tight external
+<img class="math"
src="_images/math/59a6fbf503c45ba00b0da778f8f4e72ba9363bc5.png"
alt="{\mathcal E}(q_1-q_2, Q_l^{0+})"/> and internal
+<img class="math"
src="_images/math/600a49a6eef49cbccc111e78af2d5d67c9b62f01.png"
alt="{\mathcal E}(q_1-q_2, Q_l^{0-})"/> approximations of the set
+<img class="math"
src="_images/math/66825ba9aa60efb701173375923391658f9e5250.png"
alt="{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)"/>.</p>
<p>The second and last step is, using the result of section 2.2.2, to find
tight external ellipsoidal approximation
-<img class="math"
src="_images/math/4462fb7eecf6724146bf9f4fa7af6c8c3670a6e1.png"
alt="{\mathcal E}(q_1-q_2+q_3,Q_l^+)"/> of the sum
-<img class="math"
src="_images/math/53027abc3cf3e1423650b4e48260b8570d5412d9.png"
alt="{\mathcal E}(q_1-q_2,Q_l^{0+})\oplus{\mathcal E}(q_3,Q_3)"/>, and
+<img class="math"
src="_images/math/3af6eeef45010b44250edc3134bde66118912010.png"
alt="{\mathcal E}(q_1-q_2+q_3,Q_l^+)"/> of the sum
+<img class="math"
src="_images/math/ab1610c5e58a1dc947d3424069831075ab1e4d37.png"
alt="{\mathcal E}(q_1-q_2,Q_l^{0+})\oplus{\mathcal E}(q_3,Q_3)"/>, and
tight internal ellipsoidal approximation
-<img class="math"
src="_images/math/6ff4660e3e35dcfa926196d592eee77b5fabce5a.png"
alt="{\mathcal E}(q_1-q_2+q_3,Q_l^-)"/> for the sum
-<img class="math"
src="_images/math/ab7ed77843bb59354a4a55db1eb75375256fa9d1.png"
alt="{\mathcal E}(q_1-q_2,Q_l^{0-})\oplus{\mathcal E}(q_3,Q_3)"/>.</p>
+<img class="math"
src="_images/math/0f88a8206078e56d5deb65d62e94cdc9c756fad5.png"
alt="{\mathcal E}(q_1-q_2+q_3,Q_l^-)"/> for the sum
+<img class="math"
src="_images/math/624a9586a1da36ba02391d594f15638182aa2178.png"
alt="{\mathcal E}(q_1-q_2,Q_l^{0-})\oplus{\mathcal E}(q_3,Q_3)"/>.</p>
<p>As a result, we get</p>
<div class="math">
-<p><img src="_images/math/13a8ba3580848f7360e11f7be94ab92fd74a060c.png"
alt="{\mathcal E}(q_1-q_2+q_3,Q_l^-) \subseteq
+<p><img src="_images/math/76f561e9d43e971888e885684d44075a226dfcf0.png"
alt="{\mathcal E}(q_1-q_2+q_3,Q_l^-) \subseteq
{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)\oplus{\mathcal
E}(q_3,Q_3) \subseteq
{\mathcal E}(q_1-q_2+q_3,Q_l^+)"/></p>
</div><p>and</p>
<div class="math">
-<p><img src="_images/math/37207e8e5c0e01f19b741292ee0b8a39ceb6988b.png"
alt="\rho(\pm l ~|~{\mathcal E}(q_1-q_2+q_3,Q_l^-)) =
+<p><img src="_images/math/bd2bfcabe275a7b813f2cb951c4d2b16b9058a8f.png"
alt="\rho(\pm l ~|~{\mathcal E}(q_1-q_2+q_3,Q_l^-)) =
\rho(\pm l ~|~ {\mathcal E}(q_1,Q_1)\dot{-}{\mathcal
E}(q_2,Q_2)\oplus{\mathcal E}(q_3,Q_3)) =
\rho(\pm l ~|~ {\mathcal E}(q_1-q_2+q_3,Q_l^+))."/></p>
-</div><p>Running <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>
over all unit vectors that are not bad, this
+</div><p>Running <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>
over all unit vectors that are not bad, this
translates to</p>
<div class="math">
-<p><img src="_images/math/089ab400ac9f3e21ec9f6ce0e670be322101fd23.png"
alt="\bigcup_{\langle l,l\rangle=1} {\mathcal E}(q_1-q_2+q_3,Q_l^-) =
+<p><img src="_images/math/810cb0b691e201014bded121f72f17418bcbcae5.png"
alt="\bigcup_{\langle l,l\rangle=1} {\mathcal E}(q_1-q_2+q_3,Q_l^-) =
{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)\oplus{\mathcal
E}(q_3,Q_3) =
\bigcap_{\langle l,l\rangle=1} {\mathcal E}(q_1-q_2+q_3,Q_l^+) ."/></p>
</div></div>
<div class="section" id="geometric-sum-difference">
<span id="sum-diff-label"></span><h3>Geometric Sum-Difference<a
class="headerlink" href="#geometric-sum-difference" title="Permalink to
this headline">¶</a></h3>
-<p>Given ellipsoids <img class="math"
src="_images/math/d64bd729074d0b5a8a33a399cc181376a1414224.png"
alt="{\mathcal E}(q_1,Q1)"/>,
-<img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/> and <img class="math"
src="_images/math/e801b0c5b9bcd9cd4bb01a18125df635e8c4334f.png"
alt="{\mathcal E}(q_3,Q_3)"/>, it is
+<p>Given ellipsoids <img class="math"
src="_images/math/88b8f5ab6d7ad283c95a5907717bb0d7d1d28fed.png"
alt="{\mathcal E}(q_1,Q1)"/>,
+<img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/> and <img class="math"
src="_images/math/729827294b68c2cc5d7dd2d378bd1c936b17a94c.png"
alt="{\mathcal E}(q_3,Q_3)"/>, it is
possible to compute families of external and internal approximating
ellipsoids for</p>
<div class="math" id="equation-minkpm">
-<p><span class="eqno">(29)</span><img
src="_images/math/c4e20bb3a2240c28a54a23fef1ce607a16963f8d.png"
alt="{\mathcal E}(q_1,Q_1) \oplus {\mathcal E}(q_2,Q_2) \dot{-} {\mathcal
E}(q_3,Q_3)"/></p>
-</div><p>parametrized by direction <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>,
if this set is nonempty
-(<img class="math"
src="_images/math/f71e4a98ac552649614e93ace2f7ef8d74f74c80.png"
alt="{\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_1)\oplus{\mathcal
E}(0,Q_2)"/>).</p>
+<p><span class="eqno">(29)</span><img
src="_images/math/b3ce35f34e609d9315eb4ae398632b798af09f01.png"
alt="{\mathcal E}(q_1,Q_1) \oplus {\mathcal E}(q_2,Q_2) \dot{-} {\mathcal
E}(q_3,Q_3)"/></p>
+</div><p>parametrized by direction <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>,
if this set is nonempty
+(<img class="math"
src="_images/math/5ac98e0d2170328a2162aac6e9a05cd404797725.png"
alt="{\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_1)\oplus{\mathcal
E}(0,Q_2)"/>).</p>
<p>First, using the result of section 2.2.2, we obtain tight external
-<img class="math"
src="_images/math/ca4197f531cc684e5df7e43051f370569f8da334.png"
alt="{\mathcal E}(q_1+q_2,Q_l^{0+})"/> and internal
-<img class="math"
src="_images/math/35ecffe9f99d6b61180fc167c1e6da7ac0325f89.png"
alt="{\mathcal E}(q_1+q_2,Q_l^{0-})"/> ellipsoidal approximations of the
-set <img class="math"
src="_images/math/22f8fe42b513ea5a08cd9b122594357b0c1a2663.png"
alt="{\mathcal E}(q_1,Q_1)\oplus{\mathcal E}(q_2,Q_2)"/>. In order
+<img class="math"
src="_images/math/c02bc0105f774aae346e690757cc7a26ce59d8e8.png"
alt="{\mathcal E}(q_1+q_2,Q_l^{0+})"/> and internal
+<img class="math"
src="_images/math/2341f64b6ee2e36154a7181220f38788cf696f72.png"
alt="{\mathcal E}(q_1+q_2,Q_l^{0-})"/> ellipsoidal approximations of the
+set <img class="math"
src="_images/math/eab8ea57252be7a4535863612a3d659e51aed1ea.png"
alt="{\mathcal E}(q_1,Q_1)\oplus{\mathcal E}(q_2,Q_2)"/>. In order
for the set <a href="#equation-minkpm">(29)</a> to be nonempty, inclusion
-<img class="math"
src="_images/math/607e37b9805c9cd4e5c27f82eb29ae5cd1cc64b9.png"
alt="{\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_l^{0+})"/> must be
-true for any <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>.
Note, however, that even if <a href="#equation-minkpm">(29)</a> is
+<img class="math"
src="_images/math/115d0c8d79504f6c87d4450c9a4ee1a547975603.png"
alt="{\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_l^{0+})"/> must be
+true for any <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>.
Note, however, that even if <a href="#equation-minkpm">(29)</a> is
nonempty, it may be that
-<img class="math"
src="_images/math/f420790dc001fa2c5fff0ee3086eb2c8d599bc3f.png"
alt="{\mathcal E}(0,Q_3)\not\subseteq{\mathcal E}(0,Q_l^{0-})"/>, then
+<img class="math"
src="_images/math/ced01a0be1703356a1c304b9dcd6602659f98bcc.png"
alt="{\mathcal E}(0,Q_3)\not\subseteq{\mathcal E}(0,Q_l^{0-})"/>, then
internal approximation for this direction does not exist.</p>
<p>Assuming that <a href="#equation-minkpm">(29)</a> is nonempty and
-<img class="math"
src="_images/math/46fc27c9ce4a42e7e55da298fd0f82a908f7f103.png"
alt="{\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_l^{0-})"/>, the second
+<img class="math"
src="_images/math/9e9eb20479917bf156e6ece3444e9e10808cd746.png"
alt="{\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_l^{0-})"/>, the second
step would be, using the results of section 2.2.3, to compute tight
external ellipsoidal approximation
-<img class="math"
src="_images/math/3ffc2f5a528c97c04ac8524e90272cdb242ce196.png"
alt="{\mathcal E}(q_1+q_2-q_3,Q_l^+)"/> of the difference
-<img class="math"
src="_images/math/68038150ae9c7e61ad5744981e022edbdca8b4f6.png"
alt="{\mathcal E}(q_1+q_2,Q_l^{0+})\dot{-}{\mathcal E}(q_3,Q_3)"/>,
-which exists only if <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>
is not bad, and tight internal
-ellipsoidal approximation <img class="math"
src="_images/math/261420092537a7308bd401582a05cc558a987142.png"
alt="{\mathcal E}(q_1+q_2-q_3,Q_l^-)"/> of the
+<img class="math"
src="_images/math/b4ab2d37cd71c2085dfdd815abc50b58c1af60a9.png"
alt="{\mathcal E}(q_1+q_2-q_3,Q_l^+)"/> of the difference
+<img class="math"
src="_images/math/9d730139aba40f16a2ae87cd422a82961adc37a3.png"
alt="{\mathcal E}(q_1+q_2,Q_l^{0+})\dot{-}{\mathcal E}(q_3,Q_3)"/>,
+which exists only if <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>
is not bad, and tight internal
+ellipsoidal approximation <img class="math"
src="_images/math/e783d1697adba4dd60784843a496f52cfac4c8a5.png"
alt="{\mathcal E}(q_1+q_2-q_3,Q_l^-)"/> of the
difference
-<img class="math"
src="_images/math/e35ccb2407ac3d3308fbf9889afc5d2193f76838.png"
alt="{\mathcal E}(q_1+q_2,Q_l^{0-})\dot{-}{\mathcal E}(q_3,Q_3)"/>,
-which exists only if <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>
is not bad for this difference.</p>
-<p>If approximation <img class="math"
src="_images/math/3ffc2f5a528c97c04ac8524e90272cdb242ce196.png"
alt="{\mathcal E}(q_1+q_2-q_3,Q_l^+)"/> exists, then</p>
+<img class="math"
src="_images/math/aaf86412a4593316afc3d7e7204cb0b7d597e937.png"
alt="{\mathcal E}(q_1+q_2,Q_l^{0-})\dot{-}{\mathcal E}(q_3,Q_3)"/>,
+which exists only if <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>
is not bad for this difference.</p>
+<p>If approximation <img class="math"
src="_images/math/b4ab2d37cd71c2085dfdd815abc50b58c1af60a9.png"
alt="{\mathcal E}(q_1+q_2-q_3,Q_l^+)"/> exists, then</p>
<div class="math">
-<p><img src="_images/math/0c1ba2d8e7e9ab0a8814a544dfc76904bdc2eced.png"
alt="{\mathcal E}(q_1,Q_1)\oplus{\mathcal E}(q_2,Q_2)\dot{-}{\mathcal
E}(q_3,Q_3) \subseteq
+<p><img src="_images/math/ae98709edcd46ff450b349547e2ce6a1355a0ec6.png"
alt="{\mathcal E}(q_1,Q_1)\oplus{\mathcal E}(q_2,Q_2)\dot{-}{\mathcal
E}(q_3,Q_3) \subseteq
{\mathcal E}(q_1+q_2-q_3,Q_l^+)"/></p>
</div><p>and</p>
<div class="math">
-<p><img src="_images/math/b7585008f0f54f5ccddb78aa4c40194c26db3520.png"
alt="\rho(\pm l ~|~ {\mathcal E}(q_1,Q_1)\oplus{\mathcal
E}(q_2,Q_2)\dot{-}{\mathcal E}(q_3,Q_3)) =
+<p><img src="_images/math/0e1f25bf6102e4ec989ea15d9ce977507cd4714a.png"
alt="\rho(\pm l ~|~ {\mathcal E}(q_1,Q_1)\oplus{\mathcal
E}(q_2,Q_2)\dot{-}{\mathcal E}(q_3,Q_3)) =
\rho(\pm l ~|~ {\mathcal E}(q_1+q_2-q_3,Q_l^+))."/></p>
-</div><p>If approximation <img class="math"
src="_images/math/261420092537a7308bd401582a05cc558a987142.png"
alt="{\mathcal E}(q_1+q_2-q_3,Q_l^-)"/> exists, then</p>
+</div><p>If approximation <img class="math"
src="_images/math/e783d1697adba4dd60784843a496f52cfac4c8a5.png"
alt="{\mathcal E}(q_1+q_2-q_3,Q_l^-)"/> exists, then</p>
<div class="math">
-<p><img src="_images/math/4b42ae8607e2e5fc7ff37a5d4ff33d4510998e80.png"
alt="{\mathcal E}(q_1+q_2-q_3,Q_l^-) \subseteq
+<p><img src="_images/math/1fe3a39a0b2e0bf8aac190ba136a46b01a8a9221.png"
alt="{\mathcal E}(q_1+q_2-q_3,Q_l^-) \subseteq
{\mathcal E}(q_1,Q_1)\oplus{\mathcal E}(q_2,Q_2)\dot{-}{\mathcal
E}(q_3,Q_3)"/></p>
</div><p>and</p>
<div class="math">
-<p><img src="_images/math/780adc0e33adf507a793ee814169a0c980d2f59f.png"
alt="\rho(\pm l ~|~{\mathcal E}(q_1+q_2-q_3,Q_l^-)) =
+<p><img src="_images/math/83244c50e28b40c854a5815beefa6c4a2dfa5bf6.png"
alt="\rho(\pm l ~|~{\mathcal E}(q_1+q_2-q_3,Q_l^-)) =
\rho(\pm l ~|~ {\mathcal E}(q_1,Q_1)\oplus{\mathcal
E}(q_2,Q_2)\dot{-}{\mathcal E}(q_3,Q_3)) ."/></p>
-</div><p>For any fixed direction <img class="math"
src="_images/math/9b25f8e64b484493fda944d25cad453423041fe6.png" alt="l"/>
it may be the case that neither
+</div><p>For any fixed direction <img class="math"
src="_images/math/d99efde75c84ef402a92cd4497530d2366fb112f.png" alt="l"/>
it may be the case that neither
external nor internal tight ellipsoidal approximations exist.</p>
</div>
<div class="section" id="intersection-of-ellipsoid-and-hyperplane">
<h3>Intersection of Ellipsoid and Hyperplane<a class="headerlink"
href="#intersection-of-ellipsoid-and-hyperplane" title="Permalink to this
headline">¶</a></h3>
-<p>Let nondegenerate ellipsoid <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/> and hyperplane
-<img class="math"
src="_images/math/bac0ae63aec09971dd9b5d57245fb790377c8e10.png"
alt="H(c,\gamma)"/> be such that
-<img class="math"
src="_images/math/960abeff20941af75ff673a99d0c9e44f84dde48.png" alt="{\bf
dist}({\mathcal E}(q,Q),H(c,\gamma))<0"/>. In other words,</p>
+<p>Let nondegenerate ellipsoid <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/> and hyperplane
+<img class="math"
src="_images/math/a8ccfc826288cb180dd6b82fe5641d1e17995bc5.png"
alt="H(c,\gamma)"/> be such that
+<img class="math"
src="_images/math/9c12c73c947d04884a142b271bf163be7fcd9aad.png" alt="{\bf
dist}({\mathcal E}(q,Q),H(c,\gamma))<0"/>. In other words,</p>
<div class="math">
-<p><img src="_images/math/34a288533d1fd5a236dd0b66e6f2609d964d7363.png"
alt="{\mathcal E}_H(w,W) = {\mathcal E}(q,Q)\cap H(c,\gamma) \neq
\emptyset ."/></p>
+<p><img src="_images/math/109a3eee108f08a6e24c71fbc15488ceeb815850.png"
alt="{\mathcal E}_H(w,W) = {\mathcal E}(q,Q)\cap H(c,\gamma) \neq
\emptyset ."/></p>
</div><p>The intersection of ellipsoid with hyperplane, if nonempty, is
always
an ellipsoid. Here we show how to find it.</p>
-<p>First of all, we transform the hyperplane <img class="math"
src="_images/math/bac0ae63aec09971dd9b5d57245fb790377c8e10.png"
alt="H(c,\gamma)"/> into
-<img class="math"
src="_images/math/538a531654c5a33f2dee65b42f2ceee1e7bcb093.png"
alt="H([1~0~\cdots~0]^T, 0)"/> by the affine transformation</p>
+<p>First of all, we transform the hyperplane <img class="math"
src="_images/math/a8ccfc826288cb180dd6b82fe5641d1e17995bc5.png"
alt="H(c,\gamma)"/> into
+<img class="math"
src="_images/math/ae2329fc5b2fffd5e099ee1533b1b8095cd2f6eb.png"
alt="H([1~0~\cdots~0]^T, 0)"/> by the affine transformation</p>
<div class="math">
-<p><img src="_images/math/d5bd0c58db744683f21ef68d1fa0b9f92f2362a2.png"
alt="y = Sx - \frac{\gamma}{\langle c,c\rangle^{1/2}}Sc,"/></p>
-</div><p>where <img class="math"
src="_images/math/ad28c83c99a8fd0dd2e2e594c9d02ee532765a0a.png" alt="S"/>
is an orthogonal matrix found by <a href="#equation-valign1">(20)</a>-<a
href="#equation-valign3">(22)</a>
-with <img class="math"
src="_images/math/c7e77feae9e86880d314fe3a51f4e851d78e25e9.png"
alt="v_1=c"/> and <img class="math"
src="_images/math/e2a4206b0fc420afa156e56f648b0700ce6fbf8e.png"
alt="v_2=[1~0~\cdots~0]^T"/>. The ellipsoid in
-the new coordinates becomes <img class="math"
src="_images/math/0833a0c6e7ed9439d370589e5c64e3f7b7359851.png"
alt="{\mathcal E}(q',Q')"/> with</p>
+<p><img src="_images/math/1060de0ffaf5eda187e34ce693a0a5ea2db50f91.png"
alt="y = Sx - \frac{\gamma}{\langle c,c\rangle^{1/2}}Sc,"/></p>
+</div><p>where <img class="math"
src="_images/math/11a85f3c69ae6702cb1d99d3de451913b8f84c04.png" alt="S"/>
is an orthogonal matrix found by <a href="#equation-valign1">(20)</a>-<a
href="#equation-valign3">(22)</a>
+with <img class="math"
src="_images/math/4beeb7ab5d5994930dec1da11b923028d8bdaa99.png"
alt="v_1=c"/> and <img class="math"
src="_images/math/cd79adafa969dbc6073abfe662255885da4e26f5.png"
alt="v_2=[1~0~\cdots~0]^T"/>. The ellipsoid in
+the new coordinates becomes <img class="math"
src="_images/math/21ab0350e27672ec2b27273aa2beaa21366fb67d.png"
alt="{\mathcal E}(q',Q')"/> with</p>
<div class="math">
-<p><img src="_images/math/9601bfdb03a243b97f39ab40b3979d6912c3798b.png"
alt="\begin{aligned}
+<p><img src="_images/math/62374b2eb8080f766f37ccb17ff027f4a6f24d48.png"
alt="\begin{aligned}
q' & = q-\frac{\gamma}{\langle c,c\rangle^{1/2}}Sc, \\
Q' & = SQS^T.\end{aligned}"/></p>
-</div><p>Define matrix <img class="math"
src="_images/math/b3911b40f8b909842d24b7d89020040d1afb8cbc.png"
alt="M=Q'^{-1}"/>; <img class="math"
src="_images/math/cacb608f7e428f64c8e4dbffdb5dd69848201f7c.png"
alt="m_{11}"/> is its element in
-position <img class="math"
src="_images/math/ae7a465ffe5255961382f5777569608be052b783.png"
alt="(1,1)"/>, <img class="math"
src="_images/math/7f98826dc08a1a0b01b31e030bba573e93beae08.png"
alt="\bar{m}"/> is the first column of <img class="math"
src="_images/math/5d1e4485dc90c450e8c76826516c1b2ccb8fce16.png" alt="M"/>
-without the first element, and <img class="math"
src="_images/math/dce332cba90a1411dc2b4411f6845273bdca8373.png"
alt="\bar{M}"/> is the submatrix of
-<img class="math"
src="_images/math/5d1e4485dc90c450e8c76826516c1b2ccb8fce16.png" alt="M"/>
obtained by stripping <img class="math"
src="_images/math/5d1e4485dc90c450e8c76826516c1b2ccb8fce16.png" alt="M"/>
of its first row and first
+</div><p>Define matrix <img class="math"
src="_images/math/a1a83016edd5e862d6d16fcd37ee66908d6621b7.png"
alt="M=Q'^{-1}"/>; <img class="math"
src="_images/math/2c755f416e40efd9d06ec33c6eb041116e3a3ff1.png"
alt="m_{11}"/> is its element in
+position <img class="math"
src="_images/math/2224c3a72eca6eaa7870c5e092348222014bb153.png"
alt="(1,1)"/>, <img class="math"
src="_images/math/c8f694e5827548999fd1c38a3e0d38d1743b994f.png"
alt="\bar{m}"/> is the first column of <img class="math"
src="_images/math/2de38926392ba23abeac75effc66c37a5f5be5fd.png" alt="M"/>
+without the first element, and <img class="math"
src="_images/math/1325767a854dfd2a501e82ac62e5d62488f4cc74.png"
alt="\bar{M}"/> is the submatrix of
+<img class="math"
src="_images/math/2de38926392ba23abeac75effc66c37a5f5be5fd.png" alt="M"/>
obtained by stripping <img class="math"
src="_images/math/2de38926392ba23abeac75effc66c37a5f5be5fd.png" alt="M"/>
of its first row and first
column:</p>
<div class="math">
-<p><img src="_images/math/190dd89a565e4cbf5e8f76193e5a86101c1457eb.png"
alt="M = \left[\begin{array}{c|cl}
+<p><img src="_images/math/981e90dfe6eae9e2420bffe5b152be7e7bde3173.png"
alt="M = \left[\begin{array}{c|cl}
m_{11} & & \bar{m}^T\\
& \\
\hline
& \\
\bar{m} & & \bar{M}\end{array}\right]."/></p>
</div><p>The ellipsoid resulting from the intersection is
-<img class="math"
src="_images/math/c3563f03f3e8adac231b8f2cf4b1662d62c5228f.png"
alt="{\mathcal E}_H(w',W')"/> with</p>
+<img class="math"
src="_images/math/da4e49f9befd1f120cc8dc4adbac090c563e7031.png"
alt="{\mathcal E}_H(w',W')"/> with</p>
<div class="math">
-<p><img src="_images/math/1f461c17d20992f2431d22c78516f852193d069a.png"
alt="\begin{aligned}
+<p><img src="_images/math/139c7174816a0c690a86fb833d28f0c0c73e3ea5.png"
alt="\begin{aligned}
w' & = q' + q_1'\left[\begin{array}{c}
-1\\
\bar{M}^{-1}\bar{m}\end{array}\right],\\
@@ -592,78 +592,78 @@
\hline
& \\
{\bf 0} & & \bar{M}^{-1}\end{array}\right],\end{aligned}"/></p>
-</div><p>in which <img class="math"
src="_images/math/73efdb7b737442181a9e072451110446ce984dfa.png"
alt="q_1'"/> represents the first element of vector <img class="math"
src="_images/math/af36faec8fe9f30065aa2bd1cc4c000f7efa1b7c.png"
alt="q'"/>.</p>
+</div><p>in which <img class="math"
src="_images/math/20f7cdcb9bac1b62159732381999f825baf679e8.png"
alt="q_1'"/> represents the first element of vector <img class="math"
src="_images/math/9849cb4e998bf90d819ab1701298eabf1cbae3df.png"
alt="q'"/>.</p>
<p>Finally, it remains to do the inverse transform of the coordinates to
-obtain ellipsoid <img class="math"
src="_images/math/be5c023aff92e6173fea63995f6a126af6e9a6cf.png"
alt="{\mathcal E}_H(w,W)"/>:</p>
+obtain ellipsoid <img class="math"
src="_images/math/9f64784dfadca48b3a0bacba7838aed0f9dcabf6.png"
alt="{\mathcal E}_H(w,W)"/>:</p>
<div class="math">
-<p><img src="_images/math/75e591e33f13cf53c53cdea8c00b0c4bb253bff2.png"
alt="\begin{aligned}
+<p><img src="_images/math/10c27682cc4fe3d8a20d23f01a1e42082c0706d0.png"
alt="\begin{aligned}
w & = S^Tw' + \frac{\gamma}{\langle c,c\rangle^{1/2}}c, \\
W & = S^TW'S.\end{aligned}"/></p>
</div></div>
<div class="section" id="intersection-of-ellipsoid-and-ellipsoid">
<h3>Intersection of Ellipsoid and Ellipsoid<a class="headerlink"
href="#intersection-of-ellipsoid-and-ellipsoid" title="Permalink to this
headline">¶</a></h3>
-<p>Given two nondegenerate ellipsoids <img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> and
-<img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/>,
-<img class="math"
src="_images/math/59fb99c011fcc8b05131f1db86a730a857b24961.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))<0"/>
+<p>Given two nondegenerate ellipsoids <img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> and
+<img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/>,
+<img class="math"
src="_images/math/1025d21f4eafed7016e7225337e90b2deef8e97b.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))<0"/>
implies that</p>
<div class="math">
-<p><img src="_images/math/9385b7a27e79a1d0b5dab8b1bcec110322a82b17.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2)\neq\emptyset ."/></p>
+<p><img src="_images/math/9e952b750eb806142f123ced8adc43d6f2451a17.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2)\neq\emptyset ."/></p>
</div><p>This intersection can be approximated by ellipsoids from the
outside
-and from the inside. Trivially, both <img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> and
-<img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/> are external approximations of this
+and from the inside. Trivially, both <img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> and
+<img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/> are external approximations of this
intersection. Here, however, we show how to find the external
ellipsoidal approximation of minimal volume.</p>
<p>Define matrices</p>
<div class="math">
-<p><img src="_images/math/75f514382b9b7715453564228efdd3c918a6bf58.png"
alt="W_1 = Q_1^{-1}, ~~~~ W_2 = Q_2^{-1} .\label{wmatrices}"/></p>
+<p><img src="_images/math/029d5ea652aaf757d489c3bd6e54681466f646d9.png"
alt="W_1 = Q_1^{-1}, ~~~~ W_2 = Q_2^{-1} .\label{wmatrices}"/></p>
</div><p>Minimal volume external ellipsoidal approximation
-<img class="math"
src="_images/math/6f3fb6a018d954f619ca08b95ca2b8feb7fe23a0.png"
alt="{\mathcal E}(q+,Q^+)"/> of the intersection
-<img class="math"
src="_images/math/03d373897663dd503f63646a563bb94f9100dd33.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2)"/> is determined
+<img class="math"
src="_images/math/8d116bad281fd2c9a8692c7561f32e0b10a2ffd2.png"
alt="{\mathcal E}(q+,Q^+)"/> of the intersection
+<img class="math"
src="_images/math/174f3aecc67e47f6c6a182cf4f8707b06dca848b.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2)"/> is determined
from the set of equations:</p>
<div class="math" id="equation-fusion1">
-<p><span class="eqno">(30)</span><img
src="_images/math/90c47ab0eb5d1569efb1a2200ed641c1adc18c58.png" alt="Q^+ =
\alpha X^{-1}, \\"/></p>
+<p><span class="eqno">(30)</span><img
src="_images/math/357b41d0064ab303ce70c0859591934e768f89e9.png" alt="Q^+ =
\alpha X^{-1}, \\"/></p>
</div><div class="math" id="equation-fusion2">
-<p><span class="eqno">(31)</span><img
src="_images/math/91872ea2c902eca556ed0ffc7accdb731bcb3bcd.png" alt="X =
\pi W_1 + (1-\pi)W_2,\\"/></p>
+<p><span class="eqno">(31)</span><img
src="_images/math/9cf07707f7df32a67b493097e344a6c717949a48.png" alt="X =
\pi W_1 + (1-\pi)W_2,\\"/></p>
</div><div class="math" id="equation-fusion3">
-<p><span class="eqno">(32)</span><img
src="_images/math/164e4f04a283b442e239bdefd09ff5f9beb3f089.png"
alt="\alpha = 1-\pi(1-\pi)\langle(q_2-q_1), W_2X^{-1}W_1(q_2-q_1)\rangle,
\\"/></p>
+<p><span class="eqno">(32)</span><img
src="_images/math/570bfa568a0c73f3e238a132b67f1344cbc9dd16.png"
alt="\alpha = 1-\pi(1-\pi)\langle(q_2-q_1), W_2X^{-1}W_1(q_2-q_1)\rangle,
\\"/></p>
</div><div class="math" id="equation-fusion4">
-<p><span class="eqno">(33)</span><img
src="_images/math/dd793f4a85c802cf2686d6478cbdae7840742456.png" alt="q^+ =
X^{-1}(\pi W_1q_1 + (1-\pi)W_2q_2), \\"/></p>
+<p><span class="eqno">(33)</span><img
src="_images/math/e51701e079720be1ccbb4a657ce9098ebb14df8b.png" alt="q^+ =
X^{-1}(\pi W_1q_1 + (1-\pi)W_2q_2), \\"/></p>
</div><div class="math" id="equation-fusion5">
-<p><span class="eqno">(34)</span><img
src="_images/math/36a8e498ac3c5202f5ff3f1b6d178f033dc64ad9.png" alt="0
&= \alpha({\bf det}(X))^2{\bf trace}(X^{-1}(W_1-W_2)) - {}\\
+<p><span class="eqno">(34)</span><img
src="_images/math/398b21e7c43a78c24f2571c62fedf4cbd6db7e55.png" alt="0
&= \alpha({\bf det}(X))^2{\bf trace}(X^{-1}(W_1-W_2)) - {}\\
&- n({\bf det}(X))^2 (2\langle q^+,W_1q_1-W_2q_2\rangle + \langle
q^+,(W_2-W_1)q^+\rangle - {}\\
&- \langle q_1,W_1q_1\rangle + \langle q_2,W_2q_2\rangle),"/></p>
-</div><p>with <img class="math"
src="_images/math/588e5eb4a0e6e811eb3e3d5e84dc5d22d0b0d225.png"
alt="0\leqslant\pi\leqslant1"/>. We substitute <img class="math"
src="_images/math/6a47ca0fe7cb276abc022af6ac88ddae1a9d6894.png" alt="X"/>,
-<img class="math"
src="_images/math/10f32377ac67d94f764f12a15ea987e88c85d3e1.png"
alt="\alpha"/>, <img class="math"
src="_images/math/8115a6cdfb5aa5187072882f9e19d0bdcb60fc66.png" alt="q^+"/>
defined in <a href="#equation-fusion2">(31)</a>-<a
href="#equation-fusion4">(33)</a> into
-<a href="#equation-fusion5">(34)</a> and get a polynomial of degree <img
class="math"
src="_images/math/2f9a96c63183be91b9fe70e6e16dfa4bfec6f3da.png"
alt="2n-1"/> with respect to
-<img class="math"
src="_images/math/f2ca003a7da0de4994b4733e203b74ff52d42553.png"
alt="\pi"/>, which has only one root in the interval <img class="math"
src="_images/math/e861e10e1c19918756b9c8b7717684593c63aeb8.png"
alt="[0,1]"/>,
-<img class="math"
src="_images/math/26b68eda95285a191312843b6a5c617bfb56220e.png"
alt="\pi_0"/>. Then, substituting <img class="math"
src="_images/math/0443fdfcf3f8d39e7187581b56ae165eaaffdb25.png"
alt="\pi=\pi_0"/> into
-<a href="#equation-fusion1">(30)</a>-<a href="#equation-fusion4">(33)</a>,
we obtain <img class="math"
src="_images/math/8115a6cdfb5aa5187072882f9e19d0bdcb60fc66.png" alt="q^+"/>
and <img class="math"
src="_images/math/3c23a630bf907d9d794d0c6b9aef29782abf3bac.png"
alt="Q^+"/>. Special
-cases are <img class="math"
src="_images/math/03b577d315bafcc0368eb1f51b7e4cac353890bf.png"
alt="\pi_0=1"/>, whence
-<img class="math"
src="_images/math/2ede8b370de23b72578537a377e45c50a826172d.png"
alt="{\mathcal E}(q^+,Q^+)={\mathcal E}(q_1,Q_1)"/>, and
-<img class="math"
src="_images/math/8617810f9ac8ba407326425156df072f64474881.png"
alt="\pi_0=0"/>, whence
-<img class="math"
src="_images/math/0543ddabd0acb31d7afa2a83df88031794f1782a.png"
alt="{\mathcal E}(q^+,Q^+)={\mathcal E}(q_2,Q_2)"/>. These situations
+</div><p>with <img class="math"
src="_images/math/f6b1400a5974e3d3695e068296807aef84aa22cb.png"
alt="0\leqslant\pi\leqslant1"/>. We substitute <img class="math"
src="_images/math/f026aecf11ec7f6141ab863f260d395f94b10f51.png" alt="X"/>,
+<img class="math"
src="_images/math/ad59b6e24a4a00ac621801f8d7513d68be654ab5.png"
alt="\alpha"/>, <img class="math"
src="_images/math/990a03f830fbfed8b316e9ddd88262b20c2a47a9.png" alt="q^+"/>
defined in <a href="#equation-fusion2">(31)</a>-<a
href="#equation-fusion4">(33)</a> into
+<a href="#equation-fusion5">(34)</a> and get a polynomial of degree <img
class="math"
src="_images/math/b60db2fb95259ea0fb2b6e6d69616602b979e639.png"
alt="2n-1"/> with respect to
+<img class="math"
src="_images/math/c1bd4cb4e3647c6b2356b7ccf2f52aeffedd1b61.png"
alt="\pi"/>, which has only one root in the interval <img class="math"
src="_images/math/ac2b83372f7b9e806a2486507ed051a8f0cab795.png"
alt="[0,1]"/>,
+<img class="math"
src="_images/math/c0ec782917c16614c1e51e159b0c7aeddbc2173a.png"
alt="\pi_0"/>. Then, substituting <img class="math"
src="_images/math/4acce9a9b17ed3f162f8fad609b4f455d036cd30.png"
alt="\pi=\pi_0"/> into
+<a href="#equation-fusion1">(30)</a>-<a href="#equation-fusion4">(33)</a>,
we obtain <img class="math"
src="_images/math/990a03f830fbfed8b316e9ddd88262b20c2a47a9.png" alt="q^+"/>
and <img class="math"
src="_images/math/8ac2eaaeee3680f161e55aaa91a9ed5399a32fc5.png"
alt="Q^+"/>. Special
+cases are <img class="math"
src="_images/math/68fcbf2170b8d45058f0ed4d54c3d37e68b62020.png"
alt="\pi_0=1"/>, whence
+<img class="math"
src="_images/math/062eb4d68b9e7e177847f19bebfe665399ae7e4f.png"
alt="{\mathcal E}(q^+,Q^+)={\mathcal E}(q_1,Q_1)"/>, and
+<img class="math"
src="_images/math/f9a7c7a385f297c87bd09173daca3c38c3964065.png"
alt="\pi_0=0"/>, whence
+<img class="math"
src="_images/math/aff1f37d80a85075336db4b0bd48fe65c92389bf.png"
alt="{\mathcal E}(q^+,Q^+)={\mathcal E}(q_2,Q_2)"/>. These situations
may occur if, for example, one ellipsoid is contained in the other:</p>
<div class="math">
-<p><img src="_images/math/ec4e1b80a56dd9005e2bc69462cd5ed53390d5a9.png"
alt="{\mathcal E}(q_1,Q_1)\subseteq{\mathcal E}(q_2,Q_2) & \Rightarrow
\pi_0 = 1,\\
+<p><img src="_images/math/f3cdb1e8131b4e3de532b5478bacc6ca38bea8e9.png"
alt="{\mathcal E}(q_1,Q_1)\subseteq{\mathcal E}(q_2,Q_2) & \Rightarrow
\pi_0 = 1,\\
{\mathcal E}(q_2,Q_2)\subseteq{\mathcal E}(q_1,Q_1) & \Rightarrow
\pi_0 = 0."/></p>
</div><p>The proof that the system of equations <a
href="#equation-fusion1">(30)</a>-<a href="#equation-fusion5">(34)</a>
correctly
defines the minimal volume external ellipsoidal approximationi of the
-intersection <img class="math"
src="_images/math/03d373897663dd503f63646a563bb94f9100dd33.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2)"/> is
+intersection <img class="math"
src="_images/math/174f3aecc67e47f6c6a182cf4f8707b06dca848b.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2)"/> is
given in <a class="reference internal" href="#ros2002"
id="id6">[ROS2002]</a>.</p>
<p>To find the internal approximating ellipsoid
-<img class="math"
src="_images/math/144f9fdd80aca5fb8d72791d188b3726506cb213.png"
alt="{\mathcal E}(q^-,Q^-)\subseteq{\mathcal E}(q_1,Q_1)\cap{\mathcal
E}(q_2,Q_2)"/>,
+<img class="math"
src="_images/math/be65ecc9958630893eaa1d967422669b75241c9c.png"
alt="{\mathcal E}(q^-,Q^-)\subseteq{\mathcal E}(q_1,Q_1)\cap{\mathcal
E}(q_2,Q_2)"/>,
define</p>
<div class="math" id="equation-beta1">
-<p><span class="eqno">(35)</span><img
src="_images/math/c192001b77e5c23e7cb3542269ac22c480bcf6e5.png"
alt="\beta_1 = \min_{\langle x,W_2x\rangle=1}\langle x,W_1x\rangle,"/></p>
+<p><span class="eqno">(35)</span><img
src="_images/math/accbb314e11e13937385a22415861edd3c53514d.png"
alt="\beta_1 = \min_{\langle x,W_2x\rangle=1}\langle x,W_1x\rangle,"/></p>
</div><div class="math" id="equation-beta2">
-<p><span class="eqno">(36)</span><img
src="_images/math/3a46c9290c97fc06adac11c8033700dea5e4850b.png"
alt="\beta_2 = \min_{\langle x,W_1x\rangle=1}\langle x,W_2x\rangle,"/></p>
+<p><span class="eqno">(36)</span><img
src="_images/math/743876c5387c924b114837bee0507d50c66b260c.png"
alt="\beta_2 = \min_{\langle x,W_1x\rangle=1}\langle x,W_2x\rangle,"/></p>
</div><p>Notice that <a href="#equation-beta1">(35)</a> and <a
href="#equation-beta2">(36)</a> are QCQP problems. Parameters
-<img class="math"
src="_images/math/8aae8c9070619089c2670823feb61568c0b3b625.png"
alt="\beta_1"/> and <img class="math"
src="_images/math/dbf1237726889bb1c003a859c455ede1e20e5381.png"
alt="\beta_2"/> are invariant with respect to affine
+<img class="math"
src="_images/math/85f75b55a5aec0d92fdacc5e2c14fb8f557150de.png"
alt="\beta_1"/> and <img class="math"
src="_images/math/fa363d674f37983943b5bf917b5c46baa6d1b900.png"
alt="\beta_2"/> are invariant with respect to affine
coordinate transformation and describe the position of ellipsoids
-<img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/>, <img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/> with
+<img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/>, <img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/> with
respect to each other:</p>
<div class="math">
-<p><img src="_images/math/7c03a765cb1b25fd1f45a4c98464a5aa055ea900.png"
alt="\beta_1\geqslant1,~\beta_2\geqslant1 & \Rightarrow
+<p><img src="_images/math/64f6354c39a5410cb5c7c41b6a19b39cccb4c0ca.png"
alt="\beta_1\geqslant1,~\beta_2\geqslant1 & \Rightarrow
{\bf int}({\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2))=\emptyset, \\
\beta_1\geqslant1,~\beta_2\leqslant1 & \Rightarrow {\mathcal
E}(q_1,Q_1)\subseteq{\mathcal E}(q_2,Q_2), \\
@@ -677,40 +677,40 @@
&\mbox{and} ~ {\mathcal E}(q_2,Q_2)\not\subseteq{\mathcal
E}(q_1,Q_1)."/></p>
</div><p>Define parametrized family of internal ellipsoids
-<img class="math"
src="_images/math/a0552947ec005fb9471cf25cf3b187b67e0bba1a.png"
alt="{\mathcal E}(q^-_{\theta_1\theta_2},Q^-_{\theta_1\theta_2})"/> with</p>
+<img class="math"
src="_images/math/1239589f1345ebff4b42418cdc805046a99cdc99.png"
alt="{\mathcal E}(q^-_{\theta_1\theta_2},Q^-_{\theta_1\theta_2})"/> with</p>
<div class="math" id="equation-paramell1">
-<p><span class="eqno">(37)</span><img
src="_images/math/8d07b42c9c1ca1027172d899fb54a1040e7beebe.png"
alt="q^-_{\theta_1\theta_2} = (\theta_1W_1 +
+<p><span class="eqno">(37)</span><img
src="_images/math/bda02e3bfe3daef86d1b384d850455c20b4fbce1.png"
alt="q^-_{\theta_1\theta_2} = (\theta_1W_1 +
\theta_2W_2)^{-1}(\theta_1W_1q_1 + \theta_2W_2q_2),\\"/></p>
</div><div class="math" id="equation-paramell2">
-<p><span class="eqno">(38)</span><img
src="_images/math/77fb22f46390ba2708d754c801dddc44659f7fbb.png"
alt="Q^-_{\theta_1\theta_2} = (1 - \theta_1\langle q_1,W_1q_1\rangle -
+<p><span class="eqno">(38)</span><img
src="_images/math/1f38197f10fa977da58eb6ea3636f7d3dca9fbf4.png"
alt="Q^-_{\theta_1\theta_2} = (1 - \theta_1\langle q_1,W_1q_1\rangle -
\theta_2\langle q_2,W_2q_2\rangle +
\langle q^-_{\theta_1\theta_2},(Q^-)^{-1}q^-_{\theta_1\theta_2}\rangle)
(\theta_1W_1 + \theta_2W_2)^{-1} ."/></p>
</div><p>The best internal ellipsoid
-<img class="math"
src="_images/math/cd24775d43d17ae8df736ba8d1aa6785677f4b10.png"
alt="{\mathcal
E}(q^-_{\hat{\theta}_1\hat{\theta}_2},Q^-_{\hat{\theta}_1\hat{\theta}_2})"/>
+<img class="math"
src="_images/math/52113dc4e8b4ac42a0f5fdb61f8db71c814cb94a.png"
alt="{\mathcal
E}(q^-_{\hat{\theta}_1\hat{\theta}_2},Q^-_{\hat{\theta}_1\hat{\theta}_2})"/>
in the class <a href="#equation-paramell1">(37)</a>-<a
href="#equation-paramell2">(38)</a>, namely, such that</p>
<div class="math">
-<p><img src="_images/math/398e36e334b245dd32ad477be68a32ebd5698d1a.png"
alt="{\mathcal
E}(q^-_{{\theta}_1{\theta}_2},Q^-_{{\theta}_1{\theta}_2})\subseteq
+<p><img src="_images/math/876cb2c2b5f0ac2fa05d381227f3fd89ccc1b289.png"
alt="{\mathcal
E}(q^-_{{\theta}_1{\theta}_2},Q^-_{{\theta}_1{\theta}_2})\subseteq
{\mathcal
E}(q^-_{\hat{\theta}_1\hat{\theta}_2},Q^-_{\hat{\theta}_1\hat{\theta}_2})
\subseteq {\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2)"/></p>
-</div><p>for all <img class="math"
src="_images/math/bfe434b73c33d8d1d4c7103cd85b59cad839b346.png"
alt="0\leqslant\theta_1,\theta_2\leqslant1"/>, is specified by
+</div><p>for all <img class="math"
src="_images/math/b597b25aa5f7047029febf18178105d26f130210.png"
alt="0\leqslant\theta_1,\theta_2\leqslant1"/>, is specified by
the parameters</p>
<div class="math" id="equation-thetapar">
-<p><span class="eqno">(39)</span><img
src="_images/math/c385e2f68f0a5bbaaccf181e3ed8d8ad860627ea.png"
alt="\hat{\theta}_1 = \frac{1-\hat{\beta}_2}{1-\hat{\beta}_1\hat{\beta}_2},
~~~~
+<p><span class="eqno">(39)</span><img
src="_images/math/45212e8106022a380917f8ade9931e24f925f761.png"
alt="\hat{\theta}_1 = \frac{1-\hat{\beta}_2}{1-\hat{\beta}_1\hat{\beta}_2},
~~~~
\hat{\theta}_2 =
\frac{1-\hat{\beta}_1}{1-\hat{\beta}_1\hat{\beta}_2},"/></p>
</div><p>with</p>
<div class="math">
-<p><img src="_images/math/fa8d62c5c25dddb9f5ee0f2d640ac3bc21690f38.png"
alt="\hat{\beta}_1=\min(1,\beta_1), ~~~~
\hat{\beta}_2=\min(1,\beta_2)."/></p>
+<p><img src="_images/math/f26d7d6668bf3da165062b44263d2b49360da180.png"
alt="\hat{\beta}_1=\min(1,\beta_1), ~~~~
\hat{\beta}_2=\min(1,\beta_2)."/></p>
</div><p>It is the ellipsoid that we look for:
-<img class="math"
src="_images/math/d49118ee57fdc9d8e6ebf39c7d488a9db8e3bf78.png"
alt="{\mathcal E}(q^-,Q^-)={\mathcal
E}(q^-_{\hat{\theta}_1\hat{\theta}_2},Q^-_{\hat{\theta}_1\hat{\theta}_2})"/>.
+<img class="math"
src="_images/math/f8c23fd750549f2fd6581d258519b77f9580d9fa.png"
alt="{\mathcal E}(q^-,Q^-)={\mathcal
E}(q^-_{\hat{\theta}_1\hat{\theta}_2},Q^-_{\hat{\theta}_1\hat{\theta}_2})"/>.
Two special cases are</p>
<div class="math">
-<p><img src="_images/math/de3147d93dbea5a33a7a66c8ba2d0049c92a5b96.png"
alt="\hat{\theta}_1=1, ~ \hat{\theta}_2=0 ~~~ \Rightarrow ~~~
+<p><img src="_images/math/f7758f9fd6da84c0316903bab5af8e580aed2113.png"
alt="\hat{\theta}_1=1, ~ \hat{\theta}_2=0 ~~~ \Rightarrow ~~~
{\mathcal E}(q_1,Q_1)\subseteq{\mathcal E}(q_2,Q_2) ~~~ \Rightarrow ~~~
{\mathcal E}(q^-,Q^-)={\mathcal E}(q_1,Q_1),"/></p>
</div><p>and</p>
<div class="math">
-<p><img src="_images/math/68294c7e975e126209c40f7ba4d3a9ce58040947.png"
alt="\hat{\theta}_1=0, ~ \hat{\theta}_2=1 ~~~ \Rightarrow ~~~
+<p><img src="_images/math/78570ac279262b3d8170c11c31b9092ae789edf9.png"
alt="\hat{\theta}_1=0, ~ \hat{\theta}_2=1 ~~~ \Rightarrow ~~~
{\mathcal E}(q_2,Q_2)\subseteq{\mathcal E}(q_1,Q_1) ~~~ \Rightarrow ~~~
{\mathcal E}(q^-,Q^-)={\mathcal E}(q_2,Q_2)."/></p>
</div><p>The method of finding the internal ellipsoidal approximation of
the
@@ -720,59 +720,59 @@
<h3>Intersection of Ellipsoid and Halfspace<a class="headerlink"
href="#intersection-of-ellipsoid-and-halfspace" title="Permalink to this
headline">¶</a></h3>
<p>Finding the intersection of ellipsoid and halfspace can be reduced to
finding the intersection of two ellipsoids, one of which is unbounded.
-Let <img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> be a nondegenerate ellipsoid and let
-<img class="math"
src="_images/math/bac0ae63aec09971dd9b5d57245fb790377c8e10.png"
alt="H(c,\gamma)"/> define the halfspace</p>
+Let <img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> be a nondegenerate ellipsoid and let
+<img class="math"
src="_images/math/a8ccfc826288cb180dd6b82fe5641d1e17995bc5.png"
alt="H(c,\gamma)"/> define the halfspace</p>
<div class="math">
-<p><img src="_images/math/91b75e4a78ee85720d81e8fa008b7a8dab883f70.png"
alt="{\bf S}(c,\gamma) = \{x\in{\bf R}^n ~|~ \langle
c,x\rangle\leqslant\gamma\}."/></p>
+<p><img src="_images/math/613c4fa860806b7da4883a1a2bf8daa9c945393f.png"
alt="{\bf S}(c,\gamma) = \{x\in{\bf R}^n ~|~ \langle
c,x\rangle\leqslant\gamma\}."/></p>
</div><p>We have to determine if the intersection
-<img class="math"
src="_images/math/66b423e5f770dd427e5f2d899c1ccc04ae72a34a.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\bf S}(c,\gamma)"/> is empty, and if not,
+<img class="math"
src="_images/math/e9c771fe53852b868ee50069a3218f10bcfad8ab.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\bf S}(c,\gamma)"/> is empty, and if not,
find its external and internal ellipsoidal approximations,
-<img class="math"
src="_images/math/c6ac73b524d3caadd8af57a8f7f97ed9de81a50b.png"
alt="{\mathcal E}(q^+,Q^+)"/> and <img class="math"
src="_images/math/61e19923678e2b76cc85e1c8ffaba981335809bf.png"
alt="{\mathcal E}(q^-,Q^-)"/>. Two
+<img class="math"
src="_images/math/d5641e2dce15358259a8a844d399c1c5fedc982c.png"
alt="{\mathcal E}(q^+,Q^+)"/> and <img class="math"
src="_images/math/c6117274906631a9a45aa033bcd5cf2806a689d1.png"
alt="{\mathcal E}(q^-,Q^-)"/>. Two
trivial situations are:</p>
<ul class="simple">
-<li><img class="math"
src="_images/math/336e0eb12c2ce5a4cac6474f53150500c6617aa7.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),H(c,\gamma))>0"/> and
-<img class="math"
src="_images/math/5f43a190337d6c722ea7016c86ea7816ddfff121.png"
alt="\langle c, q_1\rangle>0"/>, which implies that
-<img class="math"
src="_images/math/8aaee947e622b026b5b4bd96c21a040e2691d56a.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\bf S}(c,\gamma)=\emptyset"/>;</li>
-<li><img class="math"
src="_images/math/336e0eb12c2ce5a4cac6474f53150500c6617aa7.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),H(c,\gamma))>0"/> and
-<img class="math"
src="_images/math/8f7c265901ac9e9111bf38630048c160c51aeb96.png"
alt="\langle c, q_1\rangle<0"/>, so that
-<img class="math"
src="_images/math/e1ce5f2fe06e7d9e7623337c1b7e0b94c9ba7cff.png"
alt="{\mathcal E}(q_1,Q_1)\subseteq{\bf S}(c,\gamma)"/>, and then
-<img class="math"
src="_images/math/7cd9b45854804578b3e112d6e7f61619c7d54ed8.png"
alt="{\mathcal E}(q^+,Q^+)={\mathcal E}(q^-,Q^-)={\mathcal
E}(q_1,Q_1)"/>.</li>
+<li><img class="math"
src="_images/math/5b351b7bdddfb1b9a6d531ecf2839ebbab1b0983.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),H(c,\gamma))>0"/> and
+<img class="math"
src="_images/math/6e7fb166eaa75af79ff4b6963b8a4a48322cc5bd.png"
alt="\langle c, q_1\rangle>0"/>, which implies that
+<img class="math"
src="_images/math/7538e7ba23a99496f843fb955a401cf5b24b3fdc.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\bf S}(c,\gamma)=\emptyset"/>;</li>
+<li><img class="math"
src="_images/math/5b351b7bdddfb1b9a6d531ecf2839ebbab1b0983.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),H(c,\gamma))>0"/> and
+<img class="math"
src="_images/math/a130f8baeb477f96cfab40c36da4ca8be432fd37.png"
alt="\langle c, q_1\rangle<0"/>, so that
+<img class="math"
src="_images/math/2f387a082a75c3233ae98a9c03c6785dcbb4adeb.png"
alt="{\mathcal E}(q_1,Q_1)\subseteq{\bf S}(c,\gamma)"/>, and then
+<img class="math"
src="_images/math/b0f88e2ca863bd7bdf37d16370064f0d97c5269e.png"
alt="{\mathcal E}(q^+,Q^+)={\mathcal E}(q^-,Q^-)={\mathcal
E}(q_1,Q_1)"/>.</li>
</ul>
-<p>In case <img class="math"
src="_images/math/21a19a28bf0b23176729cb9d9d3f40a7ac48f227.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),H(c,\gamma)<0"/>, i.e. the
+<p>In case <img class="math"
src="_images/math/661ee0512e34c8ad118c22696f6c69d6973c20b1.png" alt="{\bf
dist}({\mathcal E}(q_1,Q_1),H(c,\gamma)<0"/>, i.e. the
ellipsoid intersects the hyperplane,</p>
<div class="math">
-<p><img src="_images/math/745d68164fa2b0732fedd3aa49318c109db6050a.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\bf S}(c,\gamma) =
+<p><img src="_images/math/52db00a2e188c06e68ceb37c6c82fa2984671702.png"
alt="{\mathcal E}(q_1,Q_1)\cap{\bf S}(c,\gamma) =
{\mathcal E}(q_1,Q_1)\cap\{x ~|~ \langle
(x-q_2),W_2(x-q_2)\rangle\leqslant1\},"/></p>
</div><p>with</p>
<div class="math" id="equation-hsell1">
-<p><span class="eqno">(40)</span><img
src="_images/math/f1e9a53a34c33b6aa1c85b8e0fc10c33805f5e2e.png" alt="q_2
= (\gamma + 2\sqrt{\overline{\lambda}})c,\\"/></p>
+<p><span class="eqno">(40)</span><img
src="_images/math/dc32cafd08aef2f4d28ec4ffe405db6d6c8c0429.png" alt="q_2
= (\gamma + 2\sqrt{\overline{\lambda}})c,\\"/></p>
</div><div class="math" id="equation-hsell2">
-<p><span class="eqno">(41)</span><img
src="_images/math/f4af9cd50f7750a588ea3c8277156dd7566a1cfa.png" alt="W_2
= \frac{1}{4\overline{\lambda}}cc^T,"/></p>
-</div><p><img class="math"
src="_images/math/efaa2f210aa07e2e2a4863aadd9b250c31529351.png"
alt="\overline{\lambda}"/> being the biggest eigenvalue of matrix
-<img class="math"
src="_images/math/c16e423c8f499e0bef8c20078b04126aeb9417bc.png"
alt="Q_1"/>. After defining <img class="math"
src="_images/math/178adf4675bee5fd8085466794690641a4899025.png"
alt="W_1=Q_1^{-1}"/>, we obtain
-<img class="math"
src="_images/math/c6ac73b524d3caadd8af57a8f7f97ed9de81a50b.png"
alt="{\mathcal E}(q^+,Q^+)"/> from equations <a
href="#equation-fusion1">(30)</a>-<a href="#equation-fusion5">(34)</a>, and
-<img class="math"
src="_images/math/61e19923678e2b76cc85e1c8ffaba981335809bf.png"
alt="{\mathcal E}(q^-,Q^-)"/> from <a
href="#equation-paramell1">(37)</a>-<a href="#equation-paramell2">(38)</a>,
+<p><span class="eqno">(41)</span><img
src="_images/math/1cec244a29e9526a78f670f61ba9604869cb5049.png" alt="W_2
= \frac{1}{4\overline{\lambda}}cc^T,"/></p>
+</div><p><img class="math"
src="_images/math/55850eba294c2eefb5bd69c24b40b7673aaa54ec.png"
alt="\overline{\lambda}"/> being the biggest eigenvalue of matrix
+<img class="math"
src="_images/math/19a1de5cbb69a1661b424bd7e4ded7ab06e5962c.png"
alt="Q_1"/>. After defining <img class="math"
src="_images/math/18b19ee21cc183503d1b64debd5820d3b9cd49f7.png"
alt="W_1=Q_1^{-1}"/>, we obtain
+<img class="math"
src="_images/math/d5641e2dce15358259a8a844d399c1c5fedc982c.png"
alt="{\mathcal E}(q^+,Q^+)"/> from equations <a
href="#equation-fusion1">(30)</a>-<a href="#equation-fusion5">(34)</a>, and
+<img class="math"
src="_images/math/c6117274906631a9a45aa033bcd5cf2806a689d1.png"
alt="{\mathcal E}(q^-,Q^-)"/> from <a
href="#equation-paramell1">(37)</a>-<a href="#equation-paramell2">(38)</a>,
<a href="#equation-thetapar">(39)</a>.</p>
-<p><strong>Remark.</strong> Notice that matrix <img class="math"
src="_images/math/fe6a61c0adf995408d4c70c51d35f9798bc472c6.png" alt="W_2"/>
has rank <img class="math"
src="_images/math/dce34f4dfb2406144304ad0d6106c5382ddd1446.png" alt="1"/>,
which
-makes it singular for <img class="math"
src="_images/math/65262bf247c4a3c6114a8223d249dc9702619d3e.png"
alt="n>1"/>. Nevertheless, expressions
***The diff for this file has been truncated for email.***
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/chap_examples.html Fri
Nov 22 16:39:07 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/chap_examples.html Mon
Feb 24 20:40:31 2014 UTC
@@ -24,7 +24,7 @@
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="top" title="Ellipsoidal Toolbox 2.0 beta 1 documentation"
href="index.html" />
- <link rel="next" title="Summary and Outlook" href="chap_summary.html"
/>
+ <link rel="next" title="Ellipsoid tubes and touching curves"
href="chap_ellTube.html" />
<link rel="prev" title="Implementation" href="chap_implement.html" />
</head>
<body>
@@ -35,7 +35,7 @@
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
- <a href="chap_summary.html" title="Summary and Outlook"
+ <a href="chap_ellTube.html" title="Ellipsoid tubes and touching
curves"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="chap_implement.html" title="Implementation"
@@ -59,7 +59,7 @@
ellipsoidal methods may be more effective than using polytopes.</p>
<p>Consider the system from chapter 1:</p>
<div class="math">
-<p><img src="_images/math/4090d8946cb2d40c56850493d12c829d394a52ef.png"
alt="\left[\begin{array}{c}
+<p><img src="_images/math/78ffeb6954426d066403b59bf72312fef4159515.png"
alt="\left[\begin{array}{c}
x_1[k+1]\\
x_2[k+1]\end{array}\right] = \left[\begin{array}{cc}
\cos(1) & \sin(1)\\
@@ -68,23 +68,23 @@
x_2[k]\end{array}\right] + \left[\begin{array}{c}\
u_1[k]\\
u_2[k]\end{array}\right], ~~~ x[0]\in{\mathcal X}_0, ~~~ u[k]\in U, ~~~
k\geqslant0,"/></p>
-</div><p>where <img class="math"
src="_images/math/058cc043eb5c4750bfba163d5014ba4a2911b20c.png"
alt="{\mathcal X}_0"/> is the set of initial conditions, and
-<img class="math"
src="_images/math/e2bbebb3bd73f1ae5c64098ab0244f739abf7ca4.png" alt="U"/>
is the control set.</p>
+</div><p>where <img class="math"
src="_images/math/1eae27d722cf74685b3dab099d6e0089009498ce.png"
alt="{\mathcal X}_0"/> is the set of initial conditions, and
+<img class="math"
src="_images/math/73f5e249c88b2b3068263480f576b051cb5c4f6e.png" alt="U"/>
is the control set.</p>
<div class="figure" id="ellpolyfig">
<a class="reference internal image-reference"
href="_images/chapter06_section01_ellpoly.png"><img alt="ellpoly"
src="_images/chapter06_section01_ellpoly.png" style="width: 50%;" /></a>
<p class="caption">Figure 1: Reach set computation performance
comparison.</p>
</div>
-<p>Let <img class="math"
src="_images/math/058cc043eb5c4750bfba163d5014ba4a2911b20c.png"
alt="{\mathcal X}_0"/> and <img class="math"
src="_images/math/e2bbebb3bd73f1ae5c64098ab0244f739abf7ca4.png" alt="U"/>
be unit boxes in
-<img class="math"
src="_images/math/bb5fa23edd2754dda88386b5c2f48e26b6d994da.png" alt="{\bf
R}^2"/>, and compute the reach set using the polytope method
+<p>Let <img class="math"
src="_images/math/1eae27d722cf74685b3dab099d6e0089009498ce.png"
alt="{\mathcal X}_0"/> and <img class="math"
src="_images/math/73f5e249c88b2b3068263480f576b051cb5c4f6e.png" alt="U"/>
be unit boxes in
+<img class="math"
src="_images/math/0798dced39715ef937fb976226ba2ae17f50367e.png" alt="{\bf
R}^2"/>, and compute the reach set using the polytope method
implemented in MPT <a class="reference internal"
href="chap_install.html#mpthp" id="id1">[MPTHP]</a>. With every
time step the number of vertices of the reach set polytope increases by
-<img class="math"
src="_images/math/c7cab1a05e1e0c1d51a6a219d96577a16b7abf9d.png" alt="4"/>.
The complexity of the convex hull computation increases
-exponentially with number of vertices. In <a class="pageref"
href="#ellpolyfig">figure 1</a>, the time
+<img class="math"
src="_images/math/51a8d7e791ab9e463af82a4075edb04ef8028dcf.png" alt="4"/>.
The complexity of the convex hull computation increases
+exponentially with number of vertices. In <a href="#ellpolyfig">figure
1</a>, the time
required to compute the reach set for different time steps using
polytopes is shown in red.</p>
<p>To compute the reach set of the system using <em>Ellipsoidal
Toolbox</em>, we
-assume <img class="math"
src="_images/math/058cc043eb5c4750bfba163d5014ba4a2911b20c.png"
alt="{\mathcal X}_0"/> and <img class="math"
src="_images/math/e2bbebb3bd73f1ae5c64098ab0244f739abf7ca4.png" alt="U"/>
to be unit balls in
-<img class="math"
src="_images/math/bb5fa23edd2754dda88386b5c2f48e26b6d994da.png" alt="{\bf
R}^2"/>, fix any number of initial direction values that
+assume <img class="math"
src="_images/math/1eae27d722cf74685b3dab099d6e0089009498ce.png"
alt="{\mathcal X}_0"/> and <img class="math"
src="_images/math/73f5e249c88b2b3068263480f576b051cb5c4f6e.png" alt="U"/>
to be unit balls in
+<img class="math"
src="_images/math/0798dced39715ef937fb976226ba2ae17f50367e.png" alt="{\bf
R}^2"/>, fix any number of initial direction values that
corresponds to the number of ellipsoidal approximations, and obtain
external and internal ellipsoidal approximations of the reach set:</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
@@ -110,10 +110,10 @@
<span class="n">rsObj</span> <span class="p">=</span> <span
class="n">elltool</span><span class="p">.</span><span
class="n">reach</span><span class="p">.</span><span
class="n">ReachDiscrete</span><span class="p">(</span><span
class="n">lsys</span><span class="p">,</span> <span
class="n">x0EllObj</span><span class="p">,</span> <span
class="n">dirsMat</span><span class="p">,</span> <span
class="p">[</span><span class="mi">0</span> <span
class="n">nSteps</span><span class="p">]);</span>
</pre></div>
</td></tr></table></div>
-<p>In <a class="pageref" href="#ellpolyfig">figure 1</a>, the time
required to compute both external and
-internal ellipsoidal approximations, with <img class="math"
src="_images/math/4f4b8590f8aa9f9894b3891dd5dede0e354fa04e.png" alt="32"/>
ellipsoids each,
+<p>In <a href="#ellpolyfig">figure 1</a>, the time required to compute
both external and
+internal ellipsoidal approximations, with <img class="math"
src="_images/math/3c09e376094727d14b65cedafaa5fe3a371f029d.png" alt="32"/>
ellipsoids each,
for different number of time steps is shown in blue.</p>
-<p><a class="pageref" href="#ellpolyfig">Figure 1</a> illustrates the
fact that the complexity of polytope
+<p><a href="#ellpolyfig">Figure 1</a> illustrates the fact that the
complexity of polytope
method grows exponentially with number of time steps, whereas the
complexity of ellipsoidal method grows linearly.</p>
</div>
@@ -123,20 +123,20 @@
<a class="reference internal image-reference"
href="_images/chapter06_section02_springmass.png"><img alt="spmass"
src="_images/chapter06_section02_springmass.png" style="width: 30%;" /></a>
<p class="caption">Figure 2: Spring-mass system.</p>
</div>
-<p>The mechanical system presented in <a class="pageref"
href="#springmassfig">figure 2</a>, is described
+<p>The mechanical system presented in <a href="#springmassfig">figure
2</a>, is described
by the following system of equations:</p>
<div class="math" id="equation-spmass1">
-<p><span class="eqno">(1)</span><img
src="_images/math/978f7246aecfe9c9b3177e08f89fbc4d432d407d.png"
alt="m_1\ddot{x}_1+(k_1+k_2)x_1-k_2x_2 & = u_1,"/></p>
+<p><span class="eqno">(1)</span><img
src="_images/math/4f3588da0ec0fdadb63756f8d4497b0620473dd2.png"
alt="m_1\ddot{x}_1+(k_1+k_2)x_1-k_2x_2 & = u_1,"/></p>
</div><div class="math" id="equation-spmass2">
-<p><span class="eqno">(2)</span><img
src="_images/math/4187c0996314a83236b59dfc95d0db224b5bdab7.png"
alt="m_2\ddot{x}_2-k_2x_1+(k_1+k_2)x_2 & = u_2 ."/></p>
-</div><p>Here <img class="math"
src="_images/math/0559ffc8c62a08ff533f3fcd1a5c1713a520755d.png" alt="u_1"/>
and <img class="math"
src="_images/math/0725e2d5475070ba690e43acfb1adb66de9051fc.png" alt="u_2"/>
are the forces applied to masses
-<img class="math"
src="_images/math/25d659c8074c617549d61db9db0773e0fccad7b3.png" alt="m_1"/>
and <img class="math"
src="_images/math/ee54e8432d4a60984309e86f32931b04c8e2f1da.png"
alt="m_2"/>, and we shall assume
-<img class="math"
src="_images/math/4ed1c52734a165b5f0e132d949fa4f95364de75b.png" alt="[u_1
~~ u_2]^T\in{\mathcal E}(0,I)"/>. The initial conditions can
-be taken as <img class="math"
src="_images/math/d56d2ec9628e7c1d3266d3e28682887dddb8b8b8.png"
alt="x_1(0)=0"/>, <img class="math"
src="_images/math/8c055789e1717d339f16f07c84dcfb2a4094b2e4.png"
alt="x_2(0)=2"/>. Defining
-<img class="math"
src="_images/math/8321aa8848f0faa4346bc4dd3d53de83e52e5221.png"
alt="x_3=\dot{x}_1"/> and <img class="math"
src="_images/math/be50c695bad673ab59b9a1562db4305f20d575ba.png"
alt="x_4=\dot{x}_2"/>, we can rewrite
+<p><span class="eqno">(2)</span><img
src="_images/math/caeb75cfaa1a23c0f40115b98a9a06eb39ead7b6.png"
alt="m_2\ddot{x}_2-k_2x_1+(k_1+k_2)x_2 & = u_2 ."/></p>
+</div><p>Here <img class="math"
src="_images/math/6bd6b69e7846992625db6cd37ca4dcec179fdbc3.png" alt="u_1"/>
and <img class="math"
src="_images/math/c482b706389456c04426a22c534325c46417d84b.png" alt="u_2"/>
are the forces applied to masses
+<img class="math"
src="_images/math/66436d9a9e8e7404c215a04a5517be80a0f6c3a5.png" alt="m_1"/>
and <img class="math"
src="_images/math/f408e64e775c7d36dd1de23030332f330d283074.png"
alt="m_2"/>, and we shall assume
+<img class="math"
src="_images/math/c61f4aeded24ac5bd1a5d7b46f1cb503c7597da4.png" alt="[u_1
~~ u_2]^T\in{\mathcal E}(0,I)"/>. The initial conditions can
+be taken as <img class="math"
src="_images/math/aee66178bef068b6967a974ca14952a8e35531bf.png"
alt="x_1(0)=0"/>, <img class="math"
src="_images/math/6fa243d6c2765f06237b39f3cc04b864a23fe6a8.png"
alt="x_2(0)=2"/>. Defining
+<img class="math"
src="_images/math/6f8cd1c4f913a4e5fe76aea09e3ecb51fb685858.png"
alt="x_3=\dot{x}_1"/> and <img class="math"
src="_images/math/cedc3304f5df9947a2502102307b1d7dfc4634d7.png"
alt="x_4=\dot{x}_2"/>, we can rewrite
<a href="#equation-spmass1">(1)</a>-<a href="#equation-spmass2">(2)</a> as
a linear system in standard form:</p>
<div class="math" id="equation-spmassls">
-<p><span class="eqno">(3)</span><img
src="_images/math/07f7fa7cfca5817564b8afda40665b523bd56aac.png"
alt="\left[\begin{array}{c}
+<p><span class="eqno">(3)</span><img
src="_images/math/2e320bbe8187ce86beced6ed1b12b42dbaa00b08.png"
alt="\left[\begin{array}{c}
\dot{x}_1 \\
\dot{x}_2 \\
\dot{x}_3 \\
@@ -158,13 +158,13 @@
u_2\end{array}\right]."/></p>
</div><p>Now we can compute the reach set of system <a
href="#equation-spmass1">(1)</a>-<a href="#equation-spmass2">(2)</a> for
given time by computing the reach set of the linear system <a
href="#equation-spmassls">(3)</a>
-and taking its projection onto <img class="math"
src="_images/math/93bc6527f61669132dabf5873a2b69109ce1dd75.png" alt="(x_1,
x_2)"/> subspace.</p>
+and taking its projection onto <img class="math"
src="_images/math/8718591ebf3c77219aa6da4ca77b2fba7fd6bd40.png" alt="(x_1,
x_2)"/> subspace.</p>
<div class="figure" id="mechreachfig">
<a class="reference internal image-reference"
href="_images/chapter06_section02_reachmech.png"><img alt="reachmech"
src="_images/chapter06_section02_reachmech.png" style="width: 70%;" /></a>
<p class="caption">Figure 3: Spring-mass system without disturbance:
-(a) reach tube for time <img class="math"
src="_images/math/7fa2de7a348238ad9655d856f228c6ff09328da8.png"
alt="t\in[0,4]"/>; (b) reach set at time <img class="math"
src="_images/math/b9cc4404c2ef33fed45cc3187994253f79ecae29.png" alt="t=4"/>.
+(a) reach tube for time <img class="math"
src="_images/math/9aed1795e3ef0707333b8278441df4a3c5071c78.png"
alt="t\in[0,4]"/>; (b) reach set at time <img class="math"
src="_images/math/c065a45befa6330020834dcf2f588a0076245e31.png" alt="t=4"/>.
Spring-mass system with disturbance:
-(c) reach tube for time <img class="math"
src="_images/math/7fa2de7a348238ad9655d856f228c6ff09328da8.png"
alt="t\in[0,4]"/>; (d) reach set at time <img class="math"
src="_images/math/b9cc4404c2ef33fed45cc3187994253f79ecae29.png"
alt="t=4"/>.</p>
+(c) reach tube for time <img class="math"
src="_images/math/9aed1795e3ef0707333b8278441df4a3c5071c78.png"
alt="t\in[0,4]"/>; (d) reach set at time <img class="math"
src="_images/math/c065a45befa6330020834dcf2f588a0076245e31.png"
alt="t=4"/>.</p>
</div>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
2
@@ -237,28 +237,28 @@
<span class="c">%psObj.plotByEa('g');</span>
</pre></div>
</td></tr></table></div>
-<p><a class="pageref" href="#mechreachfig">Figure 3</a> (a) shows the
reach set of the system
-<a href="#equation-spmass1">(1)</a>-<a href="#equation-spmass2">(2)</a>
evolving in time from <img class="math"
src="_images/math/5a607fd61885c014512c949fee18869690330407.png" alt="t=0"/>
to <img class="math"
src="_images/math/b9cc4404c2ef33fed45cc3187994253f79ecae29.png" alt="t=4"/>.
-<a class="pageref" href="#mechreachfig">Figure 3</a> (b) presents a
snapshot of this reach set at time
-<img class="math"
src="_images/math/b9cc4404c2ef33fed45cc3187994253f79ecae29.png"
alt="t=4"/>.</p>
+<p><a href="#mechreachfig">Figure 3</a> (a) shows the reach set of the
system
+<a href="#equation-spmass1">(1)</a>-<a href="#equation-spmass2">(2)</a>
evolving in time from <img class="math"
src="_images/math/4e2677b4edfbb85a135b7807d780a44ffa83f052.png" alt="t=0"/>
to <img class="math"
src="_images/math/c065a45befa6330020834dcf2f588a0076245e31.png" alt="t=4"/>.
+<a href="#mechreachfig">Figure 3</a> (b) presents a snapshot of this
reach set at time
+<img class="math"
src="_images/math/c065a45befa6330020834dcf2f588a0076245e31.png"
alt="t=4"/>.</p>
<p>So far we considered an ideal system without any disturbance, such as
friction. We introduce disturbance to <a
href="#equation-spmass1">(1)</a>-<a href="#equation-spmass2">(2)</a> by
adding
-extra terms, <img class="math"
src="_images/math/a3ef75cc31c88a4eb1c121de7a914b0d73882ee2.png" alt="v_1"/>
and <img class="math"
src="_images/math/e3c09383f52ff7db11358e4aa6ca6c0307b02d76.png"
alt="v_2"/>,</p>
+extra terms, <img class="math"
src="_images/math/26bed463602b7b5764b5bdb149c6f77b40c998c3.png" alt="v_1"/>
and <img class="math"
src="_images/math/90f92bbe75a1f67cf7e5561af6a3eaa44e938f49.png"
alt="v_2"/>,</p>
<div class="math" id="equation-smdist1">
-<p><span class="eqno">(4)</span><img
src="_images/math/2540671bf73060a68e2d9356160d5ede6986eb9d.png"
alt="m_1\ddot{x}_1+(k_1+k_2)x_1-k_2x_2 & = u_1 + v_1,"/></p>
+<p><span class="eqno">(4)</span><img
src="_images/math/1da336fc8a9c3631a9b10f23d10027aeea859639.png"
alt="m_1\ddot{x}_1+(k_1+k_2)x_1-k_2x_2 & = u_1 + v_1,"/></p>
</div><div class="math" id="equation-smdist2">
-<p><span class="eqno">(5)</span><img
src="_images/math/531ef74bad9158bdc9e8686ad17664754bf6a705.png"
alt="m_2\ddot{x}_2-k_2x_1+(k_1+k_2)x_2 & = u_2 + v_2,"/></p>
+<p><span class="eqno">(5)</span><img
src="_images/math/14741eb567c21669fec094df1a1b39bbb525bf16.png"
alt="m_2\ddot{x}_2-k_2x_1+(k_1+k_2)x_2 & = u_2 + v_2,"/></p>
</div><p>which results in equation <a href="#equation-spmassls">(3)</a>
getting an extra term</p>
<div class="math">
-<p><img src="_images/math/084394c99dcee147829a98e67145239f15caed28.png"
alt="\left[\begin{array}{cc}
+<p><img src="_images/math/1c0a0aaa8ad2039e5ac02304e99e3798d9a671a4.png"
alt="\left[\begin{array}{cc}
0 & 0\\
0 & 0\\
1 & 0\\
0 & 1\end{array}\right]\left[\begin{array}{c}
v_1\\
v_2\end{array}\right]."/></p>
-</div><p>Assuming that <img class="math"
src="_images/math/cb753a435fadf80a28b138e9e9e5a82d135085b4.png" alt="[v_1
~~ v_2]^T"/> is unknown but bounded by
-ellipsoid <img class="math"
src="_images/math/2a53cc81d45fca9a121a00018fec72c94a1104e2.png"
alt="{\mathcal E}(0, \frac{1}{4}I)"/>, we can compute the
+</div><p>Assuming that <img class="math"
src="_images/math/3487b0b5cd9d260dd1c740ff782d2aa77a55df9a.png" alt="[v_1
~~ v_2]^T"/> is unknown but bounded by
+ellipsoid <img class="math"
src="_images/math/cc18af43831f2b4816fff57ca4fd3c5f122508b5.png"
alt="{\mathcal E}(0, \frac{1}{4}I)"/>, we can compute the
closed-loop reach set of the system with disturbance.</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
2
@@ -313,10 +313,10 @@
<span class="c">%psdCutObj.plotByEa();</span>
</pre></div>
</td></tr></table></div>
-<p><a class="pageref" href="#mechreachfig">Figure 3</a> (c) shows the
reach set of the system
-<a href="#equation-smdist1">(4)</a>-<a href="#equation-smdist2">(5)</a>
evolving in time from <img class="math"
src="_images/math/5a607fd61885c014512c949fee18869690330407.png" alt="t=0"/>
to <img class="math"
src="_images/math/b9cc4404c2ef33fed45cc3187994253f79ecae29.png" alt="t=4"/>.
-<a class="pageref" href="#mechreachfig">Figure 3</a> (d) presents a
snapshot of this reach set at time
-<img class="math"
src="_images/math/b9cc4404c2ef33fed45cc3187994253f79ecae29.png"
alt="t=4"/>.</p>
+<p><a href="#mechreachfig">Figure 3</a> (c) shows the reach set of the
system
+<a href="#equation-smdist1">(4)</a>-<a href="#equation-smdist2">(5)</a>
evolving in time from <img class="math"
src="_images/math/4e2677b4edfbb85a135b7807d780a44ffa83f052.png" alt="t=0"/>
to <img class="math"
src="_images/math/c065a45befa6330020834dcf2f588a0076245e31.png" alt="t=4"/>.
+<a href="#mechreachfig">Figure 3</a> (d) presents a snapshot of this
reach set at time
+<img class="math"
src="_images/math/c065a45befa6330020834dcf2f588a0076245e31.png"
alt="t=4"/>.</p>
</div>
<div class="section" id="switched-system">
<h2>Switched System<a class="headerlink" href="#switched-system"
title="Permalink to this headline">¶</a></h2>
@@ -325,20 +325,20 @@
<p class="caption">Figure 4: RLC circuit with two inputs.</p>
</div>
<p>By <em>switched systems</em> we mean systems whose dynamics changes at
known
-times. Consider the RLC circuit shown in <a class="pageref"
href="#rlcfig">figure 4</a>. It has two
-inputs - the voltage (<img class="math"
src="_images/math/a9f23bf124b6b2b2a993eb313c72e678664ac74a.png" alt="v"/>)
and current (<img class="math"
src="_images/math/34857b3ba74ce5cd8607f3ebd23e9015908ada71.png" alt="i"/>)
sources. Define</p>
+times. Consider the RLC circuit shown in <a href="#rlcfig">figure 4</a>.
It has two
+inputs - the voltage (<img class="math"
src="_images/math/0e22076955898e6c9bb38aa079135195c24dc81e.png" alt="v"/>)
and current (<img class="math"
src="_images/math/a581f053bbfa5115f42c13094857cdd12a37ec49.png" alt="i"/>)
sources. Define</p>
<ul class="simple">
-<li><img class="math"
src="_images/math/ccada11db7b2b90693e2fac4f887a57fce6f96bf.png" alt="x_1"/>
- voltage across capacitor <img class="math"
src="_images/math/70b97eb4ad6e4e7a5a97e2547d9ed6e965960d0c.png"
alt="C_1"/>, so
-<img class="math"
src="_images/math/dbcf9b3b0920456799e924d31b743cb2a7662433.png"
alt="C_1\dot{x}_1"/> is the corresponding current;</li>
-<li><img class="math"
src="_images/math/6a7d010bbff66a0c41e43310a51efbaa6bf63396.png" alt="x_2"/>
- voltage across capacitor <img class="math"
src="_images/math/b65e6facfe122c182fe14d503aeace2c52a9739d.png"
alt="C_2"/>, so the
-corresponding current is <img class="math"
src="_images/math/332574c1719fc8daeb9d20a0e518a2e35cdc0ef2.png"
alt="C_2\dot{x}_2"/>.</li>
-<li><img class="math"
src="_images/math/ee60922c5fc5ee1941df04f838cdae71fbc29d6f.png" alt="x_3"/>
- current through the inductor <img class="math"
src="_images/math/859ccf4cd60c7bc6b8fa1afc9a42dc811a826d6f.png" alt="L"/>,
so the voltage
-across the inductor is <img class="math"
src="_images/math/c1227487309701214e481605448487c1731f52ce.png"
alt="L\dot{x}_3"/>.</li>
+<li><img class="math"
src="_images/math/b31b1ea8e4fe3f618dedfb0e2d8c69a3df7a391d.png" alt="x_1"/>
- voltage across capacitor <img class="math"
src="_images/math/a37c919e07a75380817840dfff31d2781ee02586.png"
alt="C_1"/>, so
+<img class="math"
src="_images/math/761f741b6b62aca0889da2c9d66bcba8d531f12d.png"
alt="C_1\dot{x}_1"/> is the corresponding current;</li>
+<li><img class="math"
src="_images/math/272c62c44455c90173267b1bafdf7ecebd6bc316.png" alt="x_2"/>
- voltage across capacitor <img class="math"
src="_images/math/5688f380dd87f6afa3517fdc74088add9205a707.png"
alt="C_2"/>, so the
+corresponding current is <img class="math"
src="_images/math/fe71452fec4a7e842705872a4ee6dae4c9733d78.png"
alt="C_2\dot{x}_2"/>.</li>
+<li><img class="math"
src="_images/math/5ea15a7136b3743ca4eebc744fa85be7b81a0c4d.png" alt="x_3"/>
- current through the inductor <img class="math"
src="_images/math/0a5711c7a37994043b2bc3bb374adca232491762.png" alt="L"/>,
so the voltage
+across the inductor is <img class="math"
src="_images/math/d7d2db7e27e41f061319c66c7363d761150ec941.png"
alt="L\dot{x}_3"/>.</li>
</ul>
<p>Applying Kirchoff current and voltage laws we arrive at the linear
system,</p>
<div class="math" id="equation-rlceq">
-<p><span class="eqno">(6)</span><img
src="_images/math/c024e9431691f3c7010972dec7ac5027ae24798a.png"
alt="\left[\begin{array}{c}
+<p><span class="eqno">(6)</span><img
src="_images/math/c5a76f7d229bc67a2a4ff3b7abf23da7fc843b92.png"
alt="\left[\begin{array}{c}
\dot{x}_1\\
\dot{x}_2\\
\dot{x}_3\end{array}\right] = \left[\begin{array}{ccc}
@@ -354,17 +354,17 @@
0 & 0\end{array}\right]\left[\begin{array}{c}
v\\
i\end{array}\right]."/></p>
-</div><p>The parameters <img class="math"
src="_images/math/77cbbeb5834997d74dbc44264f04660c2bf84077.png"
alt="R_1"/>, <img class="math"
src="_images/math/ca5f6500d904b18c0eaf34da49a31bd3fb72d7f8.png"
alt="R_2"/>, <img class="math"
src="_images/math/70b97eb4ad6e4e7a5a97e2547d9ed6e965960d0c.png"
alt="C_1"/>, <img class="math"
src="_images/math/b65e6facfe122c182fe14d503aeace2c52a9739d.png" alt="C_2"/>
and
-<img class="math"
src="_images/math/859ccf4cd60c7bc6b8fa1afc9a42dc811a826d6f.png" alt="L"/>,
as well as the inputs, may depend on time. Suppose, for time
-<img class="math"
src="_images/math/74f2e0ed7dd1af1e783a110f8afa5579bf2e56ad.png"
alt="0\leqslant t<2"/>, <img class="math"
src="_images/math/2e2be6958992b0e0faae6175453ee74bc6251010.png"
alt="R_1=2"/> Ohm, <img class="math"
src="_images/math/8e8c3c2f75907372be3c704889376e991a4a0f8a.png"
alt="R_2=1"/> Ohm,
-<img class="math"
src="_images/math/dda3f476724e7da2c022de7bbeb0fecb8b61385a.png"
alt="C_1=3"/> F, <img class="math"
src="_images/math/280bb2263d185f3e5a28e21fa809d63ac4f8bce4.png"
alt="C_2=7"/> F, <img class="math"
src="_images/math/10b43c65f3a363b7f1b7d9b48d542e9d2d68194b.png" alt="L=2"/>
H, both inputs, <img class="math"
src="_images/math/a9f23bf124b6b2b2a993eb313c72e678664ac74a.png" alt="v"/>
-and <img class="math"
src="_images/math/34857b3ba74ce5cd8607f3ebd23e9015908ada71.png" alt="i"/>
are present and bounded by ellipsoid
-<img class="math"
src="_images/math/d2741c359cf1a5d475e858b730de4f7b2d8b8b37.png"
alt="{\mathcal E}(0,I)"/>; and for time <img class="math"
src="_images/math/75cb118f654d887d84cd0e0ce418ca6dcf40c21f.png"
alt="t\geqslant2"/>,
-<img class="math"
src="_images/math/4d7997a95c2aaf0ac624252e9412f789ed244288.png"
alt="R_1=R_2=2"/> Ohm, <img class="math"
src="_images/math/a06be760b912d731c54b62451bbcdf9d000e4db2.png"
alt="C_1=C_2=3"/> F, <img class="math"
src="_images/math/8b4bf0c4ca556bbeb07820be821196c918f8143b.png" alt="L=6"/>
H, the current
-source is turned off, and <img class="math"
src="_images/math/eb74c07d43b16703bf293b0e775ab87dad27705f.png" alt="|v|
\leqslant1"/>. Then, system <a href="#equation-rlceq">(6)</a>
+</div><p>The parameters <img class="math"
src="_images/math/4fc66ef4542950b8258fac9cb6f37f9a56a741de.png"
alt="R_1"/>, <img class="math"
src="_images/math/8ce74d05c4b10a28025f9b32038f97cf842acf5e.png"
alt="R_2"/>, <img class="math"
src="_images/math/a37c919e07a75380817840dfff31d2781ee02586.png"
alt="C_1"/>, <img class="math"
src="_images/math/5688f380dd87f6afa3517fdc74088add9205a707.png" alt="C_2"/>
and
+<img class="math"
src="_images/math/0a5711c7a37994043b2bc3bb374adca232491762.png" alt="L"/>,
as well as the inputs, may depend on time. Suppose, for time
+<img class="math"
src="_images/math/cdb4c40bbb78dde37109cd0710c160617e8d24cd.png"
alt="0\leqslant t<2"/>, <img class="math"
src="_images/math/593f24e26a786a3f8e03f09aa287bf0aee43eab0.png"
alt="R_1=2"/> Ohm, <img class="math"
src="_images/math/80f3159b2cedc58c4ad6115467f0727d33f1c4e8.png"
alt="R_2=1"/> Ohm,
+<img class="math"
src="_images/math/2916c576648baba0aaabcbfabf9024a362a617c6.png"
alt="C_1=3"/> F, <img class="math"
src="_images/math/932e135155cb898c30a826f6ea348507d2fb8416.png"
alt="C_2=7"/> F, <img class="math"
src="_images/math/efdbc89322061cffe9507df16d26493c53c77e66.png" alt="L=2"/>
H, both inputs, <img class="math"
src="_images/math/0e22076955898e6c9bb38aa079135195c24dc81e.png" alt="v"/>
+and <img class="math"
src="_images/math/a581f053bbfa5115f42c13094857cdd12a37ec49.png" alt="i"/>
are present and bounded by ellipsoid
+<img class="math"
src="_images/math/5c9e984acf322eb710ab289ceede7ea1bb84940d.png"
alt="{\mathcal E}(0,I)"/>; and for time <img class="math"
src="_images/math/99828ced00bdae5d16bd9e652be505b9925943e1.png"
alt="t\geqslant2"/>,
+<img class="math"
src="_images/math/b1e1601fdbfc1ab11cdb5594617cbeb20e49e3db.png"
alt="R_1=R_2=2"/> Ohm, <img class="math"
src="_images/math/445389bddfb0cbfaaaa0823881dc3e385b29f8b2.png"
alt="C_1=C_2=3"/> F, <img class="math"
src="_images/math/cc5a1eaec2e9c14192efe3b5f1c7abc93325859f.png" alt="L=6"/>
H, the current
+source is turned off, and <img class="math"
src="_images/math/fcd332adf9ae188f84148540b93c440b71ebba92.png" alt="|v|
\leqslant1"/>. Then, system <a href="#equation-rlceq">(6)</a>
can be rewritten as</p>
<div class="math" id="equation-rlceq2">
-<p><span class="eqno">(7)</span><img
src="_images/math/20fa061b00ae010434eb4d9c7a909a7d7d59b017.png"
alt="\left[\begin{array}{c}
+<p><span class="eqno">(7)</span><img
src="_images/math/26b326bb97115a8fbefc4a5ea189805d82912f2e.png"
alt="\left[\begin{array}{c}
\dot{x}_1\\
\dot{x}_2\\
\dot{x}_3\end{array}\right] = \left\{\begin{array}{ll}
@@ -392,8 +392,8 @@
\frac{1}{6} \\
0 \\
0 \end{array}\right]v, & 2\leqslant t. \end{array}\right."/></p>
-</div><p>We can compute the reach set of <a
href="#equation-rlceq2">(7)</a> for some time <img class="math"
src="_images/math/54662a7cbc6577afa0f85e530a34bc0612e87b97.png"
alt="t>2"/>,
-say, <img class="math"
src="_images/math/35c913cff7776ae19bed793a777bfc7157591527.png"
alt="t=3"/>.</p>
+</div><p>We can compute the reach set of <a
href="#equation-rlceq2">(7)</a> for some time <img class="math"
src="_images/math/b19e82e9a269844df8443bc7994c57cfd1b047ee.png"
alt="t>2"/>,
+say, <img class="math"
src="_images/math/a95a6c7171c13a2e4d31779d50b05185acf84fd9.png"
alt="t=3"/>.</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
2
3
@@ -536,17 +536,17 @@
<p class="caption">Figure 5: Forward and backward reach sets of the
switched system
(external and internal approximations).</p>
</div>
-<p><a class="pageref" href="#rlcreachfig">Figure 5</a> (a) shows how the
reach set projection onto
-<img class="math"
src="_images/math/93bc6527f61669132dabf5873a2b69109ce1dd75.png" alt="(x_1,
x_2)"/> of system <a href="#equation-rlceq2">(7)</a> evolves in time from
<img class="math"
src="_images/math/5a607fd61885c014512c949fee18869690330407.png" alt="t=0"/>
-to <img class="math"
src="_images/math/35c913cff7776ae19bed793a777bfc7157591527.png"
alt="t=3"/>. The external reach set approximation for the first
+<p><a href="#rlcreachfig">Figure 5</a> (a) shows how the reach set
projection onto
+<img class="math"
src="_images/math/8718591ebf3c77219aa6da4ca77b2fba7fd6bd40.png" alt="(x_1,
x_2)"/> of system <a href="#equation-rlceq2">(7)</a> evolves in time from
<img class="math"
src="_images/math/4e2677b4edfbb85a135b7807d780a44ffa83f052.png" alt="t=0"/>
+to <img class="math"
src="_images/math/a95a6c7171c13a2e4d31779d50b05185acf84fd9.png"
alt="t=3"/>. The external reach set approximation for the first
dynamics is in red, the internal approximation is in green. The dynamics
-switches at <img class="math"
src="_images/math/80d4822fd227ceb0ef72b1bd9326703a98f8593c.png"
alt="t=2"/>. The external reach set approximation for the
+switches at <img class="math"
src="_images/math/869dcc7e8055253a227de9144ac7312e31300c11.png"
alt="t=2"/>. The external reach set approximation for the
second dynamics is in yellow, its internal approximation is in blue. The
full three-dimensional external (yellow) and internal (blue)
-approximations of the reach set are shown in <a class="pageref"
href="#rlcreachfig">figure 5</a> (b).</p>
-<p>To find out where the system should start at time <img class="math"
src="_images/math/5a607fd61885c014512c949fee18869690330407.png" alt="t=0"/>
in order
-to reach a neighborhood M of the origin at time <img class="math"
src="_images/math/35c913cff7776ae19bed793a777bfc7157591527.png"
alt="t=3"/>, we compute
-the backward reach set from <img class="math"
src="_images/math/35c913cff7776ae19bed793a777bfc7157591527.png" alt="t=3"/>
to <img class="math"
src="_images/math/5a607fd61885c014512c949fee18869690330407.png"
alt="t=0"/>.</p>
+approximations of the reach set are shown in <a
href="#rlcreachfig">figure 5</a> (b).</p>
+<p>To find out where the system should start at time <img class="math"
src="_images/math/4e2677b4edfbb85a135b7807d780a44ffa83f052.png" alt="t=0"/>
in order
+to reach a neighborhood M of the origin at time <img class="math"
src="_images/math/a95a6c7171c13a2e4d31779d50b05185acf84fd9.png"
alt="t=3"/>, we compute
+the backward reach set from <img class="math"
src="_images/math/a95a6c7171c13a2e4d31779d50b05185acf84fd9.png" alt="t=3"/>
to <img class="math"
src="_images/math/4e2677b4edfbb85a135b7807d780a44ffa83f052.png"
alt="t=0"/>.</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
2
3
@@ -658,12 +658,12 @@
<span class="c">% firstBrsObj.plotByIa('g');</span>
</pre></div>
</td></tr></table></div>
-<p><a class="pageref" href="#rlcreachfig">Figure 5</a> (c) presents the
evolution of the reach set projection onto
-<img class="math"
src="_images/math/93bc6527f61669132dabf5873a2b69109ce1dd75.png" alt="(x_1,
x_2)"/> in backward time. Again, external and internal
+<p><a href="#rlcreachfig">Figure 5</a> (c) presents the evolution of the
reach set projection onto
+<img class="math"
src="_images/math/8718591ebf3c77219aa6da4ca77b2fba7fd6bd40.png" alt="(x_1,
x_2)"/> in backward time. Again, external and internal
approximations corresponding to the first dynamics are shown in red and
green, and to the second dynamics in yellow and blue. The full
dimensional backward reach set external and internal approximations of
-system <a href="#equation-rlceq2">(7)</a> at time <img class="math"
src="_images/math/5a607fd61885c014512c949fee18869690330407.png" alt="t=0"/>
is shown in <a class="pageref" href="#rlcreachfig">figure 5</a> (d).</p>
+system <a href="#equation-rlceq2">(7)</a> at time <img class="math"
src="_images/math/4e2677b4edfbb85a135b7807d780a44ffa83f052.png" alt="t=0"/>
is shown in <a href="#rlcreachfig">figure 5</a> (d).</p>
</div>
<div class="section" id="hybrid-system">
<h2>Hybrid System<a class="headerlink" href="#hybrid-system"
title="Permalink to this headline">¶</a></h2>
@@ -678,33 +678,33 @@
dynamics whose guards are ellipsoids, hyperplanes, halfspaces or
polytopes.</p>
<p>We consider the <em>switching-mode model</em> of highway traffic
presented in
-<a class="reference internal" href="#sun2003" id="id3">[SUN2003]</a>. The
highway segment is divided into <img class="math"
src="_images/math/fc97ef67268cd4e91bacdf12b8901d7036c9a056.png" alt="N"/>
-cells as shown in <a class="pageref" href="#hwfig">figure 6</a>. In this
particular case, <img class="math"
src="_images/math/fce912a0ad9e9d6cab93289db73fe702ea56b18f.png" alt="N=4"/>.
-The traffic density in cell <img class="math"
src="_images/math/34857b3ba74ce5cd8607f3ebd23e9015908ada71.png" alt="i"/>
is <img class="math"
src="_images/math/67bc6daa9d6b964201d6cef60cbeb1ac5fd26ead.png" alt="x_i"/>
vehicles per mile,
-<img class="math"
src="_images/math/a628f0c440e7cacb1c8702c60c24aa2d0584599a.png"
alt="i=1,2,3,4"/>.</p>
+<a class="reference internal" href="#sun2003" id="id3">[SUN2003]</a>. The
highway segment is divided into <img class="math"
src="_images/math/75e27f04188974063be3230dca208cd495b77ce1.png" alt="N"/>
+cells as shown in <a href="#hwfig">figure 6</a>. In this particular case,
<img class="math"
src="_images/math/4a16cf007ee3e23dd0c298f6c2f9a49157a34980.png" alt="N=4"/>.
+The traffic density in cell <img class="math"
src="_images/math/a581f053bbfa5115f42c13094857cdd12a37ec49.png" alt="i"/>
is <img class="math"
src="_images/math/33dfc32d00ebd5c5791c824010a155d9e5630b6f.png" alt="x_i"/>
vehicles per mile,
+<img class="math"
src="_images/math/69994cf9835b884f77d639a114dd61df37c3c66c.png"
alt="i=1,2,3,4"/>.</p>
<p>Define</p>
<ul class="simple">
-<li><img class="math"
src="_images/math/85ffd98b4eaea58a8db38fd0047e3a1d7c5661a0.png" alt="v_i"/>
- average speed in mph, in the <img class="math"
src="_images/math/34857b3ba74ce5cd8607f3ebd23e9015908ada71.png"
alt="i"/>-th cell,
-<img class="math"
src="_images/math/a628f0c440e7cacb1c8702c60c24aa2d0584599a.png"
alt="i=1,2,3,4"/>;</li>
-<li><img class="math"
src="_images/math/535b2bfbb0a587e261a0d0af9b7b53e42629b14d.png" alt="w_i"/>
- backward congestion wave propagation speed in mph, in
-the <img class="math"
src="_images/math/34857b3ba74ce5cd8607f3ebd23e9015908ada71.png"
alt="i"/>-th highway cell, <img class="math"
src="_images/math/a628f0c440e7cacb1c8702c60c24aa2d0584599a.png"
alt="i=1,2,3,4"/>;</li>
-<li><img class="math"
src="_images/math/27e0ba84112021c452fc2200ff282b5ead0b3e78.png"
alt="x_{Mi}"/> - maximum allowed density in the <img class="math"
src="_images/math/34857b3ba74ce5cd8607f3ebd23e9015908ada71.png"
alt="i"/>-th cell;
+<li><img class="math"
src="_images/math/91ee790671e6a647c8afc69baa2118effd0dac9d.png" alt="v_i"/>
- average speed in mph, in the <img class="math"
src="_images/math/a581f053bbfa5115f42c13094857cdd12a37ec49.png"
alt="i"/>-th cell,
+<img class="math"
src="_images/math/69994cf9835b884f77d639a114dd61df37c3c66c.png"
alt="i=1,2,3,4"/>;</li>
+<li><img class="math"
src="_images/math/b4e1bc8e2dfd2c26158273aef285b08a816f960a.png" alt="w_i"/>
- backward congestion wave propagation speed in mph, in
+the <img class="math"
src="_images/math/a581f053bbfa5115f42c13094857cdd12a37ec49.png"
alt="i"/>-th highway cell, <img class="math"
src="_images/math/69994cf9835b884f77d639a114dd61df37c3c66c.png"
alt="i=1,2,3,4"/>;</li>
+<li><img class="math"
src="_images/math/682b3295e6678cfdabbf366d7f2ceeffc138d76f.png"
alt="x_{Mi}"/> - maximum allowed density in the <img class="math"
src="_images/math/a581f053bbfa5115f42c13094857cdd12a37ec49.png"
alt="i"/>-th cell;
when this velue is reached, there is a traffic jam,
-<img class="math"
src="_images/math/a628f0c440e7cacb1c8702c60c24aa2d0584599a.png"
alt="i=1,2,3,4"/>;</li>
-<li><img class="math"
src="_images/math/f1544d77330dc5a289ad6a42beeb236b8dd70a9a.png" alt="d_i"/>
- length of <img class="math"
src="_images/math/34857b3ba74ce5cd8607f3ebd23e9015908ada71.png"
alt="i"/>-th cell in miles,
-<img class="math"
src="_images/math/a628f0c440e7cacb1c8702c60c24aa2d0584599a.png"
alt="i=1,2,3,4"/>;</li>
-<li><img class="math"
src="_images/math/43b3aabcb88e217357a0b38741411a9357bf238f.png" alt="T_s"/>
- sampling time in hours;</li>
-<li><img class="math"
src="_images/math/8136a7ef6a03334a7246df9097e5bcc31ba33fd2.png" alt="b"/> -
split ratio for the off-ramp;</li>
-<li><img class="math"
src="_images/math/0559ffc8c62a08ff533f3fcd1a5c1713a520755d.png" alt="u_1"/>
- traffic flow coming into the highway segment, in
+<img class="math"
src="_images/math/69994cf9835b884f77d639a114dd61df37c3c66c.png"
alt="i=1,2,3,4"/>;</li>
+<li><img class="math"
src="_images/math/2103b4c0c596f5f943d001a8b55a44c2d73fd1c0.png" alt="d_i"/>
- length of <img class="math"
src="_images/math/a581f053bbfa5115f42c13094857cdd12a37ec49.png"
alt="i"/>-th cell in miles,
+<img class="math"
src="_images/math/69994cf9835b884f77d639a114dd61df37c3c66c.png"
alt="i=1,2,3,4"/>;</li>
+<li><img class="math"
src="_images/math/3a69de575e58704a0515a0f029cf86eebcf2d3b9.png" alt="T_s"/>
- sampling time in hours;</li>
+<li><img class="math"
src="_images/math/5e87bf41a96deddf6cb485ff530f153f2590e9cc.png" alt="b"/> -
split ratio for the off-ramp;</li>
+<li><img class="math"
src="_images/math/6bd6b69e7846992625db6cd37ca4dcec179fdbc3.png" alt="u_1"/>
- traffic flow coming into the highway segment, in
vehicles per hour (vph);</li>
-<li><img class="math"
src="_images/math/0725e2d5475070ba690e43acfb1adb66de9051fc.png" alt="u_2"/>
- traffic flow coming out of the highway segment (vph);</li>
-<li><img class="math"
src="_images/math/b030cd493cf47cb7ba11af2031b2dbd94459e8f8.png" alt="u_3"/>
- on-ramp traffic flow (vph).</li>
+<li><img class="math"
src="_images/math/c482b706389456c04426a22c534325c46417d84b.png" alt="u_2"/>
- traffic flow coming out of the highway segment (vph);</li>
+<li><img class="math"
src="_images/math/8fd6fbb2b90f7d21cf7e6fac4ff08e2c60a74d39.png" alt="u_3"/>
- on-ramp traffic flow (vph).</li>
</ul>
<p>Highway traffic operates in two modes: <em>free-flow</em> in normal
operation;
and <em>congested</em> mode, when there is a jam. Traffic flow in free-flow
mode is described by</p>
<div class="math" id="equation-fflow">
-<p><span class="eqno">(8)</span><img
src="_images/math/3a0899777e0ee4f736ee4e4deaa53f6be7a0fe5e.png"
alt="\begin{aligned}
+<p><span class="eqno">(8)</span><img
src="_images/math/fdb31222411b344d2055585cf39bc516b553f3e7.png"
alt="\begin{aligned}
\left[\begin{array}{c}
x_1[t+1]\\
x_2[t+1]\\
@@ -729,7 +729,7 @@
u_3\end{array}\right].\end{aligned}"/></p>
</div><p>The equation for the congested mode is</p>
<div class="math" id="equation-cflow">
-<p><span class="eqno">(9)</span><img
src="_images/math/d28baf36d64d534be2a46540921dbc5f635c7b83.png"
alt="\begin{aligned}
+<p><span class="eqno">(9)</span><img
src="_images/math/952218e43e6c5ce9dfa42740e745e3bdfb1c835d.png"
alt="\begin{aligned}
\left[\begin{array}{c}
x_1[t+1]\\
x_2[t+1]\\
@@ -763,8 +763,8 @@
x_{M3}\\
x_{M4}\end{array}\right].\end{aligned}"/></p>
</div><p>The switch from the free-flow to the congested mode occurs when
the
-density <img class="math"
src="_images/math/6a7d010bbff66a0c41e43310a51efbaa6bf63396.png" alt="x_2"/>
reaches <img class="math"
src="_images/math/889aa4fca82f0c6874592cb825c124910269fd1f.png"
alt="x_{M2}"/>. In other words, the
-hyperplane <img class="math"
src="_images/math/36a19598f174437c18a965ff465c3323270f63b4.png" alt="H([0 ~
1 ~ 0 ~ 0]^T, x_{M2})"/> is the guard.</p>
+density <img class="math"
src="_images/math/272c62c44455c90173267b1bafdf7ecebd6bc316.png" alt="x_2"/>
reaches <img class="math"
src="_images/math/efb994379b6ed1f8b795a940aa3bb7e07e714e4a.png"
alt="x_{M2}"/>. In other words, the
+hyperplane <img class="math"
src="_images/math/089860784397e46dcf9b68d08914e116927f2d3a.png" alt="H([0 ~
1 ~ 0 ~ 0]^T, x_{M2})"/> is the guard.</p>
<p>We indicate how to implement the reach set computation of this hybrid
system. We first define the two linear systems and the guard.</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
@@ -901,24 +901,24 @@
<a class="reference internal image-reference"
href="_images/chapter06_section04_hwreach.png"><img alt="highway"
src="_images/chapter06_section04_hwreach.png" style="width: 80%;" /></a>
<p class="caption">Figure 7: Reach set of the free-flow system is blue,
reach set of the congested
system is green, the guard is red.
-(a) Reach set of the free-flow system at <img class="math"
src="_images/math/6ba4ef452fa3f3441119f851e0fa3fb94248408d.png" alt="t =
10"/>, before reaching the guard
-(projection onto <img class="math"
src="_images/math/245e7f3c330c698151804ac8852cec8100848f36.png"
alt="(x_1,x_2,x_3)"/>).
-(b) Reach set of the free-flow system at <img class="math"
src="_images/math/7815ac51fced47db2b62407b3e6f41792a0e3628.png" alt="t =
50"/>, crossing the guard.
-(projection onto <img class="math"
src="_images/math/245e7f3c330c698151804ac8852cec8100848f36.png"
alt="(x_1,x_2,x_3)"/>).
-(c) Reach set of the free-flow system at <img class="math"
src="_images/math/6b44e4942184d68bb0f8fb2c43cdb9e44de8ab21.png" alt="t =
80"/>, after the guard is crossed.
-(projection onto <img class="math"
src="_images/math/245e7f3c330c698151804ac8852cec8100848f36.png"
alt="(x_1,x_2,x_3)"/>).
-(d) Reach set trace from <img class="math"
src="_images/math/5a607fd61885c014512c949fee18869690330407.png" alt="t=0"/>
to <cite>t=100</cite>, free-flow system in blue,
+(a) Reach set of the free-flow system at <img class="math"
src="_images/math/ddd4f149795f87346d64647fe87b53d41a0ffbc5.png" alt="t =
10"/>, before reaching the guard
+(projection onto <img class="math"
src="_images/math/d244b8c7cc7aef2f4f86ee54409898356d38c63f.png"
alt="(x_1,x_2,x_3)"/>).
+(b) Reach set of the free-flow system at <img class="math"
src="_images/math/df99f822cc9fdce55ca2e462656f75b0e7cb71fd.png" alt="t =
50"/>, crossing the guard.
+(projection onto <img class="math"
src="_images/math/d244b8c7cc7aef2f4f86ee54409898356d38c63f.png"
alt="(x_1,x_2,x_3)"/>).
+(c) Reach set of the free-flow system at <img class="math"
src="_images/math/945a172020c6ff6ed253db8c837f949d5156f8c2.png" alt="t =
80"/>, after the guard is crossed.
+(projection onto <img class="math"
src="_images/math/d244b8c7cc7aef2f4f86ee54409898356d38c63f.png"
alt="(x_1,x_2,x_3)"/>).
+(d) Reach set trace from <img class="math"
src="_images/math/4e2677b4edfbb85a135b7807d780a44ffa83f052.png" alt="t=0"/>
to <cite>t=100</cite>, free-flow system in blue,
congested system in green; bounds of initial conditions are marked with
magenta
-(projection onto <img class="math"
src="_images/math/b8f653df0b5080df4f9b612416fb9b1218719566.png"
alt="(x_1,x_2)"/>).</p>
+(projection onto <img class="math"
src="_images/math/0dec8dfe93d64205e7451291af8e08680e02b60b.png"
alt="(x_1,x_2)"/>).</p>
</div>
<p>Analyzing the values in array dVec, we conclude that the free-flow reach
-set has nonempty intersection with hyperplane grdHyp at <img class="math"
src="_images/math/f473344b7a2074772465305139d5e52356bbc691.png"
alt="t=18"/> for
-the first time, and at <img class="math"
src="_images/math/0a2db80eff581acd4c65078a2426f481e80eb8e8.png"
alt="t=68"/> for the last time. Between
-<img class="math"
src="_images/math/f473344b7a2074772465305139d5e52356bbc691.png"
alt="t=18"/> and <img class="math"
src="_images/math/0a2db80eff581acd4c65078a2426f481e80eb8e8.png"
alt="t=68"/> it crosses the guard. <a class="pageref"
href="#hwreachfig">Figure 7</a> (a)
+set has nonempty intersection with hyperplane grdHyp at <img class="math"
src="_images/math/d7c015e171c5e9be4e19358f0d4820d6e045742a.png"
alt="t=18"/> for
+the first time, and at <img class="math"
src="_images/math/6b99100f2c7c81a91f63b5e96ba1674e4cf07556.png"
alt="t=68"/> for the last time. Between
+<img class="math"
src="_images/math/d7c015e171c5e9be4e19358f0d4820d6e045742a.png"
alt="t=18"/> and <img class="math"
src="_images/math/6b99100f2c7c81a91f63b5e96ba1674e4cf07556.png"
alt="t=68"/> it crosses the guard. <a href="#hwreachfig">Figure 7</a> (a)
shows the free-flow reach set projection onto
-<img class="math"
src="_images/math/245e7f3c330c698151804ac8852cec8100848f36.png"
alt="(x_1,x_2,x_3)"/> subspace for <img class="math"
src="_images/math/21460a1064b496932ab255e861498acf761f645f.png"
alt="t=10"/>, before the guard
-crossing; <a class="pageref" href="#hwreachfig">figure 7</a> (b) for <img
class="math"
src="_images/math/c2155302f7dec28f85733e766cfb37ca2ca9e329.png"
alt="t=50"/>, during the guard
-crossing; and <a class="pageref" href="#hwreachfig">figure 7</a> (c) for
<img class="math"
src="_images/math/c1783c816b02e354608317b04b77604cacfa44a8.png"
alt="t=80"/>, after the guard
+<img class="math"
src="_images/math/d244b8c7cc7aef2f4f86ee54409898356d38c63f.png"
alt="(x_1,x_2,x_3)"/> subspace for <img class="math"
src="_images/math/0e8b44a3c8dcb0228b2c03537cc6e24d48740dfb.png"
alt="t=10"/>, before the guard
+crossing; <a href="#hwreachfig">figure 7</a> (b) for <img class="math"
src="_images/math/b47974de990ffde8b97693d59aa911a0a3a0c90e.png"
alt="t=50"/>, during the guard
+crossing; and <a href="#hwreachfig">figure 7</a> (c) for <img
class="math"
src="_images/math/d8131522ce7a7a504fc3982e7d0813d8a328342b.png"
alt="t=80"/>, after the guard
was crossed.</p>
<p>For each time step that the intersection of the free-flow reach set and
the guard is nonempty, we establish a new initial time and a set of
@@ -988,7 +988,14 @@
60
61
62
-63</pre></div></td><td class="code"><div class="highlight"><pre><span
class="n">crsObjVec</span> <span class="p">=</span> <span
class="p">[];</span>
+63
+64
+65
+66
+67
+68
+69
+70</pre></div></td><td class="code"><div class="highlight"><pre><span
class="n">crsObjVec</span> <span class="p">=</span> <span
class="p">[];</span>
<span class="k">for</span> <span class="n">iInd</span> <span
class="p">=</span> <span class="mi">1</span><span class="p">:</span><span
class="nb">size</span><span class="p">(</span><span
class="n">indNonEmptyVec</span><span class="p">,</span> <span
class="mi">2</span><span class="p">)</span>
<span class="n">curTimeLimVec</span><span class="p">=[</span><span
class="n">indNonEmptyVec</span><span class="p">(</span><span
class="n">iInd</span><span class="p">)</span><span class="o">-</span><span
class="mi">1</span> <span class="n">nSteps</span><span class="p">];</span>
<span class="n">rsObj</span> <span class="p">=</span> <span
class="n">elltool</span><span class="p">.</span><span
class="n">reach</span><span class="p">.</span><span
class="n">ReachDiscrete</span><span class="p">(</span><span
class="n">secSys</span><span class="p">,</span><span class="c">...</span>
@@ -1000,7 +1007,8 @@
<span class="n">copyEllMat</span> <span class="p">=</span> <span
class="n">externalEllMat</span><span class="p">.</span><span
class="n">getCopy</span><span class="p">();</span>
<span class="n">basisMat</span> <span class="p">=</span> <span
class="p">[</span><span class="mi">1</span> <span class="mi">0</span> <span
class="mi">0</span> <span class="mi">0</span><span class="p">;</span> <span
class="mi">0</span> <span class="mi">1</span> <span class="mi">0</span>
<span class="mi">0</span><span class="p">;</span> <span class="mi">0</span>
<span class="mi">0</span> <span class="mi">1</span> <span
class="mi">0</span><span class="p">]</span><span
class="o">'</span><span class="p">;</span>
<span class="n">ellObj</span> <span class="p">=</span> <span
class="n">externalEllMat</span><span class="p">(</span><span
class="mi">10</span><span class="p">).</span><span
class="n">projection</span><span class="p">(</span><span
class="n">basisMat</span><span class="p">);</span>
-<span class="n">plObj</span><span class="p">=</span><span
class="n">smartdb</span><span class="p">.</span><span
class="nb">disp</span><span class="p">.</span><span
class="n">RelationDataPlotter</span><span class="p">(</span><span
class="s">'figureGroupKeySuffFunc'</span><span
class="p">,@(</span><span class="n">x</span><span class="p">)</span><span
class="n">sprintf</span><span class="p">(</span><span
class="s">'_before_the_guard%d'</span><span class="p">,</span><span
class="n">x</span><span class="p">));</span>
+<span class="n">plObj</span><span class="p">=</span><span
class="n">smartdb</span><span class="p">.</span><span
class="nb">disp</span><span class="p">.</span><span
class="n">RelationDataPlotter</span><span class="p">(</span><span
class="s">'figureGroupKeySuffFunc'</span><span class="p">,</span>
<span class="c">...</span>
+ <span class="p">@(</span><span class="n">x</span><span
class="p">)</span><span class="n">sprintf</span><span
class="p">(</span><span class="s">'_before_the_guard%d'</span><span
class="p">,</span><span class="n">x</span><span class="p">));</span>
<span class="c">% to have the use of plObj isn't necessary </span>
<span class="n">ellObj</span><span class="p">.</span><span
class="n">plot</span><span class="p">(</span><span
class="s">'color'</span><span class="p">,</span> <span
class="p">[</span><span class="mi">0</span> <span class="mi">0</span> <span
class="mi">1</span><span class="p">],</span> <span
class="s">'newFigure'</span><span class="p">,</span> <span
class="n">true</span><span class="p">,</span> <span
class="s">'relDataPlotter'</span><span class="p">,</span> <span
class="n">plObj</span><span class="p">);</span>
<span class="c">% ellObj.plot('color', [0 0 1],
'newFigure', true);</span>
@@ -1008,31 +1016,37 @@
<span class="p">[</span><span class="n">hypVec</span><span
class="p">,</span> <span class="n">hypScal</span><span class="p">]</span>
<span class="p">=</span> <span class="n">grdHypObj</span><span
class="p">.</span><span class="n">double</span><span class="p">;</span>
<span class="n">hyp</span> <span class="p">=</span> <span
class="n">hyperplane</span><span class="p">([</span><span
class="n">hypVec</span><span class="p">(</span><span
class="mi">1</span><span class="p">);</span> <span
class="n">hypVec</span><span class="p">(</span><span
class="mi">2</span><span class="p">);</span> <span
class="n">hypVec</span><span class="p">(</span><span
class="mi">3</span><span class="p">)],</span> <span
class="n">hypScal</span><span class="p">);</span>
<span class="p">[</span><span class="n">centVec</span><span
class="p">,</span> <span class="o">~</span><span class="p">]</span> <span
class="p">=</span> <span class="n">double</span><span
class="p">(</span><span class="n">ellObj</span><span class="p">);</span>
-<span class="n">hyp</span><span class="p">.</span><span
class="n">plot</span><span class="p">(</span><span
class="s">'center'</span><span class="p">,</span> <span
class="p">[</span><span class="n">centVec</span><span
class="p">(</span><span class="mi">1</span><span class="p">)</span> <span
class="mi">200</span> <span class="n">centVec</span><span
class="p">(</span><span class="mi">3</span><span class="p">)],</span> <span
class="s">'color'</span><span class="p">,</span> <span
class="p">[</span><span class="mi">1</span> <span class="mi">0</span> <span
class="mi">0</span><span class="p">],</span> <span
class="s">'relDataPlotter'</span><span class="p">,</span> <span
class="n">plObj</span><span class="p">);</span>
+<span class="n">hyp</span><span class="p">.</span><span
class="n">plot</span><span class="p">(</span><span
class="s">'center'</span><span class="p">,</span> <span
class="p">[</span><span class="n">centVec</span><span
class="p">(</span><span class="mi">1</span><span class="p">)</span> <span
class="mi">200</span> <span class="n">centVec</span><span
class="p">(</span><span class="mi">3</span><span class="p">)],</span> <span
class="s">'color'</span><span class="p">,</span> <span
class="p">[</span><span class="mi">1</span> <span class="mi">0</span> <span
class="mi">0</span><span class="p">],</span> <span class="c">...</span>
+ <span class="s">'relDataPlotter'</span><span
class="p">,</span> <span class="n">plObj</span><span class="p">);</span>
<span class="c">% hyp.plot('center', [centVec(1) 200 centVec(3)],
'color', [1 0 0]);</span>
<span class="n">ellObj</span> <span class="p">=</span> <span
class="n">externalEllMat</span><span class="p">(</span><span
class="mi">50</span><span class="p">).</span><span
class="n">projection</span><span class="p">(</span><span
class="n">basisMat</span><span class="p">);</span>
-<span class="n">plObj</span><span class="p">=</span><span
class="n">smartdb</span><span class="p">.</span><span
class="nb">disp</span><span class="p">.</span><span
class="n">RelationDataPlotter</span><span class="p">(</span><span
class="s">'figureGroupKeySuffFunc'</span><span
class="p">,@(</span><span class="n">x</span><span class="p">)</span><span
class="n">sprintf</span><span class="p">(</span><span
class="s">'_crossing_the_guard%d'</span><span
class="p">,</span><span class="n">x</span><span class="p">));</span>
+<span class="n">plObj</span><span class="p">=</span><span
class="n">smartdb</span><span class="p">.</span><span
class="nb">disp</span><span class="p">.</span><span
class="n">RelationDataPlotter</span><span class="p">(</span><span
class="s">'figureGroupKeySuffFunc'</span><span class="p">,</span>
<span class="c">...</span>
+ <span class="p">@(</span><span class="n">x</span><span
class="p">)</span><span class="n">sprintf</span><span
class="p">(</span><span
class="s">'_crossing_the_guard%d'</span><span
class="p">,</span><span class="n">x</span><span class="p">));</span>
<span class="c">% to have the use of plObj isn't necessary</span>
<span class="n">ellObj</span><span class="p">.</span><span
class="n">plot</span><span class="p">(</span><span
class="s">'color'</span><span class="p">,</span> <span
class="p">[</span><span class="mi">0</span> <span class="mi">0</span> <span
class="mi">1</span><span class="p">],</span> <span
class="s">'newFigure'</span><span class="p">,</span> <span
class="n">true</span><span class="p">,</span> <span
class="s">'relDataPlotter'</span><span class="p">,</span> <span
class="n">plObj</span><span class="p">);</span>
<span class="c">% ellObj.plot('color', [0 0 1],
'newFigure', true);</span>
<span class="n">hold</span> <span class="n">on</span>
-<span class="n">hyp</span><span class="p">.</span><span
class="n">plot</span><span class="p">(</span><span
class="s">'center'</span><span class="p">,</span> <span
class="p">[</span><span class="n">centVec</span><span
class="p">(</span><span class="mi">1</span><span class="p">)</span> <span
class="mi">200</span> <span class="n">centVec</span><span
class="p">(</span><span class="mi">3</span><span class="p">)],</span> <span
class="s">'color'</span><span class="p">,</span> <span
class="p">[</span><span class="mi">1</span> <span class="mi">0</span> <span
class="mi">0</span><span class="p">],</span> <span
class="s">'relDataPlotter'</span><span class="p">,</span> <span
class="n">plObj</span><span class="p">);</span>
+<span class="n">hyp</span><span class="p">.</span><span
class="n">plot</span><span class="p">(</span><span
class="s">'center'</span><span class="p">,</span> <span
class="p">[</span><span class="n">centVec</span><span
class="p">(</span><span class="mi">1</span><span class="p">)</span> <span
class="mi">200</span> <span class="n">centVec</span><span
class="p">(</span><span class="mi">3</span><span class="p">)],</span> <span
class="s">'color'</span><span class="p">,</span> <span
class="p">[</span><span class="mi">1</span> <span class="mi">0</span> <span
class="mi">0</span><span class="p">],</span> <span class="c">...</span>
+ <span class="s">'relDataPlotter'</span><span
class="p">,</span> <span class="n">plObj</span><span class="p">);</span>
<span class="c">% hyp.plot('center', [centVec(1) 200 centVec(3)],
'color', [1 0 0]);</span>
<span class="n">ellObj</span> <span class="p">=</span> <span
class="n">externalEllMat</span><span class="p">(</span><span
class="mi">80</span><span class="p">).</span><span
class="n">projection</span><span class="p">(</span><span
class="n">basisMat</span><span class="p">);</span>
-<span class="n">plObj</span><span class="p">=</span><span
class="n">smartdb</span><span class="p">.</span><span
class="nb">disp</span><span class="p">.</span><span
class="n">RelationDataPlotter</span><span class="p">(</span><span
class="s">'figureGroupKeySuffFunc'</span><span
class="p">,@(</span><span class="n">x</span><span class="p">)</span><span
class="n">sprintf</span><span class="p">(</span><span
class="s">'_after_the_guard%d'</span><span class="p">,</span><span
class="n">x</span><span class="p">));</span>
+<span class="n">plObj</span><span class="p">=</span><span
class="n">smartdb</span><span class="p">.</span><span
class="nb">disp</span><span class="p">.</span><span
class="n">RelationDataPlotter</span><span class="p">(</span><span
class="s">'figureGroupKeySuffFunc'</span><span class="p">,</span>
<span class="c">...</span>
+ <span class="p">@(</span><span class="n">x</span><span
class="p">)</span><span class="n">sprintf</span><span
class="p">(</span><span class="s">'_after_the_guard%d'</span><span
class="p">,</span><span class="n">x</span><span class="p">));</span>
<span class="c">% to have the use of plObj isn't necessary</span>
<span class="n">ellObj</span><span class="p">.</span><span
class="n">plot</span><span class="p">(</span><span
class="s">'color'</span><span class="p">,</span> <span
class="p">[</span><span class="mi">0</span> <span class="mi">0</span> <span
class="mi">1</span><span class="p">],</span> <span
class="s">'newFigure'</span><span class="p">,</span> <span
class="n">true</span><span class="p">,</span> <span
class="s">'relDataPlotter'</span><span class="p">,</span> <span
class="n">plObj</span><span class="p">);</span>
<span class="c">% ellObj.plot('color', [0 0 1],
'newFigure', true);</span>
<span class="n">hold</span> <span class="n">on</span>
-<span class="n">hyp</span><span class="p">.</span><span
class="n">plot</span><span class="p">(</span><span
class="s">'center'</span><span class="p">,</span> <span
class="p">[</span><span class="n">centVec</span><span
class="p">(</span><span class="mi">1</span><span class="p">)</span> <span
class="mi">200</span> <span class="n">centVec</span><span
class="p">(</span><span class="mi">3</span><span class="p">)],</span> <span
class="s">'color'</span><span class="p">,</span> <span
class="p">[</span><span class="mi">1</span> <span class="mi">0</span> <span
class="mi">0</span><span class="p">],</span> <span
class="s">'relDataPlotter'</span><span class="p">,</span> <span
class="n">plObj</span><span class="p">);</span>
+<span class="n">hyp</span><span class="p">.</span><span
class="n">plot</span><span class="p">(</span><span
class="s">'center'</span><span class="p">,</span> <span
class="p">[</span><span class="n">centVec</span><span
class="p">(</span><span class="mi">1</span><span class="p">)</span> <span
class="mi">200</span> <span class="n">centVec</span><span
class="p">(</span><span class="mi">3</span><span class="p">)],</span> <span
class="s">'color'</span><span class="p">,</span> <span
class="p">[</span><span class="mi">1</span> <span class="mi">0</span> <span
class="mi">0</span><span class="p">],</span> <span class="c">...</span>
+ <span class="s">'relDataPlotter'</span><span
class="p">,</span> <span class="n">plObj</span><span class="p">);</span>
<span class="c">% hyp.plot('center', [centVec(1) 200 centVec(3)],
'color', [1 0 0]);</span>
<span class="n">basisMat</span> <span class="p">=</span> <span
class="p">[</span><span class="mi">1</span> <span class="mi">0</span> <span
class="mi">0</span> <span class="mi">0</span><span class="p">;</span> <span
class="mi">0</span> <span class="mi">1</span> <span class="mi">0</span>
<span class="mi">0</span><span class="p">]</span><span
class="o">'</span><span class="p">;</span>
<span class="n">ellObjVec</span> <span class="p">=</span> <span
class="n">copyEllMat</span><span class="p">(</span><span
class="mi">1</span><span class="p">:</span><span class="mi">101</span><span
class="p">).</span><span class="n">projection</span><span
class="p">(</span><span class="n">basisMat</span><span class="p">);</span>
-<span class="n">plObj</span><span class="p">=</span><span
class="n">smartdb</span><span class="p">.</span><span
class="nb">disp</span><span class="p">.</span><span
class="n">RelationDataPlotter</span><span class="p">(</span><span
class="s">'figureGroupKeySuffFunc'</span><span
class="p">,@(</span><span class="n">x</span><span class="p">)</span><span
class="n">sprintf</span><span class="p">(</span><span
class="s">'_all2D%d'</span><span class="p">,</span><span
class="n">x</span><span class="p">));</span>
+<span class="n">plObj</span><span class="p">=</span><span
class="n">smartdb</span><span class="p">.</span><span
class="nb">disp</span><span class="p">.</span><span
class="n">RelationDataPlotter</span><span class="p">(</span><span
class="s">'figureGroupKeySuffFunc'</span><span class="p">,</span>
<span class="c">...</span>
+ <span class="p">@(</span><span class="n">x</span><span
class="p">)</span><span class="n">sprintf</span><span
class="p">(</span><span class="s">'_all2D%d'</span><span
class="p">,</span><span class="n">x</span><span class="p">));</span>
<span class="c">% to have the use of plObj isn't necessary</span>
<span class="k">for</span> <span class="n">iElem</span> <span
class="p">=</span> <span class="mi">1</span><span class="p">:</span><span
class="mi">101</span>
<span class="n">ellObjVec</span><span class="p">(</span><span
class="n">iElem</span><span class="p">).</span><span
class="n">plot</span><span class="p">(</span><span
class="s">'color'</span><span class="p">,</span> <span
class="p">[</span><span class="mi">0</span> <span class="mi">0</span> <span
class="mi">1</span><span class="p">],</span> <span
class="s">'fill'</span><span class="p">,</span> <span
class="mi">1</span><span class="p">,</span> <span
class="s">'relDataPlotter'</span><span class="p">,</span> <span
class="n">plObj</span><span class="p">);</span>
@@ -1056,19 +1070,19 @@
<p>The union of reach sets in array crs forms the reach set for the
congested dynamics.</p>
<p>A summary of the reach set computation of the linear hybrid system
-<a href="#equation-fflow">(8)</a>-<a href="#equation-cflow">(9)</a> for
<img class="math"
src="_images/math/85710a1e86eb80e50393384531ce9c83f3f1dfbc.png"
alt="N=100"/> time steps with one guard crossing
-is given in <a class="pageref" href="#hwreachfig">figure 7</a> (d), which
shows the projection of the
-reach set trace onto <img class="math"
src="_images/math/b8f653df0b5080df4f9b612416fb9b1218719566.png"
alt="(x_1,x_2)"/> subspace. The system starts
+<a href="#equation-fflow">(8)</a>-<a href="#equation-cflow">(9)</a> for
<img class="math"
src="_images/math/b7935b9d18274f0d7917c7c07b9689d14205020c.png"
alt="N=100"/> time steps with one guard crossing
+is given in <a href="#hwreachfig">figure 7</a> (d), which shows the
projection of the
+reach set trace onto <img class="math"
src="_images/math/0dec8dfe93d64205e7451291af8e08680e02b60b.png"
alt="(x_1,x_2)"/> subspace. The system starts
evolving in time in free-flow mode from a set of initial conditions at
-<img class="math"
src="_images/math/5a607fd61885c014512c949fee18869690330407.png"
alt="t=0"/>, whose boundary is shown in magenta. The free-flow reach set
-evolving from <img class="math"
src="_images/math/5a607fd61885c014512c949fee18869690330407.png" alt="t=0"/>
to <img class="math"
src="_images/math/1ef00a4b3c7d323b5c192de5fcd48842529e0b67.png"
alt="t=100"/> is shown in blue. Between
-<img class="math"
src="_images/math/f473344b7a2074772465305139d5e52356bbc691.png"
alt="t=18"/> and <img class="math"
src="_images/math/0a2db80eff581acd4c65078a2426f481e80eb8e8.png"
alt="t=68"/> the free-flow reach set crosses the guard.
+<img class="math"
src="_images/math/4e2677b4edfbb85a135b7807d780a44ffa83f052.png"
alt="t=0"/>, whose boundary is shown in magenta. The free-flow reach set
+evolving from <img class="math"
src="_images/math/4e2677b4edfbb85a135b7807d780a44ffa83f052.png" alt="t=0"/>
to <img class="math"
src="_images/math/b651b950e834fad895a1e49e439b1961bac725b0.png"
alt="t=100"/> is shown in blue. Between
+<img class="math"
src="_images/math/d7c015e171c5e9be4e19358f0d4820d6e045742a.png"
alt="t=18"/> and <img class="math"
src="_images/math/6b99100f2c7c81a91f63b5e96ba1674e4cf07556.png"
alt="t=68"/> the free-flow reach set crosses the guard.
The guard is shown in red. For each nonempty intersection of the
free-flow reach set and the guard, the congested mode reach set starts
-evolving in time until <img class="math"
src="_images/math/1ef00a4b3c7d323b5c192de5fcd48842529e0b67.png"
alt="t=100"/>. All the congested mode reach sets
+evolving in time until <img class="math"
src="_images/math/b651b950e834fad895a1e49e439b1961bac725b0.png"
alt="t=100"/>. All the congested mode reach sets
are shown in green. Observe that in the congested mode, the density
-<img class="math"
src="_images/math/6a7d010bbff66a0c41e43310a51efbaa6bf63396.png" alt="x_2"/>
in the congested part decreases slightly, while the density
-<img class="math"
src="_images/math/ccada11db7b2b90693e2fac4f887a57fce6f96bf.png" alt="x_1"/>
upstream of the congested part increases. The blue set above
+<img class="math"
src="_images/math/272c62c44455c90173267b1bafdf7ecebd6bc316.png" alt="x_2"/>
in the congested part decreases slightly, while the density
+<img class="math"
src="_images/math/b31b1ea8e4fe3f618dedfb0e2d8c69a3df7a391d.png" alt="x_1"/>
upstream of the congested part increases. The blue set above
the guard is not actually reached, because the state evolves according
to the green region.</p>
<h2>References</h2><table class="docutils citation" frame="void"
id="sun2003" rules="none">
@@ -1103,8 +1117,8 @@
<p class="topless"><a href="chap_implement.html"
title="previous chapter">Implementation</a></p>
<h4>Next topic</h4>
- <p class="topless"><a href="chap_summary.html"
- title="next chapter">Summary and Outlook</a></p>
+ <p class="topless"><a href="chap_ellTube.html"
+ title="next chapter">Ellipsoid tubes and touching
curves</a></p>
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="_sources/chap_examples.txt"
@@ -1134,7 +1148,7 @@
<a href="genindex.html" title="General Index"
>index</a></li>
<li class="right" >
- <a href="chap_summary.html" title="Summary and Outlook"
+ <a href="chap_ellTube.html" title="Ellipsoid tubes and touching
curves"
>next</a> |</li>
<li class="right" >
<a href="chap_implement.html" title="Implementation"
@@ -1144,7 +1158,7 @@
</div>
<div class="footer">
© Copyright 2011-2013 Moscow State University, Faculty of
Computational Mathematics and Computer Science, System Analysis Department,
2004-2011 The Regents of the University of California.
- Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2b2.
+ Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2.1.
</div>
</body>
</html>
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/chap_functions.html Tue
Nov 19 13:06:03 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/chap_functions.html Mon
Feb 24 20:40:31 2014 UTC
@@ -51,7 +51,7 @@
<h2>ellipsoid<a class="headerlink" href="#ellipsoid" title="Permalink to
this headline">¶</a></h2>
<div class="section" id="ellipsoid-calcgrid">
<h3>ellipsoid.calcGrid<a class="headerlink" href="#ellipsoid-calcgrid"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>CALCGRID - computes grid of 2d or 3d
sphere and vertices for each face
+<div class="highlight-python"><div class="highlight"><pre>CALCGRID -
computes grid of 2d or 3d sphere and vertices for each face
in the grid with number of points taken from ellObj
nPlot2dPoints or nPlot3dPoints parameters
@@ -71,12 +71,13 @@
regular:
vGridat: double[nPoints,nDim] - vertices of the grid
fGridMat: double[nFacePoints,nFacePoints] - indices of vertices in
- each face in the grid</pre>
+ each face in the grid
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-checkisme">
<h3>ellipsoid.checkIsMe<a class="headerlink" href="#ellipsoid-checkisme"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>CHECKISME - determine whether input
object is ellipsoid. And display
+<div class="highlight-python"><div class="highlight"><pre>CHECKISME -
determine whether input object is ellipsoid. And display
message and abort function if input object
is not ellipsoid
@@ -86,12 +87,13 @@
Example:
ellObj = ellipsoid([1; 2], eye(2));
- ellipsoid.checkIsMe(ellObj)</pre>
+ ellipsoid.checkIsMe(ellObj)
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-contents">
<h3>ellipsoid.contents<a class="headerlink" href="#ellipsoid-contents"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>Ellipsoid library of the Ellipsoidal
Toolbox.
+<div class="highlight-python"><div class="highlight"><pre>Ellipsoid
library of the Ellipsoidal Toolbox.
Constructor and data accessing functions:
@@ -99,7 +101,7 @@
ellipsoid - Constructor of ellipsoid object.
double - Returns parameters of ellipsoid, i.e. center and shape
matrix.
- parameters - Same function as 'double'(legacy matter).
+ parameters - Same function as 'double'(legacy matter).
dimension - Returns dimension of ellipsoid and its rank.
isdegenerate - Checks if ellipsoid is degenerate.
isempty - Checks if ellipsoid is empty.
@@ -112,7 +114,7 @@
Overloaded operators and functions:
-----------------------------------
eq - Checks if two ellipsoids are equal.
- ne - The opposite of 'eq'.
+ ne - The opposite of 'eq'.
gt, ge - E1 > E2 (E1 >= E2) checks if, given the same center
ellipsoid
E1 contains E2.
lt, le - E1 < E2 (E1 <= E2) checks if, given the same center
ellipsoid
@@ -130,7 +132,7 @@
Geometry functions:
-------------------
move2origin - Moves the center of ellipsoid to the origin.
- shape - Same as 'mtimes', but modifies only shape matrix of
+ shape - Same as 'mtimes', but modifies only shape
matrix of
the ellipsoid leaving its center as is.
rho - Computes the value of support function and
corresponding boundary point of the ellipsoid in
@@ -198,12 +200,13 @@
in the intersection of given ellipsoids (can be more
than 2).
ellunion_ea - Computes minimum volume ellipsoid that contains
the union of given ellipsoids.
- hpintersection - Computes the intersection of ellipsoid with
hyperplane.</pre>
+ hpintersection - Computes the intersection of ellipsoid with
hyperplane.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-dimension">
<h3>ellipsoid.dimension<a class="headerlink" href="#ellipsoid-dimension"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>DIMENSION - returns the dimension of
the space in which the ellipsoid is
+<div class="highlight-python"><div class="highlight"><pre>DIMENSION -
returns the dimension of the space in which the ellipsoid is
defined and the actual dimension of the ellipsoid.
Input:
@@ -221,7 +224,7 @@
Example:
firstEllObj = ellipsoid();
tempMatObj = [3 1; 0 1; -2 1];
- secEllObj = ellipsoid([1; -1; 1], tempMatObj*tempMatObj');
+ secEllObj = ellipsoid([1; -1; 1], tempMatObj*tempMatObj');
thirdEllObj = ellipsoid(eye(2));
fourthEllObj = ellipsoid(0);
ellMat = [firstEllObj secEllObj; thirdEllObj fourthEllObj];
@@ -235,12 +238,13 @@
rankMat =
0 2
- 2 0</pre>
+ 2 0
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-disp">
<h3>ellipsoid.disp<a class="headerlink" href="#ellipsoid-disp"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>DISP - Displays ellipsoid object.
+<div class="highlight-python"><div class="highlight"><pre>DISP - Displays
ellipsoid object.
Input:
regular:
@@ -257,12 +261,13 @@
Shape Matrix:
2 -1
- -1 1</pre>
+ -1 1
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-display">
<h3>ellipsoid.display<a class="headerlink" href="#ellipsoid-display"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>DISPLAY - Displays the details of the
ellipsoid object.
+<div class="highlight-python"><div class="highlight"><pre>DISPLAY -
Displays the details of the ellipsoid object.
Input:
regular:
@@ -282,12 +287,13 @@
2 -1
-1 1
- Nondegenerate ellipsoid in R^2.</pre>
+ Nondegenerate ellipsoid in R^2.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-distance">
<h3>ellipsoid.distance<a class="headerlink" href="#ellipsoid-distance"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>DISTANCE - computes distance between
the given ellipsoid (or array of
+<div class="highlight-python"><div class="highlight"><pre>DISTANCE -
computes distance between the given ellipsoid (or array of
ellipsoids) to the specified object (or arrays of objects):
vector, ellipsoid, hyperplane or polytope.
@@ -327,24 +333,25 @@
Literature:
1. Lin, A. and Han, S. On the Distance between Two Ellipsoids.
SIAM Journal on Optimization, 2002, Vol. 13, No. 1 : pp. 298-308
- 2. Stanley Chan, "Numerical method for Finding Minimum Distance to an
- Ellipsoid".
+ 2. Stanley Chan, "Numerical method for Finding Minimum Distance to an
+ Ellipsoid".
http://videoprocessing.ucsd.edu/~stanleychan/publication/...
unpublished/Ellipse.pdf
Example:
ellObj = ellipsoid([-2; -1], [4 -1; -1 1]);
- tempMat = [1 1; 1 -1; -1 1; -1 -1]';
+ tempMat = [1 1; 1 -1; -1 1; -1 -1]';
distVec = ellObj.distance(tempMat)
distVec =
- 2.3428 1.0855 1.3799 -1.0000</pre>
+ 2.3428 1.0855 1.3799 -1.0000
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-doescontain">
<h3>ellipsoid.doesContain<a class="headerlink"
href="#ellipsoid-doescontain" title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>DOESCONTAIN - checks if one ellipsoid
contains the other ellipsoid or
+<div class="highlight-python"><div class="highlight"><pre>DOESCONTAIN -
checks if one ellipsoid contains the other ellipsoid or
polytope. The condition for E1 = firstEllArr to contain
E2 = secondEllArr is
min(rho(l | E1) - rho(l | E2)) > 0, subject to <l,
l> = 1.
@@ -359,14 +366,14 @@
size as firstEllArr or single ellipsoid or polytope.
properties:
- mode: char[1, 1] - 'u' or 'i', go to description.
- computeMode: char[1,] - 'highDimFast' or 'lowDimFast'. Determines,
+ mode: char[1, 1] - 'u' or 'i', go to description.
+ computeMode: char[1,] - 'highDimFast' or
'lowDimFast'. Determines,
which way function is computed, when secObjArr is polytope. If
- secObjArr is ellipsoid computeMode is ignored. 'highDimFast'
- works faster for high dimensions, 'lowDimFast' for low. If
+ secObjArr is ellipsoid computeMode is ignored.
'highDimFast'
+ works faster for high dimensions, 'lowDimFast' for
low. If
this property is omitted if dimension of ellipsoids is greater
- then 10, then 'hightDimFast' is choosen, otherwise -
- 'lowDimFast'
+ then 10, then 'hightDimFast' is choosen, otherwise -
+ 'lowDimFast'
Output:
isPosArr: logical[nDims1,nDims2,...,nDimsN],
@@ -380,29 +387,30 @@
ans =
- 0</pre>
+ 0
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-doesintersectioncontain">
<h3>ellipsoid.doesIntersectionContain<a class="headerlink"
href="#ellipsoid-doesintersectioncontain" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>DOESINTERSECTIONCONTAIN - checks if the
intersection of ellipsoids
+<div class="highlight-python"><div
class="highlight"><pre>DOESINTERSECTIONCONTAIN - checks if the intersection
of ellipsoids
contains the union or intersection of given
ellipsoids or polytopes.
res = DOESINTERSECTIONCONTAIN(fstEllArr, secEllArr, mode)
Checks if the union
- (mode = 'u') or intersection (mode = 'i') of ellipsoids in
+ (mode = 'u') or intersection (mode = 'i') of
ellipsoids in
secEllArr lies inside the intersection of ellipsoids in
fstEllArr. Ellipsoids in fstEllArr and secEllArr must be
- of the same dimension. mode = 'u' (default) - union of
- ellipsoids in secEllArr. mode = 'i' - intersection.
+ of the same dimension. mode = 'u' (default) - union of
+ ellipsoids in secEllArr. mode = 'i' - intersection.
res = DOESINTERSECTIONCONTAIN(fstEllArr, secPolyArr, mode)
Checks if the union
- (mode = 'u') or intersection (mode = 'i') of polytopes in
+ (mode = 'u') or intersection (mode = 'i') of
polytopes in
secPolyArr lies inside the intersection of ellipsoids in
fstEllArr. Ellipsoids in fstEllArr and polytopes in secPolyArr
- must be of the same dimension. mode = 'u' (default) - union of
- polytopes in secPolyMat. mode = 'i' - intersection.
+ must be of the same dimension. mode = 'u' (default) - union
of
+ polytopes in secPolyMat. mode = 'i' - intersection.
To check if the union of ellipsoids secEllArr belongs to the
intersection of ellipsoids fstEllArr, it is enough to check that
@@ -446,43 +454,44 @@
polytope [nDims1,nDims2,...,nDimsN] - array of ellipsoids or
polytopes of the same sizes.
- note: if mode == 'i', then fstEllArr, secEllVec should be
+ note: if mode == 'i', then fstEllArr, secEllVec should be
array.
properties:
- mode: char[1, 1] - 'u' or 'i', go to description.
- computeMode: char[1,] - 'highDimFast' or 'lowDimFast'. Determines,
+ mode: char[1, 1] - 'u' or 'i', go to description.
+ computeMode: char[1,] - 'highDimFast' or
'lowDimFast'. Determines,
which way function is computed, when secObjArr is polytope. If
- secObjArr is ellipsoid computeMode is ignored. 'highDimFast'
- works faster for high dimensions, 'lowDimFast' for low. If
+ secObjArr is ellipsoid computeMode is ignored.
'highDimFast'
+ works faster for high dimensions, 'lowDimFast' for
low. If
this property is omitted if dimension of ellipsoids is greater
- then 10, then 'hightDimFast' is choosen, otherwise -
- 'lowDimFast'
+ then 10, then 'hightDimFast' is choosen, otherwise -
+ 'lowDimFast'
Output:
res: double[1, 1] - result:
- -1 - problem is infeasible, for example, if s = 'i',
+ -1 - problem is infeasible, for example, if s = 'i',
but the intersection of ellipsoids in E2 is an empty set;
0 - intersection is empty;
1 - if intersection is nonempty.
status: double[0, 0]/double[1, 1] - status variable. status is empty
- if mode == 'u' or mSecRows == nSecCols == 1.
+ if mode == 'u' or mSecRows == nSecCols == 1.
Example:
firstEllObj = [0 ; 0] + ellipsoid(eye(2, 2));
secEllObj = [0 ; 0] + ellipsoid(2*eye(2, 2));
thirdEllObj = [1; 0] + ellipsoid(0.5 * eye(2, 2));
- secEllObj.doesIntersectionContain([firstEllObj secEllObj], 'i')
+ secEllObj.doesIntersectionContain([firstEllObj secEllObj], 'i')
ans =
- 1</pre>
+ 1
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-double">
<h3>ellipsoid.double<a class="headerlink" href="#ellipsoid-double"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>DOUBLE - returns parameters of the
ellipsoid.
+<div class="highlight-python"><div class="highlight"><pre>DOUBLE - returns
parameters of the ellipsoid.
Input:
regular:
@@ -506,12 +515,13 @@
shapeMat =
2 -1
- -1 1</pre>
+ -1 1
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-ellbndr-2d">
<h3>ellipsoid.ellbndr_2d<a class="headerlink" href="#ellipsoid-ellbndr-2d"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>ELLBNDR_2D - compute the boundary of 2D
ellipsoid. Private method.
+<div class="highlight-python"><div class="highlight"><pre>ELLBNDR_2D -
compute the boundary of 2D ellipsoid. Private method.
Input:
regular:
@@ -524,12 +534,13 @@
bpMat: double[nPoints,2] - boundary points of ellipsoid
optional:
fVec: double[1,nFaces] - indices of points in each face of
- bpMat graph</pre>
+ bpMat graph
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-ellbndr-3d">
<h3>ellipsoid.ellbndr_3d<a class="headerlink" href="#ellipsoid-ellbndr-3d"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>ELLBNDR_3D - compute the boundary of 3D
ellipsoid.
+<div class="highlight-python"><div class="highlight"><pre>ELLBNDR_3D -
compute the boundary of 3D ellipsoid.
Input:
regular:
@@ -542,12 +553,13 @@
regular:
bpMat: double[nPoints,3] - boundary points of ellipsoid
optional:
- fMat: double[nFaces,3] - indices of face verties in bpMat</pre>
+ fMat: double[nFaces,3] - indices of face verties in bpMat
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-ellintersection-ia">
<h3>ellipsoid.ellintersection_ia<a class="headerlink"
href="#ellipsoid-ellintersection-ia" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>ELLINTERSECTION_IA - computes maximum
volume ellipsoid that is contained
+<div class="highlight-python"><div
class="highlight"><pre>ELLINTERSECTION_IA - computes maximum volume
ellipsoid that is contained
in the intersection of given ellipsoids.
@@ -575,15 +587,16 @@
0.0340 -0.0607
-0.0607 0.1713
- Nondegenerate ellipsoid in R^2.</pre>
+ Nondegenerate ellipsoid in R^2.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-ellipsoid">
<h3>ellipsoid.ellipsoid<a class="headerlink" href="#ellipsoid-ellipsoid"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>ELLIPSOID - constructor of the
ellipsoid object.
+<div class="highlight-python"><div class="highlight"><pre>ELLIPSOID -
constructor of the ellipsoid object.
Ellipsoid E = { x in R^n : <(x - q), Q^(-1)(x - q)> <= 1 },
with current
- "Properties". Here q is a vector in R^n, and Q in R^(nxn) is positive
+ "Properties". Here q is a vector in R^n, and Q in R^(nxn)
is positive
semi-definite matrix
ell = ELLIPSOID - Creates an empty ellipsoid
@@ -594,14 +607,14 @@
ell = ELLIPSOID(centVec, shMat) - creates an ellipsoid with shape
matrix
shMat and center centVec
- ell = ELLIPSOID(centVec, shMat, 'propName1', propVal1,...,
- 'propNameN',propValN) - creates an ellipsoid with shape
+ ell = ELLIPSOID(centVec, shMat, 'propName1', propVal1,...,
+ 'propNameN',propValN) - creates an ellipsoid with shape
matrix shMat, center centVec and propName1 = propVal1,...,
- propNameN = propValN. In other cases "Properties"
+ propNameN = propValN. In other cases "Properties"
are taken from current values stored in
elltool.conf.Properties.
ellMat = Ellipsoid(centVecArray, shMatArray,
- ['propName1', propVal1,...,'propNameN',propValN]) -
+ ['propName1', propVal1,...,'propNameN',propValN]) -
creates an array (possibly multidimensional) of
ellipsoids with centers centVecArray(:,dim1,...,dimn)
and matrices shMatArray(:,:,dim1,...dimn) with
@@ -645,12 +658,13 @@
or multidimensional array of ellipsoids.
Example:
- ellObj = ellipsoid([1 0 -1 6]', 9*eye(4));</pre>
+ ellObj = ellipsoid([1 0 -1 6]', 9*eye(4));
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-ellunion-ea">
<h3>ellipsoid.ellunion_ea<a class="headerlink"
href="#ellipsoid-ellunion-ea" title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>ELLUNION_EA - computes minimum volume
ellipsoid that contains union
+<div class="highlight-python"><div class="highlight"><pre>ELLUNION_EA -
computes minimum volume ellipsoid that contains union
of given ellipsoids.
Input:
@@ -676,12 +690,13 @@
5.4573 1.3386
1.3386 4.1037
- Nondegenerate ellipsoid in R^2.</pre>
+ Nondegenerate ellipsoid in R^2.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-fromrepmat">
<h3>ellipsoid.fromRepMat<a class="headerlink" href="#ellipsoid-fromrepmat"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>FROMREPMAT - returns array of equal
ellipsoids the same
+<div class="highlight-python"><div class="highlight"><pre>FROMREPMAT -
returns array of equal ellipsoids the same
size as stated in sizeVec argument
ellArr = fromRepMat(sizeVec) - creates an array size
@@ -725,12 +740,13 @@
nPlot2dPoints: double [1,1] - number of points for 2D plot
with default value 200
nPlot3dPoints: double [1,1] - number of points for 3D plot
- with default value 200.</pre>
+ with default value 200.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-fromstruct">
<h3>ellipsoid.fromStruct<a class="headerlink" href="#ellipsoid-fromstruct"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>fromStruct -- converts structure array
into ellipsoid array.
+<div class="highlight-python"><div class="highlight"><pre>fromStruct --
converts structure array into ellipsoid array.
Input:
regular:
@@ -744,18 +760,18 @@
SEllArr.
Example:
-s = struct('Q', eye(2), 'q', [0 0]);
+s = struct('Q', eye(2), 'q', [0 0]);
ellipsoid.fromStruct(s)
-------ellipsoid object-------
Properties:
|
- |-- actualClass : 'ellipsoid'
+ |-- actualClass : 'ellipsoid'
|--------- size : [1, 1]
Fields (name, type, description):
- 'Q' 'double' 'Configuration matrix'
- 'q' 'double' 'Center'
+ 'Q' 'double' 'Configuration matrix'
+ 'q' 'double' 'Center'
Data:
|
@@ -763,12 +779,13 @@
| -----
|-- Q : |1|0|
| |0|1|
- | -----</pre>
+ | -----
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getabstol">
<h3>ellipsoid.getAbsTol<a class="headerlink" href="#ellipsoid-getabstol"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>GETABSTOL - gives the array of absTol
for all elements in ellArr
+<div class="highlight-python"><div class="highlight"><pre>GETABSTOL -
gives the array of absTol for all elements in ellArr
Input:
regular:
@@ -803,12 +820,13 @@
1.0e-07 *
- 1.0000 1.0000</pre>
+ 1.0000 1.0000
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getboundary">
<h3>ellipsoid.getBoundary<a class="headerlink"
href="#ellipsoid-getboundary" title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>GETBOUNDARY - computes the boundary of
an ellipsoid.
+<div class="highlight-python"><div class="highlight"><pre>GETBOUNDARY -
computes the boundary of an ellipsoid.
Input:
regular:
@@ -818,12 +836,13 @@
Output:
bpMat: double[nPoints, nDims] - boundary points of ellipsoid.
- fMat: double[nFaces, nDims] - indices of points in each face of bpMat
graph.</pre>
+ fMat: double[nFaces, nDims] - indices of points in each face of bpMat
graph.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getboundarybyfactor">
<h3>ellipsoid.getBoundaryByFactor<a class="headerlink"
href="#ellipsoid-getboundarybyfactor" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre> GETBOUNDARYBYFACTOR - computes grid
of 2d or 3d ellipsoid and vertices
+<div class="highlight-python"><div class="highlight"><pre>
GETBOUNDARYBYFACTOR - computes grid of 2d or 3d ellipsoid and vertices
for each face in the grid
Input:
@@ -842,12 +861,13 @@
regular:
bpGridMat: double[nVertices,nDims] - vertices of the grid.
fGridMat: double[nFaces, nDims] - indices of vertices in each
- face in the grid (2d/3d cases).</pre>
+ face in the grid (2d/3d cases).
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getcentervec">
<h3>ellipsoid.getCenterVec<a class="headerlink"
href="#ellipsoid-getcentervec" title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>GETCENTERVEC - returns centerVec vector
of given ellipsoid
+<div class="highlight-python"><div class="highlight"><pre>GETCENTERVEC -
returns centerVec vector of given ellipsoid
Input:
regular:
@@ -863,12 +883,13 @@
ans =
1
- 2</pre>
+ 2
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getcopy">
<h3>ellipsoid.getCopy<a class="headerlink" href="#ellipsoid-getcopy"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>GETCOPY - gives array the same size as
ellArr with copies of elements of
+<div class="highlight-python"><div class="highlight"><pre>GETCOPY - gives
array the same size as ellArr with copies of elements of
ellArr.
Input:
@@ -887,13 +908,14 @@
copyEllVec = getCopy(ellVec)
copyEllVec =
- 1x2 array of ellipsoids.</pre>
+ 1x2 array of ellipsoids.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getinv">
<h3>ellipsoid.getInv<a class="headerlink" href="#ellipsoid-getinv"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>GETINV - do the same as INV method:
inverts shape matrices of ellipsoids
- in the given array, with only difference, that it doesn't modify
+<div class="highlight-python"><div class="highlight"><pre>GETINV - do the
same as INV method: inverts shape matrices of ellipsoids
+ in the given array, with only difference, that it doesn't modify
input array of ellipsoids.
Input:
@@ -918,13 +940,14 @@
0.2632 0.0526
0.0526 0.2105
- Nondegenerate ellipsoid in R^2.</pre>
+ Nondegenerate ellipsoid in R^2.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getmove2origin">
<h3>ellipsoid.getMove2Origin<a class="headerlink"
href="#ellipsoid-getmove2origin" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>GETMOVE2ORIGIN - do the same as
MOVE2ORIGIN method: moves ellipsoids in
- the given array to the origin, with only difference, that it doesn't
+<div class="highlight-python"><div class="highlight"><pre>GETMOVE2ORIGIN -
do the same as MOVE2ORIGIN method: moves ellipsoids in
+ the given array to the origin, with only difference, that it
doesn't
modify input array of ellipsoids.
Input:
@@ -950,12 +973,13 @@
4 -1
-1 1
- Nondegenerate ellipsoid in R^2.</pre>
+ Nondegenerate ellipsoid in R^2.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getnplot2dpoints">
<h3>ellipsoid.getNPlot2dPoints<a class="headerlink"
href="#ellipsoid-getnplot2dpoints" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>GETNPLOT2DPOINTS - gives value of
nPlot2dPoints property of ellipsoids
+<div class="highlight-python"><div class="highlight"><pre>GETNPLOT2DPOINTS
- gives value of nPlot2dPoints property of ellipsoids
in ellArr
Input:
@@ -974,12 +998,13 @@
ans =
- 200 200</pre>
+ 200 200
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getnplot3dpoints">
<h3>ellipsoid.getNPlot3dPoints<a class="headerlink"
href="#ellipsoid-getnplot3dpoints" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>GETNPLOT3DPOINTS - gives value of
nPlot3dPoints property of ellipsoids
+<div class="highlight-python"><div class="highlight"><pre>GETNPLOT3DPOINTS
- gives value of nPlot3dPoints property of ellipsoids
in ellArr
Input:
@@ -999,14 +1024,15 @@
ans =
- 200 200</pre>
+ 200 200
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getprojection">
<h3>ellipsoid.getProjection<a class="headerlink"
href="#ellipsoid-getprojection" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>GETPROJECTION - do the same as
PROJECTION method: computes projection of
+<div class="highlight-python"><div class="highlight"><pre>GETPROJECTION -
do the same as PROJECTION method: computes projection of
the ellipsoid onto the given subspace, with only difference, that
- it doesn't modify input array of ellipsoids.
+ it doesn't modify input array of ellipsoids.
Input:
regular:
@@ -1021,7 +1047,7 @@
Example:
ellObj = ellipsoid([-2; -1; 4], [4 -1 0; -1 1 0; 0 0 9]);
- basisMat = [0 1 0; 0 0 1]';
+ basisMat = [0 1 0; 0 0 1]';
outEllObj = ellObj.getProjection(basisMat)
outEllObj =
@@ -1034,12 +1060,13 @@
1 0
0 9
- Nondegenerate ellipsoid in R^2.</pre>
+ Nondegenerate ellipsoid in R^2.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getreltol">
<h3>ellipsoid.getRelTol<a class="headerlink" href="#ellipsoid-getreltol"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>GETRELTOL - gives the array of relTol
for all elements in ellArr
+<div class="highlight-python"><div class="highlight"><pre>GETRELTOL -
gives the array of relTol for all elements in ellArr
Input:
regular:
@@ -1073,12 +1100,13 @@
1.0e-05 *
- 1.0000 1.0000</pre>
+ 1.0000 1.0000
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getrhoboundary">
<h3>ellipsoid.getRhoBoundary<a class="headerlink"
href="#ellipsoid-getrhoboundary" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>GETRHOBOUNDARY - computes the boundary
of an ellipsoid and
+<div class="highlight-python"><div class="highlight"><pre>GETRHOBOUNDARY -
computes the boundary of an ellipsoid and
support function values.
Input:
@@ -1093,12 +1121,13 @@
bpMat graph.
supVec: double[nPoints+1, 1] - vector of values of the support
function in directions (bpMat - cenMat).
- lGridMat: double[nPoints+1, nDims] - array of directions.</pre>
+ lGridMat: double[nPoints+1, nDims] - array of directions.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getrhoboundarybyfactor">
<h3>ellipsoid.getRhoBoundaryByFactor<a class="headerlink"
href="#ellipsoid-getrhoboundarybyfactor" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>GETRHOBOUNDARYBYFACTOR - computes grid
of 2d or 3d ellipsoid and vertices
+<div class="highlight-python"><div
class="highlight"><pre>GETRHOBOUNDARYBYFACTOR - computes grid of 2d or 3d
ellipsoid and vertices
for each face in the grid and support function values.
Input:
@@ -1118,14 +1147,15 @@
fGridMat: double[nFaces, nDims] - indices of vertices in each face
in the grid (2d/3d cases).
supVec: double[nVertices, 1] - vector of values of the support
function.
- lGridMat: double[nVertices, nDims] - array of directions.</pre>
+ lGridMat: double[nVertices, nDims] - array of directions.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getshape">
<h3>ellipsoid.getShape<a class="headerlink" href="#ellipsoid-getshape"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>GETSHAPE - do the same as SHAPE
method: modifies the shape matrix of the
+<div class="highlight-python"><div class="highlight"><pre>GETSHAPE - do
the same as SHAPE method: modifies the shape matrix of the
ellipsoid without changing its center, with only difference, that
- it doesn't modify input array of ellipsoids.
+ it doesn't modify input array of ellipsoids.
Input:
regular:
@@ -1152,12 +1182,13 @@
1 1
1 4
- Nondegenerate ellipsoid in R^2.</pre>
+ Nondegenerate ellipsoid in R^2.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-getshapemat">
<h3>ellipsoid.getShapeMat<a class="headerlink"
href="#ellipsoid-getshapemat" title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>GETSHAPEMAT - returns shapeMat matrix
of given ellipsoid
+<div class="highlight-python"><div class="highlight"><pre>GETSHAPEMAT -
returns shapeMat matrix of given ellipsoid
Input:
regular:
@@ -1173,12 +1204,13 @@
ans =
1 0
- 0 1</pre>
+ 0 1
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-hpintersection">
<h3>ellipsoid.hpintersection<a class="headerlink"
href="#ellipsoid-hpintersection" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>HPINTERSECTION - computes the
intersection of ellipsoid with hyperplane.
+<div class="highlight-python"><div class="highlight"><pre>HPINTERSECTION -
computes the intersection of ellipsoid with hyperplane.
Input:
regular:
@@ -1193,35 +1225,36 @@
isnIntersectedArr: logical [nDims1,nDims2,...,nDimsN].
isnIntersectedArr(iCount) = true, if myEllArr(iCount)
- doesn't intersect myHipArr(iCount),
+ doesn't intersect myHipArr(iCount),
isnIntersectedArr(iCount) = false, otherwise.
Example:
ellObj = ellipsoid([-2; -1], [4 -1; -1 1]);
- hypMat = [hyperplane([0 -1; -1 0]', 1); hyperplane([0 -2; -1 0]', 1)];
+ hypMat = [hyperplane([0 -1; -1 0]', 1); hyperplane([0 -2; -1
0]', 1)];
ellMat = ellObj.hpintersection(hypMat)
ellMat =
- 2x2 array of ellipsoids.</pre>
+ 2x2 array of ellipsoids.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-intersect">
<h3>ellipsoid.intersect<a class="headerlink" href="#ellipsoid-intersect"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>INTERSECT - checks if the union or
intersection of ellipsoids intersects
+<div class="highlight-python"><div class="highlight"><pre>INTERSECT -
checks if the union or intersection of ellipsoids intersects
given ellipsoid, hyperplane or polytope.
resArr = INTERSECT(myEllArr, objArr, mode) - Checks if the union
- (mode = 'u') or intersection (mode = 'i') of ellipsoids
+ (mode = 'u') or intersection (mode = 'i') of
ellipsoids
in myEllArr intersects with objects in objArr.
objArr can be array of ellipsoids, array of hyperplanes,
or array of polytopes.
Ellipsoids, hyperplanes or polytopes in objMat must have
the same dimension as ellipsoids in myEllArr.
- mode = 'u' (default) - union of ellipsoids in myEllArr.
- mode = 'i' - intersection.
+ mode = 'u' (default) - union of ellipsoids in myEllArr.
+ mode = 'i' - intersection.
If we need to check the intersection of union of ellipsoids in
- myEllArr (mode = 'u'), or if myEllMat is a single ellipsoid,
+ myEllArr (mode = 'u'), or if myEllMat is a single ellipsoid,
it can be done by calling distance function for each of the
ellipsoids in myEllArr and objMat, and if it returns negative value,
the intersection is nonempty. Checking if the intersection of
@@ -1255,7 +1288,7 @@
If we check the intersection of ellipsoids with hyperplane
objArr = H(v, c), it is enough to check the feasibility
of the problem
- 1'x --> min
+ 1'x --> min
with constraints (1)-(n), plus
<v, x> - c = 0.
@@ -1273,14 +1306,14 @@
hyperplanes or polytopes of the same sizes.
optional:
- mode: char[1, 1] - 'u' or 'i', go to description.
+ mode: char[1, 1] - 'u' or 'i', go to description.
- note: If mode == 'u', then mRows, nCols should be equal to 1.
+ note: If mode == 'u', then mRows, nCols should be equal
to 1.
Output:
resArr: double[nDims1,nDims2,...,nDimsN] - return:
resArr(iCount) = -1 in case parameter mode is set
- to 'i' and the intersection of ellipsoids in myEllArr
+ to 'i' and the intersection of ellipsoids in myEllArr
is empty.
resArr(iCount) = 0 if the union or intersection of
ellipsoids in myEllArr does not intersect the object
@@ -1289,7 +1322,7 @@
ellipsoids in myEllArr and the object in objArr(iCount)
have nonempty intersection.
statusArr: double[0, 0]/double[nDims1,nDims2,...,nDimsN] - status
- variable. statusArr is empty if mode = 'u'.
+ variable. statusArr is empty if mode = 'u'.
Example:
firstEllObj = ellipsoid([-2; -1], [4 -1; -1 1]);
@@ -1302,16 +1335,17 @@
1
- ellVec.intersect(hypObj, 'i')
+ ellVec.intersect(hypObj, 'i')
ans =
- -1</pre>
+ -1
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-intersection-ea">
<h3>ellipsoid.intersection_ea<a class="headerlink"
href="#ellipsoid-intersection-ea" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>INTERSECTION_EA - external ellipsoidal
approximation of the
+<div class="highlight-python"><div class="highlight"><pre>INTERSECTION_EA
- external ellipsoidal approximation of the
intersection of two ellipsoids, or ellipsoid and
halfspace, or ellipsoid and polytope.
@@ -1335,13 +1369,13 @@
polytopes polyArr.
The method used to compute the minimal volume overapproximating
- ellipsoid is described in "Ellipsoidal Calculus Based on
- Propagation and Fusion" by Lluis Ros, Assumpta Sabater and
+ ellipsoid is described in "Ellipsoidal Calculus Based on
+ Propagation and Fusion" by Lluis Ros, Assumpta Sabater and
Federico Thomas; IEEE Transactions on Systems, Man and Cybernetics,
Vol.32, No.4, pp.430-442, 2002. For more information, visit
http://www-iri.upc.es/people/ros/ellipsoids.html
- For polytopes this method won't give the minimal volume
+ For polytopes this method won't give the minimal volume
overapproximating ellipsoid, but just some overapproximating ellipsoid.
Input:
@@ -1360,12 +1394,13 @@
externalEllVec = ellVec.intersection_ea(thirdEllObj)
externalEllVec =
- 1x2 array of ellipsoids.</pre>
+ 1x2 array of ellipsoids.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-intersection-ia">
<h3>ellipsoid.intersection_ia<a class="headerlink"
href="#ellipsoid-intersection-ia" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>INTERSECTION_IA - internal ellipsoidal
approximation of the
+<div class="highlight-python"><div class="highlight"><pre>INTERSECTION_IA
- internal ellipsoidal approximation of the
intersection of ellipsoid and ellipsoid,
or ellipsoid and halfspace, or ellipsoid
and polytope.
@@ -1391,8 +1426,8 @@
and polytopes polyArr.
The method used to compute the minimal volume overapproximating
- ellipsoid is described in "Ellipsoidal Calculus Based on
- Propagation and Fusion" by Lluis Ros, Assumpta Sabater and
+ ellipsoid is described in "Ellipsoidal Calculus Based on
+ Propagation and Fusion" by Lluis Ros, Assumpta Sabater and
Federico Thomas; IEEE Transactions on Systems, Man and Cybernetics,
Vol.32, No.4, pp.430-442, 2002. For more information, visit
http://www-iri.upc.es/people/ros/ellipsoids.html
@@ -1400,8 +1435,8 @@
The method used to compute maximum volume ellipsoid inscribed in
intersection of ellipsoid and polytope, is modified version of
algorithm of finding maximum volume ellipsoid inscribed in intersection
- of ellipsoids discribed in Stephen Boyd and Lieven Vandenberghe "Convex
- Optimization". It works properly for nondegenerate ellipsoid, but for
+ of ellipsoids discribed in Stephen Boyd and Lieven Vandenberghe
"Convex
+ Optimization". It works properly for nondegenerate ellipsoid, but
for
degenerate ellipsoid result would not lie in this ellipsoid. The result
considered as empty ellipsoid, when maximum absolute velue of element
in its matrix is less than myEllipsoid.getAbsTol().
@@ -1427,12 +1462,13 @@
internalEllVec = ellVec.intersection_ia(thirdEllObj)
internalEllVec =
- 1x2 array of ellipsoids.</pre>
+ 1x2 array of ellipsoids.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-inv">
<h3>ellipsoid.inv<a class="headerlink" href="#ellipsoid-inv"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>INV - inverts shape matrices of
ellipsoids in the given array,
+<div class="highlight-python"><div class="highlight"><pre>INV - inverts
shape matrices of ellipsoids in the given array,
modified given array is on output (not its copy).
@@ -1462,12 +1498,13 @@
0.2632 0.0526
0.0526 0.2105
- Nondegenerate ellipsoid in R^2.</pre>
+ Nondegenerate ellipsoid in R^2.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-isempty">
<h3>ellipsoid.isEmpty<a class="headerlink" href="#ellipsoid-isempty"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>ISEMPTY - checks if the ellipsoid
object is empty.
+<div class="highlight-python"><div class="highlight"><pre>ISEMPTY - checks
if the ellipsoid object is empty.
Input:
regular:
@@ -1485,12 +1522,13 @@
ans =
- 1</pre>
+ 1
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-isequal">
<h3>ellipsoid.isEqual<a class="headerlink" href="#ellipsoid-isequal"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>ISEQUAL - produces logical array the
same size as
+<div class="highlight-python"><div class="highlight"><pre>ISEQUAL -
produces logical array the same size as
ellFirstArr/ellFirstArr (if they have the same).
isEqualArr[iDim1, iDim2,...] is true if corresponding
ellipsoids are equal and false otherwise.
@@ -1502,19 +1540,20 @@
ellSecArr: ellipsoid[nDim1, nDim2,...] - multidimensional array
of ellipsoids.
properties:
- 'isPropIncluded': makes to compare second value properties, such as
+ 'isPropIncluded': makes to compare second value properties,
such as
absTol etc.
Output:
isEqualArr: logical[nDim1, nDim2,...] - multidimension array of
logical values. isEqualArr[iDim1, iDim2,...] is true if
corresponding ellipsoids are equal and false otherwise.
- reportStr: char[1,] - comparison report.</pre>
+ reportStr: char[1,] - comparison report.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-isinside">
<h3>ellipsoid.isInside<a class="headerlink" href="#ellipsoid-isinside"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>ISINSIDE - checks if given ellipsoid(or
array of
+<div class="highlight-python"><div class="highlight"><pre>ISINSIDE -
checks if given ellipsoid(or array of
ellipsoids) lies inside given object(or array
of objects): ellipsoid or polytope.
@@ -1543,20 +1582,21 @@
ans =
- 1</pre>
+ 1
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-isbaddirection">
<h3>ellipsoid.isbaddirection<a class="headerlink"
href="#ellipsoid-isbaddirection" title="Permalink to this
headline">¶</a></h3>
-<div class="highlight-python"><pre>ISBADDIRECTION - checks if ellipsoidal
approximations of geometric
+<div class="highlight-python"><div class="highlight"><pre>ISBADDIRECTION -
checks if ellipsoidal approximations of geometric
difference of two ellipsoids can be computed for
given directions.
isBadDirVec = ISBADDIRECTION(fstEll, secEll, dirsMat) - Checks if
it is possible to build ellipsoidal approximation of the
geometric difference of two ellipsoids fstEll - secEll in
directions specified by matrix dirsMat (columns of dirsMat
- are direction vectors). Type 'help minkdiff_ea' or
- 'help minkdiff_ia' for more information.
+ are direction vectors). Type 'help minkdiff_ea' or
+ 'help minkdiff_ia' for more information.
Input:
regular:
@@ -1572,12 +1612,13 @@
being equal to the number of columns in matrix dirsMat.
ture marks direction vector as bad - ellipsoidal approximation
true marks direction vector as bad - ellipsoidal approximation
- cannot be computed for this direction. false means the
opposite.</pre>
+ cannot be computed for this direction. false means the opposite.
+</pre></div>
</div>
</div>
<div class="section" id="ellipsoid-isbigger">
<h3>ellipsoid.isbigger<a class="headerlink" href="#ellipsoid-isbigger"
title="Permalink to this headline">¶</a></h3>
-<div class="highlight-python"><pre>ISBIGGER - checks if one ellipsoid
would contain the other if their
+<div class="highlight-python"><div class="highlight"><pre>ISBIGGER -
checks if one ellipsoid would contain the other if their
centers would coincide.
isPositive = ISBIGGER(fstEll, secEll) - Given two single ellipsoids
@@ -1602,12 +1643,13 @@
ans =
- 0</pre>
+ 0
***The diff for this file has been truncated for email.***
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/chap_implement.html Thu
Feb 6 19:00:52 2014 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/chap_implement.html Mon
Feb 24 20:40:31 2014 UTC
@@ -55,8 +55,8 @@
<h2>Operations with ellipsoids<a class="headerlink"
href="#operations-with-ellipsoids" title="Permalink to this
headline">¶</a></h2>
<p>In the <em>Ellipsoidal Toolbox</em> we define a new class ellipsoid
inside the
MATLAB programming environment. The following three commands define the
-same ellipsoid <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/>, with <img class="math"
src="_images/math/2f0254e7ea239a9e63ab4310a523e422df56e6c1.png"
alt="q\in{\bf R}^n"/> and
-<img class="math"
src="_images/math/93e54033bbd83ef95a1379548b4e57c8c5f32e85.png"
alt="Q\in{\bf R}^{n\times n}"/> being symmetric positive semidefinite:</p>
+same ellipsoid <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/>, with <img class="math"
src="_images/math/bc268c6c9b845f28350ebb76180e9bbf577dc873.png"
alt="q\in{\bf R}^n"/> and
+<img class="math"
src="_images/math/fcce825c4d68c51a628ca139c15c09cf17f9ab91.png"
alt="Q\in{\bf R}^{n\times n}"/> being symmetric positive semidefinite:</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre>1
2
3
@@ -71,35 +71,35 @@
<p>For the ellipsoid class we overload the following functions and
operators:</p>
<ul class="simple">
-<li>isEmpty(ellObj) - checks if <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/> is an empty
+<li>isEmpty(ellObj) - checks if <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/> is an empty
ellipsoid.</li>
<li>display(ellObj) - displays the details of ellipsoid
-<img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/>, namely, its center <img class="math"
src="_images/math/0615acc3725de21025457e7d6f7694dab8e2f758.png" alt="q"/>
and the shape
-matrix <img class="math"
src="_images/math/9866e3a998d628ba0941eb4fea0666ac391d149a.png"
alt="Q"/>.</li>
-<li>plot(ellObj) - plots ellipsoid <img class="math"
src="_images/math/76d087838f96cc48fcfd327127771bf549754f2f.png"
alt="{\mathcal E}(q,Q)"/> if its
+<img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/>, namely, its center <img class="math"
src="_images/math/23f1b45408e5b4130c0f940fcbfcec54492cbdcd.png" alt="q"/>
and the shape
+matrix <img class="math"
src="_images/math/7b1816c51f7d31275cd3ad400208fb7b3ce136a0.png"
alt="Q"/>.</li>
+<li>plot(ellObj) - plots ellipsoid <img class="math"
src="_images/math/86a01c7a751f2a781e9911f4c77c750f24a671e6.png"
alt="{\mathcal E}(q,Q)"/> if its
dimension is not greater than 3.</li>
<li>firstEllObj == secEllObj - checks if ellipsoids
-<img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> and <img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/> are
+<img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> and <img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/> are
equal.</li>
<li>firstEllObj ~= secEllObj - checks if ellipsoids
-<img class="math"
src="_images/math/ea744f811759be7c88b5262e9d0a740984c595a0.png"
alt="{\mathcal E}(q_1,Q_1)"/> and <img class="math"
src="_images/math/5dab2798851c8408cf12b09c6587412701b3a32a.png"
alt="{\mathcal E}(q_2,Q_2)"/> are
+<img class="math"
src="_images/math/1de5034d4c6f3bda7f6ef4bf9d1f8525de7b3d46.png"
alt="{\mathcal E}(q_1,Q_1)"/> and <img class="math"
src="_images/math/7c03b9994bef648279d675ca186661da592fd155.png"
alt="{\mathcal E}(q_2,Q_2)"/> are
not equal.</li>
<li>[ , ] - concatenates the ellipsoids into the horizontal array, e.g.
ellVec
= [firstEllObj secEllObj thirdEllObj].</li>
<li>[ ; ] - concatenates the ellipsoids into the vertical array, e.g.
ellMat =
[firstEllObj secEllObj; thirdEllObj fourthEllObj] defines
-<img class="math"
src="_images/math/7901356dd65ec4da1b694937cc4ffc663e90d800.png"
alt="2\times 2"/> array of ellipsoids.</li>
+<img class="math"
src="_images/math/986ad48db02dcaf802568dee2460269916229fdf.png"
alt="2\times 2"/> array of ellipsoids.</li>
<li>firstEllObj >= secEllObj - checks if the ellipsoid firstEllObj is
bigger than the ellipsoid secEllObj, or equivalently
-<img class="math"
src="_images/math/9b07c69b8f9bda68bf950585a116379ef671bd4b.png"
alt="{\mathcal E}(0,Q_1)\subseteq{\mathcal E}(0,Q_2)"/>.</li>
+<img class="math"
src="_images/math/7871c7c9c0c0635f6db6b850c4b5c289603bc07b.png"
alt="{\mathcal E}(0,Q_1)\subseteq{\mathcal E}(0,Q_2)"/>.</li>
<li>firstEllObj <= secEllObj - checks if
-<img class="math"
src="_images/math/0eb8863783e03f5430af0160912fc20f07e0f722.png"
alt="{\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)"/>.</li>
-<li>-ellObj - defines ellipsoid <img class="math"
src="_images/math/0c87cabacfab74fcbc78c3fc21c920688c00cc06.png"
alt="{\mathcal E}(-q,Q)"/>.</li>
-<li>ellObj + bScal - defines ellipsoid <img class="math"
src="_images/math/9c7fc5e1889c42d251d52284ef794edabc9af066.png"
alt="{\mathcal E}(q+b,Q)"/>.</li>
-<li>ellObj - bScal - defines ellipsoid <img class="math"
src="_images/math/038589752702866446eb8f5007c5891c2c748da9.png"
alt="{\mathcal E}(q-b,Q)"/>.</li>
-<li>aMat * ellObj - defines ellipsoid <img class="math"
src="_images/math/f2037876b576b9abbb0e8f4e47b33bcc4217bec8.png"
alt="{\mathcal E}(q,AQA^T)"/>.</li>
+<img class="math"
src="_images/math/e30a04da6f369ae2157711a1d706a40c13262f70.png"
alt="{\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)"/>.</li>
+<li>-ellObj - defines ellipsoid <img class="math"
src="_images/math/be0f8e0459ac2816cd0d8b3b0ab1198e0b05c820.png"
alt="{\mathcal E}(-q,Q)"/>.</li>
+<li>ellObj + bScal - defines ellipsoid <img class="math"
src="_images/math/f7a7aca625fde43728041be211a3413e11e33194.png"
alt="{\mathcal E}(q+b,Q)"/>.</li>
+<li>ellObj - bScal - defines ellipsoid <img class="math"
src="_images/math/5c3e01f8539c871d622584cc30750504793b95bb.png"
alt="{\mathcal E}(q-b,Q)"/>.</li>
+<li>aMat * ellObj - defines ellipsoid <img class="math"
src="_images/math/e2b5a2670bb30e7cc12702ea6b67000358512f82.png"
alt="{\mathcal E}(q,AQA^T)"/>.</li>
<li>ellObj.inv() - inverts the shape matrix of the ellipsoid:
-<img class="math"
src="_images/math/21b1c8c55e5254f59fa316a90b5354a420a6a461.png"
alt="{\mathcal E}(q,Q^{-1})"/>.</li>
+<img class="math"
src="_images/math/d3a55918d9c861ad74c44436d7d8475fdf01d5f0.png"
alt="{\mathcal E}(q,Q^{-1})"/>.</li>
</ul>
<p>All the listed operations can be applied to a single ellipsoid as well
as to a two-dimensional array of ellipsoids. For example,</p>
@@ -295,7 +295,7 @@
</pre></div>
</td></tr></table></div>
<p>In this
-particular example the result <img class="math"
src="_images/math/bae5aba07d37ff6ff813107e76260fb31ad5794e.png" alt="-1"/>
indicates that the intersection
+particular example the result <img class="math"
src="_images/math/80d842c5b7aabdb4c23f00d2074915d876e294f2.png" alt="-1"/>
indicates that the intersection
of ellipsoids in ellMat is empty. Function intersect in general checks
if an ellipsoid, hyperplane or polytope intersects the union or the
intersection of ellipsoids in the given array:</p>
@@ -326,18 +326,18 @@
</pre></div>
</td></tr></table></div>
<p>For the ellipsoids in
-<img class="math"
src="_images/math/e5908582078e69c6be80476164a5ad1904e0877c.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/bb5fa23edd2754dda88386b5c2f48e26b6d994da.png" alt="{\bf
R}^2"/> and <img class="math"
src="_images/math/6b6d844f26e2bc171d1c97590cd3df50633cb36e.png" alt="{\bf
R}^3"/> the geometric
+<img class="math"
src="_images/math/fdbe9b4214da88518dfbb7be23a10bc0fc6eedb8.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/0798dced39715ef937fb976226ba2ae17f50367e.png" alt="{\bf
R}^2"/> and <img class="math"
src="_images/math/8bbda0690471f568c090c4d283e9bb5a511fa55a.png" alt="{\bf
R}^3"/> the geometric
sum can be computed explicitely and plotted:</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre>1</pre></div></td><td
class="code"><div class="highlight"><pre><span class="n">ellMat</span><span
class="p">.</span><span class="n">minksum</span><span class="p">();</span>
</pre></div>
</td></tr></table></div>
<div class="figure" id="minksumpic">
<a class="reference internal image-reference"
href="_images/chapter05_section01_minksum.png"><img alt="minksum"
src="_images/chapter05_section01_minksum.png" style="width: 40%;" /></a>
-<p class="caption">Figure 1: The geometric sum of ellipsoids.</p>
+<p class="caption">Figure 15: The geometric sum of ellipsoids.</p>
</div>
-<p><a class="pageref" href="#minksumpic">Figure 1</a> displays the
geometric sum of ellipsoids. If
+<p><a href="#minksumpic">Figure 15</a> displays the geometric sum of
ellipsoids. If
the dimension of the space in which the ellipsoids are defined exceeds
-<img class="math"
src="_images/math/7cde695f2e4542fd01f860a89189f47a27143b66.png" alt="3"/>,
an error is returned. The result of the geometric sum
+<img class="math"
src="_images/math/b9b358d9bbdf54c3d9aef7554638822d996c21ea.png" alt="3"/>,
an error is returned. The result of the geometric sum
operation is not generally an ellipsoid, but it can be approximated by
families of external and internal ellipsoids parametrized by the
direction vector:</p>
@@ -391,7 +391,7 @@
computations whereas minksum is there merely for visualization
purposes.</p>
<p>If the geometric difference of two ellipsoids is not an empty set, it
can be computed explicitely and plotted for ellipsoids in
-<img class="math"
src="_images/math/e5908582078e69c6be80476164a5ad1904e0877c.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/bb5fa23edd2754dda88386b5c2f48e26b6d994da.png" alt="{\bf
R}^2"/> and <img class="math"
src="_images/math/6b6d844f26e2bc171d1c97590cd3df50633cb36e.png" alt="{\bf
R}^3"/>:</p>
+<img class="math"
src="_images/math/fdbe9b4214da88518dfbb7be23a10bc0fc6eedb8.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/0798dced39715ef937fb976226ba2ae17f50367e.png" alt="{\bf
R}^2"/> and <img class="math"
src="_images/math/8bbda0690471f568c090c4d283e9bb5a511fa55a.png" alt="{\bf
R}^3"/>:</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
2
3
@@ -417,11 +417,11 @@
</td></tr></table></div>
<div class="figure" id="minkdiffpic">
<a class="reference internal image-reference"
href="_images/chapter05_section01_minkdiff.png"><img alt="minkdiff"
src="_images/chapter05_section01_minkdiff.png" style="width: 40%;" /></a>
-<p class="caption">Figure 2: The geometric difference of ellipsoids.</p>
+<p class="caption">Figure 16: The geometric difference of ellipsoids.</p>
</div>
-<p><a class="pageref" href="#minkdiffpic">Figure 2</a> shows the
geometric difference of ellipsoids.</p>
+<p><a href="#minkdiffpic">Figure 16</a> shows the geometric difference of
ellipsoids.</p>
<p>Similar to minksum, minkdiff is there for visualization purpose. It
-works only for dimensions <img class="math"
src="_images/math/dce34f4dfb2406144304ad0d6106c5382ddd1446.png" alt="1"/>,
<img class="math"
src="_images/math/41c544263a265ff15498ee45f7392c5f86c6d151.png" alt="2"/>
and <img class="math"
src="_images/math/7cde695f2e4542fd01f860a89189f47a27143b66.png" alt="3"/>,
and for
+works only for dimensions <img class="math"
src="_images/math/123e375e88da91240024aaf085abee194c4a2d06.png" alt="1"/>,
<img class="math"
src="_images/math/15c663954a3e059d1f876bc8a4621de376038c96.png" alt="2"/>
and <img class="math"
src="_images/math/b9b358d9bbdf54c3d9aef7554638822d996c21ea.png" alt="3"/>,
and for
higher dimensions it returns an error. For arbitrary dimensions, the
geometric difference can be approximated by families of external and
internal ellipsoids parametrized by the direction vector, provided this
@@ -472,7 +472,7 @@
<p>Operation 'difference-sum' described in section
2.2.4 is implemented in functions minkmp, minkmp_ea, minkmp_ia, the
first one of which is used for visualization and works for dimensions
-not higher than <img class="math"
src="_images/math/7cde695f2e4542fd01f860a89189f47a27143b66.png" alt="3"/>,
whereas the last two can deal with ellipsoids
+not higher than <img class="math"
src="_images/math/b9b358d9bbdf54c3d9aef7554638822d996c21ea.png" alt="3"/>,
whereas the last two can deal with ellipsoids
of arbitrary dimension.</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
2
@@ -505,13 +505,13 @@
</td></tr></table></div>
<div class="figure" id="minkpic">
<a class="reference internal image-reference"
href="_images/chapter05_section01_minkpmminkmp.png"><img alt="minkpmminkmp"
src="_images/chapter05_section01_minkpmminkmp.png" style="width: 100%;"
/></a>
-<p class="caption">Figure 3: Implementation of operations
‘sum-difference’ and ‘difference-sum’.</p>
+<p class="caption">Figure 17: Implementation of operations
‘sum-difference’ and ‘difference-sum’.</p>
</div>
-<p>Figure <a class="pageref" href="#minkpic"> 3</a> displays results of
+<p>Figure <a href="#minkpic"> 17</a> displays results of
the implementation of minkpm and minkmp operations.</p>
<p>Similarly, operation 'sum-difference' described in section <a
class="reference internal"
href="chap_ellcalc.html#sum-diff-label"><em>Geometric
Sum-Difference</em></a> is implemented in functions
minkpm, minkpm_ea, minkpm_ia, the first one of which is used for
-visualization and works for dimensions not higher than <img class="math"
src="_images/math/7cde695f2e4542fd01f860a89189f47a27143b66.png" alt="3"/>,
+visualization and works for dimensions not higher than <img class="math"
src="_images/math/b9b358d9bbdf54c3d9aef7554638822d996c21ea.png" alt="3"/>,
whereas the last two can deal with ellipsoids of arbitrary dimension.</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
2
@@ -558,21 +558,21 @@
<ul class="simple">
<li>isempty(hypObj) – checks if hypObj is an empty hyperplane.</li>
<li>display(hypObj) – displays the details of hyperplane
-<img class="math"
src="_images/math/bac0ae63aec09971dd9b5d57245fb790377c8e10.png"
alt="H(c,\gamma)"/>, namely, its normal <img class="math"
src="_images/math/3372c1cb6d68cf97c2d231acc0b47b95a9ed04cc.png" alt="c"/>
and the scalar
-<img class="math"
src="_images/math/66981fa3920210c6ad8dbe5e968783d5dd7520c3.png"
alt="\gamma"/>.</li>
-<li>plot(hypObj) – plots hyperplane <img class="math"
src="_images/math/bac0ae63aec09971dd9b5d57245fb790377c8e10.png"
alt="H(c,\gamma)"/> if the dimension
+<img class="math"
src="_images/math/a8ccfc826288cb180dd6b82fe5641d1e17995bc5.png"
alt="H(c,\gamma)"/>, namely, its normal <img class="math"
src="_images/math/65868d23a5bfe5b3b2d819386b19c14fa36af134.png" alt="c"/>
and the scalar
+<img class="math"
src="_images/math/0ebb67342b546ca42a1c634b1ef03c893c4cdedb.png"
alt="\gamma"/>.</li>
+<li>plot(hypObj) – plots hyperplane <img class="math"
src="_images/math/a8ccfc826288cb180dd6b82fe5641d1e17995bc5.png"
alt="H(c,\gamma)"/> if the dimension
of the space in which it is defined is not greater than 3.</li>
<li>firstHypObj == secHypObj – checks if hyperplanes
-<img class="math"
src="_images/math/057d31429190724da461a768237af47b62c22523.png"
alt="H(c_1,\gamma_1)"/> and <img class="math"
src="_images/math/f352f0a9cf84f2ede9c8f28215158008cae11ee2.png"
alt="H(c_2,\gamma_2)"/> are equal.</li>
+<img class="math"
src="_images/math/dd608894607e38d2e5c957a0ecbc3d3b92fcb3fc.png"
alt="H(c_1,\gamma_1)"/> and <img class="math"
src="_images/math/d37385ce263f2dd9adf034a5e763594f0fdc011e.png"
alt="H(c_2,\gamma_2)"/> are equal.</li>
<li>firstHypObj = secHypObj – checks if hyperplanes
-<img class="math"
src="_images/math/057d31429190724da461a768237af47b62c22523.png"
alt="H(c_1,\gamma_1)"/> and <img class="math"
src="_images/math/f352f0a9cf84f2ede9c8f28215158008cae11ee2.png"
alt="H(c_2,\gamma_2)"/> are not equal.</li>
+<img class="math"
src="_images/math/dd608894607e38d2e5c957a0ecbc3d3b92fcb3fc.png"
alt="H(c_1,\gamma_1)"/> and <img class="math"
src="_images/math/d37385ce263f2dd9adf034a5e763594f0fdc011e.png"
alt="H(c_2,\gamma_2)"/> are not equal.</li>
<li>[ , ] – concatenates the hyperplanes into the horizontal array,
e.g. hypVec
= [firstHypObj secHypObj thirdHypObj].</li>
<li>[ ; ] – concatenates the hyperplanes into the vertical array,
e.g. hypMat =
[firstHypObj secHypObj; thirdHypObj fourthHypObj] – defines
-<img class="math"
src="_images/math/7901356dd65ec4da1b694937cc4ffc663e90d800.png"
alt="2\times 2"/> array of hyperplanes.</li>
-<li>-hypObj – defines hyperplane <img class="math"
src="_images/math/16e3c1b6fd6e98b81efcca4d744c1d395a580ebd.png"
alt="H(-c,-\gamma)"/>, which is the same
-as <img class="math"
src="_images/math/bac0ae63aec09971dd9b5d57245fb790377c8e10.png"
alt="H(c,\gamma)"/> but specifies different halfspace.</li>
+<img class="math"
src="_images/math/986ad48db02dcaf802568dee2460269916229fdf.png"
alt="2\times 2"/> array of hyperplanes.</li>
+<li>-hypObj – defines hyperplane <img class="math"
src="_images/math/4be558bcd2105996f20789c263e00c388c9a5719.png"
alt="H(-c,-\gamma)"/>, which is the same
+as <img class="math"
src="_images/math/a8ccfc826288cb180dd6b82fe5641d1e17995bc5.png"
alt="H(c,\gamma)"/> but specifies different halfspace.</li>
</ul>
<p>There are several ways to access the internal data of the hyperplane
object:</p>
@@ -975,8 +975,8 @@
gras.ellapx.smartdb.rels.EllUnionTube is used to store tubes by the
instant of time:</p>
<div class="math">
-<p><img src="_images/math/a07db88b8564a8e6419836a9e3ef0fffa5cce9a8.png"
alt="{\mathcal X}_{U}[t]=\bigcup \limits_{\tau\leqslant t}{\mathcal
X}[\tau],"/></p>
-</div><p>where <img class="math"
src="_images/math/40c56f6b4922bfdc10574203f8c6ba0093d96c96.png"
alt="{\mathcal X}[\tau]"/> is single ellipsoidal tube. The class
+<p><img src="_images/math/53ca07410d079433f63db3afd5fd5ba975724616.png"
alt="{\mathcal X}_{U}[t]=\bigcup \limits_{\tau\leqslant t}{\mathcal
X}[\tau],"/></p>
+</div><p>where <img class="math"
src="_images/math/456d10b00ec6c948f7306d194e252da674e291d1.png"
alt="{\mathcal X}[\tau]"/> is single ellipsoidal tube. The class
gras.ellapx.smartdb.rels.EllTubeProj is used to describe the projection
of the ellipsoidal tubes onto time dependent subspaces.There are two
types of projection: static and dynamic. Also there is class
@@ -998,8 +998,10 @@
13
14
15
-16</pre></div></td><td class="code"><div class="highlight"><pre><span
class="n">nPoints</span><span class="p">=</span><span
class="mi">5</span><span class="p">;</span>
-<span class="n">calcPrecision</span><span class="p">=</span><span
class="mf">0.001</span><span class="p">;</span>
+16
+17</pre></div></td><td class="code"><div class="highlight"><pre><span
class="n">nPoints</span><span class="p">=</span><span
class="mi">5</span><span class="p">;</span>
+<span class="n">absTol</span><span class="p">=</span><span
class="mf">0.001</span><span class="p">;</span>
+<span class="n">relTol</span><span class="p">=</span><span
class="mf">0.001</span><span class="p">;</span>
<span class="n">approxSchemaDescr</span><span class="p">=</span><span
class="n">char</span><span class="p">.</span><span
class="n">empty</span><span class="p">(</span><span
class="mi">1</span><span class="p">,</span><span class="mi">0</span><span
class="p">);</span>
<span class="n">approxSchemaName</span><span class="p">=</span><span
class="n">char</span><span class="p">.</span><span
class="n">empty</span><span class="p">(</span><span
class="mi">1</span><span class="p">,</span><span class="mi">0</span><span
class="p">);</span>
<span class="n">nDims</span><span class="p">=</span><span
class="mi">3</span><span class="p">;</span>
@@ -1013,7 +1015,7 @@
<span class="n">ltGoodDirArray</span><span class="p">=</span><span
class="nb">repmat</span><span class="p">(</span><span
class="n">lsGoodDirVec</span><span class="p">,[</span><span
class="mi">1</span><span class="p">,</span><span
class="n">nTubes</span><span class="p">,</span><span
class="n">nPoints</span><span class="p">]);</span>
<span class="n">fromMatEllTube</span><span class="p">=</span><span
class="n">gras</span><span class="p">.</span><span
class="n">ellapx</span><span class="p">.</span><span
class="n">smartdb</span><span class="p">.</span><span
class="n">rels</span><span class="p">.</span><span
class="n">EllTube</span><span class="p">.</span><span
class="n">fromQArrays</span><span class="p">(</span><span
class="n">qArrayList</span><span class="p">,</span><span
class="c">...</span>
<span class="n">aMat</span><span class="p">,</span> <span
class="n">timeVec</span><span class="p">,</span><span
class="n">ltGoodDirArray</span><span class="p">,</span> <span
class="n">sTime</span><span class="p">,</span> <span
class="n">approxType</span><span class="p">,</span><span
class="c">...</span>
- <span class="n">approxSchemaName</span><span
class="p">,</span> <span class="n">approxSchemaDescr</span><span
class="p">,</span> <span class="n">calcPrecision</span><span
class="p">);</span>
+ <span class="n">approxSchemaName</span><span
class="p">,</span> <span class="n">approxSchemaDescr</span><span
class="p">,</span> <span class="n">absTol</span><span class="p">,</span>
<span class="n">relTol</span><span class="p">);</span>
</pre></div>
</td></tr></table></div>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
@@ -1034,28 +1036,57 @@
<span class="k">end</span>
<span class="n">fromEllArrayEllTube</span> <span class="p">=</span> <span
class="n">gras</span><span class="p">.</span><span
class="n">ellapx</span><span class="p">.</span><span
class="n">smartdb</span><span class="p">.</span><span
class="n">rels</span><span class="p">.</span><span
class="n">EllTube</span><span class="p">.</span><span
class="n">fromEllArray</span><span class="p">(</span><span
class="c">...</span>
<span class="n">ellArray</span><span class="p">,</span>
<span class="n">timeVec</span><span class="p">,</span><span
class="n">ltGoodDirArray</span><span class="p">,</span> <span
class="n">sTime</span><span class="p">,</span> <span
class="n">approxType</span><span class="p">,</span><span
class="c">...</span>
- <span class="n">approxSchemaName</span><span
class="p">,</span><span class="n">approxSchemaDescr</span><span
class="p">,</span> <span class="n">calcPrecision</span><span
class="p">);</span>
+ <span class="n">approxSchemaName</span><span
class="p">,</span><span class="n">approxSchemaDescr</span><span
class="p">,</span> <span class="n">absTol</span><span class="p">,</span>
<span class="n">relTol</span><span class="p">);</span>
</pre></div>
</td></tr></table></div>
<p>We may be
interested in the data about ellipsoidal tube in some particular time
interval, smaller than the one for which the ellipsoidal tube was
-computed, say <img class="math"
src="_images/math/6516cb7d024c910ef89e7166abab196d9b142276.png"
alt="2\leqslant t\leqslant4"/>. This data can be extracted
+computed, say <img class="math"
src="_images/math/a362cc9f47273ec127c97021aaafee3be60fc645.png"
alt="2\leqslant t\leqslant4"/>. This data can be extracted
by the cut function:</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre>1
2</pre></div></td><td class="code"><div class="highlight"><pre><span
class="n">cutTimeVec</span> <span class="p">=</span> <span
class="p">[</span><span class="mi">2</span><span class="p">,</span> <span
class="mi">4</span><span class="p">];</span>
<span class="n">cutEllTube</span> <span class="p">=</span> <span
class="n">fromMatEllTube</span><span class="p">.</span><span
class="n">cut</span><span class="p">(</span><span
class="n">cutTimeVec</span><span class="p">);</span>
</pre></div>
</td></tr></table></div>
-<div class="highlight-matlab"><pre>function example
+<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30</pre></div></td><td class="code"><div class="highlight"><pre>function
example
aMat = [0 1; 0 0]; bMat = eye(2);
SUBounds = struct();
- SUBounds.center = {'sin(t)'; 'cos(t)'};
+ SUBounds.center = {'sin(t)'; 'cos(t)'};
SUBounds.shape = [9 0; 0 2];
sys = elltool.linsys.LinSysContinuous(aMat, bMat, SUBounds);
x0EllObj = ell_unitball(2);
timeVec = [0 10];
- dirsMat = [1 0; 0 1]';
+ dirsMat = [1 0; 0 1]';
rsObj = elltool.reach.ReachContinuous(sys, x0EllObj, dirsMat, timeVec);
ellTubeObj = rsObj.getEllTubeRel();
projSpaceList = {[1 0;0 1]};
@@ -1075,27 +1106,54 @@
timeVec,varargin)
nTimePoints=length(timeVec);
projOrthMatArray=repmat(projMat,[1,1,nTimePoints]);
- projOrthMatTransArray=repmat(projMat.',[1,1,nTimePoints]);
- end</pre>
-</div>
+ projOrthMatTransArray=repmat(projMat.',[1,1,nTimePoints]);
+ end
+</pre></div>
+</td></tr></table></div>
<p>We can compute the projection of the ellipsoidal
tube onto time-dependent subspace.</p>
<div class="figure" id="statdyn-proj">
<a class="reference internal image-reference"
href="_images/chapter05_section03_reachTubeStatProjreachTubeDynProj.png"><img
alt="reachTubeStatProjreachTubeDynProj"
src="_images/chapter05_section03_reachTubeStatProjreachTubeDynProj.png"
style="width: 100%;" /></a>
-<p class="caption">Figure 4: Static and dynamic projections of the
ellipsoidal tube.</p>
+<p class="caption">Figure 18: Static and dynamic projections of the
ellipsoidal tube.</p>
</div>
-<p>Figure <a class="pageref" href="#statdyn-proj"> 4</a> displays static
and dynamic projections.
+<p>Figure <a href="#statdyn-proj"> 18</a> displays static and dynamic
projections.
Also we can see projections of good directions for ellipsoidal tubes.</p>
<p>We can compute tubes by the instant of time using
methodfromEllTubes:</p>
-<div class="highlight-matlab"><pre>function example
+<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27</pre></div></td><td class="code"><div class="highlight"><pre>function
example
aMat = [0 1; 0 0]; bMat = eye(2);
SUBounds = struct();
- SUBounds.center = {'sin(t)'; 'cos(t)'};
+ SUBounds.center = {'sin(t)'; 'cos(t)'};
SUBounds.shape = [9 0; 0 2];
sys = elltool.linsys.LinSysContinuous(aMat, bMat, SUBounds);
x0EllObj = ell_unitball(2);
timeVec = [0 10];
- dirsMat = [1 0; 0 1]';
+ dirsMat = [1 0; 0 1]';
rsObj = elltool.reach.ReachContinuous(sys, x0EllObj, dirsMat, timeVec);
ellTubeObj = rsObj.getEllTubeRel();
unionEllTube = ...
@@ -1112,14 +1170,15 @@
timeVec,varargin)
nTimePoints=length(timeVec);
projOrthMatArray=repmat(projMat,[1,1,nTimePoints]);
- projOrthMatTransArray=repmat(projMat.',[1,1,nTimePoints]);
- end</pre>
-</div>
+ projOrthMatTransArray=repmat(projMat.',[1,1,nTimePoints]);
+ end
+</pre></div>
+</td></tr></table></div>
<div class="figure" id="uniontubestatproj">
<a class="reference internal image-reference"
href="_images/chapter05_section03_unionTubeStatProj.png"><img
alt="unionTubeStatProj"
src="_images/chapter05_section03_unionTubeStatProj.png" style="width: 70%;"
/></a>
-<p class="caption">Figure 5: Ellipsoidal tubes by the instant of time.</p>
+<p class="caption">Figure 19: Ellipsoidal tubes by the instant of time.</p>
</div>
-<p><a class="pageref" href="#uniontubestatproj">Figure 5</a> shows
projection of ellipsoidal
+<p><a href="#uniontubestatproj">Figure 19</a> shows projection of
ellipsoidal
tubes by the instant of time.</p>
<p>Also we can get initial data from the resulting tube:</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre>1
@@ -1168,9 +1227,9 @@
</td></tr></table></div>
<div class="figure" id="disppic">
<a class="reference internal image-reference"
href="_images/chapter05_section03_dispPic.png"><img alt="disp"
src="_images/chapter05_section03_dispPic.png" style="width: 50%;" /></a>
-<p class="caption">Figure 6: Content of the ellipsoidal tube.</p>
+<p class="caption">Figure 20: Content of the ellipsoidal tube.</p>
</div>
-<p><a class="pageref" href="#disppic">Figure 6</a>
+<p><a href="#disppic">Figure 20</a>
displays all fields of the ellipsoidal tube.</p>
<p>There are several methods to find the tubes with necessary
parameters.</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
@@ -1284,14 +1343,14 @@
define few new classes in the <em>Ellipsoidal Toolbox</em>: class
LinSysContinuous for the continuous-time system description, class
LinSysDiscrete for the discrete-time system description and classes
-ReachContinuous<img class="math"
src="_images/math/385adced1eac31db28232371c6e5afb832d82bf7.png"
alt="\backslash"/>ReachDiscrete for the reach set
+ReachContinuous<img class="math"
src="_images/math/d068bdce9fdb2b4d38f0e2e575e55208f06e2b57.png"
alt="\backslash"/>ReachDiscrete for the reach set
data. We start by explaining how to define a system using
LinSysContinuous object. Also we can use LinSysFactory class for the
description of this system. Through it's method create user can get
LinSysContinuous or LinSysDiscrete object. For example, description of
the system</p>
<div class="math">
-<p><img src="_images/math/b839a34dccb12db9fde040cb49a9ee28f52b0f2c.png"
alt="\left[\begin{array}{cc}
+<p><img src="_images/math/b0af0118992b1d96f54dee81d0a8db0ea5f99e5d.png"
alt="\left[\begin{array}{cc}
\dot{x}_1\\
\dot{x}_2\end{array}\right] = \left[\begin{array}{cc}
0 & 1\\
@@ -1302,7 +1361,7 @@
u_2(t)\end{array}\right], ~~~ u(t)\in{\mathcal E}(p(t), P)"/></p>
</div><p>with</p>
<div class="math">
-<p><img src="_images/math/01c62306b549dadfa6c93bdc2e859e6d17e868f8.png"
alt="p(t) = \left[\begin{array}{c}
+<p><img src="_images/math/9c916c53b1e7ef1d576998bd08de918790ec7770.png"
alt="p(t) = \left[\begin{array}{c}
\sin(t)\\
\cos(t)\end{array}\right], ~~~ P = \left[\begin{array}{cc}
9 & 0\\
@@ -1325,8 +1384,8 @@
<span class="c">% is equal to sys =
elltool.linsys.LinSysFactory.create(aMat, bMat, SUBounds)</span>
</pre></div>
</td></tr></table></div>
-<p>If matrices <img class="math"
src="_images/math/019e9892786e493964e145e7c5cf7b700314e53b.png" alt="A"/> or
-<img class="math"
src="_images/math/ff5fb3d775862e2123b007eb4373ff6cc1a34d4e.png" alt="B"/>
depend on time, say <img class="math"
src="_images/math/abf6cb6dbf406936d75ae4fb99cf1370db04873d.png"
alt="A(t)=\left[\begin{array}{cc}
+<p>If matrices <img class="math"
src="_images/math/0acafa529182e79b4f56165ec677554fba7fcf98.png" alt="A"/> or
+<img class="math"
src="_images/math/83956e92fcc80dee17fce864543216939a3c9da7.png" alt="B"/>
depend on time, say <img class="math"
src="_images/math/eec5acb8455659ea4d7044850d9494b15a460658.png"
alt="A(t)=\left[\begin{array}{cc}
0 & 1-\cos(2t)\\
-\frac{1}{t} & 0\end{array}\right]"/>, then matrix aMat should be
symbolic:</p>
@@ -1337,7 +1396,7 @@
</td></tr></table></div>
<p>To describe the system with disturbance</p>
<div class="math">
-<p><img src="_images/math/4b32f70d7f4bde5767d05c5775b46bc8ac763335.png"
alt="\left[\begin{array}{cc}
+<p><img src="_images/math/41225beced2d5270cd3d2e7ec57ad88e66576a6d.png"
alt="\left[\begin{array}{cc}
\dot{x}_1\\
\dot{x}_2\end{array}\right] = \left[\begin{array}{cc}
0 & 1\\
@@ -1349,7 +1408,7 @@
0\\
1\end{array}\right]v(t),"/></p>
</div><p>with bounds on control as before, and disturbance being
-<img class="math"
src="_images/math/1ab11d8d186178605843112b737fc6f83c9c5a43.png"
alt="-1\leqslant v(t)\leqslant1"/>, we type:</p>
+<img class="math"
src="_images/math/0ccc3dfa36dd8c42a867ed936e732256a548090c.png"
alt="-1\leqslant v(t)\leqslant1"/>, we type:</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre>1
2
3
@@ -1369,7 +1428,7 @@
vector, of type double if constant, or symbolic, if it depends on time.</p>
<p>To declare a discrete-time system</p>
<div class="math">
-<p><img src="_images/math/c7ca3edf641e50e137c1abfdd50dd6ff51c8d7ae.png"
alt="\left[\begin{array}{c}
+<p><img src="_images/math/da2c3d0815dc2cf770cf3c1c7aa0b91fe0da37ab.png"
alt="\left[\begin{array}{c}
x_1[k+1]\\
x_2[k+1]\end{array}\right] = \left[\begin{array}{cc}
0 & 1\\
@@ -1431,8 +1490,8 @@
<span class="p">[</span><span class="n">internalEllMat</span><span
class="p">,</span> <span class="n">timeVec</span><span class="p">]</span>
<span class="p">=</span> <span class="n">firstRsObj</span><span
class="p">.</span><span class="n">get_ia</span><span class="p">();</span>
</pre></div>
</td></tr></table></div>
-<p>Ellipsoidal arrays externallEllMat and internalEllMat have <img
class="math"
src="_images/math/c7cab1a05e1e0c1d51a6a219d96577a16b7abf9d.png" alt="4"/>
-rows because we computed the reach set approximations for <img
class="math"
src="_images/math/c7cab1a05e1e0c1d51a6a219d96577a16b7abf9d.png" alt="4"/>
+<p>Ellipsoidal arrays externallEllMat and internalEllMat have <img
class="math"
src="_images/math/51a8d7e791ab9e463af82a4075edb04ef8028dcf.png" alt="4"/>
+rows because we computed the reach set approximations for <img
class="math"
src="_images/math/51a8d7e791ab9e463af82a4075edb04ef8028dcf.png" alt="4"/>
directions. Each row of ellipsoids corresponds to one direction. The
number of columns in externallEllMat and internalEllMat is defined by
the nTimeGridPoints parameter, which is available from
@@ -1447,7 +1506,7 @@
the union of ellipsoids in the same column of internalEllMat.</p>
<p>We may be interested in the reachability data of our system in some
particular time interval, smaller than the one for which the reach set
-was computed, say <img class="math"
src="_images/math/32f9895b78b7f8c7747bf82c427c7932707fe58e.png"
alt="3\leqslant t\leqslant5"/>. This data can be
+was computed, say <img class="math"
src="_images/math/be49058197a821742ddab708eeb2ddb3b8700b6c.png"
alt="3\leqslant t\leqslant5"/>. This data can be
extracted and returned in the form of ReachContinuous object by the cut
function:</p>
<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre>1</pre></div></td><td
class="code"><div class="highlight"><pre><span class="n">cutObj</span>
<span class="p">=</span> <span class="n">firstRsObj</span><span
class="p">.</span><span class="n">cut</span><span class="p">([</span><span
class="mi">3</span> <span class="mi">5</span><span class="p">]);</span>
<span class="c">% reach set for the time interval [3, 5]</span>
@@ -1577,18 +1636,18 @@
</td></tr></table></div>
<p>Variable ctrMat here is a matrix whose columns are the points ofthe
reach set center trajectory evaluated at time values returned in the
-array ttVec. Variable gcCMat contains <img class="math"
src="_images/math/c7cab1a05e1e0c1d51a6a219d96577a16b7abf9d.png" alt="4"/>
matrices each of which
+array ttVec. Variable gcCMat contains <img class="math"
src="_images/math/51a8d7e791ab9e463af82a4075edb04ef8028dcf.png" alt="4"/>
matrices each of which
corresponds to a good curve (columns of such matrix are points of the
good curve evaluated at time values in ttVec). The analytic expression
for the control driving the system along a good curve is given by
<a class="reference internal"
href="chap_reach.html#uct-label"><em>formula</em></a>.</p>
-<p>We computed the reach set up to time <img class="math"
src="_images/math/fc606f7f1e530731ab4f1cc364c01dc64a4455ee.png" alt="10"/>.
It is possible to
+<p>We computed the reach set up to time <img class="math"
src="_images/math/1984d1a61055b785e860b105bc14f1f2221f3476.png" alt="10"/>.
It is possible to
continue the reach set computation for a longer time horizon using the
-reach set data at time <img class="math"
src="_images/math/fc606f7f1e530731ab4f1cc364c01dc64a4455ee.png" alt="10"/>
as initial condition. It is also
+reach set data at time <img class="math"
src="_images/math/1984d1a61055b785e860b105bc14f1f2221f3476.png" alt="10"/>
as initial condition. It is also
possible that the dynamics and inputs of the system change at certain
time, and from that point on the system evolves according to the new
system of differential equations. For example, starting at time
-<img class="math"
src="_images/math/fc606f7f1e530731ab4f1cc364c01dc64a4455ee.png" alt="10"/>,
our reach set may evolve in time according to the
+<img class="math"
src="_images/math/1984d1a61055b785e860b105bc14f1f2221f3476.png" alt="10"/>,
our reach set may evolve in time according to the
time-variant system sys_t defined above. Switched systems are a special
case of this situation. To compute the further evolution in time of the
existing reach set, function evolve should be used:</p>
@@ -1673,9 +1732,9 @@
</pre></div>
</td></tr></table></div>
<p>Number of columns in the ellipsoidal arrays externalEllMat and
-internalEllMat is <img class="math"
src="_images/math/6e1fd7cb028e27b8648efbfb002f3e6d4fcb33a5.png" alt="51"/>
because the backward reach set is computed
-for <img class="math"
src="_images/math/906734e2f1010e9a171ffee8050cbc0649cea37c.png" alt="50"/>
time steps, and the first column of these arrays contains
-<img class="math"
src="_images/math/7cde695f2e4542fd01f860a89189f47a27143b66.png" alt="3"/>
ellipsoids yEllObj - the terminating condition.</p>
+internalEllMat is <img class="math"
src="_images/math/ea971c407f445a917182eceed585a0e4b620d5ff.png" alt="51"/>
because the backward reach set is computed
+for <img class="math"
src="_images/math/51b8e5689d1f0c700e2ab941078f6dcd9f8da2c4.png" alt="50"/>
time steps, and the first column of these arrays contains
+<img class="math"
src="_images/math/b9b358d9bbdf54c3d9aef7554638822d996c21ea.png" alt="3"/>
ellipsoids yEllObj - the terminating condition.</p>
<p>When dealing with discrete-time systems, all functions that accept time
or time interval as an input parameter, round the time values and treat
them as integers.</p>
@@ -1700,7 +1759,7 @@
<li>nTimeGridPoints = 200 - density of the time grid for the continuous
time reach set computation. This parameter directly affects the
number of ellipsoids to be stored in the
-ReachContinuous<img class="math"
src="_images/math/385adced1eac31db28232371c6e5afb832d82bf7.png"
alt="\backslash"/>ReachDiscrete object.</li>
+ReachContinuous<img class="math"
src="_images/math/d068bdce9fdb2b4d38f0e2e575e55208f06e2b57.png"
alt="\backslash"/>ReachDiscrete object.</li>
<li>ODESolverName = ode45 - specifies the ODE solver for continuous time
reach set computation.</li>
<li>isODENormControl = 'on' - switches on and off the norm control in the
@@ -1754,27 +1813,27 @@
<p><em>Ellipsoidal Toolbox</em> has several plotting routines:</p>
<ul class="simple">
<li>ellipsoid/plot - plots one or more ellipsoids, or arrays of
-ellipsoids, defined in <img class="math"
src="_images/math/e5908582078e69c6be80476164a5ad1904e0877c.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/bb5fa23edd2754dda88386b5c2f48e26b6d994da.png" alt="{\bf
R}^2"/> or
-<img class="math"
src="_images/math/6b6d844f26e2bc171d1c97590cd3df50633cb36e.png" alt="{\bf
R}^3"/>.</li>
+ellipsoids, defined in <img class="math"
src="_images/math/fdbe9b4214da88518dfbb7be23a10bc0fc6eedb8.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/0798dced39715ef937fb976226ba2ae17f50367e.png" alt="{\bf
R}^2"/> or
+<img class="math"
src="_images/math/8bbda0690471f568c090c4d283e9bb5a511fa55a.png" alt="{\bf
R}^3"/>.</li>
<li>ellipsoid/minksum - plots geometric sum of finite number of
-ellipsoids defined in <img class="math"
src="_images/math/e5908582078e69c6be80476164a5ad1904e0877c.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/bb5fa23edd2754dda88386b5c2f48e26b6d994da.png" alt="{\bf
R}^2"/> or
-<img class="math"
src="_images/math/6b6d844f26e2bc171d1c97590cd3df50633cb36e.png" alt="{\bf
R}^3"/>.</li>
+ellipsoids defined in <img class="math"
src="_images/math/fdbe9b4214da88518dfbb7be23a10bc0fc6eedb8.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/0798dced39715ef937fb976226ba2ae17f50367e.png" alt="{\bf
R}^2"/> or
+<img class="math"
src="_images/math/8bbda0690471f568c090c4d283e9bb5a511fa55a.png" alt="{\bf
R}^3"/>.</li>
<li>ellipsoid/minkdiff - plots geometric difference (if it is not an
-empty set) of two ellipsoids defined in <img class="math"
src="_images/math/e5908582078e69c6be80476164a5ad1904e0877c.png" alt="{\bf
R}"/>,
-<img class="math"
src="_images/math/bb5fa23edd2754dda88386b5c2f48e26b6d994da.png" alt="{\bf
R}^2"/> or <img class="math"
src="_images/math/6b6d844f26e2bc171d1c97590cd3df50633cb36e.png" alt="{\bf
R}^3"/>.</li>
+empty set) of two ellipsoids defined in <img class="math"
src="_images/math/fdbe9b4214da88518dfbb7be23a10bc0fc6eedb8.png" alt="{\bf
R}"/>,
+<img class="math"
src="_images/math/0798dced39715ef937fb976226ba2ae17f50367e.png" alt="{\bf
R}^2"/> or <img class="math"
src="_images/math/8bbda0690471f568c090c4d283e9bb5a511fa55a.png" alt="{\bf
R}^3"/>.</li>
<li>ellipsoid/minkmp - plots geometric (Minkowski) sum of the geometric
-difference of two ellipsoids and the geometric sum of <img class="math"
src="_images/math/174fadd07fd54c9afe288e96558c92e0c1da733a.png" alt="n"/>
-ellipsoids defined in <img class="math"
src="_images/math/e5908582078e69c6be80476164a5ad1904e0877c.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/bb5fa23edd2754dda88386b5c2f48e26b6d994da.png" alt="{\bf
R}^2"/> or
-<img class="math"
src="_images/math/6b6d844f26e2bc171d1c97590cd3df50633cb36e.png" alt="{\bf
R}^3"/>.</li>
+difference of two ellipsoids and the geometric sum of <img class="math"
src="_images/math/413f8a8e40062a9090d9d50b88bc7b551b314c26.png" alt="n"/>
+ellipsoids defined in <img class="math"
src="_images/math/fdbe9b4214da88518dfbb7be23a10bc0fc6eedb8.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/0798dced39715ef937fb976226ba2ae17f50367e.png" alt="{\bf
R}^2"/> or
+<img class="math"
src="_images/math/8bbda0690471f568c090c4d283e9bb5a511fa55a.png" alt="{\bf
R}^3"/>.</li>
<li>ellipsoid/minkpm - plots geometric (Minkowski) difference of the
geometric sum of ellipsoids and a single ellipsoid defined in
-<img class="math"
src="_images/math/e5908582078e69c6be80476164a5ad1904e0877c.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/bb5fa23edd2754dda88386b5c2f48e26b6d994da.png" alt="{\bf
R}^2"/> or <img class="math"
src="_images/math/6b6d844f26e2bc171d1c97590cd3df50633cb36e.png" alt="{\bf
R}^3"/>.</li>
+<img class="math"
src="_images/math/fdbe9b4214da88518dfbb7be23a10bc0fc6eedb8.png" alt="{\bf
R}"/>, <img class="math"
src="_images/math/0798dced39715ef937fb976226ba2ae17f50367e.png" alt="{\bf
R}^2"/> or <img class="math"
src="_images/math/8bbda0690471f568c090c4d283e9bb5a511fa55a.png" alt="{\bf
R}^3"/>.</li>
<li>hyperplane/plot - plots one or more hyperplanes, or arrays of
-hyperplanes, defined in <img class="math"
src="_images/math/bb5fa23edd2754dda88386b5c2f48e26b6d994da.png" alt="{\bf
R}^2"/> or <img class="math"
src="_images/math/6b6d844f26e2bc171d1c97590cd3df50633cb36e.png" alt="{\bf
R}^3"/>.</li>
+hyperplanes, defined in <img class="math"
src="_images/math/0798dced39715ef937fb976226ba2ae17f50367e.png" alt="{\bf
R}^2"/> or <img class="math"
src="_images/math/8bbda0690471f568c090c4d283e9bb5a511fa55a.png" alt="{\bf
R}^3"/>.</li>
<li>reach/plot_ea - plots external approximation of the reach set whose
-dimension is <img class="math"
src="_images/math/41c544263a265ff15498ee45f7392c5f86c6d151.png" alt="2"/>
or <img class="math"
src="_images/math/7cde695f2e4542fd01f860a89189f47a27143b66.png"
alt="3"/>.</li>
+dimension is <img class="math"
src="_images/math/15c663954a3e059d1f876bc8a4621de376038c96.png" alt="2"/>
or <img class="math"
src="_images/math/b9b358d9bbdf54c3d9aef7554638822d996c21ea.png"
alt="3"/>.</li>
<li>reach/plot_ia - plots internal approximation of the reach set whose
-dimension is <img class="math"
src="_images/math/41c544263a265ff15498ee45f7392c5f86c6d151.png" alt="2"/>
or <img class="math"
src="_images/math/7cde695f2e4542fd01f860a89189f47a27143b66.png"
alt="3"/>.</li>
+dimension is <img class="math"
src="_images/math/15c663954a3e059d1f876bc8a4621de376038c96.png" alt="2"/>
or <img class="math"
src="_images/math/b9b358d9bbdf54c3d9aef7554638822d996c21ea.png"
alt="3"/>.</li>
</ul>
<p>All these functions allow the user to specify the color of the plotted
objects, line width for 1D and 2D plots, and transparency level of the
@@ -1784,14 +1843,31 @@
<p>Ellipsoids of dimensions higher than three must be projected onto a two-
or three-dimensional subspace before being plotted. This is done by
means of projection function:</p>
-<div class="highlight-matlab"><pre>% create two 4-dimensional ellipsoids:
+<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18</pre></div></td><td class="code"><div class="highlight"><pre>% create
two 4-dimensional ellipsoids:
firstEllObj = ellipsoid([14 -4 2 -5; -4 6 0 1; 2 0 6 -1; -5 1 -1 2]);
secEllObj = firstEllObj.getInv();
% specify 3-dimensional subspace by its basis:
% columns of basisMat must be orthogonal
-basisMat = [1 0 0 0; 0 0 1 0; 0 1 0 1].';
+basisMat = [1 0 0 0; 0 0 1 0; 0 1 0 1].';
% get 3-dimensional projections of firstEllObj and secEllObj:
bufEllVec = [firstEllObj secEllObj];
@@ -1802,31 +1878,47 @@
% Array of ellipsoids with dimensionality 1x2
ellVec.plot(); % plot ellipsoids in ellVec
-</pre>
-</div>
+</pre></div>
+</td></tr></table></div>
<p>Since the operation of projection is linear, the projection of the
geometric sum of ellipsoids equals the geometric sum of the projected
ellipsoids. The same is true for the geometric difference of two
ellipsoids.</p>
<p>Function projection exists also for the
-ReachContinuous<img class="math"
src="_images/math/385adced1eac31db28232371c6e5afb832d82bf7.png"
alt="\backslash"/>ReachDiscrete objects:</p>
-<div class="highlight-matlab"><pre>aMat = [0 1 0 0; -1 0 1 0; 0 0 0 1; 0 0
-1 0];
+ReachContinuous<img class="math"
src="_images/math/d068bdce9fdb2b4d38f0e2e575e55208f06e2b57.png"
alt="\backslash"/>ReachDiscrete objects:</p>
+<div class="highlight-matlab"><table class="highlighttable"><tr><td
class="linenos"><div class="linenodiv"><pre> 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16</pre></div></td><td class="code"><div class="highlight"><pre>aMat = [0
1 0 0; -1 0 1 0; 0 0 0 1; 0 0 -1 0];
bMat = [0; 0; 0; 1];
uBoundsEllObj = ellipsoid(1);
% 4-dimensional system
sys = elltool.linsys.LinSysFactory.create(aMat, bMat, uBoundsEllObj);
-dirsMat = [1 1 0 1; 0 -1 1 0; -1 1 1 1; 0 0 -1 1].'; % matrix of
directions
+dirsMat = [1 1 0 1; 0 -1 1 0; -1 1 1 1; 0 0 -1 1].'; % matrix of
directions
% reach set from time 0 to 5
rsObj = elltool.reach.ReachContinuous(sys, ell_unitball(4), dirsMat,...
- [0 5], 'isRegEnabled', true, 'isJustCheck', false, 'regTol', 1e-4);
-basisMat = [1 0 0 1; 0 1 1 0].'; % basis of 2-dimensional subspace
+ [0 5], 'isRegEnabled', true, 'isJustCheck', false,
'regTol', 1e-4);
+basisMat = [1 0 0 1; 0 1 1 0].'; % basis of 2-dimensional subspace
% project reach set rs onto basis basisMat
psObj = rsObj.projection(basisMat);
psObj.plotByEa(); % plot external approximation
hold on;
-psObj.plotByIa(); % plot internal approximation</pre>
-</div>
+psObj.plotByIa(); % plot internal approximation
+</pre></div>
+</td></tr></table></div>
<p>The quality of the ellipsoid and reach set plots is controlled by the
parameters nPlot2dPoints and nPlot3dPoints, which are available from
getters of ellipsoid class.</p>
@@ -1918,7 +2010,7 @@
</div>
<div class="footer">
© Copyright 2011-2013 Moscow State University, Faculty of
Computational Mathematics and Computer Science, System Analysis Department,
2004-2011 The Regents of the University of California.
- Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2b2.
+ Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2.1.
</div>
</body>
</html>
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/chap_install.html Sat
Nov 9 11:58:21 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/chap_install.html Mon
Feb 24 20:40:31 2014 UTC
@@ -114,7 +114,7 @@
<ol class="arabic simple">
<li>At this point, the directory tree of the <em>Ellipsoidal Toolbox</em>
is
added to the MATLAB path list. In order to save the updated path
-list, in your MATLAB window menu go to File <img class="math"
src="_images/math/e12b6767375342ed57d27678e3ea1cdb97f47e15.png"
alt="\rightarrow"/> Set
+list, in your MATLAB window menu go to File <img class="math"
src="_images/math/a9c4c6156d25f42923975ce449aadad9848ed7dc.png"
alt="\rightarrow"/> Set
Path... and click Save.</li>
<li>To get an idea of what the toolbox is about, type</li>
</ol>
@@ -231,7 +231,7 @@
</div>
<div class="footer">
© Copyright 2011-2013 Moscow State University, Faculty of
Computational Mathematics and Computer Science, System Analysis Department,
2004-2011 The Regents of the University of California.
- Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2b2.
+ Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2.1.
</div>
</body>
</html>
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/chap_intro.html Thu Feb
6 19:00:52 2014 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/chap_intro.html Mon Feb
24 20:40:31 2014 UTC
@@ -81,37 +81,37 @@
calculating their convex hull. MPT's convex hull algorithm is based on
the Double Description method <a class="reference internal"
href="#motz1953" id="id3">[MOTZ1953]</a> and implemented in
the CDD/CDD+ package <a class="reference internal" href="#cddhp"
id="id4">[CDDHP]</a>. Its complexity is
-<img class="math"
src="_images/math/caaa846680256b3e4de4329214b92089a991575e.png"
alt="V^n"/>, where <img class="math"
src="_images/math/12d58aa29201da09d8e620f8698e3a37547f6b4a.png" alt="V"/>
is the number of vertices and <img class="math"
src="_images/math/174fadd07fd54c9afe288e96558c92e0c1da733a.png" alt="n"/> is
+<img class="math"
src="_images/math/5cf1ead08d0d7fda7f71d5e6228edcbc9f7b2e4c.png"
alt="V^n"/>, where <img class="math"
src="_images/math/c99df7a209495334da442b1ec998abaabfa320d8.png" alt="V"/>
is the number of vertices and <img class="math"
src="_images/math/413f8a8e40062a9090d9d50b88bc7b551b314c26.png" alt="n"/> is
the state space dimension. Hence the use of MPT is practicable for low
dimensional systems. But even in low dimensional systems the number of
vertices in the reach set polytope can grow very large with the number
of time steps. For example, consider the system,</p>
<div class="math">
-<p><img src="_images/math/ce6ffae71fc494ec16e8a9400906866c5af9675c.png"
alt="x_{k+1} = Ax_k + u_k ,"/></p>
-</div><p>with <img class="math"
src="_images/math/712b52507a9e73c07bd4062d1237e3e926943c37.png"
alt="A=\left[\begin{array}{cc}\cos 1 & -\sin 1\\ \sin 1 & \cos
1\end{array}\right]"/>,
-<img class="math"
src="_images/math/399e7e6b2d4ab6e364b21b1a5a2d80429e86b99b.png" alt="\ u_k
\in \{u\in {\bf R}^2 ~|~ \|u\|_{\infty}\leqslant1\}"/>,
-and <img class="math"
src="_images/math/72b06396899d2700288898e0a58a1e1181f89181.png" alt="x_0
\in \{x\in {\bf R}^2 ~|~ \|x\|_{\infty}\leqslant1\}"/>.</p>
+<p><img src="_images/math/475800963f211b68178d44849f87661603b95a78.png"
alt="x_{k+1} = Ax_k + u_k ,"/></p>
+</div><p>with <img class="math"
src="_images/math/723a7f8cb2ace0920d908d01c86420373b48e8ca.png"
alt="A=\left[\begin{array}{cc}\cos 1 & -\sin 1\\ \sin 1 & \cos
1\end{array}\right]"/>,
+<img class="math"
src="_images/math/750490dafc28eb1175e6bf5f15083953bafabf1d.png" alt="\ u_k
\in \{u\in {\bf R}^2 ~|~ \|u\|_{\infty}\leqslant1\}"/>,
+and <img class="math"
src="_images/math/ae1be594cdd66a2ccb79190913273784e5c201b6.png" alt="x_0
\in \{x\in {\bf R}^2 ~|~ \|x\|_{\infty}\leqslant1\}"/>.</p>
<p>Starting with a rectangular initial set, the number of vertices of the
-reach set polytope is <img class="math"
src="_images/math/28f038a50595c2d43efef1ac831e39fb8de80f7e.png" alt="4k +
4"/> at the <img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>th
step.</p>
-<p>In <img class="math"
src="_images/math/7c4a429318eb6ae5aedb23191989a7056c11a038.png"
alt="d/dt"/> <a class="reference internal" href="#ddthp"
id="id5">[DDTHP]</a>, the reach set is approximated by
+reach set polytope is <img class="math"
src="_images/math/f22656e16328ce7f7b5af269ab2256888d2354be.png" alt="4k +
4"/> at the <img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>th
step.</p>
+<p>In <img class="math"
src="_images/math/91fe3e396a3aba8f5ff5f521d0b3f4008b4e0966.png"
alt="d/dt"/> <a class="reference internal" href="#ddthp"
id="id5">[DDTHP]</a>, the reach set is approximated by
unions of rectangular polytopes <a class="reference internal"
href="#asar2000" id="id6">[ASAR2000]</a>.</p>
<div class="figure align-center" id="ddtfig" style="width: 50%">
<img alt="approximation" src="_images/chapter01_ddt.png" />
-<p class="caption">Figure 1: Reach set approximation by union of
rectangles. Source: adapted from <a class="reference internal"
href="#asar2000" id="id7">[ASAR2000]</a>.</p>
+<p class="caption">Figure 14: Reach set approximation by union of
rectangles. Source: adapted from <a class="reference internal"
href="#asar2000" id="id7">[ASAR2000]</a>.</p>
</div>
<p>The algorithm works as follows. First, given the set of initial
conditions defined as a polytope, the evolution in time of the
-polytope's extreme points is computed (<a class="pageref"
href="#ddtfig">figure 1</a> (a)).</p>
-<p><img class="math"
src="_images/math/3a9244e14a9f38c4e175b060ad99919192e413da.png"
alt="R(t_1)"/> in <a class="pageref" href="#ddtfig">figure 1</a> (a) is
the reach set of the system at
-time <img class="math"
src="_images/math/8b91b7245b0dd42b4f5585b97e323a8cfaa064a8.png"
alt="t_1"/>, and <img class="math"
src="_images/math/f3b77bcc82b17c583ed6df127d3266460c8d0f43.png" alt="R[t_0,
t_1]"/> is the set of all points that
-can be reached during <img class="math"
src="_images/math/7ce192d3edb697d7c00614a371eff1a9152c42a3.png" alt="[t_0,
t_1]"/>. Second, the algorithm computes
+polytope's extreme points is computed (<a href="#ddtfig">figure 14</a>
(a)).</p>
+<p><img class="math"
src="_images/math/088e22e395ff0b8f6cde149172e52590852bcebf.png"
alt="R(t_1)"/> in <a href="#ddtfig">figure 14</a> (a) is the reach set of
the system at
+time <img class="math"
src="_images/math/44780f0598b4d22c6888cfca27deb04115f7fa88.png"
alt="t_1"/>, and <img class="math"
src="_images/math/1a3e51473c097540a265ee70575abb8038230e74.png" alt="R[t_0,
t_1]"/> is the set of all points that
+can be reached during <img class="math"
src="_images/math/85674382bfceecdd6e6d6bdfbc6cff246ef47ef9.png" alt="[t_0,
t_1]"/>. Second, the algorithm computes
the convex hull of vertices of both, the initial polytope and
-<img class="math"
src="_images/math/3a9244e14a9f38c4e175b060ad99919192e413da.png"
alt="R(t_1)"/> (<a class="pageref" href="#ddtfig">figure 1</a> (b)). The
resulting polytope is then
-bloated to include all the reachable states in <img class="math"
src="_images/math/43c0b696c09d8fcf7de773f68ada5fca52545b1f.png"
alt="[t_0,t_1]"/> (<a class="pageref" href="#ddtfig">figure 1</a> (c)).
+<img class="math"
src="_images/math/088e22e395ff0b8f6cde149172e52590852bcebf.png"
alt="R(t_1)"/> (<a href="#ddtfig">figure 14</a> (b)). The resulting
polytope is then
+bloated to include all the reachable states in <img class="math"
src="_images/math/3ad5575eeecc18f7013d14bb6ac8e07d4a611af3.png"
alt="[t_0,t_1]"/> (<a href="#ddtfig">figure 14</a> (c)).
Finally, this overapproximating polytope is in its turn
-overapproximated by the union of rectangles (<a class="pageref"
href="#ddtfig">figure 1</a> (d)). The
-same procedure is repeated for the next time interval <img class="math"
src="_images/math/cf22ccb564d6f9393afb0a4bd5c1bd489bd28626.png"
alt="[t_1,t_2]"/>,
-and the union of both rectangular approximations is taken (<a
class="pageref" href="#ddtfig">figure 1</a> (e,f)),
+overapproximated by the union of rectangles (<a href="#ddtfig">figure
14</a> (d)). The
+same procedure is repeated for the next time interval <img class="math"
src="_images/math/d82d790d123640183a6478ccd2fca6d3dbbb5cc0.png"
alt="[t_1,t_2]"/>,
+and the union of both rectangular approximations is taken (<a
href="#ddtfig">figure 14</a> (e,f)),
and so on. Rectangular polytopes are easy to represent
and the number of facets grows linearly with dimension, but a large
number of rectangles must be used to assure the approximation is not
@@ -128,21 +128,21 @@
uses a special class of polytopes (see <a class="reference internal"
href="#zonohp" id="id12">[ZONOHP]</a>)
of the form,</p>
<div class="math">
-<p><img src="_images/math/e18445de298a486382153595e8dda5384999c8b9.png"
alt="Z=\{x \in {\bf R}^n ~|~
+<p><img src="_images/math/079103ca2d8d2b4f2f1a11895f4e0777515a4655.png"
alt="Z=\{x \in {\bf R}^n ~|~
x=c+\sum_{i=1}^p\alpha_ig_i,~ -1\leqslant\alpha_i\leqslant1\},"/></p>
-</div><p>wherein <img class="math"
src="_images/math/3372c1cb6d68cf97c2d231acc0b47b95a9ed04cc.png" alt="c"/>
and <img class="math"
src="_images/math/49a91640f7ee9cb58b93648678c9d3aabae2330c.png"
alt="g_1, ..., g_p"/> are vectors in
-<img class="math"
src="_images/math/9d5b8bcc7aa4f27bc64d1e1817aa4f42c44cffcb.png" alt="{\bf
R}^n"/>. Thus, a zonotope <img class="math"
src="_images/math/3ead47fb9fb4a4c273feee398f72ff2a09702b84.png" alt="Z"/>
is represented by its
-center <img class="math"
src="_images/math/3372c1cb6d68cf97c2d231acc0b47b95a9ed04cc.png" alt="c"/>
and 'generator' vectors <img class="math"
src="_images/math/49a91640f7ee9cb58b93648678c9d3aabae2330c.png"
alt="g_1, ..., g_p"/>. The
-value <img class="math"
src="_images/math/87939d678ccd1097ef46bd50da281e73bd531811.png" alt="p/n"/>
is called the order of the zonotope. The main benefit
+</div><p>wherein <img class="math"
src="_images/math/65868d23a5bfe5b3b2d819386b19c14fa36af134.png" alt="c"/>
and <img class="math"
src="_images/math/5a5dba513d884860270a37e8a093a04413a047c1.png"
alt="g_1, ..., g_p"/> are vectors in
+<img class="math"
src="_images/math/e1ece5563e1c134d935af18b692ffc3fde4f2fd6.png" alt="{\bf
R}^n"/>. Thus, a zonotope <img class="math"
src="_images/math/c4563e7ecec2336a3934447a6c10ef8519b0b452.png" alt="Z"/>
is represented by its
+center <img class="math"
src="_images/math/65868d23a5bfe5b3b2d819386b19c14fa36af134.png" alt="c"/>
and 'generator' vectors <img class="math"
src="_images/math/5a5dba513d884860270a37e8a093a04413a047c1.png"
alt="g_1, ..., g_p"/>. The
+value <img class="math"
src="_images/math/7e48764f6022209e2a9d41cdb3350b01bd3e1283.png" alt="p/n"/>
is called the order of the zonotope. The main benefit
of zonotopes over general polytopes is that a symmetric polytope can be
represented more compactly than a general polytope. The geometric sum of
two zonotopes is a zonotope:</p>
<div class="math">
-<p><img src="_images/math/cba637903bd5dcc4222a25e52741e6c439d3ebeb.png"
alt="Z(c_1, G_1)\oplus Z(c_2, G_2) = Z(c_1+c_2, [G_1 ~ G_2]),"/></p>
-</div><p>wherein <img class="math"
src="_images/math/8db8d2c3b6325306a87e8a10b0e5358afb2f23eb.png" alt="G_1"/>
and <img class="math"
src="_images/math/4a742fa7110e3779fe13d9b3014b0e2ad6606c84.png" alt="G_2"/>
are matrices whose columns are
-generator vectors, and <img class="math"
src="_images/math/cc97b1305f6fb943238db2dee972b4e9f2c612e4.png" alt="[G_1 ~
G_2]"/> is their concatenation. Thus,
+<p><img src="_images/math/8b15416140d9a6317080962cc6f3e97cb091c2f9.png"
alt="Z(c_1, G_1)\oplus Z(c_2, G_2) = Z(c_1+c_2, [G_1 ~ G_2]),"/></p>
+</div><p>wherein <img class="math"
src="_images/math/7fb876996f317119f4a67c585344c9d153432a9b.png" alt="G_1"/>
and <img class="math"
src="_images/math/576bb52be38d16b35d99d553a68e3632c764b41f.png" alt="G_2"/>
are matrices whose columns are
+generator vectors, and <img class="math"
src="_images/math/d465e46fed499e62fd8331e3c6c2d9ba9fc46aa2.png" alt="[G_1 ~
G_2]"/> is their concatenation. Thus,
in the reach set computation, the order of the zonotope increases by
-<img class="math"
src="_images/math/87939d678ccd1097ef46bd50da281e73bd531811.png" alt="p/n"/>
with every time step. This difficulty can be averted by
+<img class="math"
src="_images/math/7e48764f6022209e2a9d41cdb3350b01bd3e1283.png" alt="p/n"/>
with every time step. This difficulty can be averted by
limiting the number of generator vectors, and overapproximating
zonotopes whose number of generator vectors exceeds the limit by lower
order zonotopes. The benefits of the compact zonotype representation,
@@ -179,28 +179,28 @@
linear system, the set of initial conditions and control bounds,
symbolically computes the exact reach set, using the experimental
quantifier elimination package. Quantifier elimination is the removal of
-all quantifiers (the universal quantifier <img class="math"
src="_images/math/536ba5a392431e74fec5a8db2257504c85fcc206.png"
alt="\forall"/> and the
-existential quantifier <img class="math"
src="_images/math/4ecf8666cca5f1d089b9c656be83f9e09d0abd5c.png"
alt="\exists"/>) from a quantified system. Each
+all quantifiers (the universal quantifier <img class="math"
src="_images/math/f9c9bedb8f4996f937e5accd1b8c65158eead225.png"
alt="\forall"/> and the
+existential quantifier <img class="math"
src="_images/math/aef07bc4ffa497327bb3d282cd8b9fd21a4be2fc.png"
alt="\exists"/>) from a quantified system. Each
quantified formula is substituted with quantifier-free expression with
-operations <img class="math"
src="_images/math/77cf26be132ef93923e082ee4153b2cb0ef44a50.png" alt="+"/>,
<img class="math"
src="_images/math/bac4dbe1c696d11e8dc43dd7f613199b2120daa1.png"
alt="\times"/>, <img class="math"
src="_images/math/d5eb8726a34932d28103ce7ce17456421222603f.png" alt="="/>
and <img class="math"
src="_images/math/262a080d0d87e973b817945967a512346d8bfc49.png"
alt="<"/>. For
+operations <img class="math"
src="_images/math/3e41c598147b003fe1c720cafa073d83ccdd84bd.png" alt="+"/>,
<img class="math"
src="_images/math/c69691d64985442217922c8d34e835a9dea60178.png"
alt="\times"/>, <img class="math"
src="_images/math/eceeddfc4750d4fd271778cbd91090d6476c4a04.png" alt="="/>
and <img class="math"
src="_images/math/c1063a458139235d94b43817ed8d89dab9f9f811.png"
alt="<"/>. For
example, consider the discrete-time system</p>
<div class="math">
-<p><img src="_images/math/926952b76879859f61ea04a4f8e240d3f8278f3e.png"
alt="x_{k+1} = Ax_k + Bu_k"/></p>
-</div><p>with <img class="math"
src="_images/math/8e777662831f19d4544cf2ce4610a179e3404fec.png"
alt="A=\left[\begin{array}{cc}0 & 1\\0 & 0\end{array}\right]"/>
-and <img class="math"
src="_images/math/0f2352bc1fed2c49a6284a9c47e14ec945308707.png"
alt="B=\left[\begin{array}{c}0\\1\end{array}\right]"/>.</p>
-<p>For initial conditions <img class="math"
src="_images/math/71c4f3355b97203be1739b4d5f948313d280d3ba.png"
alt="x_0\in\{x\in {\bf R}^2 ~|~ \|x\|_{\infty} \leqslant1\}"/> and
-controls <img class="math"
src="_images/math/9b9988a4879048e3095278449aed753504099b84.png"
alt="u_k\in\{u\in {\bf R} ~|~ -1\leqslant u\leqslant1\}"/>, the
-reach set for <img class="math"
src="_images/math/9742e5e7c4cd77e2c1bad64165c68c3abb4c90c2.png"
alt="k\geqslant0"/> is given by the quantified formula</p>
+<p><img src="_images/math/0e8bce0949a2fbbe0993fbff7d4b895350df342c.png"
alt="x_{k+1} = Ax_k + Bu_k"/></p>
+</div><p>with <img class="math"
src="_images/math/eeef52417b85996d354fb4e6654848ebfb513fad.png"
alt="A=\left[\begin{array}{cc}0 & 1\\0 & 0\end{array}\right]"/>
+and <img class="math"
src="_images/math/8d047e64eceb1d63ca54023f66232e5861ca1d65.png"
alt="B=\left[\begin{array}{c}0\\1\end{array}\right]"/>.</p>
+<p>For initial conditions <img class="math"
src="_images/math/531dda07a2dabeeaa9be97a75a5bb2c34c7058cb.png"
alt="x_0\in\{x\in {\bf R}^2 ~|~ \|x\|_{\infty} \leqslant1\}"/> and
+controls <img class="math"
src="_images/math/4ae17ef1aa815763c1305aaa3aa46398363f4933.png"
alt="u_k\in\{u\in {\bf R} ~|~ -1\leqslant u\leqslant1\}"/>, the
+reach set for <img class="math"
src="_images/math/dbe643040d34260bc1e3129b8853db23abe5e3b5.png"
alt="k\geqslant0"/> is given by the quantified formula</p>
<div class="math">
-<p><img src="_images/math/af24b4257394a743dab72223af20554984cffa99.png"
alt="\{ x\in{\bf R}^2 ~|~ \exists x_0, ~~ \exists k\geqslant0, ~~
+<p><img src="_images/math/e2e51eb287a8f16ad4eb5aa87458072eeb94ac60.png"
alt="\{ x\in{\bf R}^2 ~|~ \exists x_0, ~~ \exists k\geqslant0, ~~
\exists u_i, ~ 0\leqslant i\leqslant k: ~~
x = A^kx_0+\sum_{i=0}^{k-1}A^{k-i-1}Bu_i \},"/></p>
</div><p>which is equivalent to the quantifier-free expression</p>
<div class="math">
-<p><img src="_images/math/4c811609ca6c0ed326b6e5e54d5dbd2a6e360e87.png"
alt="-1\leqslant[1 ~~ 0]x\leqslant1 ~ \wedge ~ -1\leqslant[0 ~~
1]x\leqslant1."/></p>
+<p><img src="_images/math/cc0c6c57f34e206e04e9293909fcf1290c78df3f.png"
alt="-1\leqslant[1 ~~ 0]x\leqslant1 ~ \wedge ~ -1\leqslant[0 ~~
1]x\leqslant1."/></p>
</div><p>It is proved in <a class="reference internal" href="#laff2001"
id="id19">[LAFF2001]</a> that for
-continuous-time systems, <img class="math"
src="_images/math/c609adabab2b99c660ee04eb21bf0cef10f5b06d.png"
alt="\dot{x}(t) = Ax(t) + Bu(t)"/>, if
-<img class="math"
src="_images/math/019e9892786e493964e145e7c5cf7b700314e53b.png" alt="A"/>
is constant and nilpotent or is diagonalizable with rational
+continuous-time systems, <img class="math"
src="_images/math/922627e82772d0c59364db1fa301dc616d34af3b.png"
alt="\dot{x}(t) = Ax(t) + Bu(t)"/>, if
+<img class="math"
src="_images/math/0acafa529182e79b4f56165ec677554fba7fcf98.png" alt="A"/>
is constant and nilpotent or is diagonalizable with rational
real or purely imaginary eigenvalues, and with suitable restrictions on
the control and initial conditions, the quantifier elimination package
returns a quantifier free formula describing the reach set. Quantifier
@@ -267,7 +267,7 @@
<table class="docutils citation" frame="void" id="ddthp" rules="none">
<colgroup><col class="label" /><col /></colgroup>
<tbody valign="top">
-<tr><td class="label"><a class="fn-backref"
href="#id5">[DDTHP]</a></td><td><img class="math"
src="_images/math/7c4a429318eb6ae5aedb23191989a7056c11a038.png"
alt="d/dt"/> homepage. <a class="reference external"
href="
http://www-verimag.imag.fr/~tdang/ddt.html">
http://www-verimag.imag.fr/~tdang/ddt.html</a>.</td></tr>
+<tr><td class="label"><a class="fn-backref"
href="#id5">[DDTHP]</a></td><td><img class="math"
src="_images/math/91fe3e396a3aba8f5ff5f521d0b3f4008b4e0966.png"
alt="d/dt"/> homepage. <a class="reference external"
href="
http://www-verimag.imag.fr/~tdang/ddt.html">
http://www-verimag.imag.fr/~tdang/ddt.html</a>.</td></tr>
</tbody>
</table>
<table class="docutils citation" frame="void" id="asar2000" rules="none">
@@ -443,7 +443,7 @@
</div>
<div class="footer">
© Copyright 2011-2013 Moscow State University, Faculty of
Computational Mathematics and Computer Science, System Analysis Department,
2004-2011 The Regents of the University of California.
- Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2b2.
+ Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2.1.
</div>
</body>
</html>
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/chap_reach.html Mon Nov
11 19:22:16 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/chap_reach.html Mon Feb
24 20:40:31 2014 UTC
@@ -57,129 +57,129 @@
<h3>Systems without disturbances<a class="headerlink"
href="#systems-without-disturbances" title="Permalink to this
headline">¶</a></h3>
<p>Consider a general continuous-time</p>
<div class="math" id="equation-ctds1">
-<p><span class="eqno">(1)</span><img
src="_images/math/2ca4e17e19fa261a8017d598ed2a630374d816bd.png"
alt="\dot{x}(t) = f(t, x, u),"/></p>
+<p><span class="eqno">(1)</span><img
src="_images/math/66b81934299f1cbdd37475d8403da0e552a03974.png"
alt="\dot{x}(t) = f(t, x, u),"/></p>
</div><p>or discrete-time dynamical system</p>
<div class="math" id="equation-dtds1">
-<p><span class="eqno">(2)</span><img
src="_images/math/22ae2e7de816b712afd362eca1be6524b7ae8e32.png" alt="x(t+1)
= f(t, x, u),"/></p>
-</div><p>wherein <img class="math"
src="_images/math/e0d2bf360290fd61d1c1557e763f2622363b3d35.png" alt="t"/>
is time <a class="footnote-reference" href="#id11" id="id1">[1]</a>, <img
class="math"
src="_images/math/7bb6c0add112d2fafef9f550e3efdf5a8a90f9fc.png"
alt="x\in{\bf R}^n"/> is the state,
-<img class="math"
src="_images/math/885666012fc22acc97448cd23a4e087461163fe8.png"
alt="u\in{\bf R}^m"/> is the control, and <img class="math"
src="_images/math/bb2c93730dbb48558bb3c4738c956c4e8f816437.png" alt="f"/>
is a measurable
-vector function taking values in <img class="math"
src="_images/math/9d5b8bcc7aa4f27bc64d1e1817aa4f42c44cffcb.png" alt="{\bf
R}^n"/>. <a class="footnote-reference" href="#id12" id="id2">[2]</a> The
control
-values <img class="math"
src="_images/math/962d030797713a522c94cc9365cac8daa2eba55b.png" alt="u(t,
x(t))"/> are restricted to a closed compact control set
-<img class="math"
src="_images/math/716aa9f254b85bd9c27294bd9a2279369dc5337a.png"
alt="{\mathcal U}(t)\subset{\bf R}^m"/>. An <em>open-loop</em> control does
not
-depend on the state, <img class="math"
src="_images/math/799ecf0514724164bc6aeb7ae59cb953101ed4d9.png"
alt="u=u(t)"/>; for a <em>closed-loop</em> control,
-<img class="math"
src="_images/math/0bf7daa52060ba1694eb242ef467c14d103bc8a3.png" alt="u=u(t,
x(t))"/>.</p>
-<p><strong>Definition.</strong> The (forward) reach set <img class="math"
src="_images/math/4ac03bddc513f223d4686a28c9956a8a1bda959e.png"
alt="{\mathcal X}(t, t_0, x_0)"/> at time
-<img class="math"
src="_images/math/7c2c15b11e78eea6a5e78c86dee37e0980a3f10d.png"
alt="t>t_0"/> from the initial position <img class="math"
src="_images/math/bb9a6f9a1c40ef877e03efc9f258bd9e26344877.png" alt="(t_0,
x_0)"/> is the set of
-all states <img class="math"
src="_images/math/ca2daf2e20f673b2640c6e7dc320ca876788504f.png"
alt="x(t)"/> reachable at time <img class="math"
src="_images/math/e0d2bf360290fd61d1c1557e763f2622363b3d35.png" alt="t"/>
by system <a href="#equation-ctds1">(1)</a>,
-or <a href="#equation-dtds1">(2)</a>, with <img class="math"
src="_images/math/e9968a16fb90aa2d8126384a4b1af47870fd12a6.png"
alt="x(t_0)=x_0"/> through all possible controls
-<img class="math"
src="_images/math/75741dc287c95ab30ca0b52fba5160b2c2ea66d8.png"
alt="u(\tau, x(\tau))\in{\mathcal U}(\tau)"/>,
-<img class="math"
src="_images/math/eab6bff26e807fb4405fa64304a1265c1dd9ca3c.png"
alt="t_0\leqslant\tau< t"/>. For a given set of initial states
-<img class="math"
src="_images/math/058cc043eb5c4750bfba163d5014ba4a2911b20c.png"
alt="{\mathcal X}_0"/>, the reach set
-<img class="math"
src="_images/math/742ecaa940e5f59c5500865e58e37461ccd8aa3a.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/> is</p>
+<p><span class="eqno">(2)</span><img
src="_images/math/a4bd656629103104c328ffe273c9d82cff6d9d4d.png" alt="x(t+1)
= f(t, x, u),"/></p>
+</div><p>wherein <img class="math"
src="_images/math/ef9270877405055756d345facd044e4ab297f858.png" alt="t"/>
is time <a class="footnote-reference" href="#id11" id="id1">[1]</a>, <img
class="math"
src="_images/math/1877db47ab2d3b518dfb41417f2d46e2d748a6a1.png"
alt="x\in{\bf R}^n"/> is the state,
+<img class="math"
src="_images/math/c58a71cb24aee0af2fe74d3a2de7f016bce262df.png"
alt="u\in{\bf R}^m"/> is the control, and <img class="math"
src="_images/math/0001d02b63ede2fe3219e05a7cd09c82ae6298b6.png" alt="f"/>
is a measurable
+vector function taking values in <img class="math"
src="_images/math/e1ece5563e1c134d935af18b692ffc3fde4f2fd6.png" alt="{\bf
R}^n"/>. <a class="footnote-reference" href="#id12" id="id2">[2]</a> The
control
+values <img class="math"
src="_images/math/c7d573ea5dd64e6a9005c1402b46d8c8b5b0acdb.png" alt="u(t,
x(t))"/> are restricted to a closed compact control set
+<img class="math"
src="_images/math/96376b2482a3b39e982e29efc588d0c1a150d46b.png"
alt="{\mathcal U}(t)\subset{\bf R}^m"/>. An <em>open-loop</em> control does
not
+depend on the state, <img class="math"
src="_images/math/62d6a20085627d0a6f00e17df842262055c0aa24.png"
alt="u=u(t)"/>; for a <em>closed-loop</em> control,
+<img class="math"
src="_images/math/da7b1f74c9ae9180d468eada40a97f84d4ba7d5b.png" alt="u=u(t,
x(t))"/>.</p>
+<p><strong>Definition.</strong> The (forward) reach set <img class="math"
src="_images/math/ee54e416ace7cbeb9c4623f1311f59b9f2ee1e78.png"
alt="{\mathcal X}(t, t_0, x_0)"/> at time
+<img class="math"
src="_images/math/47a0f66af5c0a8153f3cc31637d82d745a941545.png"
alt="t>t_0"/> from the initial position <img class="math"
src="_images/math/3da684c1b3e8bedfaf58039eefbc60210ee192c5.png" alt="(t_0,
x_0)"/> is the set of
+all states <img class="math"
src="_images/math/9b5babd4eddd2d7d7c87ad736865a588c2d4d9f8.png"
alt="x(t)"/> reachable at time <img class="math"
src="_images/math/ef9270877405055756d345facd044e4ab297f858.png" alt="t"/>
by system <a href="#equation-ctds1">(1)</a>,
+or <a href="#equation-dtds1">(2)</a>, with <img class="math"
src="_images/math/bc27d5a9ac17ef8c0e41db4b17b611a625669152.png"
alt="x(t_0)=x_0"/> through all possible controls
+<img class="math"
src="_images/math/f1108a777b9c9e5400c7561dca28e08dbb907633.png"
alt="u(\tau, x(\tau))\in{\mathcal U}(\tau)"/>,
+<img class="math"
src="_images/math/1a20ede2a2dca098b7ddb2bcf0d64eaf789fe4ef.png"
alt="t_0\leqslant\tau< t"/>. For a given set of initial states
+<img class="math"
src="_images/math/1eae27d722cf74685b3dab099d6e0089009498ce.png"
alt="{\mathcal X}_0"/>, the reach set
+<img class="math"
src="_images/math/811bdf7f2cb9ca774c4c8d632bfedbf768d28f91.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/> is</p>
<div class="math" id="equation-def_olrs">
-<p><span class="eqno">(3)</span><img
src="_images/math/7bf660307feb959dd29b62cb68cf038fad92e4ac.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0) = \bigcup_{x_0\in{\mathcal
X}_0}{\mathcal X}(t, t_0, x_0)."/></p>
+<p><span class="eqno">(3)</span><img
src="_images/math/d4d533da39bf6992607ba5416930c7d6a2bb5a66.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0) = \bigcup_{x_0\in{\mathcal
X}_0}{\mathcal X}(t, t_0, x_0)."/></p>
</div><p>Here are two facts about forward reach sets.</p>
<ol class="arabic">
-<li><p class="first"><img class="math"
src="_images/math/742ecaa940e5f59c5500865e58e37461ccd8aa3a.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/> is the same for
+<li><p class="first"><img class="math"
src="_images/math/811bdf7f2cb9ca774c4c8d632bfedbf768d28f91.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/> is the same for
open-loop and closed-loop control.</p>
</li>
-<li><p class="first"><img class="math"
src="_images/math/742ecaa940e5f59c5500865e58e37461ccd8aa3a.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/> satisfies the semigroup
+<li><p class="first"><img class="math"
src="_images/math/811bdf7f2cb9ca774c4c8d632bfedbf768d28f91.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/> satisfies the semigroup
property,</p>
<div class="math" id="equation-semigroup">
-<p><span class="eqno">(4)</span><img
src="_images/math/3f154a3c90dcc9e3a0a5a273b62d172fa807c504.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0) = {\mathcal X}(t, \tau, {\mathcal
X}(\tau, t_0, {\mathcal X}_0)), \;\;\;
+<p><span class="eqno">(4)</span><img
src="_images/math/c49b37e25a9c556303eea0f3f38627a8e1e3dee7.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0) = {\mathcal X}(t, \tau, {\mathcal
X}(\tau, t_0, {\mathcal X}_0)), \;\;\;
t_0\leqslant\tau< t."/></p>
</div></li>
</ol>
<p>For linear systems</p>
<div class="math" id="equation-linearrhs">
-<p><span class="eqno">(5)</span><img
src="_images/math/949f15c17c06ce267d7e29d4899999e171533283.png" alt="f(t,
x, u) = A(t)x(t) + B(t)u,"/></p>
-</div><p>with matrices <img class="math"
src="_images/math/39a600f2477bf0c26625cbeac94c8b2db1137fc3.png"
alt="A(t)"/> in <img class="math"
src="_images/math/cb0db0dbdc5a4fb4c145e30a737d8d2e3a0c0665.png" alt="{\bf
R}^{n\times n}"/> and
-<img class="math"
src="_images/math/429f9bbb73bef9e385fb33c6a610248910b919e0.png"
alt="B(t)"/> in <img class="math"
src="_images/math/f7310db1c9f2d781f689a4a2a7e82e7f9e465d17.png" alt="{\bf
R}^{m\times n}"/>. For continuous-time linear
+<p><span class="eqno">(5)</span><img
src="_images/math/1b4ceadab1c25095e9e066b78434eacc1a162c0f.png" alt="f(t,
x, u) = A(t)x(t) + B(t)u,"/></p>
+</div><p>with matrices <img class="math"
src="_images/math/a79ae2055fb6a0774c0140d85756c9fc47af6e2a.png"
alt="A(t)"/> in <img class="math"
src="_images/math/42c9c2a5bc3075244d212ae9545395031527d802.png" alt="{\bf
R}^{n\times n}"/> and
+<img class="math"
src="_images/math/9862381d627031d0a2e12c24690593e755041368.png"
alt="B(t)"/> in <img class="math"
src="_images/math/e766db8cf5dc81aab9fe5a4e494c344ccdf8f0e2.png" alt="{\bf
R}^{m\times n}"/>. For continuous-time linear
system the state transition matrix is</p>
<div class="math">
-<p><img src="_images/math/fa7306baf69bb692361ac93e38f294cecfb99ba3.png"
alt="\dot{\Phi}(t, t_0) = A(t)\Phi(t, t_0), \Phi(t, t) = I,"/></p>
-</div><p>which for constant <img class="math"
src="_images/math/99a43db79e7ea5abd0478c141516e437ab9906d6.png"
alt="A(t)\equiv A"/> simplifies as</p>
+<p><img src="_images/math/1b5a7fbfea588eb5fbb5f4ee4ae37be55548cee3.png"
alt="\dot{\Phi}(t, t_0) = A(t)\Phi(t, t_0), \Phi(t, t) = I,"/></p>
+</div><p>which for constant <img class="math"
src="_images/math/6cdd3fa953a5903c857cc2cf91708b936a83b753.png"
alt="A(t)\equiv A"/> simplifies as</p>
<div class="math">
-<p><img src="_images/math/268ca42ec22ae9c6317909d50e001d7a26485fb6.png"
alt="\Phi(t, t_0) = e^{A(t-t_0)} ."/></p>
+<p><img src="_images/math/b13a2af07e8de9844a51f66cc09822345854054e.png"
alt="\Phi(t, t_0) = e^{A(t-t_0)} ."/></p>
</div><p>For discrete-time linear system the state transition matrix is</p>
<div class="math">
-<p><img src="_images/math/dc3e664754cab6f673bb05f27c253088b4a2acb0.png"
alt="\Phi(t+1, t_0) = A(t)\Phi(t, t_0), \Phi(t, t) = I,"/></p>
-</div><p>which for constant <img class="math"
src="_images/math/99a43db79e7ea5abd0478c141516e437ab9906d6.png"
alt="A(t)\equiv A"/> simplifies as</p>
+<p><img src="_images/math/5cbd0df918094f708ebf1df754c42f50e9496d15.png"
alt="\Phi(t+1, t_0) = A(t)\Phi(t, t_0), \Phi(t, t) = I,"/></p>
+</div><p>which for constant <img class="math"
src="_images/math/6cdd3fa953a5903c857cc2cf91708b936a83b753.png"
alt="A(t)\equiv A"/> simplifies as</p>
<div class="math">
-<p><img src="_images/math/53a6f08f46786ad74691b2d45dff557e36b27e13.png"
alt="\Phi(t, t_0) = A^{t-t_0} ."/></p>
+<p><img src="_images/math/9dc83915e86cef95b6ad0a904055b458c9315889.png"
alt="\Phi(t, t_0) = A^{t-t_0} ."/></p>
</div><p>If the state transition matrix is invertible,
-<img class="math"
src="_images/math/dbb01a0d6f4dfa9f724dd681242a8d96bb236fde.png"
alt="\Phi^{-1}(t, t_0) = \Phi(t_0, t)"/>. The transition matrix is
+<img class="math"
src="_images/math/393f7ac127951f2fb3d7c267e50ddae42d27a07f.png"
alt="\Phi^{-1}(t, t_0) = \Phi(t_0, t)"/>. The transition matrix is
always invertible for continuous-time and for sampled discrete-time
-systems. However, if for some <img class="math"
src="_images/math/1dc1c0119a604b91be9142370dc3159b6a9bbcb9.png"
alt="\tau"/>, <img class="math"
src="_images/math/f835b9ade5be0f5e6fe46ddb9e6aaf4e6722f665.png"
alt="t_0\leqslant\tau<t"/>,
-<img class="math"
src="_images/math/1ccb7a7f43f1a7378375bc0b410c72636a297016.png"
alt="A(\tau)"/> is degenerate (singular),
-<img class="math"
src="_images/math/34d1587f0334c20905e9add548352a7b4152abbc.png"
alt="\Phi(t, t_0)=\prod_{\tau=t_0}^{t-1}A(\tau)"/>, is also degenerate
+systems. However, if for some <img class="math"
src="_images/math/d9e99c35d3632bb156b7aca0e93cd78a148a10e8.png"
alt="\tau"/>, <img class="math"
src="_images/math/318499371b02e60472b58864afad183a0d3ff13c.png"
alt="t_0\leqslant\tau<t"/>,
+<img class="math"
src="_images/math/ddba4a1a29baa7f6921759e588bc53b2d18b6392.png"
alt="A(\tau)"/> is degenerate (singular),
+<img class="math"
src="_images/math/bb59ee19bd7b6e1621c2d2f798d512cbb84fa3dc.png"
alt="\Phi(t, t_0)=\prod_{\tau=t_0}^{t-1}A(\tau)"/>, is also degenerate
and cannot be inverted.</p>
<p>Following Cauchy's formula, the reach set
-<img class="math"
src="_images/math/742ecaa940e5f59c5500865e58e37461ccd8aa3a.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/> for a linear system can be
+<img class="math"
src="_images/math/811bdf7f2cb9ca774c4c8d632bfedbf768d28f91.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/> for a linear system can be
expressed as</p>
<div class="math" id="equation-ctlsrs">
-<p><span class="eqno">(6)</span><img
src="_images/math/8511665fe56bbcd56b0786a30f44544738899e59.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0) =
+<p><span class="eqno">(6)</span><img
src="_images/math/d1cc6249f0b4841e7ab726fd50d214123556c028.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0) =
\Phi(t, t_0){\mathcal X}_0 \oplus \int_{t_0}^t\Phi(t,
\tau)B(\tau){\mathcal U}(\tau)d\tau"/></p>
</div><p>in continuous-time, and as</p>
<div class="math" id="equation-dtlsrs">
-<p><span class="eqno">(7)</span><img
src="_images/math/55a9f44153e579f6ecac4f22cd27f6b677a7d931.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0) =
+<p><span class="eqno">(7)</span><img
src="_images/math/2761894730898386aea3af3751bac2f8a3d2faf6.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0) =
\Phi(t, t_0){\mathcal X}_0 \oplus \sum_{\tau=t_0}^{t-1}\Phi(t,
\tau+1)B(\tau){\mathcal U}(\tau)"/></p>
</div><p>in discrete-time case.</p>
-<p>The operation '<img class="math"
src="_images/math/f7c581af3f7cf7ed3abe62da090534eb4d1bd00f.png"
alt="\oplus"/>' is the <em>geometric sum</em>, also known as
+<p>The operation '<img class="math"
src="_images/math/734c2e0e77e6a202ef3fe4bd5c5a63e8484b5c80.png"
alt="\oplus"/>' is the <em>geometric sum</em>, also known as
<em>Minkowski sum</em>. <a class="footnote-reference" href="#id13"
id="id3">[3]</a> The geometric sum and linear (or affine)
transformations preserve compactness and convexity. Hence, if the
-initial set <img class="math"
src="_images/math/058cc043eb5c4750bfba163d5014ba4a2911b20c.png"
alt="{\mathcal X}_0"/> and the control sets
-<img class="math"
src="_images/math/2fad00e8688c15ae8e5d1cb55e0e80e8a1a94599.png"
alt="{\mathcal U}(\tau)"/>, <img class="math"
src="_images/math/f835b9ade5be0f5e6fe46ddb9e6aaf4e6722f665.png"
alt="t_0\leqslant\tau<t"/>, are compact and
+initial set <img class="math"
src="_images/math/1eae27d722cf74685b3dab099d6e0089009498ce.png"
alt="{\mathcal X}_0"/> and the control sets
+<img class="math"
src="_images/math/d5025379a275c633646266889a3f8afb66824361.png"
alt="{\mathcal U}(\tau)"/>, <img class="math"
src="_images/math/318499371b02e60472b58864afad183a0d3ff13c.png"
alt="t_0\leqslant\tau<t"/>, are compact and
convex, so is the reach set
-<img class="math"
src="_images/math/742ecaa940e5f59c5500865e58e37461ccd8aa3a.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/>.</p>
-<p><strong>Definition.</strong> The backward reach set <img class="math"
src="_images/math/2b9abba74ebec9ce8844e70604230da1dceb511b.png"
alt="{\mathcal Y}(t_1, t, y_1)"/> for the target
-position <img class="math"
src="_images/math/af044877adb9f0742be0181232cd7503d496dcea.png" alt="(t_1,
y_1)"/> is the set of all states <img class="math"
src="_images/math/1340561888dcb4122a0844f6edc3acaa4dfc4a63.png"
alt="y(t)"/> for
+<img class="math"
src="_images/math/811bdf7f2cb9ca774c4c8d632bfedbf768d28f91.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/>.</p>
+<p><strong>Definition.</strong> The backward reach set <img class="math"
src="_images/math/96cab774fe1612c76917d11801b1f0dd916279c1.png"
alt="{\mathcal Y}(t_1, t, y_1)"/> for the target
+position <img class="math"
src="_images/math/3616a3c9ec7e214078b34757d721209a120667ce.png" alt="(t_1,
y_1)"/> is the set of all states <img class="math"
src="_images/math/6ef4611104bb98b4035f37ce6bbafb0ec7a38a60.png"
alt="y(t)"/> for
which there exists some control
-<img class="math"
src="_images/math/75741dc287c95ab30ca0b52fba5160b2c2ea66d8.png"
alt="u(\tau, x(\tau))\in{\mathcal U}(\tau)"/>,
-<img class="math"
src="_images/math/db857027076b91652b7bac6974e038e8975cb8f4.png"
alt="t\leqslant\tau<t_1"/>, that steers system <a
href="#equation-ctds1">(1)</a>, or <a href="#equation-dtds1">(2)</a> to
-the state <img class="math"
src="_images/math/4ae250d1bdd46e5677f27edcf5efb34587b6fc1a.png" alt="y_1"/>
at time <img class="math"
src="_images/math/8b91b7245b0dd42b4f5585b97e323a8cfaa064a8.png"
alt="t_1"/>. For the target set
-<img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/> at time <img class="math"
src="_images/math/8b91b7245b0dd42b4f5585b97e323a8cfaa064a8.png"
alt="t_1"/>, the backward reach set
-<img class="math"
src="_images/math/6e2bb77aa7bc88aa6847793e8159b305c3e98836.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> is</p>
+<img class="math"
src="_images/math/f1108a777b9c9e5400c7561dca28e08dbb907633.png"
alt="u(\tau, x(\tau))\in{\mathcal U}(\tau)"/>,
+<img class="math"
src="_images/math/42a4765aa2413005dad1bd4ef454ddb42b4277c9.png"
alt="t\leqslant\tau<t_1"/>, that steers system <a
href="#equation-ctds1">(1)</a>, or <a href="#equation-dtds1">(2)</a> to
+the state <img class="math"
src="_images/math/f30c7e391f4cef1d7b14050b5916c857c0979cb5.png" alt="y_1"/>
at time <img class="math"
src="_images/math/44780f0598b4d22c6888cfca27deb04115f7fa88.png"
alt="t_1"/>. For the target set
+<img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/> at time <img class="math"
src="_images/math/44780f0598b4d22c6888cfca27deb04115f7fa88.png"
alt="t_1"/>, the backward reach set
+<img class="math"
src="_images/math/5391e6459f27f329a5ba5ceac7e280b33da970ce.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> is</p>
<div class="math" id="equation-def_olbrs">
-<p><span class="eqno">(8)</span><img
src="_images/math/692d5a2c21632c0009b3921ced05fad8a72039f6.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1) = \bigcup_{y_1\in{\mathcal
Y}_1}{\mathcal Y}(t_1, t, y_1)."/></p>
+<p><span class="eqno">(8)</span><img
src="_images/math/8e9dc7ddc2269ac78a3c3c8d6b2168cff366c628.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1) = \bigcup_{y_1\in{\mathcal
Y}_1}{\mathcal Y}(t_1, t, y_1)."/></p>
</div><p>The backward reach set
-<img class="math"
src="_images/math/6e2bb77aa7bc88aa6847793e8159b305c3e98836.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> is the largest <em>weakly
-invariant</em> set with respect to the target set <img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/> and
-time values <img class="math"
src="_images/math/e0d2bf360290fd61d1c1557e763f2622363b3d35.png" alt="t"/>
and <img class="math"
src="_images/math/8b91b7245b0dd42b4f5585b97e323a8cfaa064a8.png"
alt="t_1"/>. <a class="footnote-reference" href="#id14" id="id4">[4]</a></p>
+<img class="math"
src="_images/math/5391e6459f27f329a5ba5ceac7e280b33da970ce.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> is the largest <em>weakly
+invariant</em> set with respect to the target set <img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/> and
+time values <img class="math"
src="_images/math/ef9270877405055756d345facd044e4ab297f858.png" alt="t"/>
and <img class="math"
src="_images/math/44780f0598b4d22c6888cfca27deb04115f7fa88.png"
alt="t_1"/>. <a class="footnote-reference" href="#id14" id="id4">[4]</a></p>
<p><strong>Remark.</strong> Backward reach set can be computed for
continuous-time
-system only if the solution of <a href="#equation-ctds1">(1)</a> exists
for <img class="math"
src="_images/math/bfb532e561f10458258d619de1c2f1d9bb83aaf1.png"
alt="t<t_1"/>; and
+system only if the solution of <a href="#equation-ctds1">(1)</a> exists
for <img class="math"
src="_images/math/f172d25be351c54495d737f93750ec5e72cbddda.png"
alt="t<t_1"/>; and
for discrete-time system only if the right hand side of <a
href="#equation-dtds1">(2)</a> is
invertible <a class="footnote-reference" href="#id15" id="id5">[5]</a>.</p>
-<p>These two facts about the backward reach set <img class="math"
src="_images/math/3e0cda439f41ec70ecfd72256277066dfcf37e1e.png"
alt="{\mathcal Y}"/> are
+<p>These two facts about the backward reach set <img class="math"
src="_images/math/973d4563ee9daf9f62b0ca03e04eb7b2b1aecf1b.png"
alt="{\mathcal Y}"/> are
similar to those for forward reach sets.</p>
<ol class="arabic">
-<li><p class="first"><img class="math"
src="_images/math/6e2bb77aa7bc88aa6847793e8159b305c3e98836.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> is the same for
+<li><p class="first"><img class="math"
src="_images/math/5391e6459f27f329a5ba5ceac7e280b33da970ce.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> is the same for
open-loop and closed-loop control.</p>
</li>
-<li><p class="first"><img class="math"
src="_images/math/6e2bb77aa7bc88aa6847793e8159b305c3e98836.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> satisfies the semigroup
+<li><p class="first"><img class="math"
src="_images/math/5391e6459f27f329a5ba5ceac7e280b33da970ce.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> satisfies the semigroup
property,</p>
<div class="math" id="equation-semigroup_b">
-<p><span class="eqno">(9)</span><img
src="_images/math/9a2934d7302d56913326b3d3190c3fc33ddf2d3e.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1) = {\mathcal Y}(\tau, t, {\mathcal
Y}(t_1, \tau, {\mathcal Y}_1)), \;\;\;
+<p><span class="eqno">(9)</span><img
src="_images/math/a8ee47c5197dd9b368741926bfe77b334797bb12.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1) = {\mathcal Y}(\tau, t, {\mathcal
Y}(t_1, \tau, {\mathcal Y}_1)), \;\;\;
t\leqslant\tau< t_1."/></p>
</div></li>
</ol>
<p>For the linear system <a href="#equation-linearrhs">(5)</a> the
backward reach set can be
expressed as</p>
<div class="math" id="equation-ctlsbrs">
-<p><span class="eqno">(10)</span><img
src="_images/math/4d2b80daeaf00a3f3238d8a0a0527de9ad9467d5.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1) =
+<p><span class="eqno">(10)</span><img
src="_images/math/9d66df1d4acf0d60fcbbd4f60885ae9198a9bcc8.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1) =
\Phi(t, t_1){\mathcal Y}_1 \oplus \int_{t_1}^t\Phi(t,
\tau)B(\tau){\mathcal U}(\tau)d\tau"/></p>
</div><p>in the continuous-time case, and as</p>
<div class="math" id="equation-dtlsbrs">
-<p><span class="eqno">(11)</span><img
src="_images/math/b1a0cc16a655bd9b0fc6dee82cca9c38f2c210c0.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1) =
+<p><span class="eqno">(11)</span><img
src="_images/math/f463d7e73fc36a82096f2915be16c53efcf4fdc9.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1) =
\Phi(t, t_1){\mathcal Y}_1 \oplus \sum_{\tau =t}^{t_1-1}-\Phi(t,
\tau)B(\tau){\mathcal U}(\tau)"/></p>
</div><p>in discrete-time case. The last formula makes sense only for
discrete-time linear systems with invertible state transition matrix.
Degenerate discrete-time linear systems have unbounded backward reach
sets and such sets cannot be computed with available software tools.</p>
<p>Just as in the case of forward reach set, the backward reach set of a
-linear system <img class="math"
src="_images/math/6e2bb77aa7bc88aa6847793e8159b305c3e98836.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> is compact
-and convex if the target set <img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/> and the control sets
-<img class="math"
src="_images/math/2fad00e8688c15ae8e5d1cb55e0e80e8a1a94599.png"
alt="{\mathcal U}(\tau)"/>, <img class="math"
src="_images/math/db857027076b91652b7bac6974e038e8975cb8f4.png"
alt="t\leqslant\tau<t_1"/>, are compact and
+linear system <img class="math"
src="_images/math/5391e6459f27f329a5ba5ceac7e280b33da970ce.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> is compact
+and convex if the target set <img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/> and the control sets
+<img class="math"
src="_images/math/d5025379a275c633646266889a3f8afb66824361.png"
alt="{\mathcal U}(\tau)"/>, <img class="math"
src="_images/math/42a4765aa2413005dad1bd4ef454ddb42b4277c9.png"
alt="t\leqslant\tau<t_1"/>, are compact and
convex.</p>
<p><strong>Remark.</strong> In the computer science literature the reach
set is said to
be the result of operator <em>post</em>, and the backward reach set is the
@@ -190,123 +190,123 @@
<h3>Systems with disturbances<a class="headerlink"
href="#systems-with-disturbances" title="Permalink to this
headline">¶</a></h3>
<p>Consider the continuous-time dynamical system with disturbance</p>
<div class="math" id="equation-ctds2">
-<p><span class="eqno">(12)</span><img
src="_images/math/52faca6070a78501effdf8a5269dbc0a0ea61f5c.png"
alt="\dot{x}(t) = f(t, x, u, v),"/></p>
+<p><span class="eqno">(12)</span><img
src="_images/math/f7fb7eab5fe7466405132da850abb1d9a50c9e93.png"
alt="\dot{x}(t) = f(t, x, u, v),"/></p>
</div><p>or the discrete-time dynamical system with disturbance</p>
<div class="math" id="equation-dtds2">
-<p><span class="eqno">(13)</span><img
src="_images/math/bd1c31a6d2b5c7595dcca4648e06fd2dd1a2b6a4.png" alt="x(t+1)
= f(t, x, u, v),"/></p>
-</div><p>in which we also have the disturbance input <img class="math"
src="_images/math/7bb3fd47faa27f347a077d625d39406a791ff622.png"
alt="v\in{\bf R}^d"/> with
-values <img class="math"
src="_images/math/0dfca47fad8dae84de1c4d7532d3bf9269f096ae.png"
alt="v(t)"/> restricted to a closed compact set
-<img class="math"
src="_images/math/24ad963c52d48c58b63fc70ff95576d5c4a10d2f.png"
alt="{\mathcal V}(t)\subset{\bf R}^d"/>.</p>
+<p><span class="eqno">(13)</span><img
src="_images/math/3947c2f339e38adf1766f21784911c1a2cf1888a.png" alt="x(t+1)
= f(t, x, u, v),"/></p>
+</div><p>in which we also have the disturbance input <img class="math"
src="_images/math/02790a9b69a54b12748a6ddb0282f6319086c5d8.png"
alt="v\in{\bf R}^d"/> with
+values <img class="math"
src="_images/math/8f786c22ff6d536a732133b2128a712eb1a50a83.png"
alt="v(t)"/> restricted to a closed compact set
+<img class="math"
src="_images/math/e32841eb191771bc9d8e13e899f3e18b76728b22.png"
alt="{\mathcal V}(t)\subset{\bf R}^d"/>.</p>
<p>In the presence of disturbances the open-loop reach set (OLRS) is
different from the closed-loop reach set (CLRS).</p>
-<p>Given the initial time <img class="math"
src="_images/math/10fde25257f32317828fde97047bbe76438b6305.png"
alt="t_0"/>, the set of initial states
-<img class="math"
src="_images/math/058cc043eb5c4750bfba163d5014ba4a2911b20c.png"
alt="{\mathcal X}_0"/>, and terminal time <img class="math"
src="_images/math/e0d2bf360290fd61d1c1557e763f2622363b3d35.png" alt="t"/>,
there are two types
+<p>Given the initial time <img class="math"
src="_images/math/fb761c2e199ad45ccf14767f48b88169479d840f.png"
alt="t_0"/>, the set of initial states
+<img class="math"
src="_images/math/1eae27d722cf74685b3dab099d6e0089009498ce.png"
alt="{\mathcal X}_0"/>, and terminal time <img class="math"
src="_images/math/ef9270877405055756d345facd044e4ab297f858.png" alt="t"/>,
there are two types
of OLRS.</p>
<p><strong>Definition.</strong> The maxmin open-loop reach set
-<img class="math"
src="_images/math/d88091f900f387f89e493cae7fcdf94b2ec91dea.png"
alt="\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0)"/> is the set
-of all states <img class="math"
src="_images/math/26eeb5258ca5099acf8fe96b2a1049c48c89a5e6.png" alt="x"/>,
such that for any disturbance
-<img class="math"
src="_images/math/e85f92fe1925b42b86da50a31d00b47850b2305f.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/>, there exist an initial state
-<img class="math"
src="_images/math/87d6ca88c2d985a194b1e04ce79073fb768de643.png"
alt="x_0\in{\mathcal X}_0"/> and a control
-<img class="math"
src="_images/math/c5c8d19800a0b2f2d789c84ca70888923dc54f93.png"
alt="u(\tau)\in{\mathcal U}(\tau)"/>, <img class="math"
src="_images/math/f835b9ade5be0f5e6fe46ddb9e6aaf4e6722f665.png"
alt="t_0\leqslant\tau<t"/>, that
-steers system <a href="#equation-ctds2">(12)</a> or <a
href="#equation-dtds2">(13)</a> from <img class="math"
src="_images/math/e9968a16fb90aa2d8126384a4b1af47870fd12a6.png"
alt="x(t_0)=x_0"/> to
-<img class="math"
src="_images/math/ef823851cbbb81a24a7a49f418daa505b600a5fd.png"
alt="x(t)=x"/>.</p>
+<img class="math"
src="_images/math/fda74d4838a0c4c1e817fc25157f1c3fe2311db9.png"
alt="\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0)"/> is the set
+of all states <img class="math"
src="_images/math/188c175aac0a8a9c22499336711b5d7256407254.png" alt="x"/>,
such that for any disturbance
+<img class="math"
src="_images/math/c1aa4494d5b8320290e79840475da74b8e3b93ef.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/>, there exist an initial state
+<img class="math"
src="_images/math/bce48b4aef0e0fa79362511d875f013203570971.png"
alt="x_0\in{\mathcal X}_0"/> and a control
+<img class="math"
src="_images/math/92a65e24f2e97e53d3368a49ecf3db303566d594.png"
alt="u(\tau)\in{\mathcal U}(\tau)"/>, <img class="math"
src="_images/math/318499371b02e60472b58864afad183a0d3ff13c.png"
alt="t_0\leqslant\tau<t"/>, that
+steers system <a href="#equation-ctds2">(12)</a> or <a
href="#equation-dtds2">(13)</a> from <img class="math"
src="_images/math/bc27d5a9ac17ef8c0e41db4b17b611a625669152.png"
alt="x(t_0)=x_0"/> to
+<img class="math"
src="_images/math/f0a326e5bb3a2e449a02d455a1417349b6959384.png"
alt="x(t)=x"/>.</p>
<p><strong>Definition.</strong> The minmax open-loop reach set
-<img class="math"
src="_images/math/73ba581d885599f17dba44dc036e1f91fc2e7be4.png"
alt="\underline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0)"/> is the set
-of all states <img class="math"
src="_images/math/26eeb5258ca5099acf8fe96b2a1049c48c89a5e6.png" alt="x"/>,
such that there exists a control
-<img class="math"
src="_images/math/c5c8d19800a0b2f2d789c84ca70888923dc54f93.png"
alt="u(\tau)\in{\mathcal U}(\tau)"/> that for all disturbances
-<img class="math"
src="_images/math/e85f92fe1925b42b86da50a31d00b47850b2305f.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/>, <img class="math"
src="_images/math/f835b9ade5be0f5e6fe46ddb9e6aaf4e6722f665.png"
alt="t_0\leqslant\tau<t"/>,
-assigns an initial state <img class="math"
src="_images/math/87d6ca88c2d985a194b1e04ce79073fb768de643.png"
alt="x_0\in{\mathcal X}_0"/> and steers system
-<a href="#equation-ctds2">(12)</a>, or <a href="#equation-dtds2">(13)</a>,
from <img class="math"
src="_images/math/e9968a16fb90aa2d8126384a4b1af47870fd12a6.png"
alt="x(t_0)=x_0"/> to <img class="math"
src="_images/math/ef823851cbbb81a24a7a49f418daa505b600a5fd.png"
alt="x(t)=x"/>.</p>
+<img class="math"
src="_images/math/907b76370dff90e95f5f98557a39cec716528d83.png"
alt="\underline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0)"/> is the set
+of all states <img class="math"
src="_images/math/188c175aac0a8a9c22499336711b5d7256407254.png" alt="x"/>,
such that there exists a control
+<img class="math"
src="_images/math/92a65e24f2e97e53d3368a49ecf3db303566d594.png"
alt="u(\tau)\in{\mathcal U}(\tau)"/> that for all disturbances
+<img class="math"
src="_images/math/c1aa4494d5b8320290e79840475da74b8e3b93ef.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/>, <img class="math"
src="_images/math/318499371b02e60472b58864afad183a0d3ff13c.png"
alt="t_0\leqslant\tau<t"/>,
+assigns an initial state <img class="math"
src="_images/math/bce48b4aef0e0fa79362511d875f013203570971.png"
alt="x_0\in{\mathcal X}_0"/> and steers system
+<a href="#equation-ctds2">(12)</a>, or <a href="#equation-dtds2">(13)</a>,
from <img class="math"
src="_images/math/bc27d5a9ac17ef8c0e41db4b17b611a625669152.png"
alt="x(t_0)=x_0"/> to <img class="math"
src="_images/math/f0a326e5bb3a2e449a02d455a1417349b6959384.png"
alt="x(t)=x"/>.</p>
<p>In the maxmin case the control is chosen
<em>after</em> knowing the disturbance over the entire time interval
-<img class="math"
src="_images/math/9cfd7cc884ddf9e7b9d34795c8cd6ab315ad64b2.png" alt="[t_0,
t]"/>, whereas in the minmax case the control is chosen
+<img class="math"
src="_images/math/539d8278169a9818b382eb6cf1f9bfc93d0f3101.png" alt="[t_0,
t]"/>, whereas in the minmax case the control is chosen
<em>before</em> any knowledge of the disturbance. Consequently, the OLRS
do not
satisfy the semigroup property.</p>
<p>The terms 'maxmin' and 'minmax' come from the fact that
-<img class="math"
src="_images/math/d88091f900f387f89e493cae7fcdf94b2ec91dea.png"
alt="\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0)"/> is the
+<img class="math"
src="_images/math/fda74d4838a0c4c1e817fc25157f1c3fe2311db9.png"
alt="\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0)"/> is the
subzero level set of the value function</p>
<div class="math" id="equation-maxminvf">
-<p><span class="eqno">(14)</span><img
src="_images/math/59c0cc9876265adfdab70e03eaff4ec5bd68bf9d.png"
alt="\underline{V}(t, x) =
+<p><span class="eqno">(14)</span><img
src="_images/math/57883f1e144e722111b43292c2b73f80c2f8ad72.png"
alt="\underline{V}(t, x) =
\max_v\min_u\{{\bf dist}(x(t_0), {\mathcal X}_0) ~|~ x(t)=x, \;
u(\tau)\in{\mathcal U}(\tau), \;
v(\tau)\in{\mathcal V}(\tau), \; t_0\leqslant\tau<t\},"/></p>
</div><p>i.e.,
-<img class="math"
src="_images/math/33a2bdd5108f138e547a001bb57f55ba3a4bb737.png"
alt="\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0) = \{ x~|
~\underline{V}(t, x) \leqslant0\}"/>,
-and <img class="math"
src="_images/math/73ba581d885599f17dba44dc036e1f91fc2e7be4.png"
alt="\underline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0)"/> is the
+<img class="math"
src="_images/math/9b7d74647f0716b07e72a6b1cfea05f19713d4f4.png"
alt="\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0) = \{ x~|
~\underline{V}(t, x) \leqslant0\}"/>,
+and <img class="math"
src="_images/math/907b76370dff90e95f5f98557a39cec716528d83.png"
alt="\underline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0)"/> is the
subzero level set of the value function</p>
<div class="math" id="equation-minmaxvf">
-<p><span class="eqno">(15)</span><img
src="_images/math/91449f289ad84516746f338180521c05b5925a83.png"
alt="\overline{V}(t, x) =
+<p><span class="eqno">(15)</span><img
src="_images/math/b126422df4f8726f4823b1c02b7c1c0618711106.png"
alt="\overline{V}(t, x) =
\min_u\max_v\{{\bf dist}(x(t_0), {\mathcal X}_0) ~|~ x(t)=x, \;
u(\tau)\in{\mathcal U}(\tau), \;
v(\tau)\in{\mathcal V}(\tau), \; t_0\leqslant\tau<t\},"/></p>
-</div><p>in which <img class="math"
src="_images/math/912a101713690341d4121d9f299d7253b07f7ad4.png" alt="{\bf
dist}(\cdot, \cdot)"/> denotes Hausdorff
+</div><p>in which <img class="math"
src="_images/math/30305cfe1c01e36246fbdf8fa3d56e4333685176.png" alt="{\bf
dist}(\cdot, \cdot)"/> denotes Hausdorff
semidistance. <a class="footnote-reference" href="#id16" id="id6">[6]</a>
Since
-<img class="math"
src="_images/math/589492ba3e741b45444a9507f84b7c4e936bb2cd.png"
alt="\underline{V}(t, x)\leqslant\overline{V}(t, x)"/>,
-<img class="math"
src="_images/math/061fc41e04d3d12c0faf00f5131c2ecfd836feee.png"
alt="\underline{{\mathcal X}}_{OL}(t, t_0, {\mathcal
X}_0)\subseteq\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0)"/>.</p>
+<img class="math"
src="_images/math/089ce70e04b55f919b5a2ad8ccdd32e007b49e24.png"
alt="\underline{V}(t, x)\leqslant\overline{V}(t, x)"/>,
+<img class="math"
src="_images/math/f4da4f91305bd38b687b10253e107f8f1ef568b2.png"
alt="\underline{{\mathcal X}}_{OL}(t, t_0, {\mathcal
X}_0)\subseteq\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0)"/>.</p>
<p>Note that maxmin and minmax OLRS imply <em>guarantees</em>: these are
states
that can be reached no matter what the disturbance is, whether it is
known in advance (maxmin case) or not (minmax case). The OLRS may be
empty.</p>
-<p>Fixing time instant <img class="math"
src="_images/math/5595b2091ab81419cf08ada9eba54585015760a8.png"
alt="\tau_1"/>, <img class="math"
src="_images/math/255250242fecf207b8f9d58a7417e605bd0b5d6d.png"
alt="t_0<\tau_1<t"/>, define the
+<p>Fixing time instant <img class="math"
src="_images/math/7535961332c7b400bb1f935a141711a30c82cd87.png"
alt="\tau_1"/>, <img class="math"
src="_images/math/76a9fb14fe4ad99712ce6f649493fb03308f6237.png"
alt="t_0<\tau_1<t"/>, define the
<em>piecewise maxmin open-loop reach set with one correction</em>,</p>
<div class="math" id="equation-maxmin1">
-<p><span class="eqno">(16)</span><img
src="_images/math/3cf556a95911cda4ce2f67e029055c5ffff6fa6d.png"
alt="\overline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0) =
\overline{{\mathcal X}}_{OL}(t, \tau_1, \overline{{\mathcal
X}}_{OL}(\tau_1, t_0, {\mathcal X}_0)),"/></p>
+<p><span class="eqno">(16)</span><img
src="_images/math/bcdb844339b4485ad22f05e4438c81e28a511a9d.png"
alt="\overline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0) =
\overline{{\mathcal X}}_{OL}(t, \tau_1, \overline{{\mathcal
X}}_{OL}(\tau_1, t_0, {\mathcal X}_0)),"/></p>
</div><p>and the <em>piecewise minmax open-loop reach set with one
correction</em>,</p>
<div class="math" id="equation-minmax1">
-<p><span class="eqno">(17)</span><img
src="_images/math/400655faeefd0665257cbfaf473175915fccca1b.png"
alt="\underline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0) =
\underline{{\mathcal X}}_{OL}(t, \tau_1, \underline{{\mathcal
X}}_{OL}(\tau_1, t_0, {\mathcal X}_0))."/></p>
+<p><span class="eqno">(17)</span><img
src="_images/math/cb23c97b0ec4120a218231fdeaaa5442b2f898c4.png"
alt="\underline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0) =
\underline{{\mathcal X}}_{OL}(t, \tau_1, \underline{{\mathcal
X}}_{OL}(\tau_1, t_0, {\mathcal X}_0))."/></p>
</div><p>The piecewise maxmin OLRS
-<img class="math"
src="_images/math/7935e426f1d9da22cc0aa46d2c43dbcdda7600c1.png"
alt="\overline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0)"/> is the
+<img class="math"
src="_images/math/575d5e27e8da9b43c2220dff42d5fb1c61aed412.png"
alt="\overline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0)"/> is the
subzero level set of the value function</p>
<div class="math" id="equation-maxminvf1">
-<p><span class="eqno">(18)</span><img
src="_images/math/862b414a575adc6ef600930c7e57479eaf9fe4b0.png"
alt="\underline{V}^1(t, x) =
+<p><span class="eqno">(18)</span><img
src="_images/math/51206c95daa18d2f14242c7915c6ef31a32c1ce9.png"
alt="\underline{V}^1(t, x) =
\max_v\min_u\{\underline{V}(\tau_1, x(\tau_1)) ~|~ x(t)=x, \;
u(\tau)\in{\mathcal U}(\tau), \; v(\tau)\in{\mathcal V}(\tau), \;
\tau_1\leqslant\tau<t\},"/></p>
-</div><p>with <img class="math"
src="_images/math/c21842169a32af4ec52d3c3e708e5c7ea7808b26.png"
alt="V(\tau_1, x(\tau_1))"/> given by <a
href="#equation-maxminvf">(14)</a>, which yields</p>
+</div><p>with <img class="math"
src="_images/math/53b900e92374f01c11c129833a36ef7805c2f189.png"
alt="V(\tau_1, x(\tau_1))"/> given by <a
href="#equation-maxminvf">(14)</a>, which yields</p>
<div class="math">
-<p><img src="_images/math/2fb5538b88fd2c1a3cb44a54da7231fe3e67bb70.png"
alt="\underline{V}^1(t, x) \geqslant\underline{V}(t, x),"/></p>
+<p><img src="_images/math/d518458e004544c3f751e0da30df5024793cec1e.png"
alt="\underline{V}^1(t, x) \geqslant\underline{V}(t, x),"/></p>
</div><p>and thus,</p>
<div class="math">
-<p><img src="_images/math/a7feb27bdee715f1c466c6ef080d87ac72f893e3.png"
alt="\overline{{\mathcal X}}_{OL}^1(t, t_0 {\mathcal X}_0) \subseteq
\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0) ."/></p>
+<p><img src="_images/math/9f887c0a093fff877fabc398422d38cf4885c9bd.png"
alt="\overline{{\mathcal X}}_{OL}^1(t, t_0 {\mathcal X}_0) \subseteq
\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0) ."/></p>
</div><p>On the other hand, the piecewise minmax OLRS
-<img class="math"
src="_images/math/3571786b94b3ae7efcfcb6c1e4c2f35697feedc0.png"
alt="\underline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0)"/> is the
+<img class="math"
src="_images/math/a05772564b3121a0182788d1fadc8893dd3c6eed.png"
alt="\underline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0)"/> is the
subzero level set of the value function</p>
<div class="math" id="equation-minmaxvf1">
-<p><span class="eqno">(19)</span><img
src="_images/math/5dd6506c789c94639877e210b9d5d9e1f15caab7.png"
alt="\overline{V}^1(t, x) =
+<p><span class="eqno">(19)</span><img
src="_images/math/cd90fea220ff84fdebee779a2a4b4cd5a730a335.png"
alt="\overline{V}^1(t, x) =
\min_u\max_v\{\overline{V}(\tau_1, x(\tau_1)) ~|~ x(t)=x, \;
u(\tau)\in{\mathcal U}(\tau), \; v(\tau)\in{\mathcal V}(\tau), \;
\tau_1\leqslant\tau<t\},"/></p>
-</div><p>with <img class="math"
src="_images/math/c21842169a32af4ec52d3c3e708e5c7ea7808b26.png"
alt="V(\tau_1, x(\tau_1))"/> given by <a
href="#equation-minmaxvf">(15)</a>, which yields</p>
+</div><p>with <img class="math"
src="_images/math/53b900e92374f01c11c129833a36ef7805c2f189.png"
alt="V(\tau_1, x(\tau_1))"/> given by <a
href="#equation-minmaxvf">(15)</a>, which yields</p>
<div class="math">
-<p><img src="_images/math/2ef367fb1c0413d7aa49fa4f276761a92f32ae77.png"
alt="\overline{V}(t, x) \geqslant\overline{V}^1(t, x),"/></p>
+<p><img src="_images/math/a3cd1f0192dbbcb91b9915d6670501a056b0123c.png"
alt="\overline{V}(t, x) \geqslant\overline{V}^1(t, x),"/></p>
</div><p>and thus,</p>
<div class="math">
-<p><img src="_images/math/2f9274193640ac6dd3c610043fb68ab1b765183d.png"
alt="\underline{{\mathcal X}}_{OL}(t, t_0 {\mathcal X}_0) \subseteq
\underline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0) ."/></p>
+<p><img src="_images/math/c771f8709e060cf0a4b3c4a3c05cacc315046516.png"
alt="\underline{{\mathcal X}}_{OL}(t, t_0 {\mathcal X}_0) \subseteq
\underline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0) ."/></p>
</div><p>We can now recursively define piecewise maxmin and minmax OLRS
with
-<img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
corrections for <img class="math"
src="_images/math/b7f547e38f7b35ae63a582b5fa57cc9f0870f222.png"
alt="t_0<\tau_1<\cdots<\tau_k<t"/>. The maxmin
-piecewise OLRS with <img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
corrections is</p>
+<img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
corrections for <img class="math"
src="_images/math/3eeb12b3df8ce77e54f85537fef2a07ca4a0ebed.png"
alt="t_0<\tau_1<\cdots<\tau_k<t"/>. The maxmin
+piecewise OLRS with <img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
corrections is</p>
<div class="math" id="equation-maxmink">
-<p><span class="eqno">(20)</span><img
src="_images/math/9848b4ee4fab67fff836cc47d90bb8bc8d09633a.png"
alt="\overline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0) =
+<p><span class="eqno">(20)</span><img
src="_images/math/804c7e8e7b8ce57bb2f0090903988d3f48f0bb59.png"
alt="\overline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0) =
\overline{{\mathcal X}}_{OL}(t, \tau_k, \overline{{\mathcal
X}}_{OL}^{k-1}(\tau_k, t_0, {\mathcal X}_0)),"/></p>
</div><p>which is the subzero level set of the corresponding value
function</p>
<div class="math" id="equation-maxminvfk">
-<p><span class="eqno">(21)</span><img
src="_images/math/6de4e2f7fb803d8cf388f89e5eebef7ecdbb4a0d.png"
alt="\underline{V}^k(t, x) = \max_v\min_u\{\underline{V}^{k-1}(\tau_k,
x(\tau_k)) ~|~ x(t)=x, \;
+<p><span class="eqno">(21)</span><img
src="_images/math/d29431a4726f9fe4d184fb6365d678d2f2bb9bca.png"
alt="\underline{V}^k(t, x) = \max_v\min_u\{\underline{V}^{k-1}(\tau_k,
x(\tau_k)) ~|~ x(t)=x, \;
u(\tau)\in{\mathcal U}(\tau), \; v(\tau)\in{\mathcal V}(\tau), \;
\tau_k\leqslant\tau<t\}."/></p>
-</div><p>The minmax piecewise OLRS with <img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
corrections is</p>
+</div><p>The minmax piecewise OLRS with <img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
corrections is</p>
<div class="math" id="equation-minmaxk">
-<p><span class="eqno">(22)</span><img
src="_images/math/4021dd24f2b8ff0620f0e6009bf9b6285a7b322f.png"
alt="\underline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0) =
+<p><span class="eqno">(22)</span><img
src="_images/math/6a2a9740e0fee3b3836318c37e22b974f99da572.png"
alt="\underline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0) =
\underline{{\mathcal X}}_{OL}(t, \tau_k, \underline{{\mathcal
X}}_{OL}^{k-1}(\tau_k, t_0, {\mathcal X}_0)),"/></p>
</div><p>which is the subzero level set of the corresponding value
function</p>
<div class="math" id="equation-minmaxvfk">
-<p><span class="eqno">(23)</span><img
src="_images/math/9f4466da59af1dc2b89d500c396a7e75d625f1e1.png"
alt="\begin{aligned}
+<p><span class="eqno">(23)</span><img
src="_images/math/2a058c90cf3ba9cb5dbe351e9ac0bd37aff3a322.png"
alt="\begin{aligned}
\overline{V}^k(t, x) = \min_u\max_v\{\overline{V}^{k-1}(\tau_k, x(\tau_k))
~|~ x(t)=x, \;
u(\tau)\in{\mathcal U}(\tau), \; v(\tau)\in{\mathcal V}(\tau), \;
\tau_k\leqslant\tau<t\}.
\end{aligned}"/></p>
</div><p>From <a href="#equation-maxminvf1">(18)</a>, <a
href="#equation-minmaxvf1">(19)</a>, <a href="#equation-maxminvfk">(21)</a>
and <a href="#equation-minmaxvfk">(23)</a> it
follows that</p>
<div class="math">
-<p><img src="_images/math/10963ec8c25a762d56a165ec95cc5da5d4ea666e.png"
alt="\underline{V}(t, x) \leqslant\underline{V}^1(t, x)\leqslant\cdots
+<p><img src="_images/math/b769a46890a9789098d481e21fb0c2df49be3e09.png"
alt="\underline{V}(t, x) \leqslant\underline{V}^1(t, x)\leqslant\cdots
\leqslant\underline{V}^k(t, x) \leqslant\overline{V}^k(t, x)
\leqslant\cdots
\leqslant\overline{V}^1(t, x) \leqslant\overline{V}(t, x) ."/></p>
</div><p>Hence,</p>
<div class="math" id="equation-olrsinclusion">
-<p><span class="eqno">(24)</span><img
src="_images/math/1113bbc74afd07561b01b44645fa72c24ed080eb.png"
alt="\begin{aligned}
+<p><span class="eqno">(24)</span><img
src="_images/math/5655ba2a6e76b433eaa375b97ea48cce70d1875f.png"
alt="\begin{aligned}
&&\underline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0) \subseteq
\underline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0) \subseteq \cdots
\subseteq \underline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0)
\subseteq \nonumber \\
&&\overline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0) \subseteq
\cdots \subseteq \overline{{\mathcal X}}_{OL}^1(t, t_0, {\mathcal X}_0)
@@ -314,75 +314,75 @@
\end{aligned}"/></p>
</div><p>We call</p>
<div class="math" id="equation-maxminclrs">
-<p><span class="eqno">(25)</span><img
src="_images/math/08d14efeb4cfb5cdc6e80d64bb14d23c94e86c7a.png"
alt="\overline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0) =
\overline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0), \;\;
+<p><span class="eqno">(25)</span><img
src="_images/math/8594a3d5f097de613957c35a14796a8df5ea874e.png"
alt="\overline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0) =
\overline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0), \;\;
k = \left\{\begin{array}{ll}
\infty & \mbox{ for continuous-time system}\\
t-t_0-1 & \mbox{ for discrete-time system}\end{array}\right."/></p>
</div><p>the <em>maxmin closed-loop reach set</em> of system <a
href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a> at
-time <img class="math"
src="_images/math/e0d2bf360290fd61d1c1557e763f2622363b3d35.png" alt="t"/>,
and we call</p>
+time <img class="math"
src="_images/math/ef9270877405055756d345facd044e4ab297f858.png" alt="t"/>,
and we call</p>
<div class="math" id="equation-minmaxclrs">
-<p><span class="eqno">(26)</span><img
src="_images/math/43c47445d1816871a73864ce117cc9e9990ec90e.png"
alt="\underline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0) =
\underline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0), \;\;
+<p><span class="eqno">(26)</span><img
src="_images/math/89136b9c318b7bbf468f22f5376698eb3fb8ff03.png"
alt="\underline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0) =
\underline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0), \;\;
k = \left\{\begin{array}{ll}
\infty & \mbox{ for continuous-time system}\\
t-t_0-1 & \mbox{ for discrete-time system}\end{array}\right."/></p>
</div><p>the <em>minmax closed-loop reach set</em> of system <a
href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a> at
-time <img class="math"
src="_images/math/e0d2bf360290fd61d1c1557e763f2622363b3d35.png"
alt="t"/>.</p>
-<p><strong>Definition.</strong> Given initial time <img class="math"
src="_images/math/10fde25257f32317828fde97047bbe76438b6305.png" alt="t_0"/>
and the set of initial
-states <img class="math"
src="_images/math/058cc043eb5c4750bfba163d5014ba4a2911b20c.png"
alt="{\mathcal X}_0"/>, the maxmin CLRS
-<img class="math"
src="_images/math/1fa680dca57b07cc940c9796373b63111512f3c0.png"
alt="\overline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0)"/> of system
-<a href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a>
at time <img class="math"
src="_images/math/7c2c15b11e78eea6a5e78c86dee37e0980a3f10d.png"
alt="t>t_0"/>, is the set of all states
-<img class="math"
src="_images/math/26eeb5258ca5099acf8fe96b2a1049c48c89a5e6.png" alt="x"/>,
for each of which and for every disturbance
-<img class="math"
src="_images/math/e85f92fe1925b42b86da50a31d00b47850b2305f.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/>, there exist an initial state
-<img class="math"
src="_images/math/87d6ca88c2d985a194b1e04ce79073fb768de643.png"
alt="x_0\in{\mathcal X}_0"/> and a control
-<img class="math"
src="_images/math/75741dc287c95ab30ca0b52fba5160b2c2ea66d8.png"
alt="u(\tau, x(\tau))\in{\mathcal U}(\tau)"/>, such that the trajectory
-<img class="math"
src="_images/math/ebe8b756479a6dde4744b780515397b140d3caed.png" alt="x(\tau
| v(\tau), u(\tau, x(\tau)))"/> satisfying
-<img class="math"
src="_images/math/1a913b283556ea8270a7c12c67e0fc5b03714f1e.png" alt="x(t_0)
= x_0"/> and</p>
+time <img class="math"
src="_images/math/ef9270877405055756d345facd044e4ab297f858.png"
alt="t"/>.</p>
+<p><strong>Definition.</strong> Given initial time <img class="math"
src="_images/math/fb761c2e199ad45ccf14767f48b88169479d840f.png" alt="t_0"/>
and the set of initial
+states <img class="math"
src="_images/math/1eae27d722cf74685b3dab099d6e0089009498ce.png"
alt="{\mathcal X}_0"/>, the maxmin CLRS
+<img class="math"
src="_images/math/da8352972752f59bf42a22437c121a973b6ec9d9.png"
alt="\overline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0)"/> of system
+<a href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a>
at time <img class="math"
src="_images/math/47a0f66af5c0a8153f3cc31637d82d745a941545.png"
alt="t>t_0"/>, is the set of all states
+<img class="math"
src="_images/math/188c175aac0a8a9c22499336711b5d7256407254.png" alt="x"/>,
for each of which and for every disturbance
+<img class="math"
src="_images/math/c1aa4494d5b8320290e79840475da74b8e3b93ef.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/>, there exist an initial state
+<img class="math"
src="_images/math/bce48b4aef0e0fa79362511d875f013203570971.png"
alt="x_0\in{\mathcal X}_0"/> and a control
+<img class="math"
src="_images/math/f1108a777b9c9e5400c7561dca28e08dbb907633.png"
alt="u(\tau, x(\tau))\in{\mathcal U}(\tau)"/>, such that the trajectory
+<img class="math"
src="_images/math/623840b492748629c459863a4ceba63a912c1fe1.png" alt="x(\tau
| v(\tau), u(\tau, x(\tau)))"/> satisfying
+<img class="math"
src="_images/math/433e8e46787ffef5c3d84013294acddac67bff72.png" alt="x(t_0)
= x_0"/> and</p>
<div class="math">
-<p><img src="_images/math/ece677c3e222c005b94cb718eaa118d6923d8c56.png"
alt="\dot{x}(\tau | v(\tau), u(\tau, x(\tau))) \in
+<p><img src="_images/math/7c727074ea291080c23e532c48167b41584664cc.png"
alt="\dot{x}(\tau | v(\tau), u(\tau, x(\tau))) \in
f(\tau, x(\tau), u(\tau, x(\tau)), v(\tau))"/></p>
</div><p>in the continuous-time case, or</p>
<div class="math">
-<p><img src="_images/math/5eebf303b127c1dcf549f8aa7588c835a41518a3.png"
alt="x(\tau+1 | v(\tau), u(\tau, x(\tau))) \in
+<p><img src="_images/math/af935f321e67111c6ffbc3ee1fada771e118eaa5.png"
alt="x(\tau+1 | v(\tau), u(\tau, x(\tau))) \in
f(\tau, x(\tau), u(\tau, x(\tau)), v(\tau))"/></p>
-</div><p>in the discrete-time case, with <img class="math"
src="_images/math/f835b9ade5be0f5e6fe46ddb9e6aaf4e6722f665.png"
alt="t_0\leqslant\tau<t"/>, is such
-that <img class="math"
src="_images/math/ef823851cbbb81a24a7a49f418daa505b600a5fd.png"
alt="x(t)=x"/>.</p>
-<p><strong>Definition.</strong> Given initial time <img class="math"
src="_images/math/10fde25257f32317828fde97047bbe76438b6305.png" alt="t_0"/>
and the set of initial states <img class="math"
src="_images/math/058cc043eb5c4750bfba163d5014ba4a2911b20c.png"
alt="{\mathcal X}_0"/>, the
-maxmin CLRS <img class="math"
src="_images/math/af9c2f37040450ab12f7f40cf17114a96aae2b02.png"
alt="\underline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0)"/> of system
-<a href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a>,
at time <img class="math"
src="_images/math/7c2c15b11e78eea6a5e78c86dee37e0980a3f10d.png"
alt="t>t_0"/>, is the set of all states
-<img class="math"
src="_images/math/26eeb5258ca5099acf8fe96b2a1049c48c89a5e6.png" alt="x"/>,
for each of which there exists a control
-<img class="math"
src="_images/math/75741dc287c95ab30ca0b52fba5160b2c2ea66d8.png"
alt="u(\tau, x(\tau))\in{\mathcal U}(\tau)"/>, and for every disturbance
-<img class="math"
src="_images/math/e85f92fe1925b42b86da50a31d00b47850b2305f.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/> there exists an initial state
-<img class="math"
src="_images/math/87d6ca88c2d985a194b1e04ce79073fb768de643.png"
alt="x_0\in{\mathcal X}_0"/>, such that the trajectory
-<img class="math"
src="_images/math/5976db1ecca8e984431195f0ba91a067db5a3d0d.png"
alt="x(\tau, v(\tau) | u(\tau, x(\tau)))"/> satisfying
-<img class="math"
src="_images/math/1a913b283556ea8270a7c12c67e0fc5b03714f1e.png" alt="x(t_0)
= x_0"/> and</p>
+</div><p>in the discrete-time case, with <img class="math"
src="_images/math/318499371b02e60472b58864afad183a0d3ff13c.png"
alt="t_0\leqslant\tau<t"/>, is such
+that <img class="math"
src="_images/math/f0a326e5bb3a2e449a02d455a1417349b6959384.png"
alt="x(t)=x"/>.</p>
+<p><strong>Definition.</strong> Given initial time <img class="math"
src="_images/math/fb761c2e199ad45ccf14767f48b88169479d840f.png" alt="t_0"/>
and the set of initial states <img class="math"
src="_images/math/1eae27d722cf74685b3dab099d6e0089009498ce.png"
alt="{\mathcal X}_0"/>, the
+maxmin CLRS <img class="math"
src="_images/math/d9f97110fa885d35450b2782200b2d818509d75e.png"
alt="\underline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0)"/> of system
+<a href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a>,
at time <img class="math"
src="_images/math/47a0f66af5c0a8153f3cc31637d82d745a941545.png"
alt="t>t_0"/>, is the set of all states
+<img class="math"
src="_images/math/188c175aac0a8a9c22499336711b5d7256407254.png" alt="x"/>,
for each of which there exists a control
+<img class="math"
src="_images/math/f1108a777b9c9e5400c7561dca28e08dbb907633.png"
alt="u(\tau, x(\tau))\in{\mathcal U}(\tau)"/>, and for every disturbance
+<img class="math"
src="_images/math/c1aa4494d5b8320290e79840475da74b8e3b93ef.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/> there exists an initial state
+<img class="math"
src="_images/math/bce48b4aef0e0fa79362511d875f013203570971.png"
alt="x_0\in{\mathcal X}_0"/>, such that the trajectory
+<img class="math"
src="_images/math/a179cad2bc534707a02884cac8839913134932f9.png"
alt="x(\tau, v(\tau) | u(\tau, x(\tau)))"/> satisfying
+<img class="math"
src="_images/math/433e8e46787ffef5c3d84013294acddac67bff72.png" alt="x(t_0)
= x_0"/> and</p>
<div class="math">
-<p><img src="_images/math/c74e8bf7eda725dd9ab93a4f70f6ee8927790f5b.png"
alt="\dot{x}(\tau, v(\tau) | u(\tau, x(\tau))) \in
+<p><img src="_images/math/c48f92801d5065c1b3f4a91af37b94aa2b4b118e.png"
alt="\dot{x}(\tau, v(\tau) | u(\tau, x(\tau))) \in
f(\tau, x(\tau), u(\tau, x(\tau)), v(\tau))"/></p>
</div><p>in the continuous-time case, or</p>
<div class="math">
-<p><img src="_images/math/4e07ee6fd8d31646d32902bd1760c51cff263ae2.png"
alt="x(\tau+1, v(\tau) | u(\tau, x(\tau))) \in
+<p><img src="_images/math/62b22c73821101bb0a113b4c7cdc1afe316eac95.png"
alt="x(\tau+1, v(\tau) | u(\tau, x(\tau))) \in
f(\tau, x(\tau), u(\tau, x(\tau)), v(\tau))"/></p>
-</div><p>in the discrete-time case, with <img class="math"
src="_images/math/f835b9ade5be0f5e6fe46ddb9e6aaf4e6722f665.png"
alt="t_0\leqslant\tau<t"/>, is such
-that <img class="math"
src="_images/math/ef823851cbbb81a24a7a49f418daa505b600a5fd.png"
alt="x(t)=x"/>.
+</div><p>in the discrete-time case, with <img class="math"
src="_images/math/318499371b02e60472b58864afad183a0d3ff13c.png"
alt="t_0\leqslant\tau<t"/>, is such
+that <img class="math"
src="_images/math/f0a326e5bb3a2e449a02d455a1417349b6959384.png"
alt="x(t)=x"/>.
By construction, both
maxmin and minmax CLRS satisfy the semigroup property <a
href="#equation-semigroup">(4)</a>.</p>
<p>For some classes of dynamical systems and some types of constraints on
initial conditions, controls and disturbances, the maxmin and minmax
CLRS may coincide. This is the case for continuous-time linear systems
with convex compact bounds on the initial set, controls and disturbances
-under the condition that the initial set <img class="math"
src="_images/math/058cc043eb5c4750bfba163d5014ba4a2911b20c.png"
alt="{\mathcal X}_0"/> is large
+under the condition that the initial set <img class="math"
src="_images/math/1eae27d722cf74685b3dab099d6e0089009498ce.png"
alt="{\mathcal X}_0"/> is large
enough to ensure that
-<img class="math"
src="_images/math/a1c8f457ec7ed2e61744755f49bc5e80c495bbd6.png"
alt="{\mathcal X}(t_0+\epsilon, t_0, {\mathcal X}_0)"/> is nonempty for
-some small <img class="math"
src="_images/math/ca47de052eb3fb5454694d9bce3561ebff831a1e.png"
alt="\epsilon>0"/>.</p>
+<img class="math"
src="_images/math/5e7cb9efef0c680ffea90dc6d0085dd1217867b8.png"
alt="{\mathcal X}(t_0+\epsilon, t_0, {\mathcal X}_0)"/> is nonempty for
+some small <img class="math"
src="_images/math/1812e21f6af66c8a21218a60b1d6a7f2dc4368e9.png"
alt="\epsilon>0"/>.</p>
<p>Consider the linear system case,</p>
<div class="math" id="equation-linearrhsdist">
-<p><span class="eqno">(27)</span><img
src="_images/math/526869990d45b20a5b25e104fa19d35ab71259dd.png" alt="f(t,
x, u) = A(t)x(t) + B(t)u + G(t)v,"/></p>
-</div><p>where <img class="math"
src="_images/math/39a600f2477bf0c26625cbeac94c8b2db1137fc3.png"
alt="A(t)"/> and <img class="math"
src="_images/math/429f9bbb73bef9e385fb33c6a610248910b919e0.png"
alt="B(t)"/> are as in <a href="#equation-linearrhs">(5)</a>, and
-<img class="math"
src="_images/math/8af75cf3e7caba5c7c879ab92a73e61550e311be.png"
alt="G(t)"/> takes its values in <img class="math"
src="_images/math/52757dd65ec12c9b61e3d47d65e1abe62cc0ac78.png" alt="{\bf
R}^d"/>.</p>
+<p><span class="eqno">(27)</span><img
src="_images/math/10f645948e87ca111bf98430a625b0ed246b2deb.png" alt="f(t,
x, u) = A(t)x(t) + B(t)u + G(t)v,"/></p>
+</div><p>where <img class="math"
src="_images/math/a79ae2055fb6a0774c0140d85756c9fc47af6e2a.png"
alt="A(t)"/> and <img class="math"
src="_images/math/9862381d627031d0a2e12c24690593e755041368.png"
alt="B(t)"/> are as in <a href="#equation-linearrhs">(5)</a>, and
+<img class="math"
src="_images/math/d1d72230feb39483b632288a3c3278f8b8ea6ea6.png"
alt="G(t)"/> takes its values in <img class="math"
src="_images/math/d4939503a4419502254568a63ec222846ce591bf.png" alt="{\bf
R}^d"/>.</p>
<p>The maxmin OLRS for the continuous-time linear system can be expressed
through set valued integrals,</p>
<div class="math" id="equation-ctlsmaxmin">
-<p><span class="eqno">(28)</span><img
src="_images/math/901eb23716204f09159fe7af1e278f08d78f8132.png"
alt="\begin{array}{l}
+<p><span class="eqno">(28)</span><img
src="_images/math/aae2334367ad2e3d9d08d7e05e2e2f5ebed5afcc.png"
alt="\begin{array}{l}
\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0) = \\
\left(\Phi(t, t_0){\mathcal X}_0 \oplus
\int_{t_0}^t\Phi(t, \tau)B(\tau){\mathcal U}(\tau)d\tau\right) \dot{-} \\
@@ -390,14 +390,14 @@
\end{array}"/></p>
</div><p>and for discrete-time linear system through set-valued sums,</p>
<div class="math" id="equation-dtlsmaxmin">
-<p><span class="eqno">(29)</span><img
src="_images/math/ee072882ded5c004d089ab985f862477ae646af1.png"
alt="\begin{array}{l}
+<p><span class="eqno">(29)</span><img
src="_images/math/4bbc00056b57b3c6f338b00385f0769e991dfaae.png"
alt="\begin{array}{l}
\overline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0) = \\
\left(\Phi(t, t_0){\mathcal X}_0 \oplus \sum_{\tau=t_0}^{t-1}\Phi(t,
\tau+1)B(\tau){\mathcal U}(\tau)\right) \dot{-} \\
\sum_{\tau=t_0}^{t-1}\Phi(t, \tau+1)(-G(\tau)){\mathcal V}(\tau).
\end{array}"/></p>
</div><p>Similarly, the minmax OLRS for the continuous-time linear system
is</p>
<div class="math" id="equation-ctlsminmax">
-<p><span class="eqno">(30)</span><img
src="_images/math/e2920db0a28ff2f90a17eef4a42ed9d2e6f66081.png"
alt="\begin{array}{l}
+<p><span class="eqno">(30)</span><img
src="_images/math/f8613f03b3aa91bed5e1b6dec93289d0fed64ac9.png"
alt="\begin{array}{l}
\underline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0) = \\
\left(\Phi(t, t_0){\mathcal X}_0 \dot{-}
\int_{t_0}^t\Phi(t, \tau)(-G(\tau)){\mathcal V}(\tau)d\tau\right)
@@ -406,17 +406,17 @@
\end{array}"/></p>
</div><p>and for the discrete-time linear system it is</p>
<div class="math" id="equation-dtlsminmax">
-<p><span class="eqno">(31)</span><img
src="_images/math/8ecc2f342c2443095315c977d204ba3ac1076623.png"
alt="\begin{array}{l}
+<p><span class="eqno">(31)</span><img
src="_images/math/0c95f819dae3d6469b2a8849734febc5e09ef6b4.png"
alt="\begin{array}{l}
\underline{{\mathcal X}}_{OL}(t, t_0, {\mathcal X}_0) = \\
\left(\Phi(t, t_0){\mathcal X}_0 \dot{-} \sum_{\tau=t_0}^{t-1}\Phi(t,
\tau+1)(-G(\tau)){\mathcal V}(\tau)\right) \oplus \\
\sum_{\tau=t_0}^{t-1}\Phi(t, \tau+1)B(\tau){\mathcal U}(\tau).
\end{array}"/></p>
-</div><p>The operation '<img class="math"
src="_images/math/643d2d69223031aa6713610351bd87564ede3e7a.png"
alt="\dot{-}"/>' is <em>geometric difference</em>, also known as
+</div><p>The operation '<img class="math"
src="_images/math/a8db451aea96e2d86ceb5fa311e0649e83fc7fff.png"
alt="\dot{-}"/>' is <em>geometric difference</em>, also known as
<em>Minkowski difference</em>. <a class="footnote-reference" href="#id17"
id="id7">[7]</a></p>
-<p>Now consider the piecewise OLRS with <img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
corrections. Expression
+<p>Now consider the piecewise OLRS with <img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
corrections. Expression
<a href="#equation-maxmink">(20)</a> translates into</p>
<div class="math" id="equation-ctlsmaxmink">
-<p><span class="eqno">(32)</span><img
src="_images/math/5fa0ff7c61e294e0ce99b36c0b5a0cf7501e96b3.png"
alt="\begin{array}{l}
+<p><span class="eqno">(32)</span><img
src="_images/math/3172428610fb040988360121aa550e32526aa1da.png"
alt="\begin{array}{l}
\overline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0) = \\
\left(\Phi(t, \tau_k)\overline{{\mathcal X}}_{OL}^{k-1}(\tau_k, t_0,
{\mathcal X}_0) \oplus
\int_{\tau_k}^t\Phi(t, \tau)B(\tau){\mathcal U}(\tau)d\tau\right) \dot{-}
\\
@@ -424,7 +424,7 @@
\end{array}"/></p>
</div><p>in the continuous-time case, and for the discrete-time case
into</p>
<div class="math" id="equation-dtlsmaxmink">
-<p><span class="eqno">(33)</span><img
src="_images/math/b193c42ad634cfeaa2142c4b590e3ffbafd82a19.png"
alt="\begin{array}{l}
+<p><span class="eqno">(33)</span><img
src="_images/math/055132107fc0da62458e70990b7e05536afaa7c6.png"
alt="\begin{array}{l}
\overline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0) = \\
\left(\Phi(t, \tau_k)\overline{{\mathcal X}}_{OL}^{k-1}(\tau_k, t_0,
{\mathcal X}_0) \oplus
\sum_{\tau=\tau_k}^{t-1}\Phi(t, \tau+1)B(\tau){\mathcal U}(\tau)\right)
\dot{-} \\
@@ -432,7 +432,7 @@
\end{array}"/></p>
</div><p>Expression <a href="#equation-minmaxk">(22)</a> translates
into</p>
<div class="math" id="equation-ctlsminmaxk">
-<p><span class="eqno">(34)</span><img
src="_images/math/96ea731969af14f82ceb2689e8818b70ddfa93c8.png"
alt="\begin{array}{l}
+<p><span class="eqno">(34)</span><img
src="_images/math/211e11aaec5b62201d1f9e28d724e606262d631d.png"
alt="\begin{array}{l}
\underline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0) = \\
\left(\Phi(t, \tau_k)\underline{{\mathcal X}}_{OL}^{k-1}(t, t_0, {\mathcal
X}_0) \dot{-}
\int_{\tau_k}^t\Phi(t, \tau)(-G(\tau)){\mathcal V}(\tau)d\tau\right)
@@ -441,7 +441,7 @@
\end{array}"/></p>
</div><p>in the continuous-time case, and for the discrete-time case
into</p>
<div class="math" id="equation-dtlsminmaxk">
-<p><span class="eqno">(35)</span><img
src="_images/math/5289f453c63da5382e11e897cfebf58c845657f4.png"
alt="\begin{array}{l}
+<p><span class="eqno">(35)</span><img
src="_images/math/2b1887c6e75a4fdc886974b688bafb445e6ede5d.png"
alt="\begin{array}{l}
\underline{{\mathcal X}}_{OL}^k(t, t_0, {\mathcal X}_0) = \\
\left(\Phi(t, \tau_k)\underline{{\mathcal X}}_{OL}^{k-1}(\tau_k, t_0,
{\mathcal X}_0) \dot{-}
\sum_{\tau=\tau_k}^{t-1}\Phi(t, \tau+1)(-G(\tau)){\mathcal V}(\tau)\right)
@@ -449,100 +449,100 @@
\sum_{\tau=\tau_k}^{t-1}\Phi(t, \tau+1)B(\tau){\mathcal U}(\tau).
\end{array}"/></p>
</div><p>Since for any
-<img class="math"
src="_images/math/3da9b810c4331174d047f0d465df4adda60f5bf8.png"
alt="{\mathcal W}_1, {\mathcal W}_2, {\mathcal W}_3 \subseteq {\bf R}^n"/>
+<img class="math"
src="_images/math/a2af5dd6947be30ef78b671d0920e0e58a7b7fc2.png"
alt="{\mathcal W}_1, {\mathcal W}_2, {\mathcal W}_3 \subseteq {\bf R}^n"/>
it is true that</p>
<div class="math">
-<p><img src="_images/math/9d71230623b6d55323c4dff964f53c3ec6d00739.png"
alt="({\mathcal W}_1 \dot{-} {\mathcal W}_2) \oplus {\mathcal W}_3 =
+<p><img src="_images/math/7fb5c25ac241da54d016a2c3735f1939f33a0239.png"
alt="({\mathcal W}_1 \dot{-} {\mathcal W}_2) \oplus {\mathcal W}_3 =
({\mathcal W}_1 \oplus {\mathcal W}_3) \dot{-} ({\mathcal W}_2 \oplus
{\mathcal W}_3) \subseteq
({\mathcal W}_1 \oplus {\mathcal W}_3) \dot{-} {\mathcal W}_2,"/></p>
</div><p>from <a href="#equation-ctlsmaxmink">(32)</a>, <a
href="#equation-ctlsminmaxk">(34)</a> and from <a
href="#equation-dtlsmaxmink">(33)</a>,
<a href="#equation-dtlsminmaxk">(35)</a>, it is clear that <a
href="#equation-olrsinclusion">(24)</a> is true.
-For linear systems, if the initial set <img class="math"
src="_images/math/058cc043eb5c4750bfba163d5014ba4a2911b20c.png"
alt="{\mathcal X}_0"/>, control
-bounds <img class="math"
src="_images/math/2fad00e8688c15ae8e5d1cb55e0e80e8a1a94599.png"
alt="{\mathcal U}(\tau)"/> and disturbance bounds
-<img class="math"
src="_images/math/f7bf92e6253e44b00475b7a2cb18ff6f712f5211.png"
alt="{\mathcal V}(\tau)"/>, <img class="math"
src="_images/math/f835b9ade5be0f5e6fe46ddb9e6aaf4e6722f665.png"
alt="t_0\leqslant\tau<t"/>, are compact and
+For linear systems, if the initial set <img class="math"
src="_images/math/1eae27d722cf74685b3dab099d6e0089009498ce.png"
alt="{\mathcal X}_0"/>, control
+bounds <img class="math"
src="_images/math/d5025379a275c633646266889a3f8afb66824361.png"
alt="{\mathcal U}(\tau)"/> and disturbance bounds
+<img class="math"
src="_images/math/3d1d7aa049009b09b08d23eafa47de5d551b1920.png"
alt="{\mathcal V}(\tau)"/>, <img class="math"
src="_images/math/318499371b02e60472b58864afad183a0d3ff13c.png"
alt="t_0\leqslant\tau<t"/>, are compact and
convex, the CLRS
-<img class="math"
src="_images/math/1fa680dca57b07cc940c9796373b63111512f3c0.png"
alt="\overline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0)"/> and
-<img class="math"
src="_images/math/af9c2f37040450ab12f7f40cf17114a96aae2b02.png"
alt="\underline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0)"/> are
+<img class="math"
src="_images/math/da8352972752f59bf42a22437c121a973b6ec9d9.png"
alt="\overline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0)"/> and
+<img class="math"
src="_images/math/d9f97110fa885d35450b2782200b2d818509d75e.png"
alt="\underline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0)"/> are
compact and convex, provided they are nonempty. For continuous-time
linear systems,
-<img class="math"
src="_images/math/03fec95f56ded9a58fea0c9101ec0c4ebfab396e.png"
alt="\overline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0) =
\underline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0) = {\mathcal
X}_{CL}(t, t_0, {\mathcal X}_0)"/>.</p>
+<img class="math"
src="_images/math/f8927444016cb2c7c7d6c23de04d56b612d73014.png"
alt="\overline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0) =
\underline{{\mathcal X}}_{CL}(t, t_0, {\mathcal X}_0) = {\mathcal
X}_{CL}(t, t_0, {\mathcal X}_0)"/>.</p>
<p>Just as for forward reach sets, the backward reach sets can be open-loop
(OLBRS) or closed-loop (CLBRS).</p>
-<p><strong>Definition.</strong> Given the terminal time <img class="math"
src="_images/math/8b91b7245b0dd42b4f5585b97e323a8cfaa064a8.png" alt="t_1"/>
and target set
-<img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/>, the maxmin open-loop backward reach set
-<img class="math"
src="_images/math/49147eaa2e979b83c5980be03e339a161edc5819.png"
alt="\overline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1)"/> of system
-<a href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a>
at time <img class="math"
src="_images/math/bfb532e561f10458258d619de1c2f1d9bb83aaf1.png"
alt="t<t_1"/>, is the set of all <img class="math"
src="_images/math/092e364e1d9d19ad5fffb0b46ef4cc7f2da02c1c.png" alt="y"/>,
-such that for any disturbance <img class="math"
src="_images/math/e85f92fe1925b42b86da50a31d00b47850b2305f.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/> there
-exists a terminal state <img class="math"
src="_images/math/ea92bf13f3bda814ce7a63203cb91447f9ed1ef0.png"
alt="y_1\in{\mathcal Y}_1"/> and control
-<img class="math"
src="_images/math/c5c8d19800a0b2f2d789c84ca70888923dc54f93.png"
alt="u(\tau)\in{\mathcal U}(\tau)"/>, <img class="math"
src="_images/math/db857027076b91652b7bac6974e038e8975cb8f4.png"
alt="t\leqslant\tau<t_1"/>, which
-steers the system from <img class="math"
src="_images/math/3c571cc46b92fdee69ece29daca3986b0c3ebeaf.png"
alt="y(t)=y"/> to <img class="math"
src="_images/math/a5d0a76f62ca1acdb1000a63660be39e7d0281e4.png"
alt="y(t_1)=y_1"/>.</p>
-<p><img class="math"
src="_images/math/49147eaa2e979b83c5980be03e339a161edc5819.png"
alt="\overline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1)"/> is the
+<p><strong>Definition.</strong> Given the terminal time <img class="math"
src="_images/math/44780f0598b4d22c6888cfca27deb04115f7fa88.png" alt="t_1"/>
and target set
+<img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/>, the maxmin open-loop backward reach set
+<img class="math"
src="_images/math/9974ae66786602ff13f7e3c476ffaec12cc36c92.png"
alt="\overline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1)"/> of system
+<a href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a>
at time <img class="math"
src="_images/math/f172d25be351c54495d737f93750ec5e72cbddda.png"
alt="t<t_1"/>, is the set of all <img class="math"
src="_images/math/b124ff74afb0914bb434e8fb849eb56d734412f8.png" alt="y"/>,
+such that for any disturbance <img class="math"
src="_images/math/c1aa4494d5b8320290e79840475da74b8e3b93ef.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/> there
+exists a terminal state <img class="math"
src="_images/math/ced8055b6491f5ac70552a2a55261202b01b331f.png"
alt="y_1\in{\mathcal Y}_1"/> and control
+<img class="math"
src="_images/math/92a65e24f2e97e53d3368a49ecf3db303566d594.png"
alt="u(\tau)\in{\mathcal U}(\tau)"/>, <img class="math"
src="_images/math/42a4765aa2413005dad1bd4ef454ddb42b4277c9.png"
alt="t\leqslant\tau<t_1"/>, which
+steers the system from <img class="math"
src="_images/math/78a9574468c2042383d27cdda3b94edeecd8ca1e.png"
alt="y(t)=y"/> to <img class="math"
src="_images/math/dbb8eda36d29a589d7f1affac72fcef01f49ae18.png"
alt="y(t_1)=y_1"/>.</p>
+<p><img class="math"
src="_images/math/9974ae66786602ff13f7e3c476ffaec12cc36c92.png"
alt="\overline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1)"/> is the
subzero level set of the value function</p>
<div class="math" id="equation-maxminvfb">
-<p><span class="eqno">(36)</span><img
src="_images/math/5e92bde79857d34e638c793cf7f3dc5ec9ef88a2.png"
alt="\begin{aligned}
+<p><span class="eqno">(36)</span><img
src="_images/math/0eb848a9ccf73e1ac77ad3481c526b1ed2246ecb.png"
alt="\begin{aligned}
\underline{V}_b(t, y) = \max_v\min_u\{{\bf dist}(y(t_1), {\mathcal Y}_1) ~|
~ y(t)=y, \; u(\tau)\in{\mathcal U}(\tau), \;
v(\tau)\in{\mathcal V}(\tau), \; t\leqslant\tau<t_1\},
\end{aligned}"/></p>
-</div><p><strong>Definition.</strong> Given the terminal time <img
class="math"
src="_images/math/8b91b7245b0dd42b4f5585b97e323a8cfaa064a8.png" alt="t_1"/>
and target set
-<img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/>, the minmax open-loop backward reach set
-<img class="math"
src="_images/math/7a983ab63ecb4fb45519eff44faf5b175680a7a3.png"
alt="\underline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1)"/> of system
-<a href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a>
at time <img class="math"
src="_images/math/bfb532e561f10458258d619de1c2f1d9bb83aaf1.png"
alt="t<t_1"/>, is the set of all <img class="math"
src="_images/math/092e364e1d9d19ad5fffb0b46ef4cc7f2da02c1c.png" alt="y"/>,
-such that there exists a control <img class="math"
src="_images/math/c5c8d19800a0b2f2d789c84ca70888923dc54f93.png"
alt="u(\tau)\in{\mathcal U}(\tau)"/>
-that for all disturbances <img class="math"
src="_images/math/f30ea039d8e119a8a8c97c182c9c9d8f12fb5db1.png"
alt="v(\tau\in{\mathcal V}(\tau)"/>,
-<img class="math"
src="_images/math/db857027076b91652b7bac6974e038e8975cb8f4.png"
alt="t\leqslant\tau<t_1"/>, assigns a terminal state
-<img class="math"
src="_images/math/ea92bf13f3bda814ce7a63203cb91447f9ed1ef0.png"
alt="y_1\in{\mathcal Y}_1"/> and steers the system from <img class="math"
src="_images/math/3c571cc46b92fdee69ece29daca3986b0c3ebeaf.png"
alt="y(t)=y"/>
-to <img class="math"
src="_images/math/a5d0a76f62ca1acdb1000a63660be39e7d0281e4.png"
alt="y(t_1)=y_1"/>.
-<img class="math"
src="_images/math/7a983ab63ecb4fb45519eff44faf5b175680a7a3.png"
alt="\underline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1)"/> is the
+</div><p><strong>Definition.</strong> Given the terminal time <img
class="math"
src="_images/math/44780f0598b4d22c6888cfca27deb04115f7fa88.png" alt="t_1"/>
and target set
+<img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/>, the minmax open-loop backward reach set
+<img class="math"
src="_images/math/ff9701e6b7f5e96c1d7f6a66c22c63686c182572.png"
alt="\underline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1)"/> of system
+<a href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a>
at time <img class="math"
src="_images/math/f172d25be351c54495d737f93750ec5e72cbddda.png"
alt="t<t_1"/>, is the set of all <img class="math"
src="_images/math/b124ff74afb0914bb434e8fb849eb56d734412f8.png" alt="y"/>,
+such that there exists a control <img class="math"
src="_images/math/92a65e24f2e97e53d3368a49ecf3db303566d594.png"
alt="u(\tau)\in{\mathcal U}(\tau)"/>
+that for all disturbances <img class="math"
src="_images/math/e1a6e6beed116d63096bc2fb84bb0231c2410ac2.png"
alt="v(\tau\in{\mathcal V}(\tau)"/>,
+<img class="math"
src="_images/math/42a4765aa2413005dad1bd4ef454ddb42b4277c9.png"
alt="t\leqslant\tau<t_1"/>, assigns a terminal state
+<img class="math"
src="_images/math/ced8055b6491f5ac70552a2a55261202b01b331f.png"
alt="y_1\in{\mathcal Y}_1"/> and steers the system from <img class="math"
src="_images/math/78a9574468c2042383d27cdda3b94edeecd8ca1e.png"
alt="y(t)=y"/>
+to <img class="math"
src="_images/math/dbb8eda36d29a589d7f1affac72fcef01f49ae18.png"
alt="y(t_1)=y_1"/>.
+<img class="math"
src="_images/math/ff9701e6b7f5e96c1d7f6a66c22c63686c182572.png"
alt="\underline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1)"/> is the
subzero level set of the value function</p>
<div class="math" id="equation-minmaxvfb">
-<p><span class="eqno">(37)</span><img
src="_images/math/13f87bd383b1ddf3af3691a3236b5d98225cd6c2.png"
alt="\begin{aligned}
+<p><span class="eqno">(37)</span><img
src="_images/math/ce52f77409f9d7502a3e16d643d45260ebb235ad.png"
alt="\begin{aligned}
\overline{V}_b(t, y) = \min_u\max_v\{{\bf dist}(y(t_1), {\mathcal Y}_1) ~|
~ y(t)=y, \; u(\tau)\in{\mathcal U}(\tau), \;
v(\tau)\in{\mathcal V}(\tau), \; t\leqslant\tau<t_1\},
\end{aligned}"/></p>
</div><p><strong>Remark.</strong> The backward reach set can be computed
for a continuous-time
-system only if the solution of <a href="#equation-ctds2">(12)</a> exists
for <img class="math"
src="_images/math/bfb532e561f10458258d619de1c2f1d9bb83aaf1.png"
alt="t<t_1"/>, and
+system only if the solution of <a href="#equation-ctds2">(12)</a> exists
for <img class="math"
src="_images/math/f172d25be351c54495d737f93750ec5e72cbddda.png"
alt="t<t_1"/>, and
for a discrete-time system only if the right hand side of <a
href="#equation-dtds2">(13)</a> is
invertible.</p>
<p>Similarly to the forward reachability case, we construct piecewise OLBRS
-with one correction at time <img class="math"
src="_images/math/5595b2091ab81419cf08ada9eba54585015760a8.png"
alt="\tau_1"/>, <img class="math"
src="_images/math/8df47bc4a3a133e15c4b4fddbd4c828c533db682.png"
alt="t<\tau_1<t_1"/>. The
+with one correction at time <img class="math"
src="_images/math/7535961332c7b400bb1f935a141711a30c82cd87.png"
alt="\tau_1"/>, <img class="math"
src="_images/math/230ea228b832dd11db41b41c8f8c6d94256f8848.png"
alt="t<\tau_1<t_1"/>. The
piecewise maxmin OLBRS with one correction is</p>
<div class="math" id="equation-maxminb1">
-<p><span class="eqno">(38)</span><img
src="_images/math/575f4465a753e850815e6b50482147d4d8778a5e.png"
alt="\overline{{\mathcal Y}}_{OL}^1(t_1, t, {\mathcal Y}_1) =
\overline{{\mathcal Y}}_{OL}(\tau_1, t, \overline{{\mathcal Y}}_{OL}(t_1,
\tau_1, {\mathcal Y}_1)),"/></p>
+<p><span class="eqno">(38)</span><img
src="_images/math/e0b58b397da498de4382fb2e02cbe0a464aa5ac2.png"
alt="\overline{{\mathcal Y}}_{OL}^1(t_1, t, {\mathcal Y}_1) =
\overline{{\mathcal Y}}_{OL}(\tau_1, t, \overline{{\mathcal Y}}_{OL}(t_1,
\tau_1, {\mathcal Y}_1)),"/></p>
</div><p>and it is the subzero level set of the function</p>
<div class="math" id="equation-maxminvfb1">
-<p><span class="eqno">(39)</span><img
src="_images/math/299d7f96e6ac06b74855144642eb87e89a8cdf34.png"
alt="\begin{aligned}
+<p><span class="eqno">(39)</span><img
src="_images/math/72da0823ab1dec1a59a5dab97421999c8eed3f45.png"
alt="\begin{aligned}
\underline{V}^1_b(t, y) = \max_v\min_u\{\underline{V}_b(\tau_1,
y(\tau_1)) ~|~
y(t)=y, \; u(\tau)\in{\mathcal U}(\tau), \;
v(\tau)\in{\mathcal V}(\tau), \; t\leqslant\tau<\tau_1\}.
\end{aligned}"/></p>
</div><p>The piecewise minmax OLBRS with one correction is</p>
<div class="math" id="equation-minmaxb1">
-<p><span class="eqno">(40)</span><img
src="_images/math/003c9b1192f91b3cf009f3a52b39979b79014605.png"
alt="\underline{{\mathcal Y}}_{OL}^1(t_1, t, {\mathcal Y}_1) =
\underline{{\mathcal Y}}_{OL}(\tau_1, t, \underline{{\mathcal Y}}_{OL}(t_1,
\tau_1, {\mathcal Y}_1)),"/></p>
+<p><span class="eqno">(40)</span><img
src="_images/math/b280ba663c0e641b1a0cdb822e65fb7b0144b3fb.png"
alt="\underline{{\mathcal Y}}_{OL}^1(t_1, t, {\mathcal Y}_1) =
\underline{{\mathcal Y}}_{OL}(\tau_1, t, \underline{{\mathcal Y}}_{OL}(t_1,
\tau_1, {\mathcal Y}_1)),"/></p>
</div><p>and it is the subzero level set of the function</p>
<div class="math" id="equation-minmaxvfb1">
-<p><span class="eqno">(41)</span><img
src="_images/math/2822a0553e289462de5af45ac2c93784a5b3a0f3.png"
alt="\begin{aligned}
+<p><span class="eqno">(41)</span><img
src="_images/math/1706900f9e7d9e0fe78a6b52559d05f39b209c55.png"
alt="\begin{aligned}
\overline{V}^1_b(t, y) = \min_u\max_v\{\overline{V}_b(\tau_1, y(\tau_1)) ~|
~
y(t)=y, \; u(\tau)\in{\mathcal U}(\tau), \;
v(\tau)\in{\mathcal V}(\tau), \; t\leqslant\tau<\tau_1\},
\end{aligned}"/></p>
-</div><p>Recursively define maxmin and minmax OLBRS with <img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
corrections
-for <img class="math"
src="_images/math/1a905f067dcefa3757a6e6c2f97beb800d104f61.png"
alt="t<\tau_k<\cdots<\tau_1<t_1"/>. The maxmin OLBRS with <img
class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
+</div><p>Recursively define maxmin and minmax OLBRS with <img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
corrections
+for <img class="math"
src="_images/math/8cdd38adeb09f46dd390ce750511f835c5d21720.png"
alt="t<\tau_k<\cdots<\tau_1<t_1"/>. The maxmin OLBRS with <img
class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
corrections is</p>
<div class="math" id="equation-maxminbk">
-<p><span class="eqno">(42)</span><img
src="_images/math/4b6654ee26d2d9978a19618f963c6f6b793c3707.png"
alt="\overline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1) =
\overline{{\mathcal Y}}_{OL}(\tau_k, t, \overline{{\mathcal
Y}}_{OL}^{k-1}(t_1, \tau_k, {\mathcal Y}_1)),"/></p>
+<p><span class="eqno">(42)</span><img
src="_images/math/ee077633d630b3b08c8709f43e865f4d2b90fa61.png"
alt="\overline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1) =
\overline{{\mathcal Y}}_{OL}(\tau_k, t, \overline{{\mathcal
Y}}_{OL}^{k-1}(t_1, \tau_k, {\mathcal Y}_1)),"/></p>
</div><p>which is the subzero level set of function</p>
<div class="math" id="equation-maxminvfbk">
-<p><span class="eqno">(43)</span><img
src="_images/math/ec9f18d1b9a069bea5d37bda316c1352ca9a5739.png"
alt="\begin{aligned}
+<p><span class="eqno">(43)</span><img
src="_images/math/7b87c73274d2cb87ee14e3db28ab39b0bf41b2c0.png"
alt="\begin{aligned}
\underline{V}^k_b(t, y) = \max_v\min_u\{\underline{V}^{k-1}_b(\tau_k,
y(\tau_k)) ~|~
y(t)=y, \; u(\tau)\in{\mathcal U}(\tau), \;
v(\tau)\in{\mathcal V}(\tau), \; t\leqslant\tau<\tau_k\}.
\end{aligned}"/></p>
-</div><p>The minmax OLBRS with <img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
corrections is</p>
+</div><p>The minmax OLBRS with <img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
corrections is</p>
<div class="math" id="equation-minmaxbk">
-<p><span class="eqno">(44)</span><img
src="_images/math/1a4e8e0c62b16b158905d6492860cda8cf0d80c2.png"
alt="\underline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1) =
\underline{{\mathcal Y}}_{OL}(\tau_k, t, \underline{{\mathcal
Y}}_{OL}^{k-1}(t_1, \tau_k, {\mathcal Y}_1)),"/></p>
+<p><span class="eqno">(44)</span><img
src="_images/math/f61e8aa632dfa6b6cc5ef7f38710589b5f3be75f.png"
alt="\underline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1) =
\underline{{\mathcal Y}}_{OL}(\tau_k, t, \underline{{\mathcal
Y}}_{OL}^{k-1}(t_1, \tau_k, {\mathcal Y}_1)),"/></p>
</div><p>which is the subzero level set of the function</p>
<div class="math" id="equation-minmaxvfbk">
-<p><span class="eqno">(45)</span><img
src="_images/math/0d116444d27e1118df0e16bf7c73be3294606eea.png"
alt="\begin{aligned}
+<p><span class="eqno">(45)</span><img
src="_images/math/7323346ed847035a4ea51057d66f0ee6806942af.png"
alt="\begin{aligned}
\overline{V}^k_b(t, y) = \min_u\max_v\{\overline{V}^{k-1}_b(\tau_k,
y(\tau_k)) ~|~
y(t)=y, \; u(\tau)\in{\mathcal U}(\tau), \;
v(\tau)\in{\mathcal V}(\tau), \; t\leqslant\tau<\tau_k\},
@@ -550,12 +550,12 @@
</div><p>From <a href="#equation-maxminvfb1">(39)</a>, <a
href="#equation-minmaxvfb1">(41)</a>, <a
href="#equation-maxminvfbk">(43)</a> and <a
href="#equation-minmaxvfbk">(45)</a>
it follows that</p>
<div class="math">
-<p><img src="_images/math/16017575da684720060b8470c2c57151043ce8dd.png"
alt="\underline{V}_b(t, y) \leqslant\underline{V}^1_b(t, y)\leqslant\cdots
+<p><img src="_images/math/9153c6db631286c1b216865f24912b3449f0dcc7.png"
alt="\underline{V}_b(t, y) \leqslant\underline{V}^1_b(t, y)\leqslant\cdots
\leqslant\underline{V}^k_b(t, y) \leqslant\overline{V}^k_b(t, y)
\leqslant\cdots
\leqslant\overline{V}^1_b(t, y) \leqslant\overline{V}_b(t, y) ."/></p>
</div><p>Hence,</p>
<div class="math" id="equation-olbrsinclusion">
-<p><span class="eqno">(46)</span><img
src="_images/math/65a7946cd7884a80a939be886d5ec4a538267cbf.png"
alt="\begin{aligned}
+<p><span class="eqno">(46)</span><img
src="_images/math/b32e16928bf25806de305be52bcc7208da144a01.png"
alt="\begin{aligned}
&&\underline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1) \subseteq
\underline{{\mathcal Y}}_{OL}^1(t_1, t, {\mathcal Y}_1) \subseteq \cdots
\subseteq \underline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1)
\subseteq \nonumber \\
&&\overline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1) \subseteq
\cdots \subseteq \overline{{\mathcal Y}}_{OL}^1(t_1, t, {\mathcal Y}_1)
@@ -563,62 +563,62 @@
\end{aligned}"/></p>
</div><p>We say that</p>
<div class="math" id="equation-maxminclbrs">
-<p><span class="eqno">(47)</span><img
src="_images/math/f5cc1545b6c15c1781d2b6ab2dbb62df29e2d6dc.png"
alt="\overline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1) =
\overline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1), \;\;
+<p><span class="eqno">(47)</span><img
src="_images/math/2bc0c133f3b36e086d6924bb1aa8db9980fd2619.png"
alt="\overline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1) =
\overline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1), \;\;
k = \left\{\begin{array}{ll}
\infty & \mbox{ for continuous-time system}\\
t_1-t-1 & \mbox{ for discrete-time system}\end{array}\right."/></p>
</div><p>is the <em>maxmin closed-loop backward reach set</em> of system
<a href="#equation-ctds2">(12)</a> or
-<a href="#equation-dtds2">(13)</a> at time <img class="math"
src="_images/math/e0d2bf360290fd61d1c1557e763f2622363b3d35.png"
alt="t"/>.</p>
+<a href="#equation-dtds2">(13)</a> at time <img class="math"
src="_images/math/ef9270877405055756d345facd044e4ab297f858.png"
alt="t"/>.</p>
<p>We say that</p>
<div class="math" id="equation-minmaxclbrs">
-<p><span class="eqno">(48)</span><img
src="_images/math/e0062ef633b8d4f46c81b8d3f27160acf9cef4fa.png"
alt="\underline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1) =
\underline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1), \;\;
+<p><span class="eqno">(48)</span><img
src="_images/math/5e1aed6742fc3b70822e233cfa0f6f4e764170e6.png"
alt="\underline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1) =
\underline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1), \;\;
k = \left\{\begin{array}{ll}
\infty & \mbox{ for continuous-time system}\\
t_1-t-1 & \mbox{ for discrete-time system}\end{array}\right."/></p>
</div><p>is the <em>minmax closed-loop backward reach set</em> of system
<a href="#equation-ctds2">(12)</a> or
-<a href="#equation-dtds2">(13)</a> at time <img class="math"
src="_images/math/e0d2bf360290fd61d1c1557e763f2622363b3d35.png"
alt="t"/>.</p>
-<p><strong>Definition.</strong> Given the terminal time <img class="math"
src="_images/math/8b91b7245b0dd42b4f5585b97e323a8cfaa064a8.png" alt="t_1"/>
and
-target set <img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/>, the maxmin CLBRS
-<img class="math"
src="_images/math/a0b040babf1e916fd89b63a7d1ce5d7a1a61e907.png"
alt="\overline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1)"/> of system
-<a href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a>
at time <img class="math"
src="_images/math/bfb532e561f10458258d619de1c2f1d9bb83aaf1.png"
alt="t<t_1"/>, is the set of all states
-<img class="math"
src="_images/math/092e364e1d9d19ad5fffb0b46ef4cc7f2da02c1c.png" alt="y"/>,
for each of which for every disturbance
-<img class="math"
src="_images/math/e85f92fe1925b42b86da50a31d00b47850b2305f.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/> there exists terminal state
-<img class="math"
src="_images/math/ea92bf13f3bda814ce7a63203cb91447f9ed1ef0.png"
alt="y_1\in{\mathcal Y}_1"/> and control
-<img class="math"
src="_images/math/99aa3d80b39fbabf8a6fcdd3067aeb27181b6faf.png"
alt="u(\tau, y(\tau))\in{\mathcal U}(\tau)"/> that assigns trajectory
-<img class="math"
src="_images/math/548e764d305f342f6848494c3df5123dc700cb9c.png"
alt="y(\tau, | v(\tau), u(\tau, y(\tau)))"/> satisfying</p>
+<a href="#equation-dtds2">(13)</a> at time <img class="math"
src="_images/math/ef9270877405055756d345facd044e4ab297f858.png"
alt="t"/>.</p>
+<p><strong>Definition.</strong> Given the terminal time <img class="math"
src="_images/math/44780f0598b4d22c6888cfca27deb04115f7fa88.png" alt="t_1"/>
and
+target set <img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/>, the maxmin CLBRS
+<img class="math"
src="_images/math/5443f2a60e21d0f66800bb85eadd3a99e717cb84.png"
alt="\overline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1)"/> of system
+<a href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a>
at time <img class="math"
src="_images/math/f172d25be351c54495d737f93750ec5e72cbddda.png"
alt="t<t_1"/>, is the set of all states
+<img class="math"
src="_images/math/b124ff74afb0914bb434e8fb849eb56d734412f8.png" alt="y"/>,
for each of which for every disturbance
+<img class="math"
src="_images/math/c1aa4494d5b8320290e79840475da74b8e3b93ef.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/> there exists terminal state
+<img class="math"
src="_images/math/ced8055b6491f5ac70552a2a55261202b01b331f.png"
alt="y_1\in{\mathcal Y}_1"/> and control
+<img class="math"
src="_images/math/c47dfab4f14dceae726e6780db6b2ec8893f0a70.png"
alt="u(\tau, y(\tau))\in{\mathcal U}(\tau)"/> that assigns trajectory
+<img class="math"
src="_images/math/25f41900d9cdf71d21efc6ef3d2ce7b4bb67b65e.png"
alt="y(\tau, | v(\tau), u(\tau, y(\tau)))"/> satisfying</p>
<div class="math">
-<p><img src="_images/math/49f4931744770188d9ed0326c5cd77ffa0be3669.png"
alt="\dot{y}(\tau | v(\tau), u(\tau, y(\tau))) \in
+<p><img src="_images/math/5a48d0e96f553b1c0027af8b88f0dcab936672d3.png"
alt="\dot{y}(\tau | v(\tau), u(\tau, y(\tau))) \in
f(\tau, y(\tau), u(\tau, y(\tau)), v(\tau))"/></p>
</div><p>in continuous-time case, or</p>
<div class="math">
-<p><img src="_images/math/bab8161dcd9106bd9811b988df2903e348f0d2b2.png"
alt="y(\tau+1 | v(\tau), u(\tau, y(\tau))) \in
+<p><img src="_images/math/b539d0860c33ed399739390b680039c6214f23f2.png"
alt="y(\tau+1 | v(\tau), u(\tau, y(\tau))) \in
f(\tau, y(\tau), u(\tau, y(\tau)), v(\tau))"/></p>
-</div><p>in discrete-time case, with <img class="math"
src="_images/math/db857027076b91652b7bac6974e038e8975cb8f4.png"
alt="t\leqslant\tau<t_1"/>, such that
-<img class="math"
src="_images/math/ea4a48d6123e85485ce06b11d0c2c8001dd46d77.png" alt="y(t) =
y"/> and <img class="math"
src="_images/math/a5d0a76f62ca1acdb1000a63660be39e7d0281e4.png"
alt="y(t_1)=y_1"/>.</p>
-<p><strong>Definition.</strong> Given the terminal time <img class="math"
src="_images/math/8b91b7245b0dd42b4f5585b97e323a8cfaa064a8.png" alt="t_1"/>
and target set <img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/>, the
-minmax CLBRS <img class="math"
src="_images/math/7c85acb9dee5270c789591eda5ec1f18d4705993.png"
alt="\underline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1)"/> of system
-([ctds2]) or [dtds2] at time <img class="math"
src="_images/math/bfb532e561f10458258d619de1c2f1d9bb83aaf1.png"
alt="t<t_1"/>, is the set of all states
-<img class="math"
src="_images/math/092e364e1d9d19ad5fffb0b46ef4cc7f2da02c1c.png" alt="y"/>,
for each of which there exists control
-<img class="math"
src="_images/math/99aa3d80b39fbabf8a6fcdd3067aeb27181b6faf.png"
alt="u(\tau, y(\tau))\in{\mathcal U}(\tau)"/> that for every disturbance
-<img class="math"
src="_images/math/e85f92fe1925b42b86da50a31d00b47850b2305f.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/> assigns terminal state
-<img class="math"
src="_images/math/ea92bf13f3bda814ce7a63203cb91447f9ed1ef0.png"
alt="y_1\in{\mathcal Y}_1"/> and trajectory
-<img class="math"
src="_images/math/451599baec69984b1605b1043f8eadc8f06c077b.png"
alt="y(\tau, v(\tau) | u(\tau, y(\tau)))"/> satisfying</p>
+</div><p>in discrete-time case, with <img class="math"
src="_images/math/42a4765aa2413005dad1bd4ef454ddb42b4277c9.png"
alt="t\leqslant\tau<t_1"/>, such that
+<img class="math"
src="_images/math/d0df7211409426f32ac2f6417f9f4cc34ac17650.png" alt="y(t) =
y"/> and <img class="math"
src="_images/math/dbb8eda36d29a589d7f1affac72fcef01f49ae18.png"
alt="y(t_1)=y_1"/>.</p>
+<p><strong>Definition.</strong> Given the terminal time <img class="math"
src="_images/math/44780f0598b4d22c6888cfca27deb04115f7fa88.png" alt="t_1"/>
and target set <img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/>, the
+minmax CLBRS <img class="math"
src="_images/math/536bb2217674c5328695de35f70b2e3120973e4b.png"
alt="\underline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1)"/> of system
+<a href="#equation-ctds2">(12)</a> or <a href="#equation-dtds2">(13)</a>
at time <img class="math"
src="_images/math/f172d25be351c54495d737f93750ec5e72cbddda.png"
alt="t<t_1"/>, is the set of all states
+<img class="math"
src="_images/math/b124ff74afb0914bb434e8fb849eb56d734412f8.png" alt="y"/>,
for each of which there exists control
+<img class="math"
src="_images/math/c47dfab4f14dceae726e6780db6b2ec8893f0a70.png"
alt="u(\tau, y(\tau))\in{\mathcal U}(\tau)"/> that for every disturbance
+<img class="math"
src="_images/math/c1aa4494d5b8320290e79840475da74b8e3b93ef.png"
alt="v(\tau)\in{\mathcal V}(\tau)"/> assigns terminal state
+<img class="math"
src="_images/math/ced8055b6491f5ac70552a2a55261202b01b331f.png"
alt="y_1\in{\mathcal Y}_1"/> and trajectory
+<img class="math"
src="_images/math/c356b7be1f87c32ea236c103ba8916cab7ca2e31.png"
alt="y(\tau, v(\tau) | u(\tau, y(\tau)))"/> satisfying</p>
<div class="math">
-<p><img src="_images/math/ca2711a2fff533ee6c5e947f21868eecdeb81a27.png"
alt="\dot{y}(\tau, v(\tau) | u(\tau, y(\tau))) \in
+<p><img src="_images/math/e5602363dc25fb4ecd0c7056322ee267f64f0c9c.png"
alt="\dot{y}(\tau, v(\tau) | u(\tau, y(\tau))) \in
f(\tau, y(\tau), u(\tau, y(\tau)), v(\tau))"/></p>
</div><p>in the continuous-time case, or</p>
<div class="math">
-<p><img src="_images/math/71bffe079ec90efd7bfd64992dc9c9d2109d17d2.png"
alt="y(\tau+1, v(\tau) | u(\tau, y(\tau))) \in
+<p><img src="_images/math/8f73e9a26ecf893ed4e400be1ab2e1e5c94f59e2.png"
alt="y(\tau+1, v(\tau) | u(\tau, y(\tau))) \in
f(\tau, y(\tau), u(\tau, y(\tau)), v(\tau))"/></p>
-</div><p>in the discrete-time case, with <img class="math"
src="_images/math/db857027076b91652b7bac6974e038e8975cb8f4.png"
alt="t\leqslant\tau<t_1"/>, such that
-<img class="math"
src="_images/math/ea4a48d6123e85485ce06b11d0c2c8001dd46d77.png" alt="y(t) =
y"/> and <img class="math"
src="_images/math/a5d0a76f62ca1acdb1000a63660be39e7d0281e4.png"
alt="y(t_1)=y_1"/>.</p>
+</div><p>in the discrete-time case, with <img class="math"
src="_images/math/42a4765aa2413005dad1bd4ef454ddb42b4277c9.png"
alt="t\leqslant\tau<t_1"/>, such that
+<img class="math"
src="_images/math/d0df7211409426f32ac2f6417f9f4cc34ac17650.png" alt="y(t) =
y"/> and <img class="math"
src="_images/math/dbb8eda36d29a589d7f1affac72fcef01f49ae18.png"
alt="y(t_1)=y_1"/>.</p>
<p>Both
maxmin and minmax CLBRS satisfy the semigroup property
<a href="#equation-semigroup_b">(9)</a>.</p>
<p>The maxmin OLBRS for the continuous-time linear system can be expressed
through set valued integrals,</p>
<div class="math" id="equation-ctlsmaxminb">
-<p><span class="eqno">(49)</span><img
src="_images/math/f72bb9e9b07948568197426b7808fae4a54fb0c5.png"
alt="\begin{array}{l}
+<p><span class="eqno">(49)</span><img
src="_images/math/3912e284919cb83589ac428415a20c239b75a863.png"
alt="\begin{array}{l}
\overline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1) = \\
\left(\Phi(t, t_1){\mathcal Y}_1 \oplus
\int_{t_1}^t\Phi(t, \tau)B(\tau){\mathcal U}(\tau)d\tau\right) \dot{-} \\
@@ -626,7 +626,7 @@
\end{array}"/></p>
</div><p>and for the discrete-time linear system through set-valued
sums,</p>
<div class="math" id="equation-dtlsmaxminb">
-<p><span class="eqno">(50)</span><img
src="_images/math/e3dc7d72356fe189fa74a5f69b4281aa7c9b83fc.png"
alt="\begin{array}{l}
+<p><span class="eqno">(50)</span><img
src="_images/math/f0968ac7e68fa6267d4b6cf428a99118d545959f.png"
alt="\begin{array}{l}
\overline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1) = \\
\left(\Phi(t, t_1){\mathcal Y}_1 \oplus
\sum_{\tau=t}^{t_1-1}-\Phi(t, \tau+1)B(\tau){\mathcal U}(\tau)\right)
\dot{-} \\
@@ -634,7 +634,7 @@
\end{array}"/></p>
</div><p>Similarly, the minmax OLBRS for the continuous-time linear system
is</p>
<div class="math" id="equation-ctlsminmaxb">
-<p><span class="eqno">(51)</span><img
src="_images/math/bb26083a167e5bd142ee8954a3647b09633f91b4.png"
alt="\begin{array}{l}
+<p><span class="eqno">(51)</span><img
src="_images/math/ab360b3a48f91dfa481fc94c668e022f23110638.png"
alt="\begin{array}{l}
\underline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1) = \\
\left(\Phi(t, t_1){\mathcal Y}_1 \dot{-}
\int_{t}^{t_1}\Phi(t, \tau)G(\tau){\mathcal V}(\tau)d\tau\right)
@@ -643,17 +643,17 @@
\end{array}"/></p>
</div><p>and for the discrete-time linear system it is</p>
<div class="math" id="equation-dtlsminmaxb">
-<p><span class="eqno">(52)</span><img
src="_images/math/4477999953dde31124876e0e0a502295d5d69f65.png"
alt="\begin{array}{l}
+<p><span class="eqno">(52)</span><img
src="_images/math/2440e5daf6a564e731f4c6b074065671b4247c4d.png"
alt="\begin{array}{l}
\underline{{\mathcal Y}}_{OL}(t_1, t, {\mathcal Y}_1) = \\
\left(\Phi(t, t_1){\mathcal Y}_1 \dot{-}
\sum_{\tau=t}^{t_1-1}\Phi(t, \tau+1)G(\tau){\mathcal V}(\tau)\right)
\oplus \\
\sum_{\tau=t}^{t_1-1}-\Phi(t, \tau+1)B(\tau){\mathcal U}(\tau).
\end{array}"/></p>
-</div><p>Now consider piecewise OLBRS with <img class="math"
src="_images/math/8c325612684d41304b9751c175df7bcc0f61f64f.png" alt="k"/>
corrections. Expression
+</div><p>Now consider piecewise OLBRS with <img class="math"
src="_images/math/e9203da50e1059455123460d4e716c9c7f440cc3.png" alt="k"/>
corrections. Expression
<a href="#equation-maxminbk">(42)</a> translates into</p>
<div class="math" id="equation-ctlsmaxminbk">
-<p><span class="eqno">(53)</span><img
src="_images/math/8ad351143a54fb473f32d2c1fd53d5ff4229c105.png"
alt="\begin{array}{l}
+<p><span class="eqno">(53)</span><img
src="_images/math/ecda851a6cf6aa31daf3ea2407c912e02d42efc9.png"
alt="\begin{array}{l}
\overline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1) = \\
\left(\Phi(t, \tau_k)\overline{{\mathcal Y}}_{OL}^{k-1}(t_1, \tau_k,
{\mathcal Y}_1) \oplus
\int_{\tau_k}^t\Phi(t, \tau)B(\tau){\mathcal U}(\tau)d\tau\right) \dot{-}
\\
@@ -661,7 +661,7 @@
\end{array}"/></p>
</div><p>in the continuous-time case, and for the discrete-time case
into</p>
<div class="math" id="equation-dtlsmaxminbk">
-<p><span class="eqno">(54)</span><img
src="_images/math/13d6bdacf58f0a02cde9e48296f68f4a38df54e6.png"
alt="\begin{array}{l}
+<p><span class="eqno">(54)</span><img
src="_images/math/8167ed55f92d9cb1c59541c39d6926db132bc77f.png"
alt="\begin{array}{l}
\overline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1) = \\
\left(\Phi(t, \tau_k)\overline{{\mathcal Y}}_{OL}^{k-1}(t_1, \tau_k,
{\mathcal Y}_1) \oplus
\sum_{\tau=t}^{\tau_k-1}-\Phi(t, \tau+1)B(\tau){\mathcal U}(\tau)\right)
\dot{-} \\
@@ -669,7 +669,7 @@
\end{array}"/></p>
</div><p>Expression <a href="#equation-minmaxbk">(44)</a> translates
into</p>
<div class="math" id="equation-ctlsminmaxbk">
-<p><span class="eqno">(55)</span><img
src="_images/math/1112d680db7e93bca25c793145d2fd5eee2be9f4.png"
alt="\begin{array}{l}
+<p><span class="eqno">(55)</span><img
src="_images/math/8bb4be8ae716127b20e51434c99069e11a852fab.png"
alt="\begin{array}{l}
\underline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1) = \\
\left(\Phi(t, \tau_k)\overline{{\mathcal Y}}_{OL}^{k-1}(t_1, \tau_k,
{\mathcal Y}_1) \dot{-}
\int^{\tau_k}_t\Phi(t, \tau)G(\tau){\mathcal V}(\tau)d\tau\right)
@@ -678,7 +678,7 @@
\end{array}"/></p>
</div><p>in the continuous-time case, and for the discrete-time case
into</p>
<div class="math" id="equation-dtlsminmaxbk">
-<p><span class="eqno">(56)</span><img
src="_images/math/7563120c07a5e4dae2a9a4603165b6cac4cd83c4.png"
alt="\begin{array}{l}
+<p><span class="eqno">(56)</span><img
src="_images/math/6bf5d14f121bca6b179dac1f646881d0e9168866.png"
alt="\begin{array}{l}
\underline{{\mathcal Y}}_{OL}^k(t_1, t, {\mathcal Y}_1) = \\
(\Phi(t, \tau_k)\overline{{\mathcal Y}}_{OL}^{k-1}(t_1, \tau_k, {\mathcal
Y}_1) \dot{-}
\sum_{\tau=t}^{\tau_k-1}\Phi(t, \tau+1)G(\tau){\mathcal V}(\tau))
@@ -686,51 +686,51 @@
\sum_{\tau=t}^{\tau_k-1}-\Phi(t, \tau+1)B(\tau){\mathcal U}(\tau).
\end{array}"/></p>
</div><p>For continuous-time linear systems
-<img class="math"
src="_images/math/54a24dd1f688ee4e39631553c985d7f5714b415a.png"
alt="\overline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1) =
\underline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1) = {\mathcal
Y}_{CL}(t_1, t, {\mathcal Y}_1)"/>
-under the condition that the target set <img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/> is large
+<img class="math"
src="_images/math/82d5ae6e78b84a69b647e0e2b1f0b3014679e0ac.png"
alt="\overline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1) =
\underline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1) = {\mathcal
Y}_{CL}(t_1, t, {\mathcal Y}_1)"/>
+under the condition that the target set <img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/> is large
enough to ensure that
-<img class="math"
src="_images/math/51b93fc7552a4a9753feb5f559bd724e7987dbdc.png"
alt="\underline{{\mathcal Y}}_{CL}(t_1, t_1-\epsilon, {\mathcal Y}_1)"/>
-is nonempty for some small <img class="math"
src="_images/math/ca47de052eb3fb5454694d9bce3561ebff831a1e.png"
alt="\epsilon>0"/>.</p>
+<img class="math"
src="_images/math/93adce0de4fe8c994b9376e26aa3ea8952f5ebd6.png"
alt="\underline{{\mathcal Y}}_{CL}(t_1, t_1-\epsilon, {\mathcal Y}_1)"/>
+is nonempty for some small <img class="math"
src="_images/math/1812e21f6af66c8a21218a60b1d6a7f2dc4368e9.png"
alt="\epsilon>0"/>.</p>
<p>Computation of backward reach sets for discrete-time linear systems
-makes sense only if the state transition matrix <img class="math"
src="_images/math/9d404d92b318a1f9085fe646972e13f01e554ebe.png"
alt="\Phi(t_1, t)"/> is
+makes sense only if the state transition matrix <img class="math"
src="_images/math/12aacf1f8c8dfc57817e3b1225fefcb6bf8f0809.png"
alt="\Phi(t_1, t)"/> is
invertible.</p>
-<p>If the target set <img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/>, control sets
-<img class="math"
src="_images/math/2fad00e8688c15ae8e5d1cb55e0e80e8a1a94599.png"
alt="{\mathcal U}(\tau)"/> and disturbance sets
-<img class="math"
src="_images/math/f7bf92e6253e44b00475b7a2cb18ff6f712f5211.png"
alt="{\mathcal V}(\tau)"/>, <img class="math"
src="_images/math/db857027076b91652b7bac6974e038e8975cb8f4.png"
alt="t\leqslant\tau<t_1"/>, are compact and
+<p>If the target set <img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/>, control sets
+<img class="math"
src="_images/math/d5025379a275c633646266889a3f8afb66824361.png"
alt="{\mathcal U}(\tau)"/> and disturbance sets
+<img class="math"
src="_images/math/3d1d7aa049009b09b08d23eafa47de5d551b1920.png"
alt="{\mathcal V}(\tau)"/>, <img class="math"
src="_images/math/42a4765aa2413005dad1bd4ef454ddb42b4277c9.png"
alt="t\leqslant\tau<t_1"/>, are compact and
convex, then CLBRS
-<img class="math"
src="_images/math/a0b040babf1e916fd89b63a7d1ce5d7a1a61e907.png"
alt="\overline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1)"/> and
-<img class="math"
src="_images/math/7c85acb9dee5270c789591eda5ec1f18d4705993.png"
alt="\underline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1)"/> are
+<img class="math"
src="_images/math/5443f2a60e21d0f66800bb85eadd3a99e717cb84.png"
alt="\overline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1)"/> and
+<img class="math"
src="_images/math/536bb2217674c5328695de35f70b2e3120973e4b.png"
alt="\underline{{\mathcal Y}}_{CL}(t_1, t, {\mathcal Y}_1)"/> are
compact and convex, if they are nonempty.</p>
</div>
<div class="section" id="reachability-problem">
<h3>Reachability problem<a class="headerlink" href="#reachability-problem"
title="Permalink to this headline">¶</a></h3>
<p>Reachability analysis is concerned with the computation of the forward
-<img class="math"
src="_images/math/742ecaa940e5f59c5500865e58e37461ccd8aa3a.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/> and backward
-<img class="math"
src="_images/math/6e2bb77aa7bc88aa6847793e8159b305c3e98836.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> reach sets (the reach sets
+<img class="math"
src="_images/math/811bdf7f2cb9ca774c4c8d632bfedbf768d28f91.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/> and backward
+<img class="math"
src="_images/math/5391e6459f27f329a5ba5ceac7e280b33da970ce.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> reach sets (the reach sets
may be maxmin or minmax) in a way that can effectively meet requests
like the following:</p>
<ol class="arabic">
-<li><p class="first">For the given time interval <img class="math"
src="_images/math/9cfd7cc884ddf9e7b9d34795c8cd6ab315ad64b2.png" alt="[t_0,
t]"/>, determine whether the
+<li><p class="first">For the given time interval <img class="math"
src="_images/math/539d8278169a9818b382eb6cf1f9bfc93d0f3101.png" alt="[t_0,
t]"/>, determine whether the
system can be steered into the given target set
-<img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/>. In other words, is the set
-<img class="math"
src="_images/math/d382e12bcb2e7be040560ab018317c9dde8ea934.png"
alt="{\mathcal Y}_1\cap\bigcup_{t_0 \leqslant\tau\leqslant t}{\mathcal
X}(\tau, t_0, {\mathcal X}_0)"/>
+<img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/>. In other words, is the set
+<img class="math"
src="_images/math/df907705ae42d135dbae5165479d20a25a93a90c.png"
alt="{\mathcal Y}_1\cap\bigcup_{t_0 \leqslant\tau\leqslant t}{\mathcal
X}(\tau, t_0, {\mathcal X}_0)"/>
nonempty? And if the answer is 'yes', find a control that steers the
system to the target set (or avoids the target set). <a
class="footnote-reference" href="#id18" id="id8">[8]</a></p>
</li>
-<li><p class="first">If the target set <img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/> is reachable from the given
-initial condition <img class="math"
src="_images/math/84af55d74ac2ea1f85b6f2fb0fab79aaa8d3d54c.png" alt="\{t_0,
{\mathcal X}_0\}"/> in the time
-interval <img class="math"
src="_images/math/9cfd7cc884ddf9e7b9d34795c8cd6ab315ad64b2.png" alt="[t_0,
t]"/>, find the shortest time to reach
-<img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/>,</p>
+<li><p class="first">If the target set <img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/> is reachable from the given
+initial condition <img class="math"
src="_images/math/724d84613c3a637bf253c8482e034f0c9fa05730.png" alt="\{t_0,
{\mathcal X}_0\}"/> in the time
+interval <img class="math"
src="_images/math/539d8278169a9818b382eb6cf1f9bfc93d0f3101.png" alt="[t_0,
t]"/>, find the shortest time to reach
+<img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/>,</p>
<div class="math">
-<p><img src="_images/math/19c73966f7a7742df71b237a679cfd7ac93e757b.png"
alt="\arg\min_{\tau}
+<p><img src="_images/math/5417959fab7da4f7dba2a9556a2f9c8099418220.png"
alt="\arg\min_{\tau}
\{{\mathcal X}(\tau,t_0,{\mathcal X}_0)\cap{\mathcal Y}_1\neq\emptyset ~|~
t_0\leqslant\tau\leqslant t\}."/></p>
</div></li>
-<li><p class="first">Given the terminal time <img class="math"
src="_images/math/8b91b7245b0dd42b4f5585b97e323a8cfaa064a8.png"
alt="t_1"/>, target set
-<img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/> and time <img class="math"
src="_images/math/bfb532e561f10458258d619de1c2f1d9bb83aaf1.png"
alt="t<t_1"/> find the set of states
-starting at time <img class="math"
src="_images/math/e0d2bf360290fd61d1c1557e763f2622363b3d35.png" alt="t"/>
from which the system can reach
-<img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/> within time interval <img class="math"
src="_images/math/8c88a62e87aa508a4d9c2d643500df142073b3bd.png" alt="[t,
t_1]"/>. In
+<li><p class="first">Given the terminal time <img class="math"
src="_images/math/44780f0598b4d22c6888cfca27deb04115f7fa88.png"
alt="t_1"/>, target set
+<img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/> and time <img class="math"
src="_images/math/f172d25be351c54495d737f93750ec5e72cbddda.png"
alt="t<t_1"/> find the set of states
+starting at time <img class="math"
src="_images/math/ef9270877405055756d345facd044e4ab297f858.png" alt="t"/>
from which the system can reach
+<img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/> within time interval <img class="math"
src="_images/math/5ef5ad4af28346e48c7a7f4706bd005df4426612.png" alt="[t,
t_1]"/>. In
other words, find
-<img class="math"
src="_images/math/8c279080fcf8ba7e878dae7163745021aa77b200.png"
alt="\bigcup_{t\leqslant\tau<t_1}{\mathcal Y}(t_1, \tau, {\mathcal
Y}_1)"/>.</p>
+<img class="math"
src="_images/math/566d48739eea31b87a286ac5e5933a5d8f8753f2.png"
alt="\bigcup_{t\leqslant\tau<t_1}{\mathcal Y}(t_1, \tau, {\mathcal
Y}_1)"/>.</p>
</li>
<li><p class="first">Find a closed-loop control that steers a system with
disturbances to
the given target set in given time.</p>
@@ -739,11 +739,11 @@
specified two- or three-dimensional subspace.</p>
</li>
</ol>
-<p>For linear systems, if the initial set <img class="math"
src="_images/math/058cc043eb5c4750bfba163d5014ba4a2911b20c.png"
alt="{\mathcal X}_0"/>, target
-set <img class="math"
src="_images/math/bde4a0fa62e8151878615f926c15315366dd1d2f.png"
alt="{\mathcal Y}_1"/>, control bounds <img class="math"
src="_images/math/d8da1db395f6bf29f89a517a8aa1db11c090ed8f.png"
alt="{\mathcal U}(\cdot)"/>
-and disturbance bounds <img class="math"
src="_images/math/a504a8aea7683f7176c45787b5048d916d623af4.png"
alt="{\mathcal V}(\cdot)"/> are compact and
-convex, so are the forward <img class="math"
src="_images/math/742ecaa940e5f59c5500865e58e37461ccd8aa3a.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/>
-and backward <img class="math"
src="_images/math/6e2bb77aa7bc88aa6847793e8159b305c3e98836.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> reach sets.
+<p>For linear systems, if the initial set <img class="math"
src="_images/math/1eae27d722cf74685b3dab099d6e0089009498ce.png"
alt="{\mathcal X}_0"/>, target
+set <img class="math"
src="_images/math/2f0e73dc2e9e3a9be3332eade7c81926e9e870c9.png"
alt="{\mathcal Y}_1"/>, control bounds <img class="math"
src="_images/math/825d2160d7150f90ad27e4754fd15b9f6349403d.png"
alt="{\mathcal U}(\cdot)"/>
+and disturbance bounds <img class="math"
src="_images/math/1731e80a5f896118a1ce18d2f77b651ab85888e8.png"
alt="{\mathcal V}(\cdot)"/> are compact and
+convex, so are the forward <img class="math"
src="_images/math/811bdf7f2cb9ca774c4c8d632bfedbf768d28f91.png"
alt="{\mathcal X}(t, t_0, {\mathcal X}_0)"/>
+and backward <img class="math"
src="_images/math/5391e6459f27f329a5ba5ceac7e280b33da970ce.png"
alt="{\mathcal Y}(t_1, t, {\mathcal Y}_1)"/> reach sets.
Hence reachability analysis requires the computationally effective
manipulation of convex sets, and performing the set-valued operations of
unions, intersections, geometric sums and differences.</p>
@@ -764,475 +764,475 @@
<h3>Continuous-time systems<a class="headerlink"
href="#continuous-time-systems" title="Permalink to this
headline">¶</a></h3>
<p>Consider the system</p>
<div class="math" id="equation-ctsystem">
-<p><span class="eqno">(57)</span><img
src="_images/math/88bae481a3101494a0b4f3def3fc547733818b61.png"
alt="\dot{x}(t) = A(t)x(t) + B(t)u + G(t)v,"/></p>
-</div><p>in which <img class="math"
src="_images/math/7bb6c0add112d2fafef9f550e3efdf5a8a90f9fc.png"
alt="x\in{\bf R}^n"/> is the state, <img class="math"
src="_images/math/885666012fc22acc97448cd23a4e087461163fe8.png"
alt="u\in{\bf R}^m"/> is
-the control and <img class="math"
src="_images/math/7bb3fd47faa27f347a077d625d39406a791ff622.png"
alt="v\in{\bf R}^d"/> is the disturbance. <img class="math"
src="_images/math/39a600f2477bf0c26625cbeac94c8b2db1137fc3.png"
alt="A(t)"/>,
-<img class="math"
src="_images/math/429f9bbb73bef9e385fb33c6a610248910b919e0.png"
alt="B(t)"/> and <img class="math"
src="_images/math/8af75cf3e7caba5c7c879ab92a73e61550e311be.png"
alt="G(t)"/> are continuous and take their values in
-<img class="math"
src="_images/math/cb0db0dbdc5a4fb4c145e30a737d8d2e3a0c0665.png" alt="{\bf
R}^{n\times n}"/>, <img class="math"
src="_images/math/e3f84cb70f5968a9273be1ddd6e93aca6e0cb7f3.png" alt="{\bf
R}^{n\times m}"/> and
-<img class="math"
src="_images/math/0c3627101f580ceefacc9b8de59e4787dc157455.png" alt="{\bf
R}^{n\times d}"/> respectively. Control <img class="math"
src="_images/math/7bb48a5641483af7144dc7932424b1e0ca1dd571.png"
alt="u(t,x(t))"/> and
-disturbance <img class="math"
src="_images/math/0dfca47fad8dae84de1c4d7532d3bf9269f096ae.png"
alt="v(t)"/> are measurable functions restricted by
-ellipsoidal constraints: <img class="math"
src="_images/math/4a01cd4855fec413a82275feab556a69ab4a6fea.png"
alt="u(t,x(t)) \in {\mathcal E}(p(t), P(t))"/>
-and <img class="math"
src="_images/math/9edbb67b3beacb59a37ab9ab9149bb0e6e62b342.png" alt="v(t)
\in {\mathcal E}(q(t), Q(t))"/>. The set of initial states
-at initial time <img class="math"
src="_images/math/10fde25257f32317828fde97047bbe76438b6305.png" alt="t_0"/>
is assumed to be the ellipsoid
-<img class="math"
src="_images/math/f26eef1760d960eb46a9f56bde4103cf5a508bfe.png"
alt="{\mathcal E}(x_0,X_0)"/>.</p>
+<p><span class="eqno">(57)</span><img
src="_images/math/33ff5ac7b7c582367c0e3a697df7c4cd030b2687.png"
alt="\dot{x}(t) = A(t)x(t) + B(t)u + G(t)v,"/></p>
+</div><p>in which <img class="math"
src="_images/math/1877db47ab2d3b518dfb41417f2d46e2d748a6a1.png"
alt="x\in{\bf R}^n"/> is the state, <img class="math"
src="_images/math/c58a71cb24aee0af2fe74d3a2de7f016bce262df.png"
alt="u\in{\bf R}^m"/> is
+the control and <img class="math"
src="_images/math/02790a9b69a54b12748a6ddb0282f6319086c5d8.png"
alt="v\in{\bf R}^d"/> is the disturbance. <img class="math"
src="_images/math/a79ae2055fb6a0774c0140d85756c9fc47af6e2a.png"
alt="A(t)"/>,
+<img class="math"
src="_images/math/9862381d627031d0a2e12c24690593e755041368.png"
alt="B(t)"/> and <img class="math"
src="_images/math/d1d72230feb39483b632288a3c3278f8b8ea6ea6.png"
alt="G(t)"/> are continuous and take their values in
+<img class="math"
src="_images/math/42c9c2a5bc3075244d212ae9545395031527d802.png" alt="{\bf
R}^{n\times n}"/>, <img class="math"
src="_images/math/a6a4f61454c05f2e1bf23c99632313c63f12c3b4.png" alt="{\bf
R}^{n\times m}"/> and
+<img class="math"
src="_images/math/07719217f82c173563335332e0967e7db1e7677d.png" alt="{\bf
R}^{n\times d}"/> respectively. Control <img class="math"
src="_images/math/c5a937c4aba600ec0ebadc0e27ea6493b744f877.png"
alt="u(t,x(t))"/> and
+disturbance <img class="math"
src="_images/math/8f786c22ff6d536a732133b2128a712eb1a50a83.png"
alt="v(t)"/> are measurable functions restricted by
+ellipsoidal constraints: <img class="math"
src="_images/math/9d6ccf70a6984fb57f3e669c97364d69485a420a.png"
alt="u(t,x(t)) \in {\mathcal E}(p(t), P(t))"/>
+and <img class="math"
src="_images/math/688381ebdb231823963d892ace07e4454a3bc468.png" alt="v(t)
\in {\mathcal E}(q(t), Q(t))"/>. The set of initial states
+at initial time <img class="math"
src="_images/math/fb761c2e199ad45ccf14767f48b88169479d840f.png" alt="t_0"/>
is assumed to be the ellipsoid
+<img class="math"
src="_images/math/2a09f80a76bf3aacce24cad6fa6a420854a0617e.png"
alt="{\mathcal E}(x_0,X_0)"/>.</p>
<p>The reach sets for systems with disturbances computed by the Ellipsoidal
Toolbox are CLRS. Henceforth, when describing backward reachability,
reach sets refer to CLRS or CLBRS. Recall that for continuous-time
linear systems maxmin and minmax CLRS coincide, and the same is true for
maxmin and minmax CLBRS.</p>
-<p>If the matrix <img class="math"
src="_images/math/3c396f19be8ac96093ea0cde3a84665fdf618616.png"
alt="Q(\cdot)=0"/>, the system <a href="#equation-ctsystem">(57)</a>
becomes an
-ordinary affine system with known <img class="math"
src="_images/math/4a52fc293384aa5c833a3a0f2a36a7724371908f.png"
alt="v(\cdot)=q(\cdot)"/>. If
-<img class="math"
src="_images/math/7d922d652a26b1427e9b710e4138414036d20c47.png"
alt="G(\cdot) = 0"/>, the system becomes linear. For these two cases
-(<img class="math"
src="_images/math/3c396f19be8ac96093ea0cde3a84665fdf618616.png"
alt="Q(\cdot)=0"/> or <img class="math"
src="_images/math/8c9aa9297601e14670eafe0c7f3dbc190eae1d71.png"
alt="G(\cdot)=0"/>) the reach set is as given in
+<p>If the matrix <img class="math"
src="_images/math/7deec47dc629381c6555351ff9390cf25ed43a06.png"
alt="Q(\cdot)=0"/>, the system <a href="#equation-ctsystem">(57)</a>
becomes an
+ordinary affine system with known <img class="math"
src="_images/math/d8bb9895ab89f20f2ed80ef4aaedb2de3cf96bb7.png"
alt="v(\cdot)=q(\cdot)"/>. If
+<img class="math"
src="_images/math/324268e5e2cba2032f532f439b3de7ed089247b8.png"
alt="G(\cdot) = 0"/>, the system becomes linear. For these two cases
+(<img class="math"
src="_images/math/7deec47dc629381c6555351ff9390cf25ed43a06.png"
alt="Q(\cdot)=0"/> or <img class="math"
src="_images/math/3a038dbf279669075a546c509b63927392854662.png"
alt="G(\cdot)=0"/>) the reach set is as given in
definition <a href="#equation-def_olrs">(3)</a>, and so the reach set will
be denoted as
-<img class="math"
src="_images/math/8e89ea910958c8ee7951acbacc86b15c73118402.png"
alt="{\mathcal X}_{CL}(t, t_0, {\mathcal E}(x_0, X_0)) = {\mathcal X}(t,
t_0, {\mathcal E}(x_0,X_0))"/>.</p>
***The diff for this file has been truncated for email.***
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/chap_summary.html Sat
Nov 9 11:58:21 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/chap_summary.html Mon
Feb 24 20:40:31 2014 UTC
@@ -25,7 +25,7 @@
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="top" title="Ellipsoidal Toolbox 2.0 beta 1 documentation"
href="index.html" />
<link rel="next" title="Acknowledgement" href="chap_acknowledge.html"
/>
- <link rel="prev" title="Examples" href="chap_examples.html" />
+ <link rel="prev" title="Ellipsoid tubes and touching curves"
href="chap_ellTube.html" />
</head>
<body>
<div class="related">
@@ -38,7 +38,7 @@
<a href="chap_acknowledge.html" title="Acknowledgement"
accesskey="N">next</a> |</li>
<li class="right" >
- <a href="chap_examples.html" title="Examples"
+ <a href="chap_ellTube.html" title="Ellipsoid tubes and touching
curves"
accesskey="P">previous</a> |</li>
<li><a href="main_manual.html">Ellipsoidal Toolbox 2.0 beta 1
documentation</a> »</li>
</ul>
@@ -87,8 +87,8 @@
<div class="sphinxsidebar">
<div class="sphinxsidebarwrapper">
<h4>Previous topic</h4>
- <p class="topless"><a href="chap_examples.html"
- title="previous chapter">Examples</a></p>
+ <p class="topless"><a href="chap_ellTube.html"
+ title="previous chapter">Ellipsoid tubes and
touching curves</a></p>
<h4>Next topic</h4>
<p class="topless"><a href="chap_acknowledge.html"
title="next chapter">Acknowledgement</a></p>
@@ -124,14 +124,14 @@
<a href="chap_acknowledge.html" title="Acknowledgement"
>next</a> |</li>
<li class="right" >
- <a href="chap_examples.html" title="Examples"
+ <a href="chap_ellTube.html" title="Ellipsoid tubes and touching
curves"
>previous</a> |</li>
<li><a href="main_manual.html">Ellipsoidal Toolbox 2.0 beta 1
documentation</a> »</li>
</ul>
</div>
<div class="footer">
© Copyright 2011-2013 Moscow State University, Faculty of
Computational Mathematics and Computer Science, System Analysis Department,
2004-2011 The Regents of the University of California.
- Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2b2.
+ Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2.1.
</div>
</body>
</html>
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/genindex.html Thu Nov 7
11:24:46 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/genindex.html Mon Feb 24
20:40:31 2014 UTC
@@ -86,7 +86,7 @@
</div>
<div class="footer">
© Copyright 2011-2013 Moscow State University, Faculty of
Computational Mathematics and Computer Science, System Analysis Department,
2004-2011 The Regents of the University of California.
- Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2b2.
+ Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2.1.
</div>
</body>
</html>
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/main_manual.html Tue Nov
19 13:06:03 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/main_manual.html Mon Feb
24 20:40:31 2014 UTC
@@ -107,6 +107,28 @@
<li class="toctree-l2"><a class="reference internal"
href="chap_examples.html#hybrid-system">Hybrid System</a></li>
</ul>
</li>
+<li class="toctree-l1"><a class="reference internal"
href="chap_ellTube.html">Ellipsoid tubes and touching curves</a><ul>
+<li class="toctree-l2"><a class="reference internal"
href="chap_ellTube.html#touching-curves">Touching curves</a><ul>
+<li class="toctree-l3"><a class="reference internal"
href="chap_ellTube.html#elltubetouchcurvebasic-class"><em>EllTubeTouchCurveBasic</em>
class</a></li>
+<li class="toctree-l3"><a class="reference internal"
href="chap_ellTube.html#elltubetouchcurveprojbasic-class"><em>EllTubeTouchCurveProjBasic</em>
class</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal"
href="chap_ellTube.html#ellipsoidal-tubes">Ellipsoidal tubes</a><ul>
+<li class="toctree-l3"><a class="reference internal"
href="chap_ellTube.html#elltubebasic-class"><em>EllTubeBasic</em>
class</a></li>
+<li class="toctree-l3"><a class="reference internal"
href="chap_ellTube.html#elltube-class"><em>EllTube</em> class</a></li>
+<li class="toctree-l3"><a class="reference internal"
href="chap_ellTube.html#elltubeprojbasic-class"><em>EllTubeProjBasic</em>
class</a></li>
+<li class="toctree-l3"><a class="reference internal"
href="chap_ellTube.html#elltubeproj-class"><em>EllTubeProj</em>
class</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal"
href="chap_ellTube.html#unions-of-ellipsoidal-tubes">Unions of ellipsoidal
tubes</a><ul>
+<li class="toctree-l3"><a class="reference internal"
href="chap_ellTube.html#elluniontubebasic-class"><em>EllUnionTubeBasic</em>
class</a></li>
+<li class="toctree-l3"><a class="reference internal"
href="chap_ellTube.html#elluniontube-class"><em>EllUnionTube</em>
class</a></li>
+<li class="toctree-l3"><a class="reference internal"
href="chap_ellTube.html#elluniontubestaticproj-class"><em>EllUnionTubeStaticProj</em>
class</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal"
href="chap_ellTube.html#typifiedbyfieldcoderel-class"><em>TypifiedByFieldCodeRel</em>
class</a></li>
+</ul>
+</li>
<li class="toctree-l1"><a class="reference internal"
href="chap_summary.html">Summary and Outlook</a></li>
<li class="toctree-l1"><a class="reference internal"
href="chap_acknowledge.html">Acknowledgement</a></li>
<li class="toctree-l1"><a class="reference internal"
href="chap_functions.html">Function Reference</a><ul>
@@ -178,7 +200,7 @@
</div>
<div class="footer">
© Copyright 2011-2013 Moscow State University, Faculty of
Computational Mathematics and Computer Science, System Analysis Department,
2004-2011 The Regents of the University of California.
- Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2b2.
+ Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2.1.
</div>
</body>
</html>
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/objects.inv Fri Nov 22
16:39:07 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/objects.inv Mon Feb 24
20:40:31 2014 UTC
Binary file, no diff available.
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/search.html Thu Nov 7
11:24:46 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/search.html Mon Feb 24
20:40:31 2014 UTC
@@ -93,7 +93,7 @@
</div>
<div class="footer">
© Copyright 2011-2013 Moscow State University, Faculty of
Computational Mathematics and Computer Science, System Analysis Department,
2004-2011 The Regents of the University of California.
- Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2b2.
+ Created using <a href="
http://sphinx-doc.org/">Sphinx</a> 1.2.1.
</div>
</body>
</html>
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/html/searchindex.js Fri Nov
22 16:39:07 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/html/searchindex.js Mon Feb
24 20:40:31 2014 UTC
@@ -1,1 +1,1 @@
-Search.setIndex({envversion:42,terms:{newfigur:[0,7,1],hypconstvec:7,orthogon:[6,0,7,3,1],cutobj:[7,1],khristoforov:[],removeduplicatetupl:[],yellow:[0,7],getmindimensions:[],four:1,gir2006:8,prefix:7,getproperti:[],uidatagrid:7,whose:[0,2,1,6,7,8,3],rsdimarr:7,accur:1,uniformmat:7,isfields_:[],nalphafield:7,factorvec:7,matlab:[7,8,5,1,2],under:[6,3],ntupl:7,everi:[6,0,7,8,3],"_smartdb":[],projecttoorth:[],ellsupp:[],copyhpvec:7,govern:6,affect:1,"_default":7,eprojtyp:[7,1],upc:7,factori:7,vector:[0,1,6,7,8,3],matric:[0,1,6,7,8,3],verif:[6,8,3,5],cmu:8,setntimegridpoint:[],sturm:5,q1l:7,direct:[6,0,7,3,1],consequ:6,second:[0,7,8,3,1],blue:[0,7],springmassfig:0,neg:[7,1],time_vec:7,charcolor:7,"new":[0,7,3,1],symmetr:[6,8,5,1,3],elimin:8,isposarr:7,reqhp:8,qellarrai:7,someobjarr:7,error:[7,1],ntube:[7,1],here:[6,0,7,3,1],met:6,iutput:7,ncolsofvec:7,path:[7,5],isresarr:7,interpret:7,michal:4,valign1:[],valign3:[],isregen:[0,7,1],discontinu:6,precis:7,fieldtypespeclist:7,yovin:8,actualclass:7,apart:7,inprel:7,nprojdim:7,w_i:[],dmat:7,sdata:7,propag:[0,7,3],linearli:[0,8,3],mitchel:8,total:7,xtouchopcurvemat:7,isnullvec:7,plot:[],describ:[0,1,6,7,8,3],would:[7,4,5,1,3],choosen:7,ddthp:8,call:[6,7,8,3,1],colornspec:7,ellnarr:7,type:[6,7,8,5,1],until:0,outellobj:7,correspondingli:7,get_goodcurv:[],notic:[7,3,5],warn:7,exce:[8,1],secamat:0,hold:[6,0,7,3,1],w_1:[],vph:0,staticrel:7,w_2:[],beta_1:[],springer:[8,1],beta_2:[],join:7,fstellmat:7,fielddescrsourc:7,work:[0,1,4,5,6,7,8],struct_n_field_m:7,initbyemptydataset:[],ofth:1,introduc:[0,8],indstim:7,icount:7,basismat:[0,7,1],getntuples_:[],cone:5,give:[6,7,8,3,1],inmaxclr:[],indic:[],semidefinit:[5,1,3],caution:6,want:7,type1:7,diriniti:1,end:[0,7,1],ordinari:6,how:[0,1,5,7,8,3],externalellvec:[7,1],calculet:7,plotia:[],answer:6,updat:5,checkfieldord:7,typen:7,minkpm:[],isparallel:[],differencr:7,after:[6,0,7,8,3],befor:[6,0,7,1],law:0,parallel:[7,8,3],averag:0,kvasnica:[4,1],assumpta:7,opaqu:7,minkmp_ia:[],getelltubeunionrel:[],perform:[0,1,5,6,7,8,3],"0end":[],environ:1,suggest:3,mechan:0,yellobj:1,lambda:[],x_struct_1_field_2:7,order:[0,5,6,7,8,3],x_struct_1_field_1:7,skipmindimens:7,over:[6,8,3,5],upstream:0,becaus:[6,0,8,3,1],prod:7,linewidth:7,vari:[8,3],v_i:[],initbydefaultdataset:7,some:[0,1,2,5,6,7,8,3],getinst:7,fix:[0,1,6,7,8,3],copyellarr:7,minmaxvfbk:[],denver:0,better:6,"baoti\u0107":[],fig:[],nelem:7,calcgrid:[],clr:6,nullreplacementfield:7,them:[8,5,1,3],discrflag:7,v_1:[],thei:[6,7,8,3,1],simutan:7,safe:7,gagarinov:[],rectangl:8,mxn:7,cmhp:8,externalellmat:[0,1],rlcfig:0,choic:6,alex:[],resrel:7,sigular:7,getreltol:[],"1x2":[7,1],"1x3":[7,1],matiss:8,"1x4":[7,1],"1x5":1,baranov:[],scfa:8,mean:[6,0,7,1],prohibit:8,checkmat:8,kiril:[],sumellarr:7,isfieldordercheck:7,checkstruct:7,islti:[],mineigarr:7,extract:[7,1],prevconfrepo:7,volarr:7,unbound:[6,3],dsy:7,rewrit:[0,3],abstolarr:7,adapt:[0,8],intapprellvec:7,vazhentsev:3,quantifi:8,impract:8,psdobj:0,linear:[0,2,1,6,7,8,3],dimn:7,situat:[3,1],guernic:8,free:[0,8,2],standard:[0,7,5],fixm:7,islttouchopvec:7,kitsenko:[],hand:[6,7],subindex:1,standart:7,covari:8,fromellarrai:[],otherobj:7,filter:7,unabl:6,confus:[7,3],ielem:[0,1],user:1,rand:1,get_direct:[],rustam:[],fieldiscvec:7,ischar:[],independ:3,intellarr:7,rank:[7,3,1],minksum_ia:[],restrict:[6,8],instruct:8,alreadi:7,messag:7,fieldmetadata:7,rewritten:0,newdsi:7,axminclr:[],top:7,lyubich:[],sometim:1,nstruct:7,intersection_ea:[],someotherarg:7,underlin:[],fsthyparr:7,similarli:[6,7,8,1],getnelem:[],nseccol:7,isreplacedbynew:7,tool:[6,2],baotic:1,dtds1:[],dtds2:6,conserv:8,siam:[7,1],inphyparr:7,externallellmat:1,getfieldisnul:[],target:[6,8,1],princeton:8,provid:[6,7,8,1],tree:5,verti:7,project:[],matter:[6,7],sysdef:7,qarraylist:[7,1],stanhp:1,lbr:[],getx0el:[],pass:[7,1],manner:7,minu:[],rescmat:7,secinternalellmat:1,thoma:[7,3],todispcell_:[],even:[0,8,3],copi:7,secellobj:[7,1],though:7,secbmat:0,object:[7,8,3,1],gridobj:7,regular:7,ell_demo1:5,californi:[],akurzhan:[],upenn:8,flow:0,doe:[6,7,8,3,1],declar:1,diag:[7,1],freewar:5,dot:[],asarin:8,opposit:7,random:0,elltubeobj:[7,1],diminish:8,mindimension:7,involv:8,absolut:[7,1],isequ:[],nplot2dpointsarr:7,menu:5,explain:[7,3,1],configur:[7,1],ilinsi:7,extapprellvec:7,folder:5,hpdim:7,invellobj:7,getsortindex_:[],kaushanskii:[],ellobjarr:7,infti:[],report:[7,8],reconstruct:7,toolbox:[],subseteq:[],atmat:[7,1],kur2001:8,kur2000:[8,3],bar:[],excel:7,doescontain:[],bad:[7,3,1],elluiontub:7,septemb:[],fgetprojmat:[7,1],dirmat:7,fieldnam:7,morari:[8,4,1],reltol1:7,reltol2:7,nrest:7,num:[],result:[0,1,5,6,7,8,3],fail:7,charact:7,best:3,avert:8,said:6,maxeig:[],easi:8,fflow:[],iri:7,figur:[0,7,8,1],literalinclud:[],simplest:3,"_backward_reach_set_proj2":0,projection_:[],awai:7,"_backward_reach_set_proj1":0,approach:[6,8],nplot2dpoint:[7,1],"_backward_reach_set_proj4":0,sortby_:[],accord:[6,0,7,1],restlist:7,toler:[7,1],reltolarr:7,tempmatobj:7,propname1:7,ell:[7,1],ill:6,against:6,facet:[8,1],sqzellobj:1,logic:7,com:[5,2],psobj:[0,1],foral:[],character:3,karev:[],sizemat:7,assum:[6,0,7,3,1],stanleychan:[7,1],duplic:7,zonotyp:8,degener:[6,7,3,1],union:[0,1,6,7,8,3],getmindimension:[],three:[6,0,8,1],hyperplane2polytop:[5,1],r_1:[],ncolorfield:7,beta1:[],unionwith:[],ani:[0,1,6,7,8,3],icosaed:7,drsobjarr:7,seregadrozh:[],emploi:8,propmod:7,ident:[7,1],isemptymat:7,isequal_:7,commerci:2,sechypobj:[7,1],euclidean:7,calcul:[7,8,5,1,3],pairwis:7,maxmin:[6,7],gamma_1:[],gamma_2:[],conv:[],submatrix:3,ilya:[],kostousova:8,"4dev":[7,1],n_k:7,ell3:7,ell2:7,ell1:7,sever:[7,8,1],isbackward:[],cutelltub:1,fieldnamelist:7,colorspec:7,make:[6,7,5,1,3],transpar:[7,1],modmat:7,complex:[0,7,8],sysbrain:2,subound:[7,1],complet:7,hyp2arr:7,ell2arr:7,fwdintmaxmin2:[],ros2002:[3,1],n_1:7,kit:[],ctlsmaxmink:[],refin:[],tune:7,techniqu:[6,8],kept:7,indther:7,bewar:7,propval:7,thu:[6,7,8,3],game:8,inherit:[],s_2q_2:[],weakli:6,thi:[0,1,4,5,6,7,8,3],chap_impl:[],lowdimfast:7,structlist:7,left:[0,7],just:[6,7],minkmp_ea:[],cvec:7,trvec:7,accuraci:[6,8,1],languag:5,han:[7,1],zakharov:[],had:7,ideal:0,save:5,hat:[],alur:1,applic:[0,7,8],preserv:[6,3],isfield:[],tocellisnul:[],indtupl:7,fusion:[7,3],uniformoutput:7,hyparr:7,fcalccentertriarr:7,measur:6,semi:7,specif:[6,7,8,5],arbitrari:1,contradict:7,varaiya:[6,8],c_2:[],singl:[0,7,8,1],cflow:[],specifii:7,nfacex:[],www:[7,8,5,2],right:[6,7],nilpot:8,deal:[6,8,3,1],webk:8,interv:[0,1,6,7,8,3],g_p:[],olr:6,frommatelltub:[7,1],abstolv:7,transmiss:0,getfieldtypelist:[],secsi:0,reinkarn:[],preliminari:8,existenti:8,circ:[],ucsd:[7,1],minkdiffea:[],condit:[0,1,6,7,8,3],plu:[],boundai:6,view:1,subspac:[6,0,7,8,1],confer:0,g_2:[],abstol1:7,post:6,subspas:7,decatur:8,chapter:[0,8,1],alexand:4,slightli:0,literatur:[6,7],"v\u00e1lyi":[8,2],getfieldvalueisnul:7,produc:[7,8,5,1],isbaddirect:[],centvecarrai:7,bound:[0,2,1,6,7,8,3],two:[0,1,5,6,7,8,3],unionelltub:[7,1],ltgooddirmat:7,wrap:7,old:[],uboundsellobj:[0,7,1],manfr:4,wai:[6,7,8,1],segment:[0,7,1],support:[7,4,3],avail:[6,0,7,1],width:[7,1],reli:8,editor:[8,1],unionwith_:[],lowest:7,form:[0,1,5,6,7,8,3],forc:[0,7],epsilon:[],eascalefactor:7,maxim:[7,3],taken:[0,7,8],statelltubeproj:[7,1],ethz:5,"true":[0,1,6,7,8,3],absent:7,createinst:[],resellobj:7,ellpolyfig:0,absenc:[6,7],sfielddescr:7,sampl:[6,0,8],getisverbos:[],inpdimarr:7,saveobj_:[],covert:1,"abstract":7,proven:3,secdtrsobj:1,bdmat:[7,1],"_backward_reach_set_3d_2":0,inputtyp:7,exist:[6,7,3,1,2],nface:7,termtim:0,indforward:7,minkpm_ea:[],colorvec:7,when:[6,0,7,3,1],hypobjarr:7,linsysarr:7,reldataplott:[0,7],vertic:[0,7,8,1],eigenvalu:[7,8,3],consid:[6,0,7,8,3],myhyp:7,uniformli:7,faster:[7,1],mdim:7,cmatdim:7,ignor:7,backward:[6,0,7,1],glvrst:[],dynamicalonggoodcurv:[7,1],global:[7,1],fstellarr:7,getiascalefactor:[],mile:0,computation:6,row:[3,1],getproject:[],depend:[6,0,7,8,1],graph:7,minksum_ea:[],get_ea:[],getparam:7,must:[6,7,8,3,1],nfield:7,sourc:[0,8],string:7,congest:0,ffrsobj:0,ellipsoiddef0:[],triangul:7,isemptyintersect:7,feasibl:[7,8,3,1],lynch:8,cyan:7,dimhyp:7,exact:[8,3],useoth:7,dim:7,frehs:4,struct_n_field1:7,solver:[7,5,1],nreplacedfield:7,checkinput:7,div:[],minkcommonact:[],nvertic:7,upper:[],sign:[6,7],maxeigarr:7,writetocsv_:[],nonuniform:7,firstpolobj:1,appear:8,ifstdim:7,subounds2:7,uniform:7,current:[0,7,1],fieldlist:7,gettuplesindexedby_:[],uitabl:7,fmat:7,toarray_:[],ellmat:[7,1],g_1:[],gener:[6,7,8,3,1],satisfi:[6,7],explicitli:2,address:6,coincid:[6,7],box:0,gettuplesjoinedwith:[],plotter:7,"_forward_reach_set_proj1":0,"_forward_reach_set_proj3":0,"_forward_reach_set_proj2":0,"_forward_reach_set_proj4":0,tvec:7,extrem:[6,8],myhiparr:7,typespeclist:7,neq0:[],reg:7,fillmissingfieldswithnul:7,extra:0,getchecktol:[],isltimat:7,toarrai:[],guliev:[],case1:7,case3:7,case2:7,abstol2:7,red:[0,7],nvecarrdim1:7,nvecarrdim2:7,prove:8,fvec:7,univers:[8,3],visit:7,nuniqueslic:7,jam:0,theta_2:[],criteria:8,reorder:7,odesolvernam:[7,1],diagonaliz:8,proparr:7,iffsum:[],peopl:7,finit:[3,1],statdyn:1,appendix:8,prototyp:7,obj:7,given:[0,1,6,7,8,3],graphic:[6,8],lsthp:8,mfilenam:[],cap:[],uniqu:[6,7],cat:[],cuttimevec:[7,1],can:[0,1,5,6,7,8,3],smth:[],kdim:7,claim:6,rectangluar:8,matrixofvecmat:7,backslash:[],myellcentvec:7,ellobj2:7,ellobj1:7,abort:7,ctlsminmaxk:[],propval1:7,occur:[0,3],firstamat:0,xstouchvec:7,alwai:[6,3,1],differenti:[6,8,1],firsthypobj:[7,1],multipl:7,variou:8,probdynobjsys2dir1:7,getfieldvaluesizemat_:[],plotint:[],write:7,criterion:8,pure:8,tild:[],map:7,product:[6,3,5],"2x100":1,propvaln:7,max:[0,7],clone:[],writetoxls_:[],hypnarr:7,succ:[],mai:[6,0,7,3,1],objarrai:7,data:[7,1],propvalu:7,man:[7,3],elltubeprojrel:7,t_1:[],practic:[6,8,3],secellvec:7,explicit:[0,3,1],uparrow:[],inform:[7,1],combin:[7,8,5],leqslantu:[],minkdiff_ia:[],probdynobjsys2dirn:7,grachev:[],gettuples_:[],stursberg:8,tomlin:8,getelltuberel:[],"5x1":1,hypconstarr:7,origfrommatelltub:1,lsgooddirnormorig:7,inferisvaluenul:7,ieee:[6,7,3],dynam:[0,2,1,6,7,8,3],lsy:[0,7],thank:4,window:[7,5],dirstmat:7,m_2:[],m_1:[],main:[7,8],getmindimensionality_:[],setnplot2dpoint:[],isprojarr:7,non:7,recal:6,sabat:[7,3],initi:[6,0,7,8,1],tucker:8,getregtubeaneprefix:7,move2origin:[],nov:[],now:[6,0,3,1],discuss:8,nor:3,reltol:[7,1],down:[7,1],term:[6,0],voltag:0,name:[0,1,2,5,7,3],hermsmey:2,revers:7,isnul:7,propnam:7,mit2000:8,separ:[7,5],januari:[],testreltol:7,getswitchtimevec_:[],replac:7,individu:[7,8,1],irina:[],firel:7,hespanha:8,switchtim:0,recogn:7,dmitrykh92:[],shown:[0,8],space:[6,7,8,1],gbt:2,ismeaning:7,tocellisnull_:[],formula:[6,8,3,1],hwfig:0,correct:[6,7],getfieldprojection_:[],hull:[0,7,8,3],rlc:0,unpublish:[7,1],inmaxolbr:[],lgridmat:7,california:[],theori:[8,3],directionscvec:7,timevec:[0,7,1],dimnumvec:7,care:7,suffici:7,subzero:6,pageref:[0,8,1],indnonemptyvec:0,getcurconf:7,turn:[0,8,5,1],disppic:1,place:7,fromellmarrai:[],ture:7,suparr:7,first:[0,2,1,6,7,8,3],origin:[0,7,3,1],d_i:[],directli:[7,3,1],onc:[3,1],arrai:[0,7,1],secobjarr:7,ellobjvec:[0,7],open:[6,7,8],size:[0,7,1],l_0:[],l_1:[],dirarr:7,silent:1,bmatdim:7,motz1953:8,getshap:[],get_eascalefactor:7,necessarili:7,neededproplist:7,cdd_home:8,idimn:7,white:7,includ:[7,8,5,1,3],fcalcfactor:7,mayantsev:[],moscow:[],ttvec:1,ell_demo2:5,ell_demo3:5,specifi:[6,7,8,3,1],msize:7,fourthhypobj:1,lieven:7,rankarr:7,than:[0,7,8,3,1],regesnt:[],idim2:7,idim3:7,idim1:7,setconfrepomgr:[],tostruct:[],getfieldtypelist_:[],useorigin:7,were:7,posit:[6,7,3,1],resarr:7,seri:8,pre:6,dimarr:7,sai:[6,0,3,1],vkaushanskii:[],argument:7,adddata:[],gettuplesindexedbi:[],maxmink:[],squar:[7,1],advic:4,crmsy:7,note:[6,7,8,3,1],clbr:6,fromqarrai:[],asar2000:8,horowitz:0,take:[6,0,7],mcodesnippet:[],interior:[7,3],green:[0,7],ecual:7,myellcentervec:7,lsgooddirvec:[7,1],begin:[],sure:1,nprop:7,dirsvec:7,trace:[],normal:[0,7,1],multipli:7,isinsid:[],getntupl:[],minkdiffia:[],sizevec:7,sdpt3:5,thirdhypobj:[7,1],gettvec:[],newdirsmat:[7,1],homepag:[8,5,1,2],icol:7,nproj:7,synthesi:[8,3],abstol:[7,1],getlinsi:[],teoriya:3,colorfieldlist:7,drive:[8,1],dimnksiz:7,aqa:7,uncontrol:8,shot:1,show:[0,3,1],friction:0,sequenc:[7,1],line:[7,1],xml:1,onli:[6,7,8,3,1],slow:1,ratio:0,agirard:8,lin2002:1,transact:[6,7,3],pomput:7,parametr:[8,5,1,3],analyz:0,minkdiff:[],thompson:8,inprel1:7,analyt:[8,1],approxtyp:[7,1],overwritten:7,xstouchopvec:7,applysetfunc:[],isintern:[],cleardata:[],get:[0,7,5,1,3],isecdim:7,polobj:1,plot_ia:1,getbtmat:[],dyn:[],cannot:[6,7],nnestedlevels_i:7,secondellarr:7,gant1960:3,requir:[0,1,5,6,7,8,3],bndpvec:7,inpreln:7,yield:6,calcprecis:[7,1],dim1ksiz:7,xm4:0,nhpdim:7,where:[0,1,5,6,7,8,3],xm1:0,xm2:0,xm3:0,xtouchcurvemat:7,stanlei:[7,1],parallelotop:8,concern:[6,8,3],infinit:7,fgetcolor:7,firstbrsobj:[0,1],transactionsaf:7,elluniontuberel:7,get_cent:[],enough:[6,7],s_instal:5,isltiarr:7,between:[6,0,7,3,1],"import":[6,7,8],uniformcel:7,copyhparr:7,across:[0,7],checkset:[],assumpt:7,methodfromelltub:1,myellarr:7,screen:7,getnfields_:[],hypnormarr:7,rsobjarr:7,minkpm_ia:[],minksump:1,dim2ksiz:7,structnamelist:7,stime:[7,1],newdrsobj:7,come:[6,0,3,1],minkmp:[],vaz1999:3,similar:[6,1],region:0,kost2001:8,tutori:5,mineig:[],improv:1,cubestruct:7,fcalcbodytriarr:7,axminclbr:[],zonotop:8,color:[0,7,1],kvas2004:[8,1],ndims1:7,reportstr:7,hyperplac:7,getdistboundsel:[],poli:7,vgridat:7,linewidthfieldlist:7,invert:[6,7,1],invers:[7,3],mark:[0,7],workshop:[],sq2:7,firstpol:1,fgetlinewidth:7,inmaxclbr:[],ndimsk:7,goran:4,ndimsn:7,get_ia:[],lectur:[8,1],subindvec:7,those:[6,7,8,3],"case":[6,0,7,3,1],getuniquetupl:[],getcentervec:[],indtuplevec:7,cast:3,projobjarr:7,iobj:7,evolv:[],nulltopreplac:7,tocell_:[],myell:7,comparemetadatabackwardref:7,indexfieldnam:7,keepnul:7,ltgooddirnormorigvec:7,ramp:0,sellarr:7,henc:[6,8],show_al:7,unit:[0,7,3,1],good:[7,8,1],minmaxvf1:[],ksize:7,maxminvfk:[],v_2:[],author:4,getcopi:[],same:[6,7,8,3,1],inscrib:7,lsgooddirnorm:7,pnueli:8,dirsmat:[0,7,1],iscellstr:[],rightout:7,document:[],maler:8,akademii:3,minmaxvfk:[],tocel:[],secel:[7,1],nest:7,firstbpsobj:0,extern:[0,1,5,6,7,8,3],indforwardvec:7,solvabl:6,myellshmat:7,ssdimarr:7,mindimens:7,modellarr:7,model:[0,5],dimension:[0,1,5,6,7,8,3],maxminvf1:[],lreachplain:7,fieldtypelist:7,dynelltubeproj:1,rest:7,hfunc:7,rsobj2:7,"_forward_reach_set_3d_1":0,iaellmat:7,touch:[6,7,3,1],dimvec:[7,1],speed:0,atinpmat:7,mindimensionsizevec:7,vandenbergh:[7,3],regent:[],except:[7,8,3,1],ndims2:7,aushkap:[],real:[7,8,1],msecrow:7,read:5,bigcap_:[],defaul:7,test:[6,7],grid:[7,1],firstuboundsellobj:0,nappr:7,bufellvec:[7,1],cdot:[],integ:[6,7,1],benefit:8,either:7,output:[7,1],timetouchendvec:7,sigma_1:[],getshapemat:[],interest:1,normalvec:7,rlcreachfig:0,kurzhanskii:6,sisvaluenul:7,getmove2origin:[],bournez:8,root:[7,3],intact:7,nonzero:3,get_system:[],slice:7,commontimeabstol:7,udboundsellobj:[7,1],probdynobjsyskdir1:7,definit:[6,7,3],ddt:8,intract:8,rankvec:1,videoprocess:[7,1],qarrai:7,mathcal:[],overli:8,refer:[],nplot3dpointsarr:7,goodcurvescvec:7,ismembertupl:[],trcentermat:7,ration:8,eelluniontimedirect:7,getnfield:[],newelltuberel:7,uniontubestatproj:1,reslist:7,shmat:[7,1],qmat:7,ntimegridpoint:[7,1],getjoinwith:[],admat:[7,1],hpvec:7,marraylist:7,side:[6,7],degre:3,probdynobjsyskdirn:7,"2x1":[7,1],"2x2":[7,1],complinsysarr:7,setfield_:[],routin:[7,8,1],izvestiya:3,effici:8,uminu:[],myhyparr:7,fwdintminmax1:[],fwdintminmax2:[],hpdim1:7,hpdim2:7,rossi:8,s_is_i:[],log:7,aren:5,arel:7,interfac:[7,5,1],low:[7,8],lot:7,tofieldnamelist:7,tupl:7,getnplot3dpoint:[],dtsy:[7,1],lsysd:0,intern:[0,1,6,7,8,3],trajectori:[6,7,8,1],ell_unitbal:[0,7,1],polellarr:7,getdata:[],zhukova:[],conclus:8,getuniquedataalongdim:[],iscommonvaluescheck:7,ellunion_ea:[],initbynulldataset_:[],algorithm:[7,8],possibl:[6,7,8,3,1],"default":[7,5,1],minkowski:[6,7,8,3,1],expect:7,projorthmattransarrai:[7,1],ohm:0,hypmat:[7,1],creat:[],ctrmat:1,certain:[6,0,7,3,1],ellobj:[0,7,1],strongli:6,dim22siz:7,file:[7,5,1],addtuplesintern:7,geteascalefactor:[],fill:[0,7],"0000e":[7,1],again:[0,8],apprellmat:7,googl:5,"birkh\u00e4us":8,mathematica:8,pappa:[8,1],field:[7,8,1],valid:[6,7],you:[7,5,1],inpobj:7,polar:[],function_handl:7,thirdrsobj:1,tiwari:8,fromstruct:[],symbol:[8,1],getvers:[],fusion5:[],dimsarr:7,polynomi:3,projellarr:7,mpthp:[0,8,5,1],ntimepoint:[7,1],reduc:[6,7,3],vadim:[],nxn:7,directori:5,descript:[7,8,1],x_4:[],linsyscvec:7,mass:0,checkconsist:7,getsystemlistlist:7,togeth:8,disp:[],represent:[7,8],all:[0,1,6,7,8,3],dist:3,relationdataplott:[0,7,1],illustr:0,scalar:[7,1],code:[7,5],follow:[0,1,5,6,7,8,3],nstep:0,dimsvec:7,internalellvec:[7,1],isprojection_:[],lafferrier:8,articl:1,init:[],program:[7,5,1,3],alvarez:0,present:[6,0,7,8,2],shapemat:7,islstouch:7,ispositivearr:7,fukuda:8,norm:[7,1],sprintf:0,minkdiffp:1,minkpic:1,far:[0,8],getelltuberel_:[],statusarrai:7,getatmat:[],todispcel:[],mph:0,util:1,uboundsel:[0,7],candid:7,vere:2,veri:8,hypvec:[0,7,1],vetbar42:[],writetocsv:[],minmaxvf:[],list:[7,8,5,1],hyp:[0,7],emul:[7,1],adjust:7,small:6,grenobl:8,getboundari:[],dimens:[],neighborhood:0,diment:7,zero:[6,7,8,3,1],qml:7,copyfrom:[],overlin:[],further:[7,3,1],default_storage_branch_kei:7,wmat:7,whenc:3,what:[6,5],nonlinear:[6,8],fromelltub:[],sub:[8,3],defin:[0,1,5,6,7,8,3],sun:0,section:[6,3,1],motzkin:8,overload:[7,1],delet:7,version:[7,1],bvec:[7,1],sup:7,"public":[7,1],contrast:8,simplifi:[6,7],full:[0,7],berkelei:[],cvxhp:[5,1],irizka91:[],suppfuncvec:7,capacitor:0,strong:7,modifi:[7,1],valu:[6,0,7,8,1],search:[],replacenul:7,"_set_with_disturb":0,bremner:8,l0mat:7,sobjectdata:7,observ:0,"_tube_without_disturb":0,oldcit:[],rsdobj:0,isenabledodesolveropt:[7,1],diamet:8,via:[7,8,1],depart:[],rsobj:[0,7,1],transit:[6,8],c_1:[],filenam:7,href:[0,8,1],emptyset:[],famili:[8,3,1],establish:[0,3],select:7,proceed:0,etc:7,ismemb:7,formul:[7,3],autonom:8,"k\u00fchn":8,nplot3dpoint:[7,1],repres:[0,7,8,3,1],basi:[0,7,1],metric:7,minor:[],more:[6,0,7,8,1],flat:3,desir:8,c_i:[],c_m:[],nondegener:[7,3,1],particular:[0,7,3,1],known:[6,0,3,1,2],optstruct:7,none:7,hour:0,det:7,hypnormvec:7,remain:[7,3],learn:5,nonsingular:[6,3],dec:[],plot_ea:[7,1],def:[],sortbyintern:7,soft:8,cubestructfieldinfo:7,getisodenormcontrol:[],adaptivecel:7,firstel:[7,1],bckcenter:[],sphere:7,compars:7,magenta:[0,7],externalellobj:1,getuniquedata_:[],isconsistencycheckedvec:7,invellarr:7,cours:7,propeti:7,prod_:[],rather:2,anoth:[],sdmhp:[5,1],spreadsheet:7,nuniquetupl:7,islttouchvec:7,hasdisturb:[],varargin:[7,1],galiev:[],csv:7,simpl:[0,8,5],isn:0,referenc:7,faculti:[],intersectellmat:1,variant:1,stur2003:8,plane:[7,1],develop:8,wave:0,bparr:7,onto:[0,7,8,1],indexvaluevec:7,reachriscret:7,acubestructfieldtyp:7,shade:7,nnestedlevelsvec:7,help:7,comupt:7,aboundari:7,through:[6,0,8,1],minmax:[6,7],paramet:[],minmaxbk:[],geteigvmat:[],geqslant0:[],geqslant2:[],systemi:3,rsdim:7,html:[7,8,5],stephen:7,iscut:[],"_backward_reach_set_3d_1":0,kur1997:[8,3],istupl:7,"return":[7,8,1],astaticrel:7,aretimeboundscompar:7,ddtfig:8,notuniform:7,var1998:8,centvec:[0,7,1],getisfieldvaluenul:[],cddhp:8,sortfieldnamelist:7,"_forward_reach_set_3d_2":0,bigger:[7,3,1],eventu:7,iind:0,level:[6,7,8,1],copyellmat:0,datastructur:7,trarr:7,inpel:7,achiev:7,found:[7,3],getellarrai:[],alphafieldlist:7,idea:[6,8,3,5],procedur:[8,3],lomonosov:[],getmindimensionsize_:[],ball:[0,7,3,1],dirrenc:7,connect:2,intersectobj:7,todo:7,orient:8,reorderdata_:[],regtol:[0,7,1],directionsmat:7,getnelems_:[],highwai:0,research:8,lineno:[],secexternalellmat:1,difficulti:8,isempti:[],mellobj:0,advanc:6,polyhedra:2,asc:7,gooddirscontinuousgen:7,base:[6,7,8,3],adjointdt:[],grdhypobj:0,put:7,mathp:8,timetouchopendvec:7,thrown:7,dar2012:3,omit:7,round:1,american:0,minkdiff_ea:[],circuit:0,isbigg:[],assign:[6,0,7],qcqp:[7,3],number:[0,1,6,7,8,3],evolut:[0,7,8,1],gield:7,done:[7,1],construct:[6,7,8,5],menshikov:[],repmat:[],objarr:7,guess:[],secuboundsellobj:0,exponenti:0,raiffa:8,least:7,doesintersectioncontain:[],catdim:7,umdiff:[],accept:[7,1],fromrepmat:[],isbaddirvec:7,store:[7,1],schema:7,gooddirsetlist:7,subindcvec:7,option:[7,1],behind:3,linearrh:[],testabstol:7,pars:7,john:3,remov:[7,8],horizont:1,x0ell:7,convertedhypvec:1,str:7,dang:8,isuniquekei:[],leftout:7,nikolai:[],comput:[0,1,2,5,6,7,8,3],igor:[],packag:[7,8,5,1,2],newreachobj:7,oldt0:7,nsubelem_i:7,demo3firsttest:7,hfigur:7,"null":7,nsubtupl:7,lie:7,projmat:[7,1],built:7,equival:[6,7,8,3,1],ctmat:7,lin:[7,1],violat:7,ntimegridpointsarr:7,also:[6,7,8,3,1],build:7,diments:7,ellintersection_ia:[],"_crossing_the_guard":0,iascalefactor:7,cube:7,distribut:[5,1],index:[0,7],previou:[3,1],minksumea:[],amat:[0,7,1],isposit:7,projorthmatarrai:[7,1],fwdint1:6,plan:8,rho:[],alpha:[],hplanearr:7,clear:[6,7],hypobj:[7,1],elltubeunionproj:7,part:[0,7,8,3],getconfrepomgr:[],artem:[],ctinpmat:7,distbound:7,distel:7,secellmat:7,getuniquedataalongdim_:[],find:[0,1,6,7,8,3],henceforth:6,copyright:5,pi_0:[],less:[7,3,1],solut:[6,5],olrsinclus:[],comparison:[0,7],factor:7,filterfieldnam:7,setdata_:[],projmatlist:7,express:[6,8,3,1],hpintersect:[],impuls:8,setdata:[],meellarr:7,"_before_the_guard":0,mattohkc:5,eugen:[],pi_l:[],common:[7,8,5,1,3],unsaf:6,crm:7,iscutarr:7,set:[0,1,2,5,6,7,8,3],art:[],ser:8,see:[7,8,3,1],sea:8,arg:7,"_set_without_disturb":0,analog:[6,7],langl:[],approximationi:3,simultan:3,freltolfun:7,catelltuberel:7,kurzhanski:[8,4,3],secondel:7,won:7,mcmaster:5,statusarr:7,altern:[7,3],catalogu:2,islstouchop:7,numer:7,isok:[7,1],centervecvec:7,rlceq2:[],solv:[7,8,5,1,3],hightdimfast:7,classnam:7,tostruct_:[],struct:[7,1],both:[0,1,6,7,8,3],last:[6,0,7,3,1],firstexternalellmat:1,projtyp:[7,1],fstell:7,ellvec:[7,1],getisgooddir:[],pdf:[7,1],whole:[0,7],load:1,disponui:[],point:[1,5,6,7,8,3],stepenskii:[],llui:7,each:[0,1,6,7,8,3],shmatarrai:7,arbitrarili:[7,8],nslice:7,ls_good_dir_:7,along:[6,7,3,1],applygetfunc:[],secondobjarr:7,java:7,setfieldintern:7,filte:7,due:6,empti:[6,0,7,3,1],sinc:[6,1],elluniontimedirect:7,"_all2d":0,inpcub:7,secbpsobj:0,fpropfun:7,b_i:[],sisnul:7,imag:8,secpsobj:0,ellfirstarr:7,ncolumn:7,coordin:[7,3],firstinternalellmat:1,understand:6,indvec:7,smdist2:[],smdist1:[],firstpsobj:0,checktyp:7,getfieldvaluesizemat:[],uncertain:[8,3],look:3,"while":[0,7],abov:[0,1],shift:[7,1],mbox:[],loop:[6,0,8],lreachproblemdynamicsinterp:7,isemptyarr:7,vol:7,vellobj:[0,1],minmaxvfb1:[],itself:7,quadrat:[7,8,3],vanish:6,rightarrow:[],minim:[7,3],u_k:[],belong:[6,7,8],wherein:[6,8,3],halfspace1:[],olbr:6,ispropinclud:7,higher:[8,1],amatdim:7,optim:[7,8,5,1,3],optin:1,wherea:[6,0,1],bcktight:[],probdyn:7,topolytop:[],lower:[7,8],sortbi:[],entri:7,multmat:7,u_3:[],u_2:[],u_1:[],traffic:0,johan:4,hparr:7,self:7,nlinsi:7,nspdim:7,getfieldisvaluenul:[],shape:[],hjb:8,resobj:7,cut:[],uniondim:7,commontimereltol:7,spmassl:[],shawal:7,getcent:[],ldim:7,fieldisnullcvec:7,plobj:[0,7,1],theorem:3,snap:1,input:[6,0,7,8,1],unlik:3,modul:[],shparr:7,march:[],volvec:7,tomat:[],format:7,iell:7,distboundsel:7,elltuberel:7,highdimfast:7,getfieldnamelist_:[],ellsecarr:7,tq_2u_1:[],a_i:[],boyd2004:3,isproject:[],gantmach:3,collect:8,ivan:[],continuo:1,isodenormcontrol:[7,1],paramell1:[],eec:[],paramell2:[],discrib:7,girard:8,often:6,sortindex:7,spring:0,eapproxtyp:[7,1],tbtimevec:1,back:[7,1],getntimegridpoint:[],firstbmat:0,ncol:7,uell:7,formign:7,rankmat:7,fgridmat:7,scale:[],firstrsobj:[0,1],adddataalongdim:[],t_l:[],mcgill:8,shall:[6,0,3],per:0,firstellarr:7,substitut:[6,8,3],mathemat:[],larg:[6,8],proj:1,intersectellvec:0,leqslant1:[],leqslant0:[],proc:8,leqslant5:[],leqslant4:[],maxrelativetoler:7,inferisnul:7,run:[3,1],requiem:8,word:[6,0,7,3],gmat:[0,7,1],vitali:[],step:[6,0,8,3,1],squeez:1,sechyparr:7,qinf:7,normvec:[7,1],"101x1":0,leqslantn:[],constraint:[6,7,3],transpos:7,getuboundsel:[],plai:6,projspacelist:1,tabletyp:7,dcutobj:7,isuniquekey_:[],cmat:7,t_2:[],t_0:[],rangl:[],leqslantv:[],gamma:[],leqslantt:[],fulfil:3,compactli:8,colorado:0,within:[6,7],saveobj:[],sqrtm:1,ensur:6,ssdim:7,tq_2t:[],inclus:3,myellshapemat:7,pseudoinvers:7,question:[6,7],getctmat:[],textual:7,drozhzhin:[],forward:[6,0],thetapar:[],properli:7,sdp:[3,5],boyd:[7,3],theta_1:[],decomposit:[6,8],skip:7,translat:[6,3],delta:[],ctsystem:[],lt_good_dir_:7,info:7,concaten:[7,8,1],consist:[6,7,8,1],bltellobj:1,getinv:[],tightli:3,kuhn:8,chelsea:3,kirchoff:0,psdcutobj:0,curv:[7,1],constant:[6,7,8,1],x0ellobj:[0,7,1],chan:[7,1],command:[7,5,1],doesn:[0,7],nspecfield:7,"char":[7,1],gccmat:1,inpellmat:7,isconvertedtocel:7,nan:[],ltgooddirarrai:[7,1],bmat:[0,7,1],librari:[7,8],s_kq_k:[],ellarr:7,nice:7,correspod:7,inparr:7,datacel:7,hypscal:[0,7,1],fillipov:6,dtlsmaxmink:[],scijavagrid:7,lane:0,getfielddescrlist:[],svd:3,"mu\u00f1oz":0,sortind:7,cdd:8,isintextapxvec:7,ctds2:6,ctds1:[],notcomparedfieldlist:7,ellips:[7,1],edu:[7,8,5,1],compact:[6,8,3],privat:7,note1:7,note2:7,dimmat:7,bckint1:[],plotspecfieldlist:7,sens:[6,7,3],"_tube_with_disturb":0,fwdextmaxmin2:[],unzip:5,simdiag1:[],simdiag3:[],applytuplegetfunc:[],tutb:[],polytope2hyperplan:[5,1],ispositivevec:7,removeduplicatetuples_:[],btinpmat:7,untouch:7,tri:7,multidimens:7,dtlsminmaxk:[],getinitialset:[],"try":7,bscal:1,fgetfil:7,s_chapter05_section01_snippet02:[],fabstolfun:7,vehicl:0,impli:[6,3],smaller:1,nlinewidthfield:7,natur:6,encourag:4,setconf:1,download:5,resellvec:7,approxschemanam:[7,1],click:5,pgagarinov:[],getboundarybyfactor:[],approxschemadescr:[7,1],compar:7,outellvec:7,maxminbk:[],access:[7,1],experiment:8,outdimarr:7,fgetalpha:7,journal:[7,8,1],fwdtight:[],dim21siz:7,isjustcheck:[0,7,1],let:[0,7,3],meet:[6,8],abstolvalarr:7,implicit:3,getisfieldvaluenull_:[],var2007:[6,8],remark:[6,3],purpos:1,cybernet:[7,3],dvec:[0,7],myellipsoid:7,minksumia:[],chang:[0,1,2,5,6,7,3],lubi4ig:[],centervec:7,neededpropnamelist:7,eta_l:[],apr:[],appli:[0,7,1],approxim:[0,1,6,7,8,3],fieldname1:7,inequ:7,getodesolvernam:[],removetuples_:[],inmaxolr:[],getisenabledodesolveropt:[],sortbyalongdim:[],funcout1arr:7,from:[0,1,5,6,7,8,3],usa:0,bckinclus:[],doubl:[],next:[8,5,1],implic:3,few:1,lambda_m:[],lambda_i:[],rsarr:7,sort:[7,1],"l\u00f6fberg":4,curdirmat:7,distdimarr:7,fieldnamen:7,hypnormmat:7,polyarr:7,getter:[7,1],myellmat:7,wronginput:[],lambda_1:[],"_elltool":[],"3x51":1,grieder:1,uncertcalc:7,cambridg:3,"_after_the_guard":0,fwdextminmax2:[],fwdextminmax1:[],proof:3,control:[0,1,5,6,7,8,3],tau:[],doescontainpoli:7,process:5,maxminvfbk:[],getellarr:7,high:[7,8,3,5],showal:7,proprietari:7,showdiscret:7,fromstructlist:[],reorderdata:[],unionwithalongdim_:[],geomhp:2,filepath:7,ellipsoiddef:[],vvec:0,thrall:8,need:[7,8,5,1],infeas:7,minmaxk:[],probdynobjsys1:7,instead:7,sin:[0,7,1],secrsobj:[0,1],conttribut:8,frac:[],semidist:6,singular:[6,8,3],overapproxim:[7,8],firsthpobj:7,simulink:2,nkeyfield:7,cellfun:7,notebook:8,statedimarr:7,reachobj:7,fullout:7,dokladi:3,filtervaluevec:7,correspond:[0,1,6,7,8,3],element:[7,3,1],issu:6,bpgridmat:7,dtbrsobj:1,eaellmat:7,crsobjvec:0,ouput:7,move:7,outer:7,chosen:[6,7],isnintersectedarr:7,sfieldnicenam:7,figuregroupkeysufffunc:0,nspacepartpoin:7,ndim1:7,outel:7,ndim2:7,minksum:[],greater:[7,1],zonohp:8,nonneg:1,getabstol:[],wolfgang:8,cover:3,federico:7,boundpointmat:7,plotbyea:[],rescarrai:7,intersection_ia:[],copyellvec:7,ellmarr:7,sdataarr:7,ndimn:7,edit:[],confrepomgr:7,mode:[0,7],disregard:7,tdang:8,subset:7,kuntsevich:2,amat2:7,strip:3,resrho:7,geqslantt_0:[],meta:7,"static":[7,1],subsec:[],our:[6,1],special:[7,8,3,1],out:[0,7,8,1],variabl:[6,7,3,1],bckext1:[],apprx:0,your:5,auxchecks:[],suitabl:[0,7,8],nvalu:7,s_i:[],s_k:[],ref:[],s_l:[],math:5,hyph:7,ellbndr_2d:[],sys_t:1,insid:[7,3,1],newendtim:7,objmat:7,manipul:[6,5,1],sys_d:1,sechpobj:7,bigcup_:[],organ:8,shortest:6,color2spec:7,hypconst:7,tomat_:[],s_2:[],could:[7,1],gccvec:1,ask:6,keep:[6,7],length:[0,7,1],outsid:[3,1],geometri:[7,8,5],firstsi:0,ndim:[7,1],computemod:7,third:7,maxminvfb1:[],qualiti:1,date:[],isvaluenul:7,cvxr:5,gettuplesjoinedwith_:[],seidel:8,ndir:7,gir2005:8,unknown:0,adjoint:6,fwdext1:[],grow:[0,8],dynamicrel:7,dim12siz:7,supvec:7,bpmat:7,termin:[6,0,1],secpolobj:1,nelldim:7,"final":[8,3,1],sdpt3hp:5,juli:[],dmitri:[],getfieldnamelist:[],exactli:[7,8,1],firstellobj:[7,1],bloat:[8,1],split:[0,7],structur:[7,8,1],projobj:7,becom:[6,8,3],steer:[6,8],secclassdescr:[],peform:7,nfacepoint:7,have:[0,1,6,7,8,3],tabl:[],close:[6,0,8,3],setreltol:[],ellresvec:7,mechreachfig:0,min:[0,7],parseprop:[],secellarr:7,mix:5,tempmat:7,copyrsobj:7,which:[0,1,6,7,8,3],conclud:0,checktupleord:7,subject:[7,3],hwreachfig:0,verimag:8,allow:[6,0,7,8,1],fusion4:[],btmat:7,ellarrai:1,regr:7,xarr:7,sun2003:0,dariyn:3,indbackward:7,fillfieldlist:7,"class":[0,1,5,6,7,8,3],dimn1siz:7,chap_exampl:[],mindimvec:7,r_2:[],request:[6,7,8],face:7,snapshot:0,determin:[0,1,6,7,8,3],constrain:[7,3],addtupl:[],axminolbr:[],fact:[6,0,3],prevabstol:7,sys2:7,watch:[],tractabl:3,kitworkshop:8,inductor:0,s_time:7,longer:1,trivial:3,setter:1,outhyparr:7,tau_k:[],cutobjarr:7,bmat2:7,gettuplesfilteredby_:[],should:[0,7,3,1],jan:[],vboundsel:7,smallest:7,suppos:[0,7],elseif:[],local:6,sortbyalongdim_:[],initbynulldataset:[],convert:[6,7,8,1],getfieldtypespeclist:[],getsortindex:[],piecewis:[6,8,3],bckadjointd:[],"_backward_reach_set_proj3":0,increas:[0,8],nmaxdim:7,leqslant:[],groupbycolumn:7,internalellmat:1,newrsobj:7,initbyemptydataset_:[],maxtoler:7,y_1:[],crsexternalellmat:0,fourthellobj:[7,1],"l\u00f6wner":3,nauk:3,integr:6,partit:7,contain:[],tau_1:[],ellbndr_3d:[],legaci:7,"1end":[],knowledg:6,nsubspdim:7,sortdim:7,gmail:[],abstolvec:7,statu:7,correctli:3,ellinvobj:7,boundari:[6,0,7,8,3],reldataobj:7,inpellvec:7,indbackwardvec:7,state:[6,0,7,8,3],theta:[],neither:3,equiv:[],datachangeiscomplet:7,kei:7,color1spec:7,entir:6,velu:[0,7],otherwis:[6,7,1],cenmat:7,otherrel:7,hyperref:[],instant:[6,7,1],dim1:7,equal:[7,3,1],april:[],instanc:7,equat:[0,1,6,7,8,3],freeli:5,isequalarr:7,comment:3,uct:[],x_c:[],wall:2,plotea:[],x_m:[],arriv:0,x_i:[],isther:7,respect:[6,7,3],axminolr:[],krogh:8,sumvec:7,divid:0,stur1999:[5,1],compos:7,inpcuben:7,removetupl:[],compon:7,defini:7,besid:8,treat:[6,7,3,1],outellarr:7,inpvec:7,reachobjarr:7,inv:[],fromellarrayelltub:1,presenc:[6,7],getreachtubeaneprefix:7,minkpmpic:[],fromqmarrai:[],x_2:[],x_3:[],x_0:[],x_1:[],lsgooddirorigvec:7,ndim3:7,gettupl:[],"\u00e3girard":[],replic:7,multi:[7,8,5,1],therefor:3,plain:7,align:3,rectangular:8,inpcube1:7,decreas:0,isproj:7,howev:[6,7,8,3,1],timebound:7,cell:[0,7],demo:5,mtime:[],isconsistencycheck:7,ros_sabater_thomas_en_ellipsoidal_calculus_based_on_propagation_and_fus:[],curtimelimvec:0,avi:8,daniil:[],getdim:[],internalellobj:1,scienc:[6,8,1],proport:3,insight:8,cross:0,sqrt:7,handl:7,rlceq:[],newelltub:1,oint:3,largest:6,atransmat:1,infer:7,difficult:7,phi:[],nisfillfield:7,http:[7,8,5,1],denot:[6,3],maxminvf:[],effect:[6,0,8,5],getdiagmat:[],isdisturbancearr:7,iseq:7,intprobdynamicslist:7,outputtyp:7,isuniquenam:7,off:[0,1],center:[0,1,6,7,8,3],copylinsysarr:7,nevertheless:3,ismembertuples_:[],well:[6,0,8,1],hyperplanedef:[],getfieldproject:[],usual:1,spmass1:[],spmass2:[],distanc:[],plotext:[],cauchi:6,obtain:[0,1,5,6,7,8,3],isverbos:[7,1],gettuplesfilteredbi:[],horizon:1,assur:8,inpellarr:7,fieldvaluevec:7,chap_intro:[],ismemberalongdim_:[],isdegener:[],funcoutnarr:7,tight:[6,7,8,3],add:7,toolboxl:8,laff2001:8,densiti:[0,1],semigroup:[6,1],match:7,secondsi:0,piec:7,thirdellobj:[7,1],avis1997:8,five:1,know:[6,3],press:[8,3],recurs:6,dim11siz:7,desc:7,like:[6,4,8,5,1],ver2001:2,get_iascalefactor:7,grdhyp:0,necessari:[0,1],ismemberalongdim:[],drsobj:7,lose:1,secbrsobj:[0,1],page:[8,1],nplotfield:7,npoint:[7,1],mdfieldnamelist:7,thiel:8,fromqmscaledarrai:[],superclass:[],convex:[6,0,7,8,3],secpolyarr:7,guarante:6,peter:[],approxtypechar:7,sergei:[],lead:6,isflagon:7,avoid:[6,3],intprobdynlist:7,fwdinclus:[],writetoxl:[],leav:7,getl0mat:[],fusion2:[],nonempti:[0,1,6,7,8,3],setfield:[],fusion1:[],gamma_m:[],istherevec:7,imaginari:8,"enum":[7,1],usag:7,although:[3,2],unionwithalongdim:[],getuniquedata:[],checkism:[],multidimension:7,about:[1,5,6,7,8,3],actual:[0,7,1],column:[7,8,3,1],constructor:[7,1],fals:[0,7,1],qvec:7,indproj2origvec:7,propnamen:7,automat:[6,7],diagon:[7,3],guard:[0,2],getuniquetuples_:[],mere:1,ltgooddirnormvec:7,mltidimension:7,pictur:7,somearg:7,distvec:7,inner:[6,7,3],biggest:[7,3],hpobj:7,stai:7,beta2:[],sq_2:[],upravleniya:3,distvalarrai:7,sedumi:[5,1],isvaluenullvec:7,highest:7,bug:[],nullreplac:7,nboundpoint:7,wise:7,whether:[6,7,8,1],scalefactor:7,displai:[],plotbyia:[],record:7,limit:[6,7,8,2],indefinit:6,ind_s_tim:7,ireach:7,justenterrr:[],dtsystem:[],getelltubeunionrel_:[],secpolymat:7,evalu:[8,3,1],dure:[0,7,8],q_l:[],q_k:[],extprobdynamicslist:7,q_i:[],novemb:[],"1x1":7,rossiiskoi:3,oplu:[],mrow:7,nonetheless:0,minkmppic:[],estim:[0,8],detail:[7,1],setisverbos:[],projstimemat:7,keyfieldnamelist:7,other:[6,0,7,3,1],futur:8,jointyp:7,newsi:7,marrai:7,sv_2:[],stat:[],repeat:8,june:[],hausdorff:6,q_3:[],q_2:[],q_1:[],ubc:8,ode45:[7,1],matrix:[6,7,8,3,1],nrow:7,reliabl:[6,5],rule:7,y_c:[],getnplot2dpoint:[],invari:[6,0,7,8,3]},objtypes:{},objnames:{},filenames:["chap_examples","chap_implement","chap_summary","chap_ellcalc","chap_acknowledge","chap_install","chap_reach","chap_functions","chap_intro","main_manual"],titles:["Examples","Implementation","Summary
and
Outlook","Ellipsoidal
Calculus","Acknowledgement","Installation","Reachability","Function
Reference","Introduction","Welcome to Ellipsoidal Toolbox
documentation!"],objects:{},titleterms:{disp:7,getisjustcheck:7,distanc:7,getelltuberel:7,plotext:7,minkmp_ea:7,getcopi:7,removeduplicatetupl:7,getfieldisvaluenul:7,getmindimensions:7,gettuplesfilteredbi:7,getiascalefactor:7,doescontain:7,getswitchtimevec:7,getproperti:7,getintprobdynamicslist:7,smartdb:7,affin:3,paramet:7,getproject:7,isequ:7,cut:7,isdegener:7,ellipsoid:[0,9,1,6,7,3],elltool_manu:[],hpintersect:7,minksum_ea:7,getisregen:7,ellapx:7,getcent:7,init:7,evolv:7,bibliographi:[],minkdiff:7,uminu:7,getnocatorcutfieldslist:7,calcgrid:7,setfield:7,iscut:7,setnplot2dpoint:7,minksum:7,applysetfunc:7,initbynulldataset:7,isintern:7,intersect:[7,3],cleardata:7,plotint:7,getabstol:7,applytuplegetfunc:7,getrhoboundarybyfactor:7,todispcel:7,genellipsoid:7,hasdisturb:7,tocellisnul:7,getsortindex:7,mpt:5,volum:[7,3],move2origin:7,toolbox:9,intersection_ia:7,subseteq:[],introduct:8,disturb:[6,0],getmove2origin:7,writetocsv:7,elluniontubestaticproj:7,isproject:7,toarrai:7,getreltol:7,shape:7,getextprobdynamicslist:7,getfieldtypelist:7,removetupl:7,ismemberalongdim:7,contain:[7,3],quick:5,getellarrai:7,setntimegridpoint:7,getboundari:7,summari:2,getshapemat:7,reachfactori:7,getcentervec:7,getregtol:7,thinouttupl:7,getreachtubenameprefix:7,acknowledg:4,dimens:7,interp:7,continu:6,getinitialset:7,ellunion_ea:7,islti:7,checkism:7,copyfrom:7,getboundarybyfactor:7,plotbyia:7,get_system:7,getdistboundsel:7,fromelltub:7,adddataalongdim:7,getntupl:7,linsysfactori:7,maxeig:7,tube:1,label:[],content:7,get_cent:7,writetoxl:7,getshap:7,sortbyalongdim:7,rel:7,linsyscontinu:7,rho:7,plotea:7,method:6,refer:7,checkset:7,core:7,ellbndr_2d:7,isempti:7,ismembertupl:7,getbtmat:7,reach:7,setdata:7,minkpm_ia:7,projectstat:7,reachcontinu:7,unionwithalongdim:7,getnfield:7,topolytop:7,getisverbos:7,minkmp:7,addit:5,minksum_ia:7,getrhoboundari:7,getctmat:7,getjoinwith:7,fromellarrai:7,getuboundsel:7,minksumia:7,getfieldtypespeclist:7,minkcommonact:7,projmat2str:7,getlinsi:7,minkdiff_ea:7,getodesolvernam:7,isbigg:7,fromellmarrai:7,getgooddirsetlist:7,implement:1,softwar:5,isbaddirect:7,oper:[3,1],disponui:7,outlook:2,geteigvmat:7,atypifiedstaticrel:7,ellbndr_3d:7,elltub:7,linsysdiscret:7,getchecktol:7,without:6,getisfieldvaluenul:7,system:[6,0],saveobj:7,doesintersectioncontain:7,get_direct:7,createsysinst:7,getntimegridpoint:7,getisenabledodesolveropt:7,hyperplan:[7,3,1],repmat:7,applygetfunc:7,plot:7,differ:3,getuniquedata:7,doubl:7,transform:3,calculu:3,intersection_ea:7,elltubeproj:7,start:5,get_ea:7,getdiagmat:7,basic:[6,3],getmindimension:7,getnelem:7,instal:5,fromqmscaledarrai:7,"function":7,get_goodcurv:7,getisgooddir:7,gettuplesjoinedwith:7,relat:7,getl0mat:7,fromqmarrai:7,adddata:7,get_ia:7,getfieldnamelist:7,getdata:7,gettupl:7,getuniquedataalongdim:7,projrow2str:7,getnplot3dpoint:7,getfieldvaluesizemat:7,getfieldisnul:7,createinst:7,getatmat:7,unionwith:7,setconfrepomgr:7,properti:[7,1],tostruct:7,displai:7,cat:7,project:7,initbyemptydataset:7,getinv:7,sum:3,polytop:0,isuniquekei:7,problem:6,areach:7,reachabl:[6,1],getisodenormcontrol:7,creat:7,getx0el:7,inv:7,mtime:7,indic:[],minkdiffea:7,getuniquetupl:7,plu:7,minimum:3,tabl:[],gettuplesindexedbi:7,conf:7,getpropstruct:7,getdim:7,fromstructlist:7,reorderdata:7,getelltubeunionrel:7,minu:7,isbackward:7,minkpm_ea:7,enc:[],projecttoorth:7,tomat:7,cvx:5,check:3,anoth:3,texorpdfstr:[],hybrid:0,maximum:3,setisverbos:7,parseprop:7,plotbyea:7,fromrepmat:7,discret:6,linsi:7,plotia:7,gra:7,ellintersection_ia:7,document:9,subsec_ellcontain:[],analysi:6,polar:7,isfield:7,minkpm:7,getsystemlist:7,trace:7,isparallel:7,tocel:7,fromstruct:7,clone:7,mineig:7,isinsid:7,getvers:7,minksumea:7,alinsi:7,getfieldproject:7,minkdiffia:7,scale:7,q_2:[],q_1:[],refin:7,gettvec:7,welcom:9,elluniontub:7,sortbi:7,getfielddescrlist:7,geteascalefactor:7,halfspac:3,minkmp_ia:7,visual:1,setreltol:7,fromqarrai:7,"switch":0,exampl:0,geometr:3,getregtubenameprefix:7,getconfrepomgr:7,time:6,minkdiff_ia:7,elltool:7,getnplot2dpoint:7,addtupl:7,notion:3,sortdetermenist:7,reachdiscret:7}})
+Search.setIndex({envversion:42,terms:{newfigur:[0,8,1],hypconstvec:8,orthogon:[7,0,8,4,1],cutobj:[8,1],khristoforov:[],removeduplicatetupl:[],yellow:[0,8],getmindimensions:[],four:[3,1],gir2006:9,prefix:8,getproperti:[],dist:4,whose:[0,2,1,7,8,9,4],rsdimarr:8,accur:1,uniformmat:8,isfields_:[],nalphafield:8,factorvec:8,matlab:[8,9,1,6,2],under:[7,4],ntupl:8,everi:[0,3,7,8,9,4],"_smartdb":[],projecttoorth:[],ellsupp:[],copyhpvec:8,upstream:0,affect:1,s_k:[],secondli:3,upc:8,factori:8,vector:[0,3,1,7,8,9,4],matric:[0,3,1,7,8,9,4],verif:[7,9,4,6],cmu:9,setntimegridpoint:[],sturm:6,q1l:8,direct:[0,3,1,7,8,4],consequ:7,second:[0,3,1,8,9,4],even:[0,9,4],insid:[8,4,1],neg:[8,1],time_vec:8,charcolor:8,"new":[3,0,8,4,1],symmetr:[7,9,1,6,4],elimin:9,manipul:[7,1,6],reqhp:9,qellarrai:8,someobjarr:8,ntube:[3,8,1],here:[0,3,1,7,8,4],met:7,iutput:8,ncolsofvec:8,path:[8,6],isresarr:8,interpret:8,michal:5,valign1:[],valign3:[],oldtimevec:3,mbox:[],precis:8,fieldtypespeclist:8,loop:[7,0,9],actualclass:8,apart:8,inprel:8,w_i:[],sechpobj:8,sdata:8,lreachproblemdynamicsinterp:8,linearli:[0,9,4],mitchel:9,total:8,xtouchopcurvemat:[3,8],isnullvec:8,plot:[],describ:[0,3,1,7,8,9,4],would:[8,5,1,6,4],choosen:8,ddthp:9,call:[7,8,9,4,1],shortest:7,vellobj:[0,1],type:[6,3,1,7,8,9],until:0,outellobj:8,correspondingli:8,get_goodcurv:[],notic:[3,8,4,6],warn:8,exce:[9,1],secamat:0,hold:[0,3,1,7,8,4],w_1:[],vph:0,staticrel:8,must:[7,8,9,4,1],beta_1:[],springer:[9,1],beta_2:[],join:8,fstellmat:8,fielddescrsourc:8,work:[0,6,3,5,1,7,8,9],struct_n_field_m:8,initbyemptydataset:[],ofth:1,norm:[3,8,1],indstim:[3,8],icount:8,basismat:[0,8,1],getntuples_:[],cone:6,give:[3,1,7,8,9,4],inmaxclr:[],indic:[],semidefinit:[1,6,4],smth:[],want:[3,8],type1:8,diriniti:1,end:[3,0,8,1],ordinari:7,march:[],how:[0,6,3,1,8,9,4],externalellvec:[8,1],plotia:[],answer:7,updat:6,checkfieldord:[3,8],typen:8,minkpm:[],isparallel:[],todispcel:[],after:[7,0,8,9,4],befor:[7,0,8,1],law:0,parallel:[8,9,4],averag:0,util:1,assumpta:8,opaqu:8,minkmp_ia:[],getelltubeunionrel:[],perform:[0,6,3,1,7,8,9,4],"0end":[],environ:1,suggest:4,vere:2,yellobj:1,lambda:[],x_struct_1_field_2:8,order:[0,6,7,8,9,4],x_struct_1_field_1:8,skipmindimens:8,over:[7,9,4,6],govern:7,becaus:[0,3,1,7,9,4],linewidth:8,vari:[9,4],v_i:[],initbydefaultdataset:8,getinst:8,fix:[0,1,7,8,9,4],copyellarr:8,minmaxvfbk:[],denver:0,better:7,"baoti\u0107":[],fig:[],nelem:8,calcgrid:[],clr:7,nullreplacementfield:8,show_al:8,discrflag:8,v_1:[],thei:[3,1,7,8,9,4],qualiti:1,safe:8,gagarinov:[],rectangl:9,mxn:8,cmhp:9,externalellmat:[0,1],rlcfig:[],choic:7,alex:[],resrel:8,sigular:8,getreltol:[],"1x2":[8,1],"1x3":[8,1],matiss:9,"1x4":[8,1],"1x5":1,baranov:[],scfa:9,mean:[3,0,8,7,1],prohibit:9,isvaluenul:8,kiril:[],amatdim:8,isfieldordercheck:8,checkstruct:8,islti:[],mineigarr:8,tau_1:[],extract:[8,1],abstolvalarr:8,prevconfrepo:8,volarr:8,unbound:[7,4],dsy:8,rewrit:[0,4],abstolarr:8,sprintf:0,intapprellvec:8,vazhentsev:4,quantifi:9,impract:9,psdobj:0,linear:[0,2,1,7,8,9,4],wherea:[7,0,1],situat:[4,1],guernic:9,free:[0,9,2],standard:[0,8,6],projarrai:3,fixm:8,islttouchopvec:[3,8],kitsenko:[],hand:[7,8],subindex:1,berkelei:[],standart:[3,8],bcktight:[],fromellarrai:[],otherobj:8,local:7,filter:8,unabl:7,confus:[8,4],ielem:[3,0,1],probdyn:8,rand:1,get_direct:[],rustam:[],motz1953:9,ischar:[],independ:4,intellarr:8,rank:[8,4,1],minksum_ia:[],restrict:[7,9],instruct:9,alreadi:[3,8],fwdext1:[],fieldmetadata:8,rewritten:0,newdsi:8,axminclr:[],top:8,lyubich:[],sometim:1,nstruct:8,intersection_ea:[],someotherarg:8,underlin:[],fsthyparr:8,similarli:[7,8,9,1],getnelem:[],nseccol:8,structnamelist:8,isreplacedbynew:8,tool:[7,2],baotic:1,dtds1:[],dtds2:[],conserv:9,secpolobj:1,inphyparr:8,externallellmat:1,getfieldisnul:[],target:[7,9,1],princeton:9,provid:[7,8,9,1],tree:6,verti:8,project:[],matter:[7,8],sysdef:8,qarraylist:[3,8,1],stanhp:1,lbr:[],getx0el:[],copyfrom:[],dtbrsobj:1,manner:8,minu:[],rescmat:8,secinternalellmat:1,thoma:[8,4],getisenabledodesolveropt:[],todispcell_:[],blue:[0,8],ttvec:1,secellobj:[8,1],though:8,secbmat:0,object:[3,8,9,4,1],gridobj:8,regular:[3,8],msize:8,californi:[],akurzhan:[],upenn:9,flow:0,doe:[3,1,7,8,9,4],declar:1,sun:0,freewar:6,dot:[],fourthhypobj:1,opposit:[3,8],random:0,elltubeobj:[3,8,1],getfieldnamelist:[],mindimension:8,involv:9,absolut:[3,8,1],isequ:[],delet:8,menu:6,explain:[8,4,1],configur:[8,1],ilinsi:8,extapprellvec:8,folder:6,hpdim:8,invellobj:8,getsortindex_:[],writetoxl:[],kaushanskii:[],ellobjarr:8,infti:[],report:[8,9],reconstruct:8,toolbox:[],subseteq:[],atmat:[8,1],kur2001:9,kur2000:[9,4],bar:[],impli:[7,4],excel:8,shape:[],bad:[8,4,1],elluiontub:8,septemb:[],fgetprojmat:[3,8,1],dirmat:8,fieldnam:8,morari:[9,5,1],reltol1:8,reltol2:8,nrest:8,num:[],result:[0,6,1,7,8,9,4],fail:8,projobj:8,best:[3,4],avert:9,said:[3,7],maxeig:[],easi:9,fflow:[],iri:8,figur:[0,8,9,1],literalinclud:[],simplest:4,"_backward_reach_set_proj2":0,projection_:[],awai:8,"_backward_reach_set_proj1":0,approach:[7,9],nplot2dpoint:[8,1],"_backward_reach_set_proj4":0,sortby_:[],accord:[7,0,8,1],gooddirscontinuousgen:8,restlist:8,toler:[3,8,1],reltolarr:8,propname1:8,ell:[8,1],ill:7,against:7,facet:[9,1],logic:[3,8],com:[6,2],psobj:[0,1],foral:[],character:4,karev:[],sizemat:8,assum:[7,0,8,4,1],stanleychan:[8,1],duplic:8,zonotyp:9,tbtimevec:1,degener:[7,8,4,1],union:[7,0,8,9,4],getmindimension:[],three:[3,0,9,7,1],hyperplane2polytop:[1,6],ncolorfield:8,beta1:[],unionwith:[],argument:[3,8],r_2:[],icosaed:8,drsobjarr:8,seregadrozh:[],emploi:9,propmod:8,ident:[8,1],isemptymat:8,isequal_:8,commerci:2,sechypobj:[8,1],euclidean:8,calcul:[6,3,1,8,9,4],pairwis:8,maxmin:[7,8],gamma_1:[],gamma_2:[],conv:[],tabl:[],submatrix:4,ilya:[],kostousova:9,"4dev":[8,1],n_k:8,ell3:8,ell2:8,ell1:8,shift:[8,1],sever:[3,8,9,1],isbackward:[],cutelltub:1,fieldnamelist:8,colorspec:8,make:[6,3,1,7,8,4],format:8,modmat:8,complex:[0,8,9],sysbrain:2,subound:[3,8,1],complet:8,hyp2arr:8,ell2arr:8,fwdintmaxmin2:[],ros2002:[4,1],n_1:8,kit:[],ctlsmaxmink:[],refin:[],tune:8,squar:[8,1],kept:8,indther:8,bewar:8,propval:8,thu:[7,8,9,4],inherit:3,s_2q_2:[],weakli:7,thi:[0,6,3,5,1,7,8,9,4],chap_impl:[],lowdimfast:8,structlist:8,left:[0,8],just:[7,8],minkmp_ea:[],cvec:8,trvec:8,parseprop:[],languag:6,han:[8,1],zakharov:[],had:8,fromqarrai:[],save:[3,6],hat:[],alur:1,applic:[0,8,9],preserv:[7,4],isfield:[],tocellisnul:[],indtupl:8,fusion:[8,4],uniformoutput:8,l_0:[],checktupleord:[3,8],fcalccentertriarr:8,measur:7,isproject:[],specif:[3,7,8,9,6],arbitrari:1,contradict:8,varaiya:[7,9],href:[],verimag:9,cflow:[],specifii:8,nfacex:[],www:[8,9,6,2],right:[7,8],nilpot:9,deal:[7,9,4,1],webk:9,interv:[0,1,7,8,9,4],g_p:[],olr:7,copylinsysarr:8,frommatelltub:[3,8,1],abstolv:8,transmiss:0,getfieldtypelist:[],reinkarn:[],preliminari:9,existenti:9,circ:[],unit:[0,8,4,1],minkdiffea:[],condit:[0,1,7,8,9,4],plu:[],nonuniform:8,g_1:[],confer:0,g_2:[],abstol1:8,post:7,fvec:8,decatur:9,chapter:[3,0,9,1],obj:8,slightli:0,myellcentvec:8,"v\u00e1lyi":[9,2],"2x100":1,produc:[8,9,1,6],sdpt3:6,s_l:[],regularis:3,centvecarrai:8,bound:[0,2,1,7,8,9,4],ismemb:8,down:[8,1],ltgooddirmat:[3,8],hespanha:9,old:3,uboundsellobj:[0,8,1],getfieldprojection_:[],indbackward:8,suffici:8,fillfieldlist:8,support:[8,5,4],avail:[7,0,8,1],width:[3,8,1],reli:9,editor:[9,1],unionwith_:[],lowest:8,form:[0,6,1,7,8,9,4],forc:[0,8],mcodesnippet:[],eascalefactor:8,maxim:[8,4],nplot3dpoint:[8,1],statelltubeproj:[8,1],ethz:6,"true":[0,1,7,8,9,4],absent:8,createinst:[],resellobj:8,intern:[0,3,1,7,8,9,4],absenc:[7,8],getnfields_:[],ncol:8,getisverbos:[],inpdimarr:8,sq2:8,"abstract":8,proven:4,secdtrsobj:1,getuniquetupl:[],"_backward_reach_set_3d_2":0,inputtyp:8,exist:[7,8,4,1,2],desir:9,termtim:0,indforward:8,minkpm_ea:[],colorvec:8,when:[0,3,1,7,8,4],hypobjarr:8,linsysarr:8,reldataplott:[0,8],multidimension:8,newnpoint:3,eigenvalu:[8,9,4],consid:[7,0,8,9,4],myhyp:8,"l\u00f6fberg":5,uniformli:8,faster:[8,1],mdim:8,cmatdim:8,ignor:8,nxn:8,glvrst:[],dynamicalonggoodcurv:[3,8,1],global:[8,1],fstellarr:8,getiascalefactor:[],mile:0,computation:7,row:[4,1],getproject:[],depend:[7,0,8,9,1],graph:8,minksum_ea:[],automat:[7,8],get_ea:[],getparam:8,w_2:[],nfield:8,ucsd:[8,1],sourc:[0,9],string:8,congest:0,ffrsobj:0,ellipsoiddef0:[],triangul:8,isemptyintersect:8,feasibl:[8,9,4,1],lynch:9,cyan:8,sys2:8,exact:[9,4],useoth:8,dim:[3,8],frehs:5,struct_n_field1:8,solver:[8,1,6],nreplacedfield:8,metod:3,checkinput:8,div:[],minkcommonact:[],nvertic:8,upper:[],sign:[7,8],maxeigarr:8,writetocsv_:[],boundai:7,firstpolobj:1,appear:9,ifstdim:8,subounds2:8,uniform:8,current:[0,8,1],fieldlist:8,setter:1,sortindex:8,gmat:[0,8,1],fmat:8,toarray_:[],ellmat:[8,1],subspac:[0,3,1,7,8,9],gener:[7,8,9,4,1],satisfi:[7,8],explicitli:2,address:7,coincid:[7,8],box:0,gettuplesjoinedwith:[],plotter:8,"_forward_reach_set_proj1":0,"_forward_reach_set_proj3":0,"_forward_reach_set_proj2":0,"_forward_reach_set_proj4":0,tvec:8,extrem:[7,9],myhiparr:8,squeez:1,neq0:[],fillmissingfieldswithnul:8,extra:0,getchecktol:[],isltimat:8,toarrai:[],guliev:[],case1:8,case3:8,case2:8,abstol2:8,nvecarrdim1:8,nvecarrdim2:8,prove:9,subspas:8,univers:[9,4],visit:8,nuniqueslic:8,theta_2:[],criteria:9,reorder:8,odesolvernam:[8,1],diagonaliz:9,proparr:8,peopl:8,finit:[4,1],elseif:[],appendix:9,prototyp:8,alexand:5,leqslant0:[],graphic:[7,9],lsthp:9,mfilenam:[],cap:[],uniqu:[7,8],cat:[],superclass:[],cuttimevec:[3,8,1],can:[0,6,3,1,7,8,9,4],caution:7,kdim:8,claim:7,rectangluar:9,matrixofvecmat:8,backslash:[],literatur:[7,8],ellobj2:8,ellobj1:8,abort:8,ctlsminmaxk:[],propval1:8,occur:[3,0,4],firstamat:0,xstouchvec:[3,8],alwai:[7,4,1],differenti:[7,9,1],firsthypobj:[8,1],multipl:8,cleardata:[],probdynobjsys2dir1:8,getfieldvaluesizemat_:[],plotint:[],write:8,criterion:9,pure:9,tild:[],map:8,product:[7,4,6],getfieldvalueisnul:8,propvaln:8,max:[0,8],clone:[],writetoxls_:[],hypnarr:8,succ:[],mai:[7,0,8,4,1],objarrai:8,data:[3,8,1],propvalu:8,man:[8,4],elltubeprojrel:[3,8],rangl:[],practic:[7,9,4],prod_:[],explicit:[0,4,1],uparrow:[],inform:[3,8,1],combin:[8,9,6],gamma:[],insrument:3,april:[],minkdiff_ia:[],probdynobjsys2dirn:8,leqslantt:[],skip:8,gettuples_:[],stursberg:9,tomlin:9,getelltuberel:[],"5x1":1,hypconstarr:8,origfrommatelltub:1,lsgooddirnormorig:[3,8],inferisvaluenul:8,ieee:[7,8,4],dynam:[0,2,1,7,8,9,4],lsy:[0,8],group:3,thank:5,window:[8,6],mindimvec:8,dirstmat:8,m_2:[],m_1:[],main:[8,9],getmindimensionality_:[],setnplot2dpoint:[],isprojarr:8,non:8,recal:7,sabat:[8,4],initi:[7,0,8,9,1],tucker:9,getregtubeaneprefix:8,move2origin:[],nov:[],now:[7,0,4,1],discuss:[3,9],nor:4,reltol:[3,8,1],unionelltub:[3,8,1],term:[7,0],csv:8,abstoler:3,name:[0,6,2,3,1,8,4],hermsmey:2,revers:8,isnul:8,propnam:8,mit2000:9,separ:[8,6],januari:[],oposit:3,testreltol:8,getswitchtimevec_:[],replac:8,individu:[8,9,1],irina:[],firel:8,ensur:7,wrap:8,getellarr:8,switchtim:0,recogn:8,dmitrykh92:[],shown:[0,9],space:[3,7,8,9,1],"l\u00f6wner":4,tocellisnull_:[],formula:[7,9,4,1],hwfig:[],correct:[7,8],manfr:5,srore:3,hull:[0,8,9,4],rlc:0,unpublish:[8,1],inmaxolbr:[],lgridmat:8,california:[],theori:[9,4],directionscvec:8,timevec:[3,0,8,1],dimnumvec:8,care:8,wai:[3,7,8,9,1],subzero:7,timvec:3,pageref:[],getcurconf:8,turn:[0,9,1,6],disppic:[],place:[3,8],fromellmarrai:[],ture:8,suparr:8,first:[0,2,3,1,7,8,9,4],origin:[3,0,8,4,1],directli:[8,4,1],onc:[4,1],arrai:[3,0,8,1],secobjarr:8,ellobjvec:[0,8],open:[7,8,9],size:[0,8,1],given:[0,1,7,8,9,4],l_1:[],dirarr:8,silent:1,bmatdim:8,fieldiscvec:8,getshap:[],get_eascalefactor:8,necessarili:8,neededproplist:8,cdd_home:9,idimn:8,white:8,drozhzhin:[],interpelltub:3,fcalcfactor:8,mayantsev:[],moscow:[],copi:8,ell_demo2:6,ell_demo3:6,specifi:[3,1,7,8,9,4],ell_demo1:6,asarin:9,lieven:8,rankarr:8,than:[0,8,9,4,1],regesnt:[],idim2:8,idim3:8,idim1:8,setconfrepomgr:[],tostruct:[],getfieldtypelist_:[],useorigin:8,were:[3,8],posit:[7,8,4,1],resarr:8,seri:9,pre:7,dimarr:8,sai:[7,0,4,1],firstexternalellmat:1,vkaushanskii:[],ani:[0,3,1,7,8,9,4],adddata:[],gettuplesindexedbi:[],maxmink:[],techniqu:[7,9],advic:5,crmsy:8,note:[7,8,9,4,1],clbr:7,ideal:0,asar2000:9,horowitz:0,take:[3,0,8,7],epsilon:[],interior:[8,4],green:[0,8],ecual:8,myellcentervec:8,acubestructfieldtyp:8,begin:[],sure:[3,1],nprop:8,dirsvec:8,trace:[],normal:[0,8,1],multipli:8,isinsid:[],getntupl:[],minkdiffia:[],sizevec:8,isbaddirect:[],thirdhypobj:[8,1],gettvec:[],newdirsmat:[8,1],homepag:[9,1,6,2],icol:8,nproj:8,synthesi:[9,4],abstol:[3,8,1],getlinsi:[],teoriya:4,colorfieldlist:8,drive:[9,1],dimnksiz:8,translat:[7,4],shot:1,show:[0,4,1],friction:0,approxschemanam:[3,8,1],ctsystem:[],xml:1,onli:[3,1,7,8,9,4],slow:1,ratio:0,agirard:9,lin2002:1,transact:[7,8,4],pomput:8,ltgooddirorigmat:3,parametr:[9,1,6,4],analyz:0,minkdiff:[],thompson:9,inprel1:8,analyt:[9,1],comupt:8,overwritten:8,xstouchopvec:[3,8],applysetfunc:[],isintern:[],variou:9,get:[0,8,1,6,4],isecdim:8,polobj:1,plot_ia:1,getbtmat:[],dyn:[],cannot:[7,8],nnestedlevels_i:8,secondellarr:8,imag:[3,9],uell:8,requir:[0,6,3,1,7,8,9,4],inpreln:8,yield:7,calcprecis:8,dim1ksiz:8,xm4:0,nhpdim:8,where:[0,6,1,7,8,9,4],xm1:0,xm2:0,xm3:0,xtouchcurvemat:[3,8],stanlei:[8,1],ellpolyfig:[],parallelotop:9,concern:[7,9,4],infinit:8,fgetcolor:8,firstbrsobj:[0,1],transactionsaf:8,elluniontuberel:8,get_cent:[],enough:[7,8],s_instal:6,isltiarr:8,between:[7,0,8,4,1],"import":[7,8,9],uniformcel:8,across:[0,8],checkset:[],assumpt:8,methodfromelltub:1,myellarr:8,screen:8,sfielddescr:8,hypnormarr:8,rsobjarr:8,minkpm_ia:[],minksump:[],dim2ksiz:8,iffsum:[],getmindimensionsize_:[],newdrsobj:8,come:[3,0,7,1,4],newrsobj:8,minkmp:[],vaz1999:4,chelsea:4,region:0,kost2001:9,tutori:6,mineig:[],improv:1,cubestruct:8,fcalcbodytriarr:8,stime:[3,8,1],axminclbr:[],zonotop:9,color:[3,0,8,1],kvas2004:[9,1],ndims1:8,reportstr:8,hyperplac:8,getdistboundsel:[],qarrai:[3,8],math:6,vgridat:8,linewidthfieldlist:8,invert:[7,8,1],invers:[8,4],mark:[0,8],workshop:[],covert:1,firstpol:1,fgetlinewidth:8,fromellmarrayelltub:3,dimsarr:8,ndimsk:8,goran:5,ndimsn:8,get_ia:[],lectur:[9,1],subindvec:8,those:[7,8,9,4],"case":[7,0,8,4,1],disponui:[],bdmat:[8,1],getcentervec:[],indtuplevec:8,cast:4,gccmat:1,iobj:8,nulltopreplac:8,tocell_:[],myell:8,comparemetadatabackwardref:8,indexfieldnam:8,keepnul:8,ltgooddirnormorigvec:[3,8],ramp:0,sellarr:8,henc:[7,9],them:[3,9,1,6,4],arrpoxim:3,istupl:8,projectit:3,minmaxvf1:[],maxminvfk:[],v_2:[],author:5,getcopi:[],same:[3,1,7,8,9,4],inscrib:8,lsgooddirnorm:[3,8],pnueli:9,dirsmat:[3,0,8,1],iscellstr:[],rightout:8,document:[],astaticrel:8,akademii:4,minmaxvfk:[],tocel:[],secel:[8,1],nest:8,firstbpsobj:0,mani:3,extern:[0,6,3,1,7,8,9,4],indforwardvec:8,solvabl:7,myellshmat:8,ssdimarr:8,mindimens:8,modellarr:8,model:[0,6],dimension:[0,6,1,7,8,9,4],maxminvf1:[],"_after_the_guard":0,lreachplain:8,fieldtypelist:8,dynelltubeproj:1,rest:8,hfunc:8,rsobj2:8,sortfieldnamelist:8,iaellmat:8,touch:[],dimvec:[8,1],speed:0,atinpmat:8,bmat:[3,0,8,1],vandenbergh:[8,4],regent:[],except:[3,8,9,4,1],instrument:3,ndims2:8,aushkap:[],real:[8,9,1],msecrow:8,read:6,bigcap_:[],defaul:8,test:[3,7,8],grid:[8,1],firstuboundsellobj:0,laff2001:9,nappr:8,bufellvec:[8,1],cdot:[],integ:[7,8,1],benefit:9,either:8,output:[8,1],timetouchendvec:[3,8],sigma_1:[],getshapemat:[],normalvec:8,isther:8,kurzhanskii:7,sisvaluenul:8,bournez:9,root:[8,4],intact:8,nonzero:4,get_system:[],slice:8,commontimeabstol:8,udboundsellobj:[8,1],initbynulldataset:[],probdynobjsyskdir1:8,definit:[7,8,4],ddt:9,intract:9,rankvec:1,videoprocess:[8,1],poli:8,mathcal:[],overli:9,refer:[],nplot3dpointsarr:8,goodcurvescvec:8,ismembertupl:[],trcentermat:8,ration:9,eelluniontimedirect:8,getnfield:[],newelltuberel:8,uniontubestatproj:[],found:[8,4],shmat:[8,1],qmat:8,ntimegridpoint:[8,1],getjoinwith:[],olbr:7,admat:[8,1],hpvec:8,marraylist:[3,8],side:[7,8],degre:4,probdynobjsyskdirn:8,act:3,"2x1":[8,1],"2x2":[8,1],complinsysarr:8,setfield_:[],routin:[8,9,1],izvestiya:4,effici:9,uminu:[],myhyparr:8,fwdintminmax1:[],fwdintminmax2:[],hpdim1:8,hpdim2:8,rossi:9,s_is_i:[],log:8,aren:6,arel:8,interfac:[8,1,6],low:[8,9],lot:[3,8],tofieldnamelist:8,tupl:8,outellarr:8,dtsy:[8,1],lsysd:0,inpvec:8,ell_unitbal:[3,0,8,1],polellarr:8,getdata:[],zhukova:[],conclus:9,getuniquedataalongdim:[],iscommonvaluescheck:8,langl:[],initbynulldataset_:[],getfielddescrlist:[],possibl:[7,8,9,4,1],"default":[3,8,1,6],minkowski:[7,8,9,4,1],connect:[3,2],projorthmattransarrai:[8,1],ohm:0,hypmat:[8,1],creat:[],ctrmat:1,certain:[7,0,8,4,1],ellobj:[0,8,1],strongli:7,dim22siz:8,file:[8,1,6],addtuplesintern:8,geteascalefactor:[],fill:[0,8],"0000e":[8,1],again:[0,9],apprellmat:8,googl:6,"birkh\u00e4us":9,mathematica:9,pappa:[9,1],field:[3,8,9,1],valid:[7,8],you:[8,1,6],inpobj:8,polar:[],function_handl:8,minkpmpic:[],tiwari:9,fromstruct:[],symbol:[9,1],getvers:[],fusion5:[],inmaxclbr:[],polynomi:4,projellarr:8,mpthp:[0,9,1,6],ntimepoint:[3,8,1],reduc:[7,8,4],vadim:[],backward:[7,0,8,1],directori:6,descript:[3,8,9,1],fromqmarrai:[],linsyscvec:8,mass:0,checkconsist:8,getsystemlistlist:8,x_3:[],disp:[],represent:[8,9],all:[0,3,1,7,8,9,4],uidatagrid:8,x_0:[],illustr:0,scalar:[8,1],isintextapxvec:8,follow:[0,6,1,7,8,9,4],nstep:0,dimsvec:8,internalellvec:[8,1],isprojection_:[],lafferrier:9,articl:1,ltgooddirorigprojmat:3,init:[],program:[8,1,6,4],alvarez:0,gettupl:[],shapemat:8,islstouch:[3,8],ispositivearr:8,fukuda:9,introduc:[0,9],adapt:[0,9],minkdiffp:[],minkpic:[],far:[0,9],getelltuberel_:[],statusarrai:8,getatmat:[],differencr:8,mph:0,kvasnica:[5,1],uboundsel:[0,8],candid:8,mechan:0,veri:9,hypvec:[0,8,1],vetbar42:[],writetocsv:[],minmaxvf:[],list:[8,9,1,6],hyp:[0,8],emul:[8,1],d_i:[],small:7,grenobl:9,getboundari:[],dimens:[],neighborhood:0,diment:8,zero:[3,1,7,8,9,4],qml:8,pass:[8,1],overlin:[],further:[3,8,4,1],default_storage_branch_kei:8,wmat:8,whenc:4,what:[3,7,6],nonlinear:[7,9],fromelltub:[],sub:[9,4],inpcube1:8,diag:[3,8,1],section:[7,4,1],advanc:7,overload:[8,1],nplot2dpointsarr:8,version:[8,1],sup:8,"public":[3,8,1],contrast:9,full:[0,8],nprojdim:8,cvxhp:[1,6],irizka91:[],suppfuncvec:8,capacitor:0,strong:8,modifi:[8,1],valu:[0,3,1,7,8,9],search:[],replacenul:8,"_set_with_disturb":0,bremner:9,l0mat:8,sobjectdata:8,round:1,"_tube_without_disturb":0,base:[3,7,8,9,4],rsdobj:0,isenabledodesolveropt:[8,1],diamet:9,via:[8,9,1],depart:[],rsobj:[3,0,8,1],transit:[7,9],c_1:[],filenam:8,c_2:[],emptyset:[],famili:[9,4,1],establish:[0,4],select:8,proceed:0,cutpointelltub:3,two:[0,6,3,1,7,8,9,4],formul:[8,4],autonom:9,"k\u00fchn":9,taken:[0,8,9],timetouchopendvec:[3,8],metric:8,minor:[],more:[7,0,8,9,1],flat:4,nface:8,c_i:[],c_m:[],nondegener:[8,4,1],particular:[0,8,4,1],known:[7,0,4,1,2],optstruct:8,none:8,hour:0,det:8,hypnormvec:8,remain:[8,4],learn:6,nonsingular:[7,4],dec:[],def:[],sortbyintern:8,cubestructfieldinfo:8,getisodenormcontrol:[],adaptivecel:8,firstel:[8,1],bckcenter:[],sphere:8,compars:8,magenta:[0,8],isconsistencycheckedvec:8,invellarr:8,cours:8,propeti:8,secellvec:8,rather:2,anoth:[],simdiag3:[],spreadsheet:8,nuniquetupl:8,islttouchvec:[3,8],hasdisturb:[],varargin:[8,1],galiev:[],voltag:0,simpl:[0,9,6],isn:0,referenc:8,faculti:[],our:[3,7,1],intersectellmat:1,variant:1,stur2003:9,plane:[8,1],develop:9,polytope2hyperplan:[1,6],nelltub:3,bparr:8,onto:[3,0,8,9,1],indexvaluevec:8,reachriscret:8,lsgooddirvec:[3,8,1],shade:8,nnestedlevelsvec:8,help:8,approxtyp:[3,8,1],aboundari:8,through:[7,0,9,1],minmax:[7,8],paramet:[],minmaxbk:[],geteigvmat:[],geqslant0:[],geqslant2:[],systemi:4,rsdim:8,html:[8,9,6],stephen:8,iscut:[],reltoler:3,"_backward_reach_set_3d_1":0,kur1997:[9,4],good:[3,8,9,1],"return":[8,9,1],maler:9,aretimeboundscompar:8,ddtfig:[],notuniform:8,var1998:9,centvec:[0,8,1],getisfieldvaluenul:[],cddhp:9,"_forward_reach_set_3d_1":0,"_forward_reach_set_3d_2":0,bigger:[8,4,1],eventu:8,iind:0,level:[7,8,9,1],copyellmat:0,datastructur:8,trarr:8,inpel:8,achiev:8,reslist:8,getellarrai:[],alphafieldlist:8,secbrsobj:[0,1],idea:[7,9,4,6],procedur:[9,4],lomonosov:[],ellunion_ea:[],nisfillfield:8,dirrenc:8,expect:8,intersectobj:8,todo:8,orient:9,reorderdata_:[],siplest:3,regtol:[0,8,1],directionsmat:8,getnelems_:[],highwai:0,research:9,lineno:[],secexternalellmat:1,difficulti:9,isempti:[],bscal:1,motzkin:9,polyhedra:2,asc:8,connecteld:3,oldcit:[],adjointdt:[],grdhypobj:0,put:8,mathp:9,basi:[3,0,8,1],thrown:8,dar2012:4,omit:8,projsmat:3,externalellobj:1,american:0,minkdiff_ea:[],circuit:0,isbigg:[],assign:[7,0,8],intprobdynamicslist:8,number:[0,3,1,7,8,9,4],evolut:[0,8,9,1],done:[8,1],least:8,menshikov:[],repmat:[],objarr:8,guess:[],secuboundsellobj:0,exponenti:0,nlinewidthfield:8,construct:[7,8,9,6],doesintersectioncontain:[],catdim:8,umdiff:[],accept:[8,1],fromrepmat:[],isbaddirvec:8,store:[3,8,1],schema:[3,8],gooddirsetlist:8,subindcvec:8,option:[8,1],behind:4,linearrh:[],testabstol:8,pars:8,word:[7,0,8,4],kind:3,john:4,remov:[8,9],horizont:1,nevertheless:4,convertedhypvec:1,str:8,dang:9,isuniquekei:[],leftout:8,nikolai:[],comput:[0,6,2,1,7,8,9,4],igor:[],sortbi:[],fromqmscaledarrayselltub:3,hyperplanedef:[],packag:[8,9,1,6,2],newreachobj:8,oldt0:8,nsubelem_i:8,demo3firsttest:8,hfigur:8,"null":8,nsubtupl:8,lie:8,projmat:[3,8,1],built:8,equival:[7,8,9,4,1],ctmat:8,lin:[8,1],violat:8,ntimegridpointsarr:8,also:[3,1,7,8,9,4],build:8,diments:8,ellintersection_ia:[],"_crossing_the_guard":0,iascalefactor:8,distribut:[1,6],approxschemadescr:[3,8,1],previou:[4,1],minksumea:[],amat:[3,0,8,1],isposit:8,projorthmatarrai:[8,1],fwdint1:[],plan:9,rho:[],alpha:[],mechreachfig:[],hplanearr:8,clear:[7,8],hypobj:[8,1],elltubeunionproj:8,part:[3,0,8,9,4],getconfrepomgr:[],frommatmelltub:3,artem:[],ctinpmat:8,distbound:8,distel:8,secellmat:8,getuniquedataalongdim_:[],find:[0,1,7,8,9,4],access:[8,1],purpos:1,randi:3,copyright:6,pi_0:[],solut:[7,6],olrsinclus:[],factor:[3,8],filterfieldnam:8,setdata_:[],projmatlist:8,express:[7,9,4,1],hpintersect:[],outdimarr:8,setdata:[],meellarr:8,"_before_the_guard":0,mattohkc:6,eugen:[],pi_l:[],common:[8,9,1,6,4],unsaf:7,crm:8,iscutarr:8,set:[0,6,2,1,7,8,9,4],art:[],ser:9,see:[3,8,9,4,1],sea:9,arg:8,"_set_without_disturb":0,analog:[7,8],bndpvec:8,approximationi:4,chap_intro:[],freltolfun:8,catelltuberel:8,kurzhanski:[9,5,4],secondel:8,won:8,mcmaster:6,statusarr:8,altern:[8,4],catalogu:2,islstouchop:[3,8],numer:8,isok:[8,1],newtimevec:3,cutvecelltub:3,centervecvec:8,rlceq2:[],solv:[8,9,1,6,4],hightdimfast:8,classnam:8,tostruct_:[],struct:[3,8,1],both:[0,1,7,8,9,4],last:[0,3,1,7,8,4],"\u00e3girard":[],projtyp:[3,8,1],fstell:8,ellvec:[8,1],getisgooddir:[],pdf:[8,1],whole:[0,8],load:1,plotext:[],point:[6,3,1,7,8,9,4],stepenskii:[],llui:8,each:[0,3,1,7,8,9,4],shmatarrai:8,arbitrarili:[8,9],ls_good_dir_:8,along:[3,7,8,4,1],applygetfunc:[],secondobjarr:8,java:8,setfieldintern:8,filte:8,due:7,empti:[0,3,1,7,8,4],implicit:4,elluniontimedirect:[3,8],"_all2d":0,inpcub:8,secbpsobj:0,fpropfun:8,b_i:[],sisnul:8,marrai:[3,8],secpsobj:0,ellfirstarr:8,ncolumn:8,coordin:[8,4],firstinternalellmat:1,understand:7,indvec:[3,8],boundpointmat:8,smdist2:[],smdist1:[],semigroup:[7,1],checktyp:8,getfieldvaluesizemat:[],uncertain:[9,4],look:4,"while":[3,0,8],abov:[3,0,1],error:[8,1],isregen:[0,8,1],lambda_m:[],yovin:9,propag:[0,8,4],isemptyarr:8,vol:8,ellnarr:8,minmaxvfb1:[],itself:8,quadrat:[8,9,4],vanish:7,rightarrow:[],minim:[8,4],u_k:[],belong:[7,8,9],wherein:[7,9,4],halfspace1:[],ksize:8,ispropinclud:8,higher:[9,1],sumellarr:8,optim:[8,9,1,6,4],optin:1,dimn:8,covari:9,user:1,topolytop:[],lower:[8,9],nslice:8,entri:8,multmat:8,u_3:[],u_2:[],u_1:[],exmpl:3,traffic:0,johan:5,hparr:8,self:8,nlinsi:8,highdimfast:8,nspdim:8,getfieldisvaluenul:[],doescontain:[],hjb:9,resobj:8,cut:[],uniondim:8,commontimereltol:8,recurs:7,shawal:8,getcent:[],ldim:8,fieldisnullcvec:8,plobj:[3,0,8,1],theorem:4,snap:1,input:[0,3,1,7,8,9],unlik:[3,4],modul:[],ismeaning:8,volvec:8,tomat:[],transpar:[3,8,1],iell:8,distboundsel:8,elltuberel:8,game:9,getfieldnamelist_:[],ellsecarr:8,tq_2u_1:[],a_i:[],boyd2004:4,semi:8,gantmach:4,collect:9,bckint1:[],ivan:[],continuo:1,isodenormcontrol:[8,1],paramell1:[],eec:[],paramell2:[],discrib:8,girard:9,often:7,simplifi:[7,8],spring:0,eapproxtyp:[3,8,1],some:[0,6,2,3,1,7,8,9,4],back:[8,1],getntimegridpoint:[],firstbmat:0,sampl:[7,0,9],saveobj_:[],formign:8,rankmat:8,fgridmat:8,scale:[],firstrsobj:[0,1],adddataalongdim:[],t_l:[],shall:[7,0,4],per:0,firstellarr:8,substitut:[7,9,4],mathemat:[],larg:[7,9],proj:[],intersectellvec:0,leqslant1:[],prod:8,proc:9,leqslant5:[],leqslant4:[],maxrelativetoler:[3,8],inferisnul:8,run:[4,1],requiem:9,gettuplesindexedby_:[],uitabl:8,vitali:[],step:[7,0,9,4,1],typespeclist:8,sechyparr:8,thinoutelltub:3,qinf:8,normvec:[8,1],"101x1":0,leqslantn:[],constraint:[7,8,4],transpos:8,getuboundsel:[],plai:7,projspacelist:1,tabletyp:8,dcutobj:8,isuniquekey_:[],cmat:8,t_2:[],t_0:[],t_1:[],leqslantv:[],leqslantu:[],grachev:[],fulfil:4,compactli:9,colorado:0,within:[3,7,8],saveobj:[],sqrtm:1,bvec:[8,1],ssdim:8,tq_2t:[],inclus:4,few:1,pseudoinvers:8,question:[7,8],textual:8,maric:3,includ:[8,9,1,6,4],suit:3,forward:[7,0],thetapar:[],properli:8,sdp:[4,6],boyd:[8,4],theta_1:[],decomposit:[7,9],aqa:8,uncontrol:9,delta:[],line:[3,8,1],lt_good_dir_:8,info:8,concaten:[8,9,1],consist:[7,8,9,1],bltellobj:1,getinv:[],tightli:4,kuhn:9,similar:[7,1],kirchoff:0,psdcutobj:0,curv:[],constant:[7,8,9,1],x0ellobj:[3,0,8,1],chan:[8,1],doesn:[3,0,8],nspecfield:8,"char":[3,8,1],projobjarr:8,inpellmat:8,peter:[],nan:[],ltgooddirarrai:[3,8,1],mindimensionsizevec:8,approxtypechar:8,s_kq_k:[],ellarr:8,nice:8,correspod:8,inparr:8,datacel:8,hypscal:[0,8,1],fillipov:7,dtlsmaxmink:[],scijavagrid:8,lane:0,algorithm:[8,9],svd:4,"mu\u00f1oz":0,sortind:8,cdd:9,code:[8,6],ctds2:[],ctds1:[],hypnormmat:8,notcomparedfieldlist:8,ellips:[8,1],edu:[8,9,1,6],compact:[7,9,4],privat:8,note1:8,note2:8,dimmat:8,evolv:[],plotspecfieldlist:8,sens:[7,8,4],"_tube_with_disturb":0,fwdextmaxmin2:[],unzip:6,simdiag1:[],sdmhp:[1,6],applytuplegetfunc:[],tutb:[],wave:0,nonempti:[0,1,7,8,9,4],removeduplicatetuples_:[],btinpmat:8,untouch:8,tri:8,multidimens:8,dtlsminmaxk:[],getinitialset:[],"try":8,mellobj:0,fgetfil:8,s_chapter05_section01_snippet02:[],fabstolfun:8,vehicl:0,repres:[0,8,9,4,1],smaller:1,raiffa:9,natur:7,istherevec:8,setconf:1,download:6,resellvec:8,gield:8,click:6,pgagarinov:[],getboundarybyfactor:[],index:[3,0,8],compar:[3,8],maxminbk:[],henceforth:7,experiment:9,impuls:9,fgetalpha:8,imaginari:9,fwdtight:[],dim21siz:8,isjustcheck:[0,8,1],let:[0,8,4],meet:[7,9],vertic:[0,8,9,1],sinc:[7,1],var2007:[7,9],remark:[7,4],eprojtyp:[3,8,1],cybernet:[8,4],dvec:[0,8],myellipsoid:8,minksumia:[],firstelltub:3,chang:[0,6,2,1,7,8,4],lubi4ig:[],centervec:8,neededpropnamelist:8,eta_l:[],apr:[],appli:[0,8,1],approxim:[0,3,1,7,8,9,4],fieldname1:8,inequ:8,getodesolvernam:[],removetuples_:[],inmaxolr:[],copyhparr:8,sortbyalongdim:[],funcout1arr:8,from:[0,6,3,1,7,8,9,4],usa:0,bckinclus:[],doubl:[],next:[3,9,1,6],implic:4,myellshapemat:8,plot_ea:[8,1],lambda_i:[],rsarr:8,sort:[8,1],comparison:[0,8],curdirmat:8,maxminvfbk:[],fieldnamen:8,getisfieldvaluenull_:[],polyarr:8,getter:[8,1],myellmat:8,wronginput:[],lambda_1:[],"_elltool":[],"3x51":1,uncertcalc:8,cambridg:4,thin:3,outellvec:8,fwdextminmax2:[],fwdextminmax1:[],proof:4,control:[0,6,1,7,8,9,4],tau:[],doescontainpoli:8,process:6,distdimarr:8,getmove2origin:[],high:[8,9,4,6],showal:8,proprietari:8,showdiscret:8,fromstructlist:[],reorderdata:[],unionwithalongdim_:[],geomhp:2,filepath:8,ellipsoiddef:[],vvec:0,thrall:9,infeas:8,minmaxk:[],probdynobjsys1:8,instead:[3,8],sin:[3,0,8,1],secrsobj:[0,1],conttribut:9,frac:[],apprx:0,singular:[7,9,4],overapproxim:[8,9],firsthpobj:8,simulink:2,nkeyfield:8,cellfun:8,notebook:9,statedimarr:8,reachobj:8,fullout:8,dokladi:4,filtervaluevec:8,correspond:[0,1,7,8,9,4],element:[3,8,4,1],issu:7,bpgridmat:8,allow:[0,3,1,7,8,9],eaellmat:8,adjust:8,crsobjvec:0,ouput:8,move:8,elltubeprojbas:[],outer:8,chosen:[7,8],isnintersectedarr:8,sfieldnicenam:8,figuregroupkeysufffunc:0,nspacepartpoin:8,ndim1:8,outel:8,ndim2:8,minksum:[],greater:[8,1],zonohp:9,nonneg:1,getabstol:[],wolfgang:9,cover:4,federico:8,mention:3,plotbyea:[],rescarrai:8,intersection_ia:[],copyellvec:8,ellmarr:8,sdataarr:8,ndimn:8,edit:[],confrepomgr:8,mode:[0,8],disregard:8,tdang:9,subset:8,kuntsevich:2,ellnarrai:3,amat2:8,strip:4,resrho:8,geqslantt_0:[],meta:8,"static":[3,8,1],subsec:[],rossiiskoi:4,special:[8,9,4,1],out:[3,0,8,9,1],variabl:[3,7,8,4,1],bckext1:[],semidist:7,your:6,auxchecks:[],suitabl:[0,8,9],nvalu:8,s_i:[],"_default":8,ref:[],reg:8,red:[0,8],hyph:8,ellbndr_2d:[],sys_t:1,springmassfig:[],newendtim:8,objmat:8,isposarr:8,sys_d:1,dmat:8,bigcup_:[],colornspec:8,hypconst:8,tomat_:[],s_2:[],could:[8,1],gccvec:1,ask:7,keep:[3,7,8],length:[0,8,1],howev:[7,8,9,4,1],outsid:[4,1],geometri:[8,9,6],firstsi:0,ndim:[3,8,1],computemod:8,third:8,maxminvfb1:[],simutan:8,date:[],fusion2:[],checkmat:9,cvxr:6,gettuplesjoinedwith_:[],seidel:9,ndir:8,gir2005:9,unknown:0,adjoint:7,messag:8,grow:[0,9],dynamicrel:8,dim12siz:8,supvec:8,bpmat:8,termin:[7,0,1],siam:[8,1],nelldim:8,"final":[3,9,4,1],sdpt3hp:6,juli:[],diminish:9,exactli:[8,9,1],firstellobj:[8,1],bloat:[9,1],split:[0,8],structur:[8,9,1],charact:8,becom:[7,9,4],steer:[7,9],secclassdescr:[],peform:8,nfacepoint:8,have:[0,3,1,7,8,9,4],close:[7,0,9,4],need:[3,8,9,1,6],setreltol:[],upravleniya:4,ellresvec:8,color2spec:8,smallest:8,min:[0,8],accuraci:[7,9,1],secellarr:8,mix:6,tempmat:8,copyrsobj:8,which:[0,3,1,7,8,9,4],conclud:0,hyparr:8,subject:[8,4],hwreachfig:[],singl:[0,8,9,1],mcgill:9,btmat:8,oject:[],ellarrai:[3,1],regr:8,xarr:8,sun2003:0,dariyn:4,dmitri:[],segment:[0,8,1],"class":[0,6,7,8,9,4],dimn1siz:8,chap_exampl:[],r_1:[],getuniquedata_:[],request:[7,8,9],face:8,snapshot:0,determin:[0,1,7,8,9,4],constrain:[8,4],addtupl:[],axminolbr:[],fact:[7,0,4],prevabstol:8,dimhyp:8,watch:[],tractabl:4,kitworkshop:9,inductor:0,s_time:8,longer:1,trivial:4,indnonemptyvec:0,outhyparr:8,tau_k:[],cutobjarr:8,bmat2:8,gettuplesfilteredby_:[],should:[3,0,8,4,1],jan:[],vboundsel:8,jam:0,suppos:[0,8],statdyn:[],discontinu:7,sortbyalongdim_:[],cube:8,convert:[7,8,9,1],getfieldtypespeclist:[],getsortindex:[],piecewis:[7,9,4],bckadjointd:[],"_backward_reach_set_proj3":0,increas:[0,9],nmaxdim:8,leqslant:[],groupbycolumn:8,internalellmat:1,organ:9,initbyemptydataset_:[],maxtoler:[3,8],y_1:[],crsexternalellmat:0,fourthellobj:[8,1],gbt:2,nauk:4,integr:7,partit:8,contain:[],view:1,ellbndr_3d:[],secondelltub:3,legaci:8,"1end":[],knowledg:7,nsubspdim:8,sortdim:8,gmail:[],abstolvec:8,statu:8,correctli:4,ellinvobj:8,boundari:[7,0,8,9,4],reldataobj:8,inpellvec:8,indbackwardvec:8,state:[7,0,8,9,4],theta:[],neither:4,equiv:[],datachangeiscomplet:8,kei:8,color1spec:8,entir:7,velu:[0,8],cenmat:8,otherrel:8,hyperref:[],instant:[7,8,1],dim1:8,equal:[3,8,4,1],etc:8,instanc:8,equat:[0,1,7,8,9,4],freeli:6,isequalarr:8,comment:4,uct:[],x_c:[],wall:2,plotea:[],x_m:[],arriv:0,x_i:[],rlcreachfig:[],respect:[3,7,8,4],axminolr:[],krogh:9,sumvec:8,divid:[3,0],stur1999:[1,6],compos:8,inpcuben:8,removetupl:[],compon:8,defini:8,besid:9,treat:[7,8,4,1],getnplot3dpoint:[],trajectori:[7,8,9,1],reachobjarr:8,dure:[0,8,9],fromellarrayelltub:[3,1],presenc:[7,8],getreachtubeaneprefix:8,thirdrsobj:1,x_4:[],x_2:[],togeth:9,relationdataplott:[3,0,8,1],x_1:[],lsgooddirorigvec:[3,8],ndim3:8,present:[7,0,8,9,2],getctmat:[],replic:8,multi:[8,9,1,6],therefor:4,plain:8,align:4,cuttimepoint:3,rectangular:9,defin:[0,6,3,1,7,8,9,4],decreas:0,isproj:8,observ:0,timebound:8,cell:[0,8],demo:6,mtime:[],isconsistencycheck:8,ros_sabater_thomas_en_ellipsoidal_calculus_based_on_propagation_and_fus:[],curtimelimvec:0,avi:9,daniil:[],getdim:[],internalellobj:1,scienc:[7,9,1],proport:4,insight:9,cross:0,sqrt:8,handl:8,rlceq:[],newelltub:1,oint:4,largest:7,atransmat:1,infer:8,difficult:8,justenterrr:[],phi:[],ball:[0,8,4,1],http:[8,9,1,6],denot:[7,4],maxminvf:[],orth:3,effect:[7,0,9,6],getdiagmat:[],isdisturbancearr:8,iseq:8,qcqp:[8,4],outputtyp:8,isuniquenam:8,off:[0,1],center:[0,3,1,7,8,9,4],tempmatobj:8,x0ell:8,ismembertuples_:[],well:[7,0,9,1],command:[8,1,6],interpol:3,getfieldproject:[],ltgooddirnormorigprojvec:3,usual:1,spmass1:[],spmass2:[],distanc:[],less:[8,4,1],cauchi:7,obtain:[0,6,1,7,8,9,4],detail:[8,1],gettuplesfilteredbi:[],horizon:1,assur:9,inpellarr:8,fieldvaluevec:8,simultan:4,ismemberalongdim_:[],isdegener:[],funcoutnarr:8,tight:[7,8,9,4],add:[3,8],toolboxl:9,gant1960:4,densiti:[0,1],firstpsobj:0,match:8,secondsi:0,piec:8,thirdellobj:[8,1],avis1997:9,five:1,know:[7,4],press:[9,4],spmassl:[],dim11siz:8,desc:8,like:[7,5,9,1,6],ver2001:2,get_iascalefactor:8,grdhyp:0,necessari:[0,1],ismemberalongdim:[],drsobj:8,lose:1,soft:9,page:[9,1],nplotfield:8,npoint:[3,8,1],mdfieldnamelist:8,thiel:9,fromqmscaledarrai:[],repeat:9,grieder:1,convex:[7,0,8,9,4],secpolyarr:8,guarante:7,isconvertedtocel:8,librari:[8,9],sergei:[],lead:7,isflagon:8,avoid:[7,4],intprobdynlist:8,fwdinclus:[],sqzellobj:1,leav:[3,8],getl0mat:[],sequenc:[8,1],ispositivevec:8,setfield:[],fusion1:[],gamma_m:[],encourag:5,journal:[8,9,1],"enum":[3,8,1],usag:[3,8],although:[4,2],unionwithalongdim:[],getuniquedata:[],checkism:[],fusion4:[],about:[6,3,1,7,8,9,4],actual:[0,8,1],column:[8,9,4,1],constructor:[8,1],fals:[3,0,8,1],qvec:8,own:3,indproj2origvec:[3,8],propnamen:8,secsi:0,diagon:[8,4],guard:[0,2],getuniquetuples_:[],mere:1,ltgooddirnormvec:[3,8],mltidimension:8,pictur:8,somearg:8,distvec:8,inner:[7,8,4],biggest:[8,4],hpobj:8,stai:8,beta2:[],sq_2:[],interest:1,distvalarrai:8,sedumi:[1,6],isvaluenullvec:8,highest:8,bug:[],nullreplac:8,nboundpoint:8,wise:8,whether:[3,7,8,9,1],scalefactor:[3,8],displai:[],plotbyia:[],record:8,below:3,limit:[7,8,9,2],indefinit:7,ind_s_tim:8,ireach:8,otherwis:[7,8,1],getelltubeunionrel_:[],secpolymat:8,evalu:[9,4,1],inv:[],q_l:[],q_k:[],extprobdynamicslist:8,q_i:[],novemb:[],"1x1":8,calculet:8,oplu:[],mrow:8,nonetheless:0,minkmppic:[],estim:[0,9],isverbos:[8,1],setisverbos:[],projstimemat:8,keyfieldnamelist:8,other:[0,3,1,7,8,4],futur:9,jointyp:8,newsi:8,shparr:8,sv_2:[],stat:[],dtsystem:[],june:[],hausdorff:7,q_3:[],q_2:[],q_1:[],ubc:9,getnplot2dpoint:[],matrix:[3,1,7,8,9,4],notdefin:3,nrow:8,reliabl:[7,6],rule:8,y_c:[],ode45:[8,1],invari:[7,0,8,9,4]},objtypes:{},objnames:{},filenames:["chap_examples","chap_implement","chap_summary","chap_ellTube","chap_ellcalc","chap_acknowledge","chap_install","chap_reach","chap_functions","chap_intro","main_manual"],titles:["Examples","Implementation","Summary
and
Outlook","Ellipsoid tubes and touching curves","Ellipsoidal
Calculus","Acknowledgement","Installation","Reachability","Function
Reference","Introduction","Welcome to Ellipsoidal Toolbox
documentation!"],objects:{},titleterms:{disp:8,getisjustcheck:8,isfield:8,distanc:8,getelltuberel:8,disponui:8,minkmp_ea:8,hybrid:0,removeduplicatetupl:8,getfieldisvaluenul:8,getmindimensions:8,gettuplesfilteredbi:8,getiascalefactor:8,doescontain:8,getswitchtimevec:8,getproperti:8,getintprobdynamicslist:8,touch:3,smartdb:8,parseprop:8,affin:4,paramet:8,getproject:8,isequ:8,cut:8,isdegener:8,ellipsoid:[0,3,10,1,7,8,4],hpintersect:8,minksum_ea:8,getisregen:8,ellapx:8,getcent:8,init:8,writetoxl:8,bibliographi:[],minkdiff:8,linsysdiscret:8,getnocatorcutfieldslist:8,calcgrid:8,setfield:8,iscut:8,setnplot2dpoint:8,minksum:8,applysetfunc:8,initbynulldataset:8,isintern:8,rel:8,cleardata:8,plotint:8,getabstol:8,applytuplegetfunc:8,getrhoboundarybyfactor:8,todispcel:8,genellipsoid:8,tocellisnul:8,getsortindex:8,mpt:6,volum:[8,4],move2origin:8,ellintersection_ia:8,toolbox:10,intersection_ia:8,subseteq:[],introduct:9,disturb:[7,0],getmove2origin:8,writetocsv:8,elluniontubestaticproj:[3,8],isproject:8,saveobj:8,getreltol:8,shape:8,getfieldtypelist:8,exampl:0,ismemberalongdim:8,getvers:8,contain:[8,4],quick:6,getellarrai:8,setntimegridpoint:8,getboundari:8,summari:2,getshapemat:8,reachfactori:8,properti:[8,1],transform:4,getregtol:8,core:8,getreachtubenameprefix:8,acknowledg:5,dimens:8,interp:8,continu:7,getinitialset:8,ellunion_ea:8,islti:8,checkism:8,copyfrom:8,fromstructlist:8,getboundarybyfactor:8,intersection_ea:8,get_system:8,repmat:8,fromelltub:8,adddataalongdim:8,linsysfactori:8,maxeig:8,tube:[3,1],typifiedbyfieldcoderel:3,label:[],content:8,get_cent:8,evolv:8,sortbyalongdim:8,intersect:[8,4],linsyscontinu:8,plotea:8,method:7,refer:8,checkset:8,thinouttupl:8,ellbndr_2d:8,isempti:8,ismembertupl:8,isinsid:8,setdata:8,notion:4,elltubeprojbas:3,minkpm_ia:8,projectstat:8,unionwithalongdim:8,getnfield:8,topolytop:8,problem:7,minkmp:8,addit:6,q_1:[],getrhoboundari:8,getctmat:8,minksumea:8,getjoinwith:8,fromellarrai:8,getuboundsel:8,minksumia:8,getfieldtypespeclist:8,minkcommonact:8,projmat2str:8,minkdiff_ea:8,getodesolvernam:8,isbigg:8,fromellmarrai:8,getgooddirsetlist:8,implement:1,system:[7,0],q_2:[],oper:[4,1],softwar:6,outlook:2,geteigvmat:8,atypifiedstaticrel:8,ellbndr_3d:8,elltub:[3,8],uminu:8,getchecktol:8,getisfieldvaluenul:8,minksum_ia:8,toarrai:8,get_direct:8,calculu:4,gettvec:8,getntimegridpoint:8,getisenabledodesolveropt:8,hyperplan:[8,4,1],getdistboundsel:8,elltubebas:3,getl0mat:8,plot:8,differ:4,getuniquedata:8,elltool:8,union:3,reachdiscret:8,doubl:8,getshap:8,createsysinst:8,removetupl:8,elltubeproj:[3,8],start:6,get_ea:8,gra:8,getdiagmat:8,basic:[7,4],getmindimension:8,getnelem:8,instal:6,fromqmscaledarrai:8,"function":8,project:8,get_goodcurv:8,gettuplesjoinedwith:8,relat:8,getinv:8,elluniontub:[3,8],fromqmarrai:8,indic:[],elltubetouchcurveprojbas:3,get_ia:8,visual:1,getfieldnamelist:8,getdata:8,gettupl:8,getuniquedataalongdim:8,getnplot3dpoint:8,getfieldvaluesizemat:8,getfieldisnul:8,minkdiff_ia:8,createinst:8,unionwith:8,plotext:8,getcentervec:8,tostruct:8,maximum:4,cat:8,plotbyia:8,initbyemptydataset:8,displai:8,time:7,isuniquekei:8,getisverbos:8,halfspac:4,areach:8,curv:3,reachabl:[7,1],getisodenormcontrol:8,creat:8,getx0el:8,inv:8,mtime:8,reach:8,adddata:8,minkdiffea:8,getuniquetupl:8,minimum:4,tabl:[],gettuplesindexedbi:8,conf:8,getpropstruct:8,getdim:8,polytop:0,reorderdata:8,getelltubeunionrel:8,minu:8,isbackward:8,minkpm_ea:8,enc:[],projecttoorth:8,tomat:8,cvx:6,anoth:4,texorpdfstr:[],getcopi:8,reachcontinu:8,setisverbos:8,check:4,fromrepmat:8,discret:7,linsi:8,plotia:8,hasdisturb:8,sortbi:8,getisgooddir:8,document:10,subsec_ellcontain:[],analysi:7,polar:8,getatmat:8,minkpm:8,getsystemlist:8,trace:8,isparallel:8,tocel:8,elltubetouchcurvebas:3,clone:8,mineig:8,getextprobdynamicslist:8,setconfrepomgr:8,fromstruct:8,getntupl:8,alinsi:8,getfieldproject:8,minkdiffia:8,scale:8,isbaddirect:8,rho:8,refin:8,applygetfunc:8,"class":3,welcom:10,getbtmat:8,getlinsi:8,getfielddescrlist:8,geteascalefactor:8,doesintersectioncontain:8,minkmp_ia:8,elluniontubebas:3,setreltol:8,fromqarrai:8,"switch":0,without:7,geometr:4,getregtubenameprefix:8,getconfrepomgr:8,elltool_manu:[],plu:8,plotbyea:8,getnplot2dpoint:8,addtupl:8,sum:4,sortdetermenist:8,projrow2str:8}})
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/latex/elltool_manual.tex Fri
Nov 22 16:39:07 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/latex/elltool_manual.tex Mon
Feb 24 20:40:31 2014 UTC
@@ -17,7 +17,7 @@
\title{Ellipsoidal Toolbox}
-\date{November 22, 2013}
+\date{February 25, 2014}
\release{2.0 beta 1}
\author{Peter Gagarinov, Alex A. Kurzhanskiy}
\newcommand{\sphinxlogo}{}
@@ -165,43 +165,43 @@
calculating their convex hull. MPT's convex hull algorithm is based on
the Double Description method
{\hyperref[chap_intro:motz1953]{{[}MOTZ1953{]}}} and implemented in
the CDD/CDD+ package {\hyperref[chap_intro:cddhp]{{[}CDDHP{]}}}. Its
complexity is
-$V^n$, where $V$ is the number of vertices and $n$ is
+\(V^n\), where \(V\) is the number of vertices and \(n\) is
the state space dimension. Hence the use of MPT is practicable for low
dimensional systems. But even in low dimensional systems the number of
vertices in the reach set polytope can grow very large with the number
of time steps. For example, consider the system,
\begin{gather}
-\begin{split}x_{k+1} = Ax_k +
u_k ,\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}x_{k+1} = Ax_k + u_k ,\end{split}\notag
\end{gather}
-with $A=\left[\begin{array}{cc}\cos 1 & -\sin 1\\ \sin 1 & \cos
1\end{array}\right]$,
-$\ u_k \in \{u\in {\bf R}^2 ~|~ \|u\|_{\infty}\leqslant1\}$,
-and $x_0 \in \{x\in {\bf R}^2 ~|~ \|x\|_{\infty}\leqslant1\}$.
+with \(A=\left[\begin{array}{cc}\cos 1 & -\sin 1\\ \sin 1 & \cos
1\end{array}\right]\),
+\(\ u_k \in \{u\in {\bf R}^2 ~|~ \|u\|_{\infty}\leqslant1\}\),
+and \(x_0 \in \{x\in {\bf R}^2 ~|~ \|x\|_{\infty}\leqslant1\}\).
Starting with a rectangular initial set, the number of vertices of the
-reach set polytope is $4k + 4$ at the $k$th step.
+reach set polytope is \(4k + 4\) at the \(k\)th step.
-In $d/dt$ {\hyperref[chap_intro:ddthp]{{[}DDTHP{]}}}, the reach set is
approximated by
+In \(d/dt\) {\hyperref[chap_intro:ddthp]{{[}DDTHP{]}}}, the reach set is
approximated by
unions of rectangular polytopes
{\hyperref[chap_intro:asar2000]{{[}ASAR2000{]}}}.
\begin{figure}[htbp]
\centering
\capstart
\includegraphics{chapter01_ddt.png}
-\caption{Reach set approximation by union of rectangles. Source: adapted
from
{\hyperref[chap_intro:asar2000]{{[}ASAR2000{]}}}.}\label{chap_intro:ddtfig}\end{figure}
+\caption{Figure 14: Reach set approximation by union of rectangles.
Source: adapted from
{\hyperref[chap_intro:asar2000]{{[}ASAR2000{]}}}.}\label{chap_intro:ddtfig}\end{figure}
The algorithm works as follows. First, given the set of initial
conditions defined as a polytope, the evolution in time of the
polytope's extreme points is computed
(\hyperref[chap_intro:ddtfig]{figure \ref*{chap_intro:ddtfig}} (a)).
-$R(t_1)$ in \hyperref[chap_intro:ddtfig]{figure \ref*{chap_intro:ddtfig}}
(a) is the reach set of the system at
-time $t_1$, and $R[t_0, t_1]$ is the set of all points that
-can be reached during $[t_0, t_1]$. Second, the algorithm computes
+\(R(t_1)\) in \hyperref[chap_intro:ddtfig]{figure
\ref*{chap_intro:ddtfig}} (a) is the reach set of the system at
+time \(t_1\), and \(R[t_0, t_1]\) is the set of all points that
+can be reached during \([t_0, t_1]\). Second, the algorithm computes
the convex hull of vertices of both, the initial polytope and
-$R(t_1)$ (\hyperref[chap_intro:ddtfig]{figure \ref*{chap_intro:ddtfig}}
(b)). The resulting polytope is then
-bloated to include all the reachable states in $[t_0,t_1]$
(\hyperref[chap_intro:ddtfig]{figure \ref*{chap_intro:ddtfig}} (c)).
+\(R(t_1)\) (\hyperref[chap_intro:ddtfig]{figure \ref*{chap_intro:ddtfig}}
(b)). The resulting polytope is then
+bloated to include all the reachable states in \([t_0,t_1]\)
(\hyperref[chap_intro:ddtfig]{figure \ref*{chap_intro:ddtfig}} (c)).
Finally, this overapproximating polytope is in its turn
overapproximated by the union of rectangles
(\hyperref[chap_intro:ddtfig]{figure \ref*{chap_intro:ddtfig}} (d)). The
-same procedure is repeated for the next time interval $[t_1,t_2]$,
+same procedure is repeated for the next time interval \([t_1,t_2]\),
and the union of both rectangular approximations is taken
(\hyperref[chap_intro:ddtfig]{figure \ref*{chap_intro:ddtfig}} (e,f)),
and so on. Rectangular polytopes are easy to represent
and the number of facets grows linearly with dimension, but a large
@@ -224,20 +224,20 @@
\begin{split}Z=\{x \in {\bf R}^n ~|~
x=c+\sum_{i=1}^p\alpha_ig_i,~
-1\leqslant\alpha_i\leqslant1\},\end{split}\notag
\end{gather}
-wherein $c$ and $g_1, ..., g_p$ are vectors in
-${\bf R}^n$. Thus, a zonotope $Z$ is represented by its
-center $c$ and 'generator' vectors $g_1, ..., g_p$. The
-value $p/n$ is called the order of the zonotope. The main benefit
+wherein \(c\) and \(g_1, ..., g_p\) are vectors in
+\({\bf R}^n\). Thus, a zonotope \(Z\) is represented by its
+center \(c\) and 'generator' vectors \(g_1, ..., g_p\). The
+value \(p/n\) is called the order of the zonotope. The main benefit
of zonotopes over general polytopes is that a symmetric polytope can be
represented more compactly than a general polytope. The geometric sum of
two zonotopes is a zonotope:
\begin{gather}
-\begin{split}Z(c_1, G_1)\oplus Z(c_2, G_2) = Z(c_1+c_2, [G_1 ~
G_2]),\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}Z(c_1, G_1)\oplus Z(c_2, G_2) = Z(c_1+c_2, [G_1 ~
G_2]),\end{split}\notag
\end{gather}
-wherein $G_1$ and $G_2$ are matrices whose columns are
-generator vectors, and $[G_1 ~ G_2]$ is their concatenation. Thus,
+wherein \(G_1\) and \(G_2\) are matrices whose columns are
+generator vectors, and \([G_1 ~ G_2]\) is their concatenation. Thus,
in the reach set computation, the order of the zonotope increases by
-$p/n$ with every time step. This difficulty can be averted by
+\(p/n\) with every time step. This difficulty can be averted by
limiting the number of generator vectors, and overapproximating
zonotopes whose number of generator vectors exceeds the limit by lower
order zonotopes. The benefits of the compact zonotype representation,
@@ -278,20 +278,20 @@
linear system, the set of initial conditions and control bounds,
symbolically computes the exact reach set, using the experimental
quantifier elimination package. Quantifier elimination is the removal of
-all quantifiers (the universal quantifier $\forall$ and the
-existential quantifier $\exists$) from a quantified system. Each
+all quantifiers (the universal quantifier \(\forall\) and the
+existential quantifier \(\exists\)) from a quantified system. Each
quantified formula is substituted with quantifier-free expression with
-operations $+$, $\times$, $=$ and $<$. For
+operations \(+\), \(\times\), \(=\) and \(<\). For
example, consider the discrete-time system
\begin{gather}
-\begin{split}x_{k+1} = Ax_k +
Bu_k\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}x_{k+1} = Ax_k + Bu_k\end{split}\notag
\end{gather}
-with $A=\left[\begin{array}{cc}0 & 1\\0 & 0\end{array}\right]$
-and $B=\left[\begin{array}{c}0\\1\end{array}\right]$.
+with \(A=\left[\begin{array}{cc}0 & 1\\0 & 0\end{array}\right]\)
+and \(B=\left[\begin{array}{c}0\\1\end{array}\right]\).
-For initial conditions $x_0\in\{x\in {\bf R}^2 ~|~ \|x\|_{\infty}
\leqslant1\}$ and
-controls $u_k\in\{u\in {\bf R} ~|~ -1\leqslant u\leqslant1\}$, the
-reach set for $k\geqslant0$ is given by the quantified formula
+For initial conditions \(x_0\in\{x\in {\bf R}^2 ~|~ \|x\|_{\infty}
\leqslant1\}\) and
+controls \(u_k\in\{u\in {\bf R} ~|~ -1\leqslant u\leqslant1\}\), the
+reach set for \(k\geqslant0\) is given by the quantified formula
\begin{gather}
\begin{split}\{ x\in{\bf R}^2 ~|~ \exists x_0, ~~ \exists k\geqslant0, ~~
\exists u_i, ~ 0\leqslant i\leqslant k: ~~
@@ -299,11 +299,11 @@
\end{gather}
which is equivalent to the quantifier-free expression
\begin{gather}
-\begin{split}-1\leqslant[1 ~~ 0]x\leqslant1 ~ \wedge ~ -1\leqslant[0 ~~
1]x\leqslant1.\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}-1\leqslant[1 ~~ 0]x\leqslant1 ~ \wedge ~ -1\leqslant[0 ~~
1]x\leqslant1.\end{split}\notag
\end{gather}
It is proved in {\hyperref[chap_intro:laff2001]{{[}LAFF2001{]}}} that for
-continuous-time systems, $\dot{x}(t) = Ax(t) + Bu(t)$, if
-$A$ is constant and nilpotent or is diagonalizable with rational
+continuous-time systems, \(\dot{x}(t) = Ax(t) + Bu(t)\), if
+\(A\) is constant and nilpotent or is diagonalizable with rational
real or purely imaginary eigenvalues, and with suitable restrictions on
the control and initial conditions, the quantifier elimination package
returns a quantifier free formula describing the reach set. Quantifier
@@ -373,47 +373,47 @@
\label{chap_ellcalc:basic-notions}
We start with basic definitions.
-\textbf{Definition.} Ellipsoid ${\mathcal E}(q,Q)$ in
-${\bf R}^n$ with center $q$ and shape matrix $Q$ is
+\textbf{Definition.} Ellipsoid \({\mathcal E}(q,Q)\) in
+\({\bf R}^n\) with center \(q\) and shape matrix \(Q\) is
the set
\phantomsection\label{chap_ellcalc:equation-ellipsoid}\begin{gather}
\begin{split}{\mathcal E}(q,Q) = \{ x \in {\bf R}^n ~|~ \langle (x-q),
Q^{-1}(x-q)\rangle\leqslant1 \},\end{split}\label{chap_ellcalc-ellipsoid}
\end{gather}
-wherein $Q$ is positive definite ($Q=Q^T$ and
-$\langle x, Qx\rangle>0$ for all nonzero $x\in{\bf R}^n$).
-Here $\langle\cdot,\cdot\rangle$ denotes inner
+wherein \(Q\) is positive definite (\(Q=Q^T\) and
+\(\langle x, Qx\rangle>0\) for all nonzero \(x\in{\bf R}^n\)).
+Here \(\langle\cdot,\cdot\rangle\) denotes inner
product.
\textbf{Definition.} The support function of a set
-${\mathcal X}\subseteq{\bf R}^n$ is
+\({\mathcal X}\subseteq{\bf R}^n\) is
\begin{gather}
-\begin{split}\rho(l~|~{\mathcal X}) = \sup_{x\in{\mathcal X}} \langle
l,x\rangle.\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}\rho(l~|~{\mathcal X}) = \sup_{x\in{\mathcal X}} \langle
l,x\rangle.\end{split}\notag
\end{gather}
In particular, the support function of the ellipsoid
\eqref{chap_ellcalc-ellipsoid} is
\phantomsection\label{chap_ellcalc:equation-ellsupp}\begin{gather}
\begin{split}\rho(l~|~{\mathcal E}(q,Q)) = \langle l, q\rangle + \langle
l, Ql\rangle^{1/2}.\end{split}\label{chap_ellcalc-ellsupp}
\end{gather}
-Although in \eqref{chap_ellcalc-ellipsoid} $Q$ is assumed to be positive
definite,
-in practice we may deal with situations when $Q$ is singular, that
+Although in \eqref{chap_ellcalc-ellipsoid} \(Q\) is assumed to be positive
definite,
+in practice we may deal with situations when \(Q\) is singular, that
is, with degenerate ellipsoids flat in those directions for which the
corresponding eigenvalues are zero. Therefore, it is useful to give an
alternative definition of an ellipsoid using the expression
\eqref{chap_ellcalc-ellsupp}.
-\textbf{Definition.} Ellipsoid ${\mathcal E}(q,Q)$ in ${\bf R}^n$ with
center
-$q$ and shape matrix $Q$ is the set
+\textbf{Definition.} Ellipsoid \({\mathcal E}(q,Q)\) in \({\bf R}^n\) with
center
+\(q\) and shape matrix \(Q\) is the set
\phantomsection\label{chap_ellcalc:equation-ellipsoid2}\begin{gather}
\begin{split}{\mathcal E}(q,Q) = \{ x \in {\bf R}^n ~|~
\langle l,x\rangle\leqslant\langle l,q\rangle + \langle l,Ql\rangle^{1/2}
\mbox{ for all } l\in{\bf R}^n
\},\end{split}\label{chap_ellcalc-ellipsoid2}
\end{gather}
-wherein matrix $Q$ is positive semidefinite ($Q=Q^T$ and
-$\langle x, Qx\rangle\geqslant0$ for all $x\in{\bf R}^n$).
-The volume of ellipsoid ${\mathcal E}(q,Q)$ is
+wherein matrix \(Q\) is positive semidefinite (\(Q=Q^T\) and
+\(\langle x, Qx\rangle\geqslant0\) for all \(x\in{\bf R}^n\)).
+The volume of ellipsoid \({\mathcal E}(q,Q)\) is
\phantomsection\label{chap_ellcalc:equation-ellvolume}\begin{gather}
\begin{split}{\bf Vol}(E(q,Q)) = {\bf Vol}_{\langle
x,x\rangle\leqslant1}\sqrt{\det Q},\end{split}\label{chap_ellcalc-ellvolume}
\end{gather}
-where ${\bf Vol}_{\langle x,x\rangle\leqslant1}$ is the volume of
-the unit ball in ${\bf R}^n$:
+where \({\bf Vol}_{\langle x,x\rangle\leqslant1}\) is the volume of
+the unit ball in \({\bf R}^n\):
\phantomsection\label{chap_ellcalc:equation-ellunitball}\begin{gather}
\begin{split}{\bf Vol}_{\langle x,x\rangle\leqslant1} =
\left\{\begin{array}{ll}
\frac{\pi^{n/2}}{(n/2)!}, &
@@ -421,7 +421,7 @@
\frac{2^n\pi^{(n-1)/2}\left((n-1)/2\right)!}{n!}, &
\mbox{ for odd } n.
\end{array}\right.\end{split}\label{chap_ellcalc-ellunitball}
\end{gather}
-The distance from ${\mathcal E}(q,Q)$ to the fixed point $a$
+The distance from \({\mathcal E}(q,Q)\) to the fixed point \(a\)
is
\phantomsection\label{chap_ellcalc:equation-dist_point}\begin{gather}
\begin{split}{\bf dist}({\mathcal E}(q,Q),a) = \max_{\langle
l,l\rangle=1}\left(\langle l,a\rangle -
@@ -429,15 +429,15 @@
\max_{\langle l,l\rangle=1}\left(\langle l,a\rangle - \langle l,q\rangle -
\langle l,Ql\rangle^{1/2}\right).\end{split}\label{chap_ellcalc-dist_point}
\end{gather}
-If ${\bf dist}({\mathcal E}(q,Q),a) > 0$, $a$ lies outside
-${\mathcal E}(q,Q)$; if
-${\bf dist}({\mathcal E}(q,Q),a) = 0$, $a$ is a boundary
-point of ${\mathcal E}(q,Q)$; if
-${\bf dist}({\mathcal E}(q,Q),a) < 0$, $a$ is an internal
-point of ${\mathcal E}(q,Q)$.
+If \({\bf dist}({\mathcal E}(q,Q),a) > 0\), \(a\) lies outside
+\({\mathcal E}(q,Q)\); if
+\({\bf dist}({\mathcal E}(q,Q),a) = 0\), \(a\) is a boundary
+point of \({\mathcal E}(q,Q)\); if
+\({\bf dist}({\mathcal E}(q,Q),a) < 0\), \(a\) is an internal
+point of \({\mathcal E}(q,Q)\).
-Given two ellipsoids, ${\mathcal E}(q_1,Q_1)$ and
-${\mathcal E}(q_2,Q_2)$, the distance between them is
+Given two ellipsoids, \({\mathcal E}(q_1,Q_1)\) and
+\({\mathcal E}(q_2,Q_2)\), the distance between them is
\phantomsection\label{chap_ellcalc:equation-dist_ell}\begin{gather}
\begin{split}\begin{aligned}
{\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) & = \max_{\langle
l,l\rangle=1}
@@ -447,17 +447,17 @@
\langle l,Q_2l\rangle^{1/2}\right).
\end{aligned}\end{split}\label{chap_ellcalc-dist_ell}
\end{gather}
-If ${\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) > 0$,
+If \({\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) > 0\),
the ellipsoids have no common points; if
-${\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) = 0$, the
+\({\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) = 0\), the
ellipsoids have one common point - they touch; if
-${\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) < 0$, the
+\({\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) < 0\), the
ellipsoids intersect.
-Finding ${\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))$
+Finding \({\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))\)
using QCQP is
\begin{gather}
-\begin{split}d({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) = \min \langle
(x-y), (x-y)\rangle\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}d({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2)) = \min \langle
(x-y), (x-y)\rangle\end{split}\notag
\end{gather}
subject to:
\begin{gather}
@@ -472,45 +472,45 @@
\mbox{ if } {\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))>0, \\
0 & \mbox{ otherwise}. \end{array}\right.\end{split}\notag
\end{gather}
-Checking if $k$ nondegenerate ellipsoids
-${\mathcal E}(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)$ have nonempty
+Checking if \(k\) nondegenerate ellipsoids
+\({\mathcal E}(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)\) have nonempty
intersection, can be cast as a quadratically constrained quadratic
programming (QCQP) problem:
\begin{gather}
-\begin{split}\min 0\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}\min 0\end{split}\notag
\end{gather}
subject to:
\begin{gather}
-\begin{split}\langle (x-q_i),Q_i^{-1}(x-q_i)\rangle - 1 \leqslant0, ~~~
i=1,\cdots,k.\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}\langle (x-q_i),Q_i^{-1}(x-q_i)\rangle - 1 \leqslant0, ~~~
i=1,\cdots,k.\end{split}\notag
\end{gather}
If this problem is feasible, the intersection is nonempty.
-\textbf{Definition.} Given compact convex set ${\mathcal X}\subseteq{\bf
R}^n$, its polar
-set, denoted ${\mathcal X}^\circ$, is
+\textbf{Definition.} Given compact convex set \({\mathcal X}\subseteq{\bf
R}^n\), its polar
+set, denoted \({\mathcal X}^\circ\), is
\begin{gather}
-\begin{split}{\mathcal X}^\circ = \{x\in{\bf R}^n ~|~ \langle
x,y\rangle\leqslant1, ~ y\in{\mathcal
X}\},\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}{\mathcal X}^\circ = \{x\in{\bf R}^n ~|~ \langle
x,y\rangle\leqslant1, ~ y\in{\mathcal X}\},\end{split}\notag
\end{gather}
or, equivalently,
\begin{gather}
-\begin{split}{\mathcal X}^\circ = \{l\in{\bf R}^n ~|~ \rho(l ~|~ {\mathcal
X})\leqslant1\}.\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}{\mathcal X}^\circ = \{l\in{\bf R}^n ~|~ \rho(l ~|~ {\mathcal
X})\leqslant1\}.\end{split}\notag
\end{gather}
The properties of the polar set are
\begin{itemize}
\item {}
-If ${\mathcal X}$ contains the origin,
-$({\mathcal X}^\circ)^\circ = {\mathcal X}$;
+If \({\mathcal X}\) contains the origin,
+\(({\mathcal X}^\circ)^\circ = {\mathcal X}\);
\item {}
-If ${\mathcal X}_1\subseteq{\mathcal X}_2$,
-${\mathcal X}_2^\circ\subseteq{\mathcal X}_1^\circ$;
+If \({\mathcal X}_1\subseteq{\mathcal X}_2\),
+\({\mathcal X}_2^\circ\subseteq{\mathcal X}_1^\circ\);
\item {}
-For any nonsingular matrix $A\in{\bf R}^{n\times n}$,
-$(A{\mathcal X})^\circ = (A^T)^{-1}{\mathcal X}^\circ$.
+For any nonsingular matrix \(A\in{\bf R}^{n\times n}\),
+\((A{\mathcal X})^\circ = (A^T)^{-1}{\mathcal X}^\circ\).
\end{itemize}
-If a nondegenerate ellipsoid ${\mathcal E}(q,Q)$ contains the
+If a nondegenerate ellipsoid \({\mathcal E}(q,Q)\) contains the
origin, its polar set is also an ellipsoid:
\begin{gather}
\begin{split}\begin{aligned}
@@ -523,17 +523,17 @@
\end{gather}
The special case is
\begin{gather}
-\begin{split}{\mathcal E}^\circ(0,Q) = {\mathcal
E}(0,Q^{-1}).\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}{\mathcal E}^\circ(0,Q) = {\mathcal
E}(0,Q^{-1}).\end{split}\notag
\end{gather}
-\textbf{Definition.} Given $k$ compact sets
-${\mathcal X}_1, \cdots, {\mathcal X}_k\subseteq{\bf R}^n$, their
+\textbf{Definition.} Given \(k\) compact sets
+\({\mathcal X}_1, \cdots, {\mathcal X}_k\subseteq{\bf R}^n\), their
geometric (Minkowski) sum is
\phantomsection\label{chap_ellcalc:equation-minksum}\begin{gather}
\begin{split}{\mathcal X}_1\oplus\cdots\oplus{\mathcal
X}_k=\bigcup_{x_1\in{\mathcal X}_1}\cdots\bigcup_{x_k\in{\mathcal X}_k}
\{x_1 + \cdots + x_k\} .\end{split}\label{chap_ellcalc-minksum}
\end{gather}
\textbf{Definition.} Given two compact sets
-${\mathcal X}_1, {\mathcal X}_2 \subseteq{\bf R}^n$, their
+\({\mathcal X}_1, {\mathcal X}_2 \subseteq{\bf R}^n\), their
geometric (Minkowski) difference is
\phantomsection\label{chap_ellcalc:equation-minkdiff}\begin{gather}
\begin{split}{\mathcal X}_1\dot{-}{\mathcal X}_2 = \{x\in{\bf R}^n ~|~ x +
{\mathcal X}_2 \subseteq {\mathcal X}_1
\}.\end{split}\label{chap_ellcalc-minkdiff}
@@ -564,33 +564,33 @@
external and internal approximations of intersections of ellipsoids with
hyperplanes, halfspaces and polytopes.
-\textbf{Definition.} Hyperplane $H(c,\gamma)$ in
-${\bf R}^n$ is the set
+\textbf{Definition.} Hyperplane \(H(c,\gamma)\) in
+\({\bf R}^n\) is the set
\phantomsection\label{chap_ellcalc:equation-hyperplane}\begin{gather}
\begin{split}H = \{x\in{\bf R}^n ~|~ \langle c, x\rangle =
\gamma\}\end{split}\label{chap_ellcalc-hyperplane}
\end{gather}
-with $c\in{\bf R}^n$ and $\gamma\in{\bf R}$ fixed.
-The distance from ellipsoid ${\mathcal E}(q,Q)$ to
-hyperplane $H(c,\gamma)$ is
+with \(c\in{\bf R}^n\) and \(\gamma\in{\bf R}\) fixed.
+The distance from ellipsoid \({\mathcal E}(q,Q)\) to
+hyperplane \(H(c,\gamma)\) is
\phantomsection\label{chap_ellcalc:equation-dist_hp}\begin{gather}
\begin{split}{\bf dist}({\mathcal E}(q,Q),H(c,\gamma)) =
\frac{\left|\gamma-\langle c,q\rangle\right| -
\langle c,Qc\rangle^{1/2}}{\langle
c,c\rangle^{1/2}}.\end{split}\label{chap_ellcalc-dist_hp}
\end{gather}
-If ${\bf dist}({\mathcal E}(q,Q),H(c,\gamma))>0$, the ellipsoid
+If \({\bf dist}({\mathcal E}(q,Q),H(c,\gamma))>0\), the ellipsoid
and the hyperplane do not intersect; if
-${\bf dist}({\mathcal E}(q,Q),H(c,\gamma))=0$, the hyperplane is a
+\({\bf dist}({\mathcal E}(q,Q),H(c,\gamma))=0\), the hyperplane is a
supporting hyperplane for the ellipsoid; if
-${\bf dist}({\mathcal E}(q,Q),H(c,\gamma))<0$, the ellipsoid
+\({\bf dist}({\mathcal E}(q,Q),H(c,\gamma))<0\), the ellipsoid
intersects the hyperplane. The intersection of an ellipsoid with a
hyperplane is always an ellipsoid and can be computed directly.
-Checking if the intersection of $k$ nondegenerate ellipsoids
-$E(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)$ intersects hyperplane
-$H(c,\gamma)$, is equivalent to the feasibility check of the QCQP
+Checking if the intersection of \(k\) nondegenerate ellipsoids
+\(E(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)\) intersects hyperplane
+\(H(c,\gamma)\), is equivalent to the feasibility check of the QCQP
problem:
\begin{gather}
-\begin{split}\min 0\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}\min 0\end{split}\notag
\end{gather}
subject to:
\begin{gather}
@@ -607,42 +607,42 @@
\begin{split}{\bf S}_2 = \{x\in{\bf R}^n ~|~ \langle c, x\rangle
\geqslant\gamma\}.\end{split}\label{chap_ellcalc-halfspace2}
\end{gather}
To avoid confusion, however, we shall further assume that a hyperplane
-$H(c,\gamma)$ specifies the halfspace in the sense
\eqref{chap_ellcalc-halfspace1}.
+\(H(c,\gamma)\) specifies the halfspace in the sense
\eqref{chap_ellcalc-halfspace1}.
In order to refer to the other halfspace, the same hyperplane should be
-defined as $H(-c,-\gamma)$.
+defined as \(H(-c,-\gamma)\).
The idea behind the calculation of intersection of an ellipsoid with a
halfspace is to treat the halfspace as an unbounded ellipsoid, that is,
as the ellipsoid with the shape matrix all but one of whose eigenvalues
-are $\infty$.
+are \(\infty\).
-\textbf{Definition.} Polytope $P(C,g)$ is the
+\textbf{Definition.} Polytope \(P(C,g)\) is the
intersection of a finite number of closed halfspaces:
\phantomsection\label{chap_ellcalc:equation-polytope}\begin{gather}
\begin{split}P = \{x\in{\bf R}^n ~|~ Cx\leqslant
g\},\end{split}\label{chap_ellcalc-polytope}
\end{gather}
-wherein $C=[c_1 ~ \cdots ~ c_m]^T\in{\bf R}^{m\times n}$ and
-$g=[\gamma_1 ~ \cdots ~ \gamma_m]^T\in{\bf R}^m$.
+wherein \(C=[c_1 ~ \cdots ~ c_m]^T\in{\bf R}^{m\times n}\) and
+\(g=[\gamma_1 ~ \cdots ~ \gamma_m]^T\in{\bf R}^m\).
The distance
-from ellipsoid ${\mathcal E}(q,Q)$ to the polytope $P(C,g)$
+from ellipsoid \({\mathcal E}(q,Q)\) to the polytope \(P(C,g)\)
is
\phantomsection\label{chap_ellcalc:equation-dist_poly}\begin{gather}
\begin{split}{\bf dist}({\mathcal E}(q,Q),P(C,g))=\min_{y\in P(C,g)}{\bf
dist}({\mathcal E}(q,Q),y),\end{split}\label{chap_ellcalc-dist_poly}
\end{gather}
-where ${\bf dist}({\mathcal E}(q,Q),y)$ comes from
+where \({\bf dist}({\mathcal E}(q,Q),y)\) comes from
({[}dist:sub:\emph{p}oint{]}). If
-${\bf dist}({\mathcal E}(q,Q),P(C,g))>0$, the ellipsoid and the
+\({\bf dist}({\mathcal E}(q,Q),P(C,g))>0\), the ellipsoid and the
polytope do not intersect; if
-${\bf dist}({\mathcal E}(q,Q),P(C,g))=0$, the ellipsoid touches
-the polytope; if ${\bf dist}({\mathcal E}(q,Q),P(C,g))<0$, the
+\({\bf dist}({\mathcal E}(q,Q),P(C,g))=0\), the ellipsoid touches
+the polytope; if \({\bf dist}({\mathcal E}(q,Q),P(C,g))<0\), the
ellipsoid intersects the polytope.
-Checking if the intersection of $k$ nondegenerate ellipsoids
-$E(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)$ intersects polytope
-$P(C,g)$ is equivalent to the feasibility check of the QCQP
+Checking if the intersection of \(k\) nondegenerate ellipsoids
+\(E(q_1,Q_1),\cdots,{\mathcal E}(q_k,Q_k)\) intersects polytope
+\(P(C,g)\) is equivalent to the feasibility check of the QCQP
problem:
\begin{gather}
-\begin{split}\min 0\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}\min 0\end{split}\notag
\end{gather}
subject to:
\begin{gather}
@@ -657,31 +657,31 @@
\subsection{Affine Transformation}
\label{chap_ellcalc:affine-transformation}
The simplest operation with ellipsoids is an affine transformation. Let
-ellipsoid ${\mathcal E}(q,Q)\subseteq{\bf R}^n$, matrix
-$A\in{\bf R}^{m\times n}$ and vector $b\in{\bf R}^m$. Then
+ellipsoid \({\mathcal E}(q,Q)\subseteq{\bf R}^n\), matrix
+\(A\in{\bf R}^{m\times n}\) and vector \(b\in{\bf R}^m\). Then
\phantomsection\label{chap_ellcalc:equation-affinetrans}\begin{gather}
\begin{split}A{\mathcal E}(q,Q) + b = {\mathcal E}(Aq+b,
AQA^T) .\end{split}\label{chap_ellcalc-affinetrans}
\end{gather}
Thus, ellipsoids are preserved under affine transformation. If the rows
-of $A$ are linearly independent (which implies
-$m\leqslant n$), and $b=0$, the affine transformation is
+of \(A\) are linearly independent (which implies
+\(m\leqslant n\)), and \(b=0\), the affine transformation is
called \emph{projection}.
\subsection{Geometric Sum}
\label{chap_ellcalc:geometric-sum}
Consider the geometric sum \eqref{chap_ellcalc-minksum} in which
-${\mathcal X}_1,\cdots$,${\mathcal X}_k$ are nondegenerate
-ellipsoids ${\mathcal E}(q_1,Q_1),\cdots$,
-${\mathcal E}(q_k,Q_k)\subseteq{\bf R}^n$. The resulting set is
+\({\mathcal X}_1,\cdots\),\({\mathcal X}_k\) are nondegenerate
+ellipsoids \({\mathcal E}(q_1,Q_1),\cdots\),
+\({\mathcal E}(q_k,Q_k)\subseteq{\bf R}^n\). The resulting set is
not generally an ellipsoid. However, it can be tightly approximated by
the parametrized families of external and internal ellipsoids.
-Let parameter $l$ be some nonzero vector in ${\bf R}^n$.
-Then the external approximation ${\mathcal E}(q,Q_l^+)$ and the
-internal approximation ${\mathcal E}(q,Q_l^-)$ of the sum
-${\mathcal E}(q_1,Q_1)\oplus\cdots\oplus{\mathcal E}(q_k,Q_k)$ are
-\emph{tight} along direction $l$, i.e.,
+Let parameter \(l\) be some nonzero vector in \({\bf R}^n\).
+Then the external approximation \({\mathcal E}(q,Q_l^+)\) and the
+internal approximation \({\mathcal E}(q,Q_l^-)\) of the sum
+\({\mathcal E}(q_1,Q_1)\oplus\cdots\oplus{\mathcal E}(q_k,Q_k)\) are
+\emph{tight} along direction \(l\), i.e.,
\begin{gather}
\begin{split}{\mathcal E}(q,Q_l^-)\subseteq{\mathcal
E}(q_1,Q_1)\oplus\cdots\oplus{\mathcal E}(q_k,Q_k)
\subseteq{\mathcal E}(q,Q_l^+)\end{split}\notag
@@ -692,27 +692,27 @@
\rho(\pm l ~|~ {\mathcal E}(q_1,Q_1)\oplus\cdots\oplus{\mathcal
E}(q_k,Q_k)) =
\rho(\pm l ~|~ {\mathcal E}(q,Q_l^+)).\end{split}\notag
\end{gather}
-Here the center $q$ is
+Here the center \(q\) is
\phantomsection\label{chap_ellcalc:equation-minksum_c}\begin{gather}
\begin{split}q = q_1 + \cdots +
q_k ,\end{split}\label{chap_ellcalc-minksum_c}
\end{gather}
-the shape matrix of the external ellipsoid $Q_l^+$ is
+the shape matrix of the external ellipsoid \(Q_l^+\) is
\phantomsection\label{chap_ellcalc:equation-minksum_ea}\begin{gather}
\begin{split}Q_l^+ = \left(\langle l,Q_1l\rangle^{1/2} + \cdots
+ \langle l,Q_kl\rangle^{1/2}\right)
\left(\frac{1}{\langle l,Q_1l\rangle^{1/2}}Q_1 + \cdots +
\frac{1}{\langle
l,Q_kl\rangle^{1/2}}Q_k\right),\end{split}\label{chap_ellcalc-minksum_ea}
\end{gather}
-and the shape matrix of the internal ellipsoid $Q_l^-$ is
+and the shape matrix of the internal ellipsoid \(Q_l^-\) is
\phantomsection\label{chap_ellcalc:equation-minksum_ia}\begin{gather}
\begin{split}Q_l^- = \left(Q_1^{1/2} + S_2Q_2^{1/2} + \cdots +
S_kQ_k^{1/2}\right)^T
\left(Q_1^{1/2} + S_2Q_2^{1/2} + \cdots +
S_kQ_k^{1/2}\right),\end{split}\label{chap_ellcalc-minksum_ia}
\end{gather}
-with matrices $S_i$, $i=2,\cdots,k$, being orthogonal
-($S_iS_i^T=I$) and such that vectors
-$Q_1^{1/2}l, S_2Q_2^{1/2}l, \cdots, S_kQ_k^{1/2}l$ are parallel.
+with matrices \(S_i\), \(i=2,\cdots,k\), being orthogonal
+(\(S_iS_i^T=I\)) and such that vectors
+\(Q_1^{1/2}l, S_2Q_2^{1/2}l, \cdots, S_kQ_k^{1/2}l\) are parallel.
-Varying vector $l$ we get exact external and internal
+Varying vector \(l\) we get exact external and internal
approximations,
\begin{gather}
\begin{split}\bigcup_{\langle l,l\rangle=1} {\mathcal E}(q,Q_l^-) =
@@ -722,11 +722,11 @@
For proofs of formulas given in this section, see
{\hyperref[chap_intro:kur1997]{{[}KUR1997{]}}},
{\hyperref[chap_intro:kur2000]{{[}KUR2000{]}}}.
One last comment is about how to find orthogonal matrices
-$S_2,\cdots,S_k$ that align vectors
-$Q_2^{1/2}l, \cdots, Q_k^{1/2}l$ with $Q_1^{1/2}l$. Let
-$v_1$ and $v_2$ be some unit vectors in ${\bf R}^n$.
-We have to find matrix $S$ such that
-$Sv_2\uparrow\uparrow v_1$.
+\(S_2,\cdots,S_k\) that align vectors
+\(Q_2^{1/2}l, \cdots, Q_k^{1/2}l\) with \(Q_1^{1/2}l\). Let
+\(v_1\) and \(v_2\) be some unit vectors in \({\bf R}^n\).
+We have to find matrix \(S\) such that
+\(Sv_2\uparrow\uparrow v_1\).
We suggest explicit formulas for the
calculation of this matrix
{\hyperref[chap_ellcalc:dar2012]{{[}DAR2012{]}}}:
\phantomsection\label{chap_ellcalc:equation-valign1}\begin{gather}
@@ -746,88 +746,88 @@
\subsection{Geometric Difference}
\label{chap_ellcalc:geometric-difference}
Consider the geometric difference \eqref{chap_ellcalc-minkdiff} in which
the sets
-${\mathcal X}_1$ and ${\mathcal X}_2$ are nondegenerate
-ellipsoids ${\mathcal E}(q_1,Q_1)$ and
-${\mathcal E}(q_2,Q_2)$. We say that ellipsoid
-${\mathcal E}(q_1,Q_1)$ is \emph{bigger} than ellipsoid
-${\mathcal E}(q_2,Q_2)$ if
+\({\mathcal X}_1\) and \({\mathcal X}_2\) are nondegenerate
+ellipsoids \({\mathcal E}(q_1,Q_1)\) and
+\({\mathcal E}(q_2,Q_2)\). We say that ellipsoid
+\({\mathcal E}(q_1,Q_1)\) is \emph{bigger} than ellipsoid
+\({\mathcal E}(q_2,Q_2)\) if
\begin{gather}
-\begin{split}{\mathcal E}(0,Q_2) \subseteq {\mathcal
E}(0,Q_1).\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}{\mathcal E}(0,Q_2) \subseteq {\mathcal
E}(0,Q_1).\end{split}\notag
\end{gather}
If this condition is not fulfilled, the geometric difference
-${\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)$ is an empty
+\({\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)\) is an empty
set:
\begin{gather}
\begin{split}{\mathcal E}(0,Q_2) \not\subseteq {\mathcal E}(0,Q_1) ~~~
\Rightarrow ~~~
{\mathcal E}(q_1,Q_1) \dot{-}{\mathcal E}(q_2,Q_2) =
\emptyset.\end{split}\notag
\end{gather}
-If ${\mathcal E}(q_1,Q_1)$ is bigger than
-${\mathcal E}(q_2,Q_2)$ and ${\mathcal E}(q_2,Q_2)$ is
-bigger than ${\mathcal E}(q_1,Q_1)$, in other words, if
-$Q_1=Q_2$,
+If \({\mathcal E}(q_1,Q_1)\) is bigger than
+\({\mathcal E}(q_2,Q_2)\) and \({\mathcal E}(q_2,Q_2)\) is
+bigger than \({\mathcal E}(q_1,Q_1)\), in other words, if
+\(Q_1=Q_2\),
\begin{gather}
\begin{split}{\mathcal E}(q_1,Q_1) \dot{-}{\mathcal E}(q_2,Q_2) =
\{q_1-q_2\} ~~~ \mbox{and} ~~~
{\mathcal E}(q_2,Q_2) \dot{-}{\mathcal E}(q_1,Q_1) =
\{q_2-q_1\}.\end{split}\notag
\end{gather}
-To check if ellipsoid ${\mathcal E}(q_1,Q_1)$ is bigger than
-ellipsoid ${\mathcal E}(q_2,Q_2)$, we perform simultaneous
-diagonalization of matrices $Q_1$ and $Q_2$, that is, we
-find matrix $T$ such that
+To check if ellipsoid \({\mathcal E}(q_1,Q_1)\) is bigger than
+ellipsoid \({\mathcal E}(q_2,Q_2)\), we perform simultaneous
+diagonalization of matrices \(Q_1\) and \(Q_2\), that is, we
+find matrix \(T\) such that
\begin{gather}
-\begin{split}TQ_1T^T = I ~~~ \mbox{and} ~~~
TQ_2T^T=D,\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}TQ_1T^T = I ~~~ \mbox{and} ~~~ TQ_2T^T=D,\end{split}\notag
\end{gather}
-where $D$ is some diagonal matrix. Simultaneous diagonalization
-of $Q_1$ and $Q_2$ is possible because both are symmetric
+where \(D\) is some diagonal matrix. Simultaneous diagonalization
+of \(Q_1\) and \(Q_2\) is possible because both are symmetric
positive definite (see
{\hyperref[chap_ellcalc:gant1960]{{[}GANT1960{]}}}). To find such matrix
-$T$, we first do the SVD of $Q_1$:
+\(T\), we first do the SVD of \(Q_1\):
\phantomsection\label{chap_ellcalc:equation-simdiag1}\begin{gather}
\begin{split}Q_1 =
U_1\Sigma_1V_1^T .\end{split}\label{chap_ellcalc-simdiag1}
\end{gather}
Then the SVD of matrix
-$\Sigma_1^{-1/2}U_1^TQ_2U_1\Sigma_1^{-1/2}$:
+\(\Sigma_1^{-1/2}U_1^TQ_2U_1\Sigma_1^{-1/2}\):
\phantomsection\label{chap_ellcalc:equation-simdiag2}\begin{gather}
\begin{split}\Sigma_1^{-1/2}U_1^TQ_2U_1\Sigma_1^{-1/2} =
U_2\Sigma_2V_2^T.\end{split}\label{chap_ellcalc-simdiag2}
\end{gather}
-Now, $T$ is defined as
+Now, \(T\) is defined as
\phantomsection\label{chap_ellcalc:equation-simdiag3}\begin{gather}
\begin{split}T = U_2^T
\Sigma_1^{-1/2}U_1^T.\end{split}\label{chap_ellcalc-simdiag3}
\end{gather}
-If the biggest diagonal element (eigenvalue) of matrix $D=TQ_2T^T$
-is less than or equal to $1$,
-${\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)$.
+If the biggest diagonal element (eigenvalue) of matrix \(D=TQ_2T^T\)
+is less than or equal to \(1\),
+\({\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)\).
-Once it is established that ellipsoid ${\mathcal E}(q_1,Q_1)$ is
-bigger than ellipsoid ${\mathcal E}(q_2,Q_2)$, we know that their
+Once it is established that ellipsoid \({\mathcal E}(q_1,Q_1)\) is
+bigger than ellipsoid \({\mathcal E}(q_2,Q_2)\), we know that their
geometric difference
-${\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)$ is a nonempty
+\({\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)\) is a nonempty
convex compact set. Although it is not generally an ellipsoid, we can
find tight external and internal approximations of this set parametrized
-by vector $l\in{\bf R}^n$. Unlike geometric sum, however,
+by vector \(l\in{\bf R}^n\). Unlike geometric sum, however,
ellipsoidal approximations for the geometric difference do not exist for
-every direction $l$. Vectors for which the approximations do not
+every direction \(l\). Vectors for which the approximations do not
exist are called \emph{bad directions}.
-Given two ellipsoids ${\mathcal E}(q_1,Q_1)$ and
-${\mathcal E}(q_2,Q_2)$ with
-${\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)$, $l$ is a
+Given two ellipsoids \({\mathcal E}(q_1,Q_1)\) and
+\({\mathcal E}(q_2,Q_2)\) with
+\({\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)\), \(l\) is a
bad direction if
\begin{gather}
-\begin{split}\frac{\langle l,Q_1l\rangle^{1/2}}{\langle
l,Q_2l\rangle^{1/2}}>r,\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}\frac{\langle l,Q_1l\rangle^{1/2}}{\langle
l,Q_2l\rangle^{1/2}}>r,\end{split}\notag
\end{gather}
-in which $r$ is a minimal root of the equation
+in which \(r\) is a minimal root of the equation
\begin{gather}
-\begin{split}{\bf det}(Q_1-rQ_2) =
0.\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}{\bf det}(Q_1-rQ_2) = 0.\end{split}\notag
\end{gather}
-To find $r$, compute matrix $T$ by
\eqref{chap_ellcalc-simdiag1}-\eqref{chap_ellcalc-simdiag3}
+To find \(r\), compute matrix \(T\) by
\eqref{chap_ellcalc-simdiag1}-\eqref{chap_ellcalc-simdiag3}
and define
\begin{gather}
-\begin{split}r = \frac{1}{\max({\bf
diag}(TQ_2T^T))}.\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}r = \frac{1}{\max({\bf diag}(TQ_2T^T))}.\end{split}\notag
\end{gather}
-If $l$ is \emph{not} a bad direction, we can find tight external and
-internal ellipsoidal approximations ${\mathcal E}(q,Q^+_l)$ and
-${\mathcal E}(q,Q^-_l)$ such that
+If \(l\) is \emph{not} a bad direction, we can find tight external and
+internal ellipsoidal approximations \({\mathcal E}(q,Q^+_l)\) and
+\({\mathcal E}(q,Q^-_l)\) such that
\begin{gather}
-\begin{split}{\mathcal E}(q,Q^-_l)\subseteq{\mathcal
E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)\subseteq{\mathcal
E}(q,Q^+_l)\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}{\mathcal E}(q,Q^-_l)\subseteq{\mathcal
E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)\subseteq{\mathcal
E}(q,Q^+_l)\end{split}\notag
\end{gather}
and
\begin{gather}
@@ -835,28 +835,28 @@
\rho(\pm l ~|~ {\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)) =
\rho(\pm l ~|~ {\mathcal E}(q,Q_l^+)).\end{split}\notag
\end{gather}
-The center $q$ is
+The center \(q\) is
\phantomsection\label{chap_ellcalc:equation-minkdiff_c}\begin{gather}
\begin{split}q = q_1 - q_2;\end{split}\label{chap_ellcalc-minkdiff_c}
\end{gather}
-the shape matrix of the internal ellipsoid $Q^-_l$ is
+the shape matrix of the internal ellipsoid \(Q^-_l\) is
\begin{gather}
\begin{split}\begin{aligned}
&& P = \frac{\sqrt{\langle l, Q_1 l\rangle}}{\sqrt{\langle l, Q_2
\rangle}};\nonumber\\
&& Q^-_l = \left(1 - \dfrac{1}{P}\right)Q_1 + \left(1 - P\right)Q_2.
\label{minkdiff_ia}\end{aligned}\end{split}\notag
\end{gather}
-and the shape matrix of the external ellipsoid $Q^+_l$ is
+and the shape matrix of the external ellipsoid \(Q^+_l\) is
\phantomsection\label{chap_ellcalc:equation-minkdiff_ea}\begin{gather}
\begin{split}Q^+_l = \left(Q_1^{1/2} - SQ_2^{1/2}\right)^T
\left(Q_1^{1/2} -
SQ_2^{1/2}\right).\end{split}\label{chap_ellcalc-minkdiff_ea}
\end{gather}
-Here $S$ is an orthogonal matrix such that vectors
-$Q_1^{1/2}l$ and $SQ_2^{1/2}l$ are parallel. $S$ is
-found from \eqref{chap_ellcalc-valign1}-\eqref{chap_ellcalc-valign3}, with
$v_1=Q_2^{1/2}l$ and
-$v_2=Q_1^{1/2}l$.
+Here \(S\) is an orthogonal matrix such that vectors
+\(Q_1^{1/2}l\) and \(SQ_2^{1/2}l\) are parallel. \(S\) is
+found from \eqref{chap_ellcalc-valign1}-\eqref{chap_ellcalc-valign3}, with
\(v_1=Q_2^{1/2}l\) and
+\(v_2=Q_1^{1/2}l\).
-Running $l$ over all unit directions that are not bad, we get
+Running \(l\) over all unit directions that are not bad, we get
\begin{gather}
\begin{split}\bigcup_{\langle l,l\rangle=1} {\mathcal E}(q,Q_l^-) =
{\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2) =
@@ -867,29 +867,29 @@
\subsection{Geometric Difference-Sum}
\label{chap_ellcalc:diff-sum-label}\label{chap_ellcalc:geometric-difference-sum}
-Given ellipsoids ${\mathcal E}(q_1,Q_1)$,
-${\mathcal E}(q_2,Q_2)$ and ${\mathcal E}(q_3,Q_3)$, it is
+Given ellipsoids \({\mathcal E}(q_1,Q_1)\),
+\({\mathcal E}(q_2,Q_2)\) and \({\mathcal E}(q_3,Q_3)\), it is
possible to compute families of external and internal approximating
ellipsoids for
\phantomsection\label{chap_ellcalc:equation-minkmp}\begin{gather}
\begin{split}{\mathcal E}(q_1,Q_1) \dot{-} {\mathcal E}(q_2,Q_2) \oplus
{\mathcal E}(q_3,Q_3)\end{split}\label{chap_ellcalc-minkmp}
\end{gather}
-parametrized by direction $l$, if this set is nonempty
-(${\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)$).
+parametrized by direction \(l\), if this set is nonempty
+(\({\mathcal E}(0,Q_2)\subseteq{\mathcal E}(0,Q_1)\)).
First, using the result of the previous section, for any direction
-$l$ that is not bad, we obtain tight external
-${\mathcal E}(q_1-q_2, Q_l^{0+})$ and internal
-${\mathcal E}(q_1-q_2, Q_l^{0-})$ approximations of the set
-${\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)$.
+\(l\) that is not bad, we obtain tight external
+\({\mathcal E}(q_1-q_2, Q_l^{0+})\) and internal
+\({\mathcal E}(q_1-q_2, Q_l^{0-})\) approximations of the set
+\({\mathcal E}(q_1,Q_1)\dot{-}{\mathcal E}(q_2,Q_2)\).
The second and last step is, using the result of section 2.2.2, to find
tight external ellipsoidal approximation
-${\mathcal E}(q_1-q_2+q_3,Q_l^+)$ of the sum
-${\mathcal E}(q_1-q_2,Q_l^{0+})\oplus{\mathcal E}(q_3,Q_3)$, and
+\({\mathcal E}(q_1-q_2+q_3,Q_l^+)\) of the sum
+\({\mathcal E}(q_1-q_2,Q_l^{0+})\oplus{\mathcal E}(q_3,Q_3)\), and
tight internal ellipsoidal approximation
-${\mathcal E}(q_1-q_2+q_3,Q_l^-)$ for the sum
-${\mathcal E}(q_1-q_2,Q_l^{0-})\oplus{\mathcal E}(q_3,Q_3)$.
+\({\mathcal E}(q_1-q_2+q_3,Q_l^-)\) for the sum
+\({\mathcal E}(q_1-q_2,Q_l^{0-})\oplus{\mathcal E}(q_3,Q_3)\).
As a result, we get
\begin{gather}
@@ -903,7 +903,7 @@
\rho(\pm l ~|~ {\mathcal E}(q_1,Q_1)\dot{-}{\mathcal
E}(q_2,Q_2)\oplus{\mathcal E}(q_3,Q_3)) =
\rho(\pm l ~|~ {\mathcal E}(q_1-q_2+q_3,Q_l^+)).\end{split}\notag
\end{gather}
-Running $l$ over all unit vectors that are not bad, this
+Running \(l\) over all unit vectors that are not bad, this
translates to
\begin{gather}
\begin{split}\bigcup_{\langle l,l\rangle=1} {\mathcal
E}(q_1-q_2+q_3,Q_l^-) =
@@ -913,40 +913,40 @@
\subsection{Geometric Sum-Difference}
\label{chap_ellcalc:sum-diff-label}\label{chap_ellcalc:geometric-sum-difference}
-Given ellipsoids ${\mathcal E}(q_1,Q1)$,
-${\mathcal E}(q_2,Q_2)$ and ${\mathcal E}(q_3,Q_3)$, it is
+Given ellipsoids \({\mathcal E}(q_1,Q1)\),
+\({\mathcal E}(q_2,Q_2)\) and \({\mathcal E}(q_3,Q_3)\), it is
possible to compute families of external and internal approximating
ellipsoids for
\phantomsection\label{chap_ellcalc:equation-minkpm}\begin{gather}
\begin{split}{\mathcal E}(q_1,Q_1) \oplus {\mathcal E}(q_2,Q_2) \dot{-}
{\mathcal E}(q_3,Q_3)\end{split}\label{chap_ellcalc-minkpm}
\end{gather}
-parametrized by direction $l$, if this set is nonempty
-(${\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_1)\oplus{\mathcal
E}(0,Q_2)$).
+parametrized by direction \(l\), if this set is nonempty
+(\({\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_1)\oplus{\mathcal
E}(0,Q_2)\)).
First, using the result of section 2.2.2, we obtain tight external
-${\mathcal E}(q_1+q_2,Q_l^{0+})$ and internal
-${\mathcal E}(q_1+q_2,Q_l^{0-})$ ellipsoidal approximations of the
-set ${\mathcal E}(q_1,Q_1)\oplus{\mathcal E}(q_2,Q_2)$. In order
+\({\mathcal E}(q_1+q_2,Q_l^{0+})\) and internal
+\({\mathcal E}(q_1+q_2,Q_l^{0-})\) ellipsoidal approximations of the
+set \({\mathcal E}(q_1,Q_1)\oplus{\mathcal E}(q_2,Q_2)\). In order
for the set \eqref{chap_ellcalc-minkpm} to be nonempty, inclusion
-${\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_l^{0+})$ must be
-true for any $l$. Note, however, that even if \eqref{chap_ellcalc-minkpm}
is
+\({\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_l^{0+})\) must be
+true for any \(l\). Note, however, that even if
\eqref{chap_ellcalc-minkpm} is
nonempty, it may be that
-${\mathcal E}(0,Q_3)\not\subseteq{\mathcal E}(0,Q_l^{0-})$, then
+\({\mathcal E}(0,Q_3)\not\subseteq{\mathcal E}(0,Q_l^{0-})\), then
internal approximation for this direction does not exist.
Assuming that \eqref{chap_ellcalc-minkpm} is nonempty and
-${\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_l^{0-})$, the second
+\({\mathcal E}(0,Q_3)\subseteq{\mathcal E}(0,Q_l^{0-})\), the second
step would be, using the results of section 2.2.3, to compute tight
external ellipsoidal approximation
-${\mathcal E}(q_1+q_2-q_3,Q_l^+)$ of the difference
-${\mathcal E}(q_1+q_2,Q_l^{0+})\dot{-}{\mathcal E}(q_3,Q_3)$,
-which exists only if $l$ is not bad, and tight internal
-ellipsoidal approximation ${\mathcal E}(q_1+q_2-q_3,Q_l^-)$ of the
+\({\mathcal E}(q_1+q_2-q_3,Q_l^+)\) of the difference
+\({\mathcal E}(q_1+q_2,Q_l^{0+})\dot{-}{\mathcal E}(q_3,Q_3)\),
+which exists only if \(l\) is not bad, and tight internal
+ellipsoidal approximation \({\mathcal E}(q_1+q_2-q_3,Q_l^-)\) of the
difference
-${\mathcal E}(q_1+q_2,Q_l^{0-})\dot{-}{\mathcal E}(q_3,Q_3)$,
-which exists only if $l$ is not bad for this difference.
+\({\mathcal E}(q_1+q_2,Q_l^{0-})\dot{-}{\mathcal E}(q_3,Q_3)\),
+which exists only if \(l\) is not bad for this difference.
-If approximation ${\mathcal E}(q_1+q_2-q_3,Q_l^+)$ exists, then
+If approximation \({\mathcal E}(q_1+q_2-q_3,Q_l^+)\) exists, then
\begin{gather}
\begin{split}{\mathcal E}(q_1,Q_1)\oplus{\mathcal
E}(q_2,Q_2)\dot{-}{\mathcal E}(q_3,Q_3) \subseteq
{\mathcal E}(q_1+q_2-q_3,Q_l^+)\end{split}\notag
@@ -956,7 +956,7 @@
\begin{split}\rho(\pm l ~|~ {\mathcal E}(q_1,Q_1)\oplus{\mathcal
E}(q_2,Q_2)\dot{-}{\mathcal E}(q_3,Q_3)) =
\rho(\pm l ~|~ {\mathcal E}(q_1+q_2-q_3,Q_l^+)).\end{split}\notag
\end{gather}
-If approximation ${\mathcal E}(q_1+q_2-q_3,Q_l^-)$ exists, then
+If approximation \({\mathcal E}(q_1+q_2-q_3,Q_l^-)\) exists, then
\begin{gather}
\begin{split}{\mathcal E}(q_1+q_2-q_3,Q_l^-) \subseteq
{\mathcal E}(q_1,Q_1)\oplus{\mathcal E}(q_2,Q_2)\dot{-}{\mathcal
E}(q_3,Q_3)\end{split}\notag
@@ -966,38 +966,38 @@
\begin{split}\rho(\pm l ~|~{\mathcal E}(q_1+q_2-q_3,Q_l^-)) =
\rho(\pm l ~|~ {\mathcal E}(q_1,Q_1)\oplus{\mathcal
E}(q_2,Q_2)\dot{-}{\mathcal E}(q_3,Q_3)) .\end{split}\notag
\end{gather}
-For any fixed direction $l$ it may be the case that neither
+For any fixed direction \(l\) it may be the case that neither
external nor internal tight ellipsoidal approximations exist.
\subsection{Intersection of Ellipsoid and Hyperplane}
\label{chap_ellcalc:intersection-of-ellipsoid-and-hyperplane}
-Let nondegenerate ellipsoid ${\mathcal E}(q,Q)$ and hyperplane
-$H(c,\gamma)$ be such that
-${\bf dist}({\mathcal E}(q,Q),H(c,\gamma))<0$. In other words,
+Let nondegenerate ellipsoid \({\mathcal E}(q,Q)\) and hyperplane
+\(H(c,\gamma)\) be such that
+\({\bf dist}({\mathcal E}(q,Q),H(c,\gamma))<0\). In other words,
\begin{gather}
-\begin{split}{\mathcal E}_H(w,W) = {\mathcal E}(q,Q)\cap H(c,\gamma) \neq
\emptyset .\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}{\mathcal E}_H(w,W) = {\mathcal E}(q,Q)\cap H(c,\gamma) \neq
\emptyset .\end{split}\notag
\end{gather}
The intersection of ellipsoid with hyperplane, if nonempty, is always
an ellipsoid. Here we show how to find it.
-First of all, we transform the hyperplane $H(c,\gamma)$ into
-$H([1~0~\cdots~0]^T, 0)$ by the affine transformation
+First of all, we transform the hyperplane \(H(c,\gamma)\) into
+\(H([1~0~\cdots~0]^T, 0)\) by the affine transformation
\begin{gather}
-\begin{split}y = Sx - \frac{\gamma}{\langle
c,c\rangle^{1/2}}Sc,\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}y = Sx - \frac{\gamma}{\langle
c,c\rangle^{1/2}}Sc,\end{split}\notag
\end{gather}
-where $S$ is an orthogonal matrix found by
\eqref{chap_ellcalc-valign1}-\eqref{chap_ellcalc-valign3}
-with $v_1=c$ and $v_2=[1~0~\cdots~0]^T$. The ellipsoid in
-the new coordinates becomes ${\mathcal E}(q',Q')$ with
+where \(S\) is an orthogonal matrix found by
\eqref{chap_ellcalc-valign1}-\eqref{chap_ellcalc-valign3}
+with \(v_1=c\) and \(v_2=[1~0~\cdots~0]^T\). The ellipsoid in
+the new coordinates becomes \({\mathcal E}(q',Q')\) with
\begin{gather}
\begin{split}\begin{aligned}
q' & = q-\frac{\gamma}{\langle c,c\rangle^{1/2}}Sc, \\
Q' & = SQS^T.\end{aligned}\end{split}\notag
\end{gather}
-Define matrix $M=Q'^{-1}$; $m_{11}$ is its element in
-position $(1,1)$, $\bar{m}$ is the first column of $M$
-without the first element, and $\bar{M}$ is the submatrix of
-$M$ obtained by stripping $M$ of its first row and first
+Define matrix \(M=Q'^{-1}\); \(m_{11}\) is its element in
+position \((1,1)\), \(\bar{m}\) is the first column of \(M\)
+without the first element, and \(\bar{M}\) is the submatrix of
+\(M\) obtained by stripping \(M\) of its first row and first
column:
\begin{gather}
\begin{split}M = \left[\begin{array}{c|cl}
@@ -1008,7 +1008,7 @@
\bar{m} & & \bar{M}\end{array}\right].\end{split}\notag
\end{gather}
The ellipsoid resulting from the intersection is
-${\mathcal E}_H(w',W')$ with
+\({\mathcal E}_H(w',W')\) with
\begin{gather}
\begin{split}\begin{aligned}
w' & = q' + q_1'\left[\begin{array}{c}
@@ -1022,10 +1022,10 @@
& \\
{\bf 0} & & \bar{M}^{-1}\end{array}\right],\end{aligned}\end{split}\notag
\end{gather}
-in which $q_1'$ represents the first element of vector $q'$.
+in which \(q_1'\) represents the first element of vector \(q'\).
Finally, it remains to do the inverse transform of the coordinates to
-obtain ellipsoid ${\mathcal E}_H(w,W)$:
+obtain ellipsoid \({\mathcal E}_H(w,W)\):
\begin{gather}
\begin{split}\begin{aligned}
w & = S^Tw' + \frac{\gamma}{\langle c,c\rangle^{1/2}}c, \\
@@ -1034,26 +1034,26 @@
\subsection{Intersection of Ellipsoid and Ellipsoid}
\label{chap_ellcalc:intersection-of-ellipsoid-and-ellipsoid}
-Given two nondegenerate ellipsoids ${\mathcal E}(q_1,Q_1)$ and
-${\mathcal E}(q_2,Q_2)$,
-${\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))<0$
+Given two nondegenerate ellipsoids \({\mathcal E}(q_1,Q_1)\) and
+\({\mathcal E}(q_2,Q_2)\),
+\({\bf dist}({\mathcal E}(q_1,Q_1),{\mathcal E}(q_2,Q_2))<0\)
implies that
\begin{gather}
-\begin{split}{\mathcal E}(q_1,Q_1)\cap{\mathcal
E}(q_2,Q_2)\neq\emptyset .\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}{\mathcal E}(q_1,Q_1)\cap{\mathcal
E}(q_2,Q_2)\neq\emptyset .\end{split}\notag
\end{gather}
This intersection can be approximated by ellipsoids from the outside
-and from the inside. Trivially, both ${\mathcal E}(q_1,Q_1)$ and
-${\mathcal E}(q_2,Q_2)$ are external approximations of this
+and from the inside. Trivially, both \({\mathcal E}(q_1,Q_1)\) and
+\({\mathcal E}(q_2,Q_2)\) are external approximations of this
intersection. Here, however, we show how to find the external
ellipsoidal approximation of minimal volume.
Define matrices
\begin{gather}
-\begin{split}W_1 = Q_1^{-1}, ~~~~ W_2 =
Q_2^{-1} .\label{wmatrices}\end{split}\notag\\\begin{split}\end{split}\notag
+\begin{split}W_1 = Q_1^{-1}, ~~~~ W_2 =
Q_2^{-1} .\label{wmatrices}\end{split}\notag
\end{gather}
Minimal volume external ellipsoidal approximation
-${\mathcal E}(q+,Q^+)$ of the intersection
-${\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2)$ is determined
+\({\mathcal E}(q+,Q^+)\) of the intersection
+\({\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2)\) is determined
from the set of equations:
\phantomsection\label{chap_ellcalc:equation-fusion1}\begin{gather}
\begin{split}Q^+ = \alpha X^{-1},
\\\end{split}\label{chap_ellcalc-fusion1}
@@ -1068,16 +1068,16 @@
&- n({\bf det}(X))^2 (2\langle q^+,W_1q_1-W_2q_2\rangle + \langle
q^+,(W_2-W_1)q^+\rangle - {}\\
&- \langle q_1,W_1q_1\rangle + \langle
q_2,W_2q_2\rangle),\end{split}\label{chap_ellcalc-fusion5}
\end{gather}
-with $0\leqslant\pi\leqslant1$. We substitute $X$,
-$\alpha$, $q^+$ defined in
\eqref{chap_ellcalc-fusion2}-\eqref{chap_ellcalc-fusion4} into
-\eqref{chap_ellcalc-fusion5} and get a polynomial of degree $2n-1$ with
respect to
-$\pi$, which has only one root in the interval $[0,1]$,
-$\pi_0$. Then, substituting $\pi=\pi_0$ into
-\eqref{chap_ellcalc-fusion1}-\eqref{chap_ellcalc-fusion4}, we obtain $q^+$
and $Q^+$. Special
-cases are $\pi_0=1$, whence
-${\mathcal E}(q^+,Q^+)={\mathcal E}(q_1,Q_1)$, and
-$\pi_0=0$, whence
-${\mathcal E}(q^+,Q^+)={\mathcal E}(q_2,Q_2)$. These situations
+with \(0\leqslant\pi\leqslant1\). We substitute \(X\),
+\(\alpha\), \(q^+\) defined in
\eqref{chap_ellcalc-fusion2}-\eqref{chap_ellcalc-fusion4} into
+\eqref{chap_ellcalc-fusion5} and get a polynomial of degree \(2n-1\) with
respect to
+\(\pi\), which has only one root in the interval \([0,1]\),
+\(\pi_0\). Then, substituting \(\pi=\pi_0\) into
+\eqref{chap_ellcalc-fusion1}-\eqref{chap_ellcalc-fusion4}, we obtain
\(q^+\) and \(Q^+\). Special
+cases are \(\pi_0=1\), whence
+\({\mathcal E}(q^+,Q^+)={\mathcal E}(q_1,Q_1)\), and
+\(\pi_0=0\), whence
+\({\mathcal E}(q^+,Q^+)={\mathcal E}(q_2,Q_2)\). These situations
may occur if, for example, one ellipsoid is contained in the other:
\begin{gather}
\begin{split}{\mathcal E}(q_1,Q_1)\subseteq{\mathcal E}(q_2,Q_2) &
\Rightarrow \pi_0 = 1,\\
@@ -1085,11 +1085,11 @@
\end{gather}
The proof that the system of equations
\eqref{chap_ellcalc-fusion1}-\eqref{chap_ellcalc-fusion5} correctly
defines the minimal volume external ellipsoidal approximationi of the
-intersection ${\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2)$ is
+intersection \({\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2)\) is
given in {\hyperref[chap_ellcalc:ros2002]{{[}ROS2002{]}}}.
To find the internal approximating ellipsoid
-${\mathcal E}(q^-,Q^-)\subseteq{\mathcal E}(q_1,Q_1)\cap{\mathcal
E}(q_2,Q_2)$,
+\({\mathcal E}(q^-,Q^-)\subseteq{\mathcal E}(q_1,Q_1)\cap{\mathcal
E}(q_2,Q_2)\),
define
\phantomsection\label{chap_ellcalc:equation-beta1}\begin{gather}
\begin{split}\beta_1 = \min_{\langle x,W_2x\rangle=1}\langle
x,W_1x\rangle,\end{split}\label{chap_ellcalc-beta1}
@@ -1097,9 +1097,9 @@
\begin{split}\beta_2 = \min_{\langle x,W_1x\rangle=1}\langle
x,W_2x\rangle,\end{split}\label{chap_ellcalc-beta2}
\end{gather}
Notice that \eqref{chap_ellcalc-beta1} and \eqref{chap_ellcalc-beta2} are
QCQP problems. Parameters
-$\beta_1$ and $\beta_2$ are invariant with respect to affine
+\(\beta_1\) and \(\beta_2\) are invariant with respect to affine
coordinate transformation and describe the position of ellipsoids
-${\mathcal E}(q_1,Q_1)$, ${\mathcal E}(q_2,Q_2)$ with
+\({\mathcal E}(q_1,Q_1)\), \({\mathcal E}(q_2,Q_2)\) with
respect to each other:
\begin{gather}
\begin{split}\beta_1\geqslant1,~\beta_2\geqslant1 & \Rightarrow
@@ -1107,7 +1107,7 @@
{\bf int}({\mathcal E}(q_1,Q_1)\cap{\mathcal E}(q_2,Q_2))\neq\emptyset
\\\end{split}\notag\\\begin{split}&\mbox{and} ~ {\mathcal
E}(q_1,Q_1)\not\subseteq{\mathcal E}(q_2,Q_2)
\\\end{split}\notag\\\begin{split}&\mbox{and} ~ {\mathcal
E}(q_2,Q_2)\not\subseteq{\mathcal E}(q_1,Q_1).\end{split}\notag
\end{gather}
Define parametrized family of internal ellipsoids
***The diff for this file has been truncated for email.***
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/latex/sphinx.sty Sun Oct 20
15:27:13 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/latex/sphinx.sty Mon Feb 24
20:40:31 2014 UTC
@@ -30,6 +30,8 @@
\RequirePackage{wrapfig}
% Separate paragraphs by space by default.
\RequirePackage{parskip}
+% For parsed-literal blocks.
+\RequirePackage{alltt}
% Redefine these colors to your liking in the preamble.
\definecolor{TitleColor}{rgb}{0.126,0.263,0.361}
@@ -238,9 +240,11 @@
\def\productioncont##1{\\& &\code{##1}}
\parindent=2em
\indent
- \begin{tabular}{lcl}
+ \setlength{\LTpre}{0pt}
+ \setlength{\LTpost}{0pt}
+ \begin{longtable}[l]{lcl}
}{%
- \end{tabular}
+ \end{longtable}
}
% Notices / Admonitions
@@ -508,13 +512,11 @@
}
\fi
-% do not use \@chappos in Appendix in pTeX
+% disable \@chappos in Appendix in pTeX
\ifx\kanjiskip\undefined\else
- \renewcommand{\appendix}{\par
- \setcounter{chapter}{0}
- \setcounter{section}{0}
- \gdef\@chapapp{\appendixname}
- \gdef\@chappos{}
- \gdef\thechapter{\@Alph\c@chapter}
+ \let\py@OldAppendix=\appendix
+ \renewcommand{\appendix}{
+ \py@OldAppendix
+ \gdef\@chappos{}
}
\fi
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/latex/sphinxmanual.cls Sun
Oct 13 18:40:08 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/latex/sphinxmanual.cls Mon
Feb 24 20:40:31 2014 UTC
@@ -97,6 +97,7 @@
%
\let\py@OldTableofcontents=\tableofcontents
\renewcommand{\tableofcontents}{%
+ \pagenumbering{roman}%
\setcounter{page}{1}%
\pagebreak%
\pagestyle{plain}%
@@ -114,7 +115,7 @@
\pagenumbering{arabic}%
\@ifundefined{fancyhf}{}{\pagestyle{normal}}%
}
-\pagenumbering{roman}
+\pagenumbering{alph}
% This is needed to get the width of the section # area wide enough in the
% library reference. Doing it here keeps it the same for all the manuals.
=======================================
--- /branches/issue_133_aatanesyan/doc/_build/latex/tabulary.sty Sun Oct 13
18:40:08 2013 UTC
+++ /branches/issue_133_aatanesyan/doc/_build/latex/tabulary.sty Mon Feb 24
20:40:31 2014 UTC
@@ -8,13 +8,13 @@
%% DRAFT VERSION
%%
%% File `tabulary.dtx'.
-%% Copyright (C) 1995 1996 2003 David Carlisle
+%% Copyright (C) 1995 1996 2003 2008 David Carlisle
%% This file may be distributed under the terms of the LPPL.
%% See 00readme.txt for details.
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{tabulary}
- [2007/10/02 v0.9 tabulary package (DPC)]
+ [2008/12/01 v0.9 tabulary package (DPC)]
\RequirePackage{array}
\catcode`\Z=14
\DeclareOption{debugshow}{\catcode`\Z=9\relax}
@@ -109,8 +109,6 @@
\global\advance\TY@linewidth-#1\relax}
\def\endtabulary{%
\gdef\@halignto{}%
- \let\TY@footnote\footnote%
- \def\footnote{}% prevent footnotes from doing anything
\expandafter\TY@tab\the\toks@
\crcr\omit
{\xdef\TY@save@row{}%
@@ -174,7 +172,6 @@
\TY@checkmin
\TY@count\z@
\let\TY@box\TY@box@v
- \let\footnote\TY@footnote % restore footnotes
{\expandafter\TY@final\the\toks@\endTY@final}%
\count@\z@
\@tempswatrue
@@ -195,7 +192,7 @@
\let\TY@checkmin\relax
\ifdim\TY@tablewidth>\z@
\Gscale@div\TY@ratio\TY@linewidth\TY@tablewidth
- \ifdim\TY@tablewidth <\linewidth
+ \ifdim\TY@tablewidth <\TY@linewidth
\def\TY@ratio{1}%
\fi
\else
=======================================
--- /branches/issue_133_aatanesyan/doc/chap_ellTube.rst Sun Feb 23 23:12:29
2014 UTC
+++ /branches/issue_133_aatanesyan/doc/chap_ellTube.rst Mon Feb 24 20:40:31
2014 UTC
@@ -1,1 +1,257 @@
-
+Ellipsoid tubes and touching curves
+===================================
+
+Touching curves
+---------------
+
+One of the basic insruments in the *Ellipsoidal Toolbox* are classes,
which allow to work with touching curves. These are the curves along which
the internal and external ellipsoidal approximations are touching. In
*Ellipsoidal Toolbox* there are two basic classes (*EllTubeTouchCurveBasic*
and *EllTubeTouchCurveProjBasic*) which allow us to keep touching curves
and their projections. These classes do not add any functionality, that we
can use, while working with the toolbox, (They do not have public methods.)
but they are further used in other classes, which inherit these ones.
+
+*EllTubeTouchCurveBasic* class
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+This class allows us to keep touch point curve objects. This kind of
objects have a lot of different fields, which store the information about
the touching curve.
+The first field of our object is:
+
+- *dim*: In this field the dimension of the space in which the touching
+ curves are defined is stored.
+
+Then there are several fields that are connecteld with time:
+
+- *timeVec*: Time vector in which the the touching curves are defined;
+
+- *sTime*: Specific point of time which is best suited to describe good
direction;
+
+- *indSTime*: The index of sTime point within timeVec is srored in this
field.
+
+It should be said that the *good direction* is the direction along which
the internal and external approximations of ellipsoid tubes are touching.
Next several fields specify the type of approximation which was used? while
creating these touching curves:
+
+- *approxSchemaName*: The name of the approximation schema;
+
+- *approxSchemaDescr*: The description of the approximation schema;
+
+- *approxType*: The type of approximation (External, Internal,
NotDefined) is stored in this field.
+
+Then there are two fields which keep the absolute tolerance and relative
tolerance used to create this object (*absTolerance* and *relTolerance*,
respectively). And finally come the fields which allow us to keep the
touching curves and good directions:
+
+- *ltGoodDirMat* field stores the matrix of good direction vectors at any
point of time from timeVec;
+
+- *lsGoodDirVec* field stores the good direction vector at sTime point of
time;
+
+- *ltGoodDirNormVec* field stores the norm of good direction vectors at
any point of time from timeVec;
+
+- *lsGoodDirNorm* field stores the norm of good direction vector at sTime
point of time;
+
+- *xTouchCurveMat* field stores the touch point curve for good direction
matrix;
+
+- *xTouchOpCurveMat* field stores the touch point curve oposite to the
xTouchCurveMat touch point curve;
+
+- *xsTouchVec* field stores the touch point at sTime point of time;
+
+- *xsTouchOpVec* field stores a point opposite to the xsTouchVec touch
point;
+
+- *isLsTouch* field stores a logical variable which indicates whether a
touch takes place along good direction at sTime point of time;
+
+- *isLtTouchVec* field stores a logical vector which indicates whether a
touch takes place along good direction at any point of time from
timeVec.
+
+*EllTubeTouchCurveProjBasic* class
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+This class allows us to keep the projections of touch point curves. This
kind of objects have a lot of different fields, which store the information
about the projection of touching curve. First of all it inherits all the
fields from *EllTubeTouchCurveBasic* class, and, secondly, it adds some of
its own fields. The inherited fields store the information about the
projection instead of the information about the original curve, but their
meaning is all the same.
+The first group of new fields is connected to the type of projection and
the space on which the curve is projected:
+
+- *projSMat* field stores the projection matrix at sTime point of time;
+
+- *projArray* field stores an array of projection matrices at any point
of time from timVec;
+
+- *projType* field stores the type of projection (Static or
DynamicAlongGoodCurve).
+
+And then come the new fields which store some information about the
original curve:
+
+- *ltGoodDirNormOrigVec* field stores the norm of the original good
direction vectors at any point of time from timeVec;
+- *lsGoodDirNormOrig* field stores the norm of the original good
direction vector at sTime point of time;
+
+- *ltGoodDirOrigMat* field stores the matrix of the original good
direction vectors at any point of time from timeVec;
+
+- *lsGoodDirOrigVec* field stores the original good direction vector at
sTime point of time;
+
+- *ltGoodDirNormOrigProjVec* field stores the norm of the projection of
the original good direction curve;
+
+- *ltGoodDirOrigProjMat* field stores the projectition of the original
good direction curve.
+
+Ellipsoidal tubes
+-----------------
+
+Other basic insrument in the *Ellipsoidal Toolbox* are classes, which
allow to work with ellipsoidal tubes. In *Ellipsoidal Toolbox* there are
four classes (*EllTubeBasic*, *EllTube*, *EllTubeProjBasic* and
*EllTubeProj*) which give us the needed functionality to work with
ellipsoid tube objects.
+
+*EllTubeBasic* class
+~~~~~~~~~~~~~~~~~~~~
+
+This class inherits its fields from *EllTubeTouchCurveBasic* class and
adds some new fields which are:
+
+- *QArray* field which stores an array of nTimePoints ellipsoid matrices.
Each element from this
+ array specifies an ellipsoid matrix at nTimePoint point of time. Here
nTimePoints is number of elements in *timeVec* (It is one of the fields
inherited from *EllTubeTouchCurveBasic* class.);
+
+- *aMat* field which stores an array of nTimePoints ellipsoid centers.
Each center is specified for nTimePoint point of time;
+
+- scaleFactor field which stores the scale for the created ellipsoid tube;
+
+- MArray field which stores an array of nTimePoints regularization
matrices. Each element from this array specifies a regularization
matrix at nTimePoint point of time.
+
+This class gives us some methods which can be used to work with
ellipsoidal tubes. For example, if we have already created ellipsoid tube
object using one timeVec vector of time, then we can interpolate this tube,
using new time vector. Take notice that we have to make sure that the first
and the last elements in old and new vectors of time are the same.
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_interp.m
+ :language: matlab
+ :linenos:
+
+Other method that we can use is *THINOUTTUPLES* method. It allows us to
thin out the already created ellipsoid tube, by saving only the ellipsoids
at specified points of time.
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_thinOutTuples.m
+ :language: matlab
+ :linenos:
+
+Then we can also cut the created ellipsoid tube, leaving only part of it
at specified vector of time or point of time. Below are the exmples:
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_cut1.m
+ :language: matlab
+ :linenos:
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_cut2.m
+ :language: matlab
+ :linenos:
+
+*EllTube* class
+~~~~~~~~~~~~~~~
+
+This class inherits its fields from *EllTubeBasic* class. It does not have
any new fields, but adds some functionality. First of all it gives us the
instruments to create ellipsoid tube objects. Here are these methods:
+
+- *fromQArrays* - creates nEllTubes ellipsoid tube objects using an array
of ellipsoid matrices and an array of ellipsoid centers specified at
any point of time from timeVec;
+
+- *fromQMArrays* - acts the same way as *fromQArrays* method, except for
this one requires to specify an array of regularization marices
specified at any point of time from timeVec;
+
+- *fromQMScaledArrays* - acts the same way as *fromQMArrays* method,
except for this one requires to also specify a vector of scale
factors specified for every created ellipsoid tube;
+
+- *fromEllArray* - creates ellipsoid tube object using an array of
ellipsoids;
+
+- *fromEllMArray* - creates ellipsoid tube object using an array of
ellipsoids and an array of regularisation matrices.
+
+Basically we can divide these methods into two groups, based od what
objects they are using to create ellipsoid tube: an array of ellipsoid
matrices and an array of ellipsoid centers or an array of ellipsoids. Below
are some examples of the usage of these functions.
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_fromQArrays1.m
+ :language: matlab
+ :linenos:
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_fromQArrays2.m
+ :language: matlab
+ :linenos:
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_fromQMArrays1.m
+ :language: matlab
+ :linenos:
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_fromQMScaledArrays1.m
+ :language: matlab
+ :linenos:
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_fromEllArray.m
+ :language: matlab
+ :linenos:
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_fromEllMArray.m
+ :language: matlab
+ :linenos:
+
+As we can see in these examples, we can specify how many ellipsoid tubes
we want to create, which type of arrpoximation to use. also we can create
ellipsoid tube objects, which will contain several ellipsoid tubes with
different types of approximation.
+We can also use *project* and *projectToOrths* methods to project our
ellipsoid tubes on the specified spaces. The first metod projects the
ellipsoid tube on specified space creating the specified type of projection.
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_project.m
+ :language: matlab
+ :linenos:
+
+The second method projects the ellipsoid tube onto subspace defined by
vectors of standart basis with indices specified in indVec.
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_projectToOrths1.m
+ :language: matlab
+ :linenos:
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_projectToOrths2.m
+ :language: matlab
+ :linenos:
+
+*EllTubeProjBasic* class
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+This class inherits its fields from *EllTubeBasic* and
*EllTubeTouchCurveProjBasic* classes. It does not have any new fields, but
holds not the original values of the fields, which were the values of the
original ellipsoid tube, it holds the values of the projection. We can use
*plot*, *plotInt* or *plotExt* methods to plot the projections.
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_plot.m
+ :language: matlab
+ :linenos:
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_plotInt.m
+ :language: matlab
+ :linenos:
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_plotExt.m
+ :language: matlab
+ :linenos:
+
+All the three methods have several properties connected to the properties
of the image, for example: transparency, color, line width and so on.
+
+*EllTubeProj* class
+~~~~~~~~~~~~~~~~~~~
+
+This class doesn't add any functionality to the *EllTubeProjBasic* class.
+
+Unions of ellipsoidal tubes
+---------------------------
+
+The last classes which will be discussed in this chapter are classes,
operating with unions of ellipsoid tubes. These are *EllUnionTubeBasic*,
*EllUnionTube* and *EllUnionTubeStaticProj* classes.
+
+*EllUnionTubeBasic* class
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+This class allows us to keep and work with unions of ellipsoid tubes. The
fields of this class are:
+
+- *ellUnionTimeDirection* which stores the direction in time along which
union is performed;
+
+- *timeTouchEndVec* which stores the points of time when touch is occured
in good direction;
+
+- *timeTouchOpEndVec* which stores the points of time when touch is
occured in direction opposite to good direction;
+
+- *isLsTouchOp* which stores a logical variable which indicates whether a
touch takes place along the direction opposite to the good direction at
sTime point of time;
+
+- *isLtTouchOpVec* which stores a logical variable which indicates
whether a touch takes place along the direction opposite to the good
direction at any point of time from timeVec.
+
+This class does not have any public methods.
+
+*EllUnionTube* class
+~~~~~~~~~~~~~~~~~~~~
+
+This class inherits its fields from *EllUnionTubeBasic* and *EllTubeBasic*
classes. Unlike *EllUnionTubeBasic* class, this class has one public method
- *fromEllTubes* method, which allows us to create an ellUnionTube object
using ellipsoid tubes.
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_fromEllTubes.m
+ :language: matlab
+ :linenos:
+
+*EllUnionTubeStaticProj* class
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The last class connected to ellUnionTube objects is
*EllUnionTubeStaticProj* class. It inherits the fields and methods of
*EllUnionTubeBasic* and *EllTubeProjBasic* classes and allows us to work
with the static projections of ellUnionTubes.
+
+*TypifiedByFieldCodeRel* class
+----------------------------
+
+This is the last class that should be mentioned in this chapter. It is
inherited by *EllTube*, *EllTubeProj*, *EllUnionTube* and
*EllUnionTubeStaticProj* classes and adds some methods to them. For example
we can use *getData* method.
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_getData.m
+ :language: matlab
+ :linenos:
+
+Or we can compare objects from above mentioned classes using method
*isEqual*.
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_isEqual1.m
+ :language: matlab
+ :linenos:
+
+..
literalinclude:: ../products/+gras/+ellapx/+smartdb/+test/+examples//example_isEqual2.m
+ :language: matlab
+ :linenos:
=======================================
---
/branches/issue_133_aatanesyan/products/+gras/+ellapx/+smartdb/+test/+examples/example_project.m
Mon Feb 24 01:41:07 2014 UTC
+++
/branches/issue_133_aatanesyan/products/+gras/+ellapx/+smartdb/+test/+examples/example_project.m
Mon Feb 24 20:40:31 2014 UTC
@@ -24,5 +24,3 @@
p = @gras.ellapx.smartdb.test.examples.fGetProjMat;
[ellTubeProjRel,indProj2OrigVec] = fromMatEllTube.project(projType,...
{projMat},p);
-plObj=smartdb.disp.RelationDataPlotter();
-ellTubeProjRel.plot(plObj);
=======================================
---
/branches/issue_133_aatanesyan/products/+gras/+ellapx/+smartdb/+test/+mlunit/ExamplesTC.m
Mon Feb 24 01:41:07 2014 UTC
+++
/branches/issue_133_aatanesyan/products/+gras/+ellapx/+smartdb/+test/+mlunit/ExamplesTC.m
Mon Feb 24 20:40:31 2014 UTC
@@ -30,6 +30,10 @@
gras.ellapx.smartdb.test.examples.example_projectStatic();
gras.ellapx.smartdb.test.examples.example_isEqual1();
gras.ellapx.smartdb.test.examples.example_isEqual2();
+ gras.ellapx.smartdb.test.examples.example_plot();
+ gras.ellapx.smartdb.test.examples.example_plotInt();
+ gras.ellapx.smartdb.test.examples.example_plotExt();
+ gras.ellapx.smartdb.test.examples.example_getData();
end
end
end