<%BANNER%>

Simultaneous Planning and Control for Autonomous Ground Vehicles

xml version 1.0 encoding UTF-8
REPORT xmlns http:www.fcla.edudlsmddaitss xmlns:xsi http:www.w3.org2001XMLSchema-instance xsi:schemaLocation http:www.fcla.edudlsmddaitssdaitssReport.xsd
INGEST IEID E20101219_AAAADM INGEST_TIME 2010-12-19T19:14:51Z PACKAGE UFE0017421_00001
AGREEMENT_INFO ACCOUNT UF PROJECT UFDC
FILES
FILE SIZE 3949 DFID F20101219_AABWRK ORIGIN DEPOSITOR PATH galluzzo_t_Page_064thm.jpg GLOBAL false PRESERVATION BIT MESSAGE_DIGEST ALGORITHM MD5
819c11aa27c5b10974b2802dc8a825e0
SHA-1
5017cf37e65ee039a52ca861bc22279a497a813c
24700 F20101219_AABWQW galluzzo_t_Page_051.QC.jpg
7d4b3c4fb99c8aad215ddd65bc10caa4
2aa46a8b1bcddbace2bfd4e565ac6c9929bfecbd
1727 F20101219_AABVOI galluzzo_t_Page_041.txt
3daff31beb5d3d8b26b82e530c4911d8
81f4a6c890524842b6065f7f26d79d3f1c8cf900
70859 F20101219_AABVNU galluzzo_t_Page_111.jpg
6a0c8f80e48435ed9ff44a1e220a466b
f6a84787dfd0d0746bb63aaad928ad9f7ed07e3e
25979 F20101219_AABWSA galluzzo_t_Page_075.QC.jpg
0bdccaba7c0cc9dbf8f381b38fc1a46b
10972a0c71df247f1b69e6de9023a4a61b76129c
11563 F20101219_AABWRL galluzzo_t_Page_065.QC.jpg
35f5020bb2dda8ed19f681bf98aa6777
6afd83397d4c82cf50016fcb8deb482918698db6
22279 F20101219_AABWQX galluzzo_t_Page_052.QC.jpg
5c07c42887bd0cff20849674b61de2bf
6541ccee498903ca02f704433a463bab2455c79e
182365 F20101219_AABVOJ UFE0017421_00001.mets FULL
b12619a5fd6973507a198f68e432c7ca
c19d8c7f53eee8e890fc1a69de00b7d67217c54f
60950 F20101219_AABVNV galluzzo_t_Page_008.pro
b57e2cdb63a6bdcfd9a99130268cc748
42e1059e38c9f0e1154345796c3396f7a7104207
6824 F20101219_AABWSB galluzzo_t_Page_075thm.jpg
6b86fa44599b9a2eb5821bfb856c9414
2ee1c6e6a0cd6aa478dad43094354ea6ff5e5080
3403 F20101219_AABWRM galluzzo_t_Page_065thm.jpg
9396cd7f7614798b598c4fbb03b4abb4
5c0cf9def8871855bf4e3a3c4e29e637e315368a
6391 F20101219_AABWQY galluzzo_t_Page_052thm.jpg
804d46ecdb8b4864ddd81a9361416205
4c519766d0ae985890f46301586ebd1aff2d8075
1053954 F20101219_AABVNW galluzzo_t_Page_054.tif
5e11b488730f1095257b2d7b4733f032
109dd8869b3d58123ec7d49f39b3cf64d71d59bc
6970 F20101219_AABWSC galluzzo_t_Page_076thm.jpg
cc9ff60a9d0d5088dc5678869721b4e3
b5cc9fbf4fcac7ddb3812e8603a9c4433e4837d6
4409 F20101219_AABWRN galluzzo_t_Page_066thm.jpg
4bbe487423fa1ed98b8e3dbe310eac66
ad40d964140bce2e4d8b28fd63d5f283da24869e
6953 F20101219_AABWQZ galluzzo_t_Page_054thm.jpg
18aee5ba21e0b2067ea1e97c378cb0eb
c6e5896813c4811fb1d3017ae44b8f7ddef71074
25161 F20101219_AABVNX galluzzo_t_Page_044.QC.jpg
5758f67b13b7a6039ea02f0459740596
8cf81b5c1b076eb5d1e9a3ebe0c5d7edeb84318a
47001 F20101219_AABVPA galluzzo_t_Page_020.jpg
2ac5ab32f3a5e8ef2adbcc12190eb05e
6ebc874da793c7eb0872b68e71ac71c3c109d3a2
25887 F20101219_AABWSD galluzzo_t_Page_077.QC.jpg
ea379c0a33fa7cb360fda522a0b9519f
84d88a9017b1c58616e5761c3c166e08231c6a59
10051 F20101219_AABWRO galluzzo_t_Page_068.QC.jpg
5767b937b1a8a1970aa116ffe0c465e0
e14acc982bad5cff908073db121bdff799557a5a
10500 F20101219_AABVOM galluzzo_t_Page_002.jpg
c61df9660c3961dd0fa21dfd1cbf7bc8
9e13e4816f78e5f5cb9c94ef0735e471b3104a58
5800 F20101219_AABVNY galluzzo_t_Page_098thm.jpg
c38e3915abdf995cc3698c0957552552
3abf11157c7d66776ef5f56dd23e50736c2bf9cc
76602 F20101219_AABVPB galluzzo_t_Page_021.jpg
981828676397e30374204066364257cf
7bbc35251dde9cf08431c6a738f7b9166c459d92
7185 F20101219_AABWSE galluzzo_t_Page_077thm.jpg
ebc4c59dd9e74c1578f3f886f3392c36
f6fbd814e3af77e1b1dbb43bf8d503de5e12c97b
3098 F20101219_AABWRP galluzzo_t_Page_068thm.jpg
9a38dacf1aecdbc5d57bbe8f63e5140b
675814b116d2997f381cca38b65b3be75233b959
13871 F20101219_AABVON galluzzo_t_Page_003.jpg
b9a0f7c09aa3bbaee356e8f58dc040e8
7e79d031f637f0777a9712fa060a37ef49300a3b
F20101219_AABVNZ galluzzo_t_Page_086.tif
8d4b9a186605bc246de9bbfa1bbbcbb0
664d8e67bc783c3e6675e2ab17eabe438abb265f
73410 F20101219_AABVPC galluzzo_t_Page_022.jpg
024584ca42cfac6dc8bbf816ca946491
6c6bf7bfe6bbea71d2e110a2c3a43738e2480676
23152 F20101219_AABWSF galluzzo_t_Page_078.QC.jpg
2980279a9e0db4e8eb88dcc3e351d383
d61b4f6a04ece08eee9e8a1da829293b2734f455
12654 F20101219_AABWRQ galluzzo_t_Page_069.QC.jpg
0c574db4cb96386568a313504f1b7384
f8f8cdbc24a13abb0dadcbc2e0ab7e97093fbd5e
78625 F20101219_AABVOO galluzzo_t_Page_005.jpg
4e427ee2fb500ab4273755f93cc3d183
8ec4043534680f7cdd8aa26c9e7ab7b414974599
79246 F20101219_AABVPD galluzzo_t_Page_023.jpg
6b91d6ef801ece0ea13e5471e23ffd52
320805cb9281503d7194466e60f868441926ff27
6334 F20101219_AABWSG galluzzo_t_Page_078thm.jpg
929091700c1e1160bc70db3d9f85cb81
4e81460c3f346211eee51aa214a726ba278b3fc9
3985 F20101219_AABWRR galluzzo_t_Page_069thm.jpg
3ad70528e5be9dd31a6c6f97964ba435
da0f71272aa968af971bcabeb610c3c3dec0caed
47866 F20101219_AABVOP galluzzo_t_Page_006.jpg
8d6088d35a16fc28b2cf64ae05609756
212eeafdea0fc14d1c0e0659a28ea8785791575f
78714 F20101219_AABVPE galluzzo_t_Page_024.jpg
a6aa38c9451efb3857cbaf07126a20cf
69897491ea4d3d88ea5b727f340d8e69370737f6
5618 F20101219_AABWSH galluzzo_t_Page_079thm.jpg
c483cc22670adebb705f07de20aba5df
4ff85ade01fc6ba80bb38580dad87660ef412351
6789 F20101219_AABWRS galluzzo_t_Page_070thm.jpg
46e5bc127d81f4a64375d496549b5fd1
e724961be760bd669356eef8be682a3fe8ec0d39
23730 F20101219_AABVOQ galluzzo_t_Page_007.jpg
e0c7d63cf1e79d6f22d937a0dfd348fb
30dd347a0a0aae505ff0f80851415844851f8485
78792 F20101219_AABVPF galluzzo_t_Page_025.jpg
f677997dce23ed14f978aae187ea38a5
8dde7d641bd9ea64ce88d0ee42b6cdd35dc0a25e
6993 F20101219_AABWSI galluzzo_t_Page_080thm.jpg
36dc95aa6ae97387006ce4c259fcd869
2cd924148ea810c3a67339103c19417124b574da
25447 F20101219_AABWRT galluzzo_t_Page_071.QC.jpg
4f36d1aa7febb71c205e908568189fd7
5d155b5c08b6e8ff66307de203de178fd1f1ee33
76740 F20101219_AABVOR galluzzo_t_Page_008.jpg
d8db1cefca3197d1283cb639b8a508bb
35a11865e67bd5b0732f19c4051f35ff1672d889
76349 F20101219_AABVPG galluzzo_t_Page_026.jpg
18482e5ef18d83a39919bbecd7976849
ced1ef72ed9cd31dc6e705d6efd1760b374f53a5
24565 F20101219_AABWSJ galluzzo_t_Page_081.QC.jpg
64d56fad35c41843e760f7c77f5fe5fe
c17f44fe8ae3962cd5153d88eb492518282ff8ab
6975 F20101219_AABWRU galluzzo_t_Page_071thm.jpg
425a2398ad8891e3d935a78054c41d64
04096ef62a1c6d3394407370dfc9941331b28105
60794 F20101219_AABVOS galluzzo_t_Page_010.jpg
d8f3f8440deaa0b522e35a4873867e8e
41379a18704bbf84677c58906d9233d92516c0b4
72659 F20101219_AABVPH galluzzo_t_Page_028.jpg
92619ef36a2c8534c36abba2e18d9f11
e7e59ae71a13d7f24aab15db821d9808bca23a0f
25963 F20101219_AABWRV galluzzo_t_Page_072.QC.jpg
8ea2f185c00ef81121479c22449313f1
4da7861b5dfd0a57ed60ba21981b3adaca6d1961
72000 F20101219_AABVOT galluzzo_t_Page_011.jpg
17bc92bf52af213a1ea30eb58d359041
de96444446fafb907c37fb556c16df190392d713
6890 F20101219_AABWSK galluzzo_t_Page_081thm.jpg
8d72ae869afc517c64c991963bfa92ff
d4cee00132ac279b92a103e96b8a5d8eb4d073b2
6967 F20101219_AABWRW galluzzo_t_Page_072thm.jpg
f928da7790df22b5d58f2a62d6284816
b79f9e1fec991744e76a7fb0ffb7b68981abdc52
73633 F20101219_AABVOU galluzzo_t_Page_012.jpg
8752cfb74622c2eafaba63a55a3d8660
91a81ae194807f1a7d3981fe3a8b35fa6958eac1
71373 F20101219_AABVPI galluzzo_t_Page_029.jpg
022a72d4bb3bee7af587b9f4a9313b50
6a089b3ac0726c317b369e910c15756d79b9b531
7199 F20101219_AABWTA galluzzo_t_Page_094thm.jpg
baeac9be2eb60fae2cc67e2e53cd01b4
295a0744fd0e85d4aed99d6ce140757d4800d643
19772 F20101219_AABWSL galluzzo_t_Page_082.QC.jpg
3301b3addfe9a7560d82f0b8ea94d7fc
8e60f62617cfe88874ab73f6e92228d426d0517e
7025 F20101219_AABWRX galluzzo_t_Page_073thm.jpg
6af19a2e2bb154b044d1ede82b067cc2
9b2748a184faa6c22c5cbbd5484cd51349b00471
74615 F20101219_AABVOV galluzzo_t_Page_013.jpg
9c5b119cfb60acabd45d13e9cce79056
d2db52aa28df7c466aa1d88ffb9e840f63d3a32b
78250 F20101219_AABVPJ galluzzo_t_Page_031.jpg
1b508cf81080774e25532bc2da33a37e
5e4095963d1ba510ece7c0f295bde1e37f7d3115
21633 F20101219_AABWTB galluzzo_t_Page_095.QC.jpg
926db8304a5f6f3dcb318345d71efa64
46a7ed40d6a7e8e006d44d633a02205470065b41
5758 F20101219_AABWSM galluzzo_t_Page_082thm.jpg
466f5fa1e2942d1b8c8eb7c983d6ccfb
eca84457529ea6fe701c6f8e10b8e54e94debe63
19036 F20101219_AABWRY galluzzo_t_Page_074.QC.jpg
4d787dc5323ce27a8fae514f4daaf2f6
1c91a887a6c7d7f4cbd615faeaf197bc3d85afb4
74534 F20101219_AABVOW galluzzo_t_Page_014.jpg
6f8ed1e1eee97793c6535484d2bb0cb3
9debcf899a0c12fe2e565c1cc52cec22722fa85e
76281 F20101219_AABVPK galluzzo_t_Page_032.jpg
f1764b14c55da94a8fbec208c09742a7
613622f08adaaf584eee5058d8ed445d92186a4d
21134 F20101219_AABWTC galluzzo_t_Page_096.QC.jpg
3aab6a6787adf0d0f832d134ec9f1eb9
ab38ec7980673e973582d3431abd1702cf6adfda
20113 F20101219_AABWSN galluzzo_t_Page_083.QC.jpg
89c8deae6ca5a30618f8aadcc4e50238
728b6238513e53ae762bffd25d3fb4ff65b10f10
6262 F20101219_AABWRZ galluzzo_t_Page_074thm.jpg
8941471d2a0de3b703dee464919f3ceb
45688363b826ff7e5eb98b63f42f584d44097a55
72333 F20101219_AABVOX galluzzo_t_Page_017.jpg
64e0a21c25714d81c57276c11460a5b0
7cc88231f8de10290dd6e458054769766ab9a734
64871 F20101219_AABVQA galluzzo_t_Page_052.jpg
8a34c42b15d6a7a6548998a1a8333a43
ca0e2135f01731a04a5adc694afa7e4ea21fceae
75792 F20101219_AABVPL galluzzo_t_Page_033.jpg
199ca22da7349d152311e4c68465658f
fd3ebab820e71120c20bf57a35d1234e5ee8a5db
6095 F20101219_AABWTD galluzzo_t_Page_096thm.jpg
399d33494519e6337c63d3a7f0f7d796
90e3a5d75598bc609664df77ab17af2afa9eee30
5622 F20101219_AABWSO galluzzo_t_Page_083thm.jpg
c2e423cef41f41a2cd92327f4878b9d8
8c37c710d2c9a8622bcf3be768c596db4f2e8e49
76564 F20101219_AABVOY galluzzo_t_Page_018.jpg
d5d5785e2395b61ab569c4d196bd73f9
9f84abc92083ed98704560a8fa808288f6fedbd0
67787 F20101219_AABVQB galluzzo_t_Page_053.jpg
aba1676098df460be4278aaf11f6bd1f
79123b404c06f533378856a72f1d481cad36c316
69452 F20101219_AABVPM galluzzo_t_Page_034.jpg
140925d428cdfa450b23cda30985f0a7
efa05959d667ef629b4b1d343ed90e3a09a8a9de
24284 F20101219_AABWTE galluzzo_t_Page_097.QC.jpg
827a9482255e4739425611ec9e2b75e7
0d5e26761b5ef3d7344eb5a091686ccd7e1e8067
25102 F20101219_AABWSP galluzzo_t_Page_085.QC.jpg
d359fcde0231dc15607fcf5c53e3e71a
9905dc4174ef42643c2dbe91d7fcebf607502040
23075 F20101219_AABVOZ galluzzo_t_Page_019.jpg
32dc59926aa0ff4d50b69f04004b3aab
bc517fe3ba09c6345dd47e5495e1f684467624c5
76956 F20101219_AABVQC galluzzo_t_Page_054.jpg
8e1ea5eb9652bf9bd6db19598eb0c204
08ebc81753cf416c0a98637703834fd2134e5634
77664 F20101219_AABVPN galluzzo_t_Page_035.jpg
953010873a5a4724aa338d7b9a736f17
ff76c7cf4d616ca1d1b37c606d8e7f051584b85b
6760 F20101219_AABWTF galluzzo_t_Page_097thm.jpg
b5fb48ebd28c449f9c94aa4f8d2bb49e
a13c3162d96adda3512a7fe8650c6d3a5d625195
24578 F20101219_AABWSQ galluzzo_t_Page_086.QC.jpg
ace7a811cdaa767f24cbaaa89e738eff
2932e5e4a4f8314d0e6cd3ecaf7e498632cf658d
48824 F20101219_AABVQD galluzzo_t_Page_057.jpg
48544e98610eea455094619ec1209f41
86bad96be2ce2e7e4a00be9617061179f3a0cb50
71003 F20101219_AABVPO galluzzo_t_Page_037.jpg
c017acf9a372cb8a1443efbe09bc9b89
19b7dd13e138dcdd3dd0c86fd2775da491bbe963
25398 F20101219_AABWTG galluzzo_t_Page_099.QC.jpg
6f874c8bfa5a5bcff368d770a860394f
7a2366dd53273bb1b328515c64c01a79b425bcb4
24697 F20101219_AABWSR galluzzo_t_Page_087.QC.jpg
e2b7bf02da36c3e0ce6a4cbbc54f26aa
9339a8dc6fc0c50d783578cf93d7e88406e0e80a
72117 F20101219_AABVQE galluzzo_t_Page_059.jpg
65caafa995de0364b41cc1287ac8796e
232b938f30541a2f1ad788dbc676885f5830f2b1
73918 F20101219_AABVPP galluzzo_t_Page_039.jpg
3605aef2db95cc38d382d46ac641b5d7
75ae543e55debed1d20a29b124ffcbe402470d34
7037 F20101219_AABWTH galluzzo_t_Page_100thm.jpg
1bfb1f24a269ecef24ea9e6d054be271
751d747b0ced6f31883d350262750acccb6e1552
6669 F20101219_AABWSS galluzzo_t_Page_087thm.jpg
7f22a2491a03724fbe80058151b30a71
369e55dd4ca7ceb4e1cf6ea0da9e9c77fe7d7d18
75361 F20101219_AABVQF galluzzo_t_Page_060.jpg
faee5964e490bf09ece0f5b8dc8fe1cc
f5d711fe77db013c2a65c925dc48d6a53d138c79
52063 F20101219_AABVPQ galluzzo_t_Page_040.jpg
9bc61a8360b9582859af18c270ed149c
a3754b9aa093f193bb89aa6d35666911c73cd951
6520 F20101219_AABWTI galluzzo_t_Page_101thm.jpg
f5f2f3bf45c0b593186c6fe2b1e8916e
f19d386ca8a7e56dfc9a7ed8e8eaf2bd83a71dcb
26695 F20101219_AABWST galluzzo_t_Page_088.QC.jpg
2be58ed354641ed1341dafbbe711c257
21f6ac87063e1aff93ba1837f7ffbf51870d5bad
73582 F20101219_AABVQG galluzzo_t_Page_061.jpg
eb7f654b02eb53e14fcf6d4b8964e4be
d9971305b2b98d2e873f47da0d759793d6fbc45b
58708 F20101219_AABVPR galluzzo_t_Page_041.jpg
64a9c361d6ed8a25ad05de4eb72af48a
1fce8901123cb9d135defb88a303c6ca3f959a7c
7910 F20101219_AABWTJ galluzzo_t_Page_102.QC.jpg
22886968f8fd017a8d6e9800e30ed86c
23e14ba1adb8aeb7a19d85d3b774a7107a45907a
6642 F20101219_AABWSU galluzzo_t_Page_089thm.jpg
3d16bbe1871652e19d3281d10b742915
7d83f15f5626cc29bfd1cf5760218d5fd72edd2f
76334 F20101219_AABVQH galluzzo_t_Page_062.jpg
95ef27b2e8929975ddbfab8679830b73
d2ad7b3b9a49785d5c0b445eb861fb0bf26ae802
75571 F20101219_AABVPS galluzzo_t_Page_042.jpg
7d3c8b15a58e5ca1176f744e53cb244d
f61ed34406c6b224550ac344e7c4747d3e24b3cd
2428 F20101219_AABWTK galluzzo_t_Page_102thm.jpg
d13088cb5a0d367ff19f5fc3f31346d4
ca637757c1cff79ab459bfbdb3da89e688154737
25680 F20101219_AABWSV galluzzo_t_Page_090.QC.jpg
2216fdb9b8fe7dfc2d15ff15284a7bd2
5a127f1c738b9a20b203a0a23610e76fec315ae4
71368 F20101219_AABVQI galluzzo_t_Page_063.jpg
bfdd250421eea419ce9a53f46af66d45
413ca6847b6b71b09a0f062b26e1f322d1fc238b
68579 F20101219_AABVPT galluzzo_t_Page_043.jpg
272d5b1f18d32f1d3825c38f5c9396e6
f9ab302feb2499a50ffdc214eae6467d929e6ff8
7053 F20101219_AABWSW galluzzo_t_Page_091thm.jpg
600cce54dcc2178534dc7039492906da
90fc27c158adbc4b99743be5be93e8edc2c9d917
75967 F20101219_AABVPU galluzzo_t_Page_044.jpg
0775b428c7879cda861c6782718999c4
beb7789715dc57279280647a14c6e4e04218abc1
23294 F20101219_AABWUA galluzzo_t_Page_116.QC.jpg
679ed7520c2e12108e2b676a71dfecd0
5df1facc1f1d394669fe9cf2194d10bb3d69c2fd
15934 F20101219_AABWTL galluzzo_t_Page_103.QC.jpg
c9552b4f8984706128f5445920158641
832e2bec6053c9fb7d49f38ac9757c176985b7e3
26643 F20101219_AABWSX galluzzo_t_Page_092.QC.jpg
b1b2581b2e7459b505e683d307ca5746
a9984fd3ca6b4b48020d08dd0f9bc3063fdc4009
39207 F20101219_AABVQJ galluzzo_t_Page_065.jpg
a1acd84b212ae019d691b123d9be8447
aa08157de62ffcf662dc1df7eb8b27b7896b1d93
50952 F20101219_AABVPV galluzzo_t_Page_045.jpg
028fbfa2c9bb98937e5517b9a59f2b2e
28566ae66da903c15a409d02c7a9cf04d2e8956c
25296 F20101219_AABWUB galluzzo_t_Page_117.QC.jpg
c7e954e6656177bc8bf81fb7a946e350
da67dddce0217fc813aac52b023aa4b47a431ba5
4025 F20101219_AABWTM galluzzo_t_Page_104thm.jpg
97ccb51791fbd465052203efa25880b6
b9b0fc097b9adaa72156adc393e33e54fe71ffb3
6972 F20101219_AABWSY galluzzo_t_Page_092thm.jpg
be8255f2485fa66e11830ae07d1ebcb5
f414babb6bcb139e8cc8b92675763a69215d3d59
53971 F20101219_AABVQK galluzzo_t_Page_066.jpg
76a076701b8d80047b18445c8e80617e
a1a263f49f700d63547a28e073f05245eb81cb6c
72024 F20101219_AABVPW galluzzo_t_Page_046.jpg
3b4a06e50ffb6cc3d002d4b20713d3de
d069660f882a437713ff6a0236f5f9a7142d9264
6982 F20101219_AABWUC galluzzo_t_Page_117thm.jpg
e53f57ef0a086db4050fb65fb9b05068
b04f72407678c3639e12a06bc0b07fdec5c93e43
8406 F20101219_AABWTN galluzzo_t_Page_105.QC.jpg
ba7a26ed3fafdc1c3d42ac91a36fe325
059cd52ad90060ca988c6696603645159a7c3b2b
24417 F20101219_AABWSZ galluzzo_t_Page_093.QC.jpg
e77a91bc964b1769121f45ac258455c8
d37ed0e0df0fb3647a61deeb91ce2e123cde39b5
80973 F20101219_AABVRA galluzzo_t_Page_088.jpg
edbc00126217ee9f253c2dd1868ab643
03d5f56e5940baf98f4acfb70a9dfa93b0c52b98
33693 F20101219_AABVQL galluzzo_t_Page_068.jpg
754cd16de4d8bc1494ef19d880fcedc4
ebc8991810ea631a2e20301166539f7d7f13130e
67940 F20101219_AABVPX galluzzo_t_Page_047.jpg
92f6493cb23cc571a4655b492103854c
d24e16a804243f7dacf59ce309c69eb9cd71c025
6878 F20101219_AABWUD galluzzo_t_Page_118thm.jpg
67ec20d2a001bd3deb9e4506753d5f47
94855082329327a5c3f77c9eded1be4e46e619b6
2764 F20101219_AABWTO galluzzo_t_Page_105thm.jpg
d228afba952cc151b11010657fbb96ae
2a4e2149c5bd620c3359f6390e9d4819acfc56fb
71121 F20101219_AABVRB galluzzo_t_Page_089.jpg
4674d900b115e383dd18ed4d2e605374
f5318cda413742998e138c7ae6737382e8a45db0
40195 F20101219_AABVQM galluzzo_t_Page_069.jpg
c8a0d852d21bae4015fc4802ebbafbcc
d76ef67abe05b4690aec0dc4b1d0fa7bfcff844a
74913 F20101219_AABVPY galluzzo_t_Page_049.jpg
cf179d8bbd8d2b279e4cae11d4924de8
34eb570e65a0d96783dfe08ca300658985c42e28
25795 F20101219_AABWUE galluzzo_t_Page_119.QC.jpg
cf60a257e4849636114328e9389d4c9a
58cc0ca04ec20d0ab85b122bd4fb5d3eb448da67
8491 F20101219_AABWTP galluzzo_t_Page_107.QC.jpg
d0a50d80ff5b6de5c15e3a984ca2e78d
efec499df8fc1bf0485afc93969c05d9b0c43ef4
78050 F20101219_AABVRC galluzzo_t_Page_090.jpg
413a7a4e82b5c376098f204c2b68db20
e852e775ce3ffd292341354c2c9b5954875b1d76
77736 F20101219_AABVQN galluzzo_t_Page_071.jpg
8d1c5b656a282b920fbb9a44dcd7c517
f08d1b5de6e14a96555812ae01459d70ead9d8a0
71770 F20101219_AABVPZ galluzzo_t_Page_051.jpg
be45fa3be6c1b6f98c0c3db5b4a3319a
98f2fc6b5988e47f72399ab44e8a4695da42dadc
26182 F20101219_AABWUF galluzzo_t_Page_121.QC.jpg
29dd80189d475c394889b2dad825f3e0
0682b5212278728c67cd3957dc12d6b428f24b33
10832 F20101219_AABWTQ galluzzo_t_Page_108.QC.jpg
3f636278569bdd61b7438cc230337752
6a9b78c9636d6d5c04eb8bb178ba87445059ab27
79888 F20101219_AABVRD galluzzo_t_Page_091.jpg
4d8c24a8be7e1f66000ce85b9479435e
414fc656467fbb47dcd74ef0e36c438696106feb
75432 F20101219_AABVQO galluzzo_t_Page_073.jpg
3c76d9f147cb201071a4eb989ce388a3
552fb378716a8e9c089ab3345b5d770fd9b2b937
25318 F20101219_AABWUG galluzzo_t_Page_122.QC.jpg
cb9d06128127a5dbd1c70ce16e7ef210
56b3355a38b54f94eb9ac07d0f6fe38dff0d4d6c
3316 F20101219_AABWTR galluzzo_t_Page_109thm.jpg
ccf06a5bab05c10262eaa49b6dc2534b
c34da3b5c9af3cf5bd4c8a55f754c1e2578d4cbe
78322 F20101219_AABVRE galluzzo_t_Page_092.jpg
0de637768ac280b4a5cb49d83880dca7
425747af07a5f9ef800a531e2cc17e3738bb4eb5
62285 F20101219_AABVQP galluzzo_t_Page_074.jpg
3149ae701baef663a7217eb59c18175f
a48b09eb43eabd5afa094ee9dc528f857d4c19b0
6932 F20101219_AABWUH galluzzo_t_Page_122thm.jpg
d6b4cc34f15ee12b263e8a3e75020104
ff2a3ebb3598e249d66e5bb7ea72fce50ad41876
24977 F20101219_AABWTS galluzzo_t_Page_110.QC.jpg
5cbd49b290374bfafe39ed2425473288
0d53204247b52f7c3e0c802168fa40968b0c8345
75028 F20101219_AABVRF galluzzo_t_Page_093.jpg
ea14488e3d427cd125268c9c480af958
4c913f99294e4b798881646c1f23bd044c6cdbc1
75952 F20101219_AABVQQ galluzzo_t_Page_075.jpg
f2900558ca7414e958f45318c8df5eb6
ab365c846b950f589079d38bde677d0c444a37e1
25683 F20101219_AABWUI galluzzo_t_Page_123.QC.jpg
be021a70e0317545c11158ff0b801f74
e4f9bf4348b579f948dae892991813d5d4f4e8b0
6838 F20101219_AABWTT galluzzo_t_Page_110thm.jpg
360a9abf8903f18f668f02ff1acf62d1
79b32e2c22cd03db5983cfa065cd95da21d63573
77733 F20101219_AABVRG galluzzo_t_Page_094.jpg
b280ae0df3ed84ef3ca8bd5d82406a82
71ffe4ff412ea97d06f9ec9dcf79aee57b136a1b
76872 F20101219_AABVQR galluzzo_t_Page_076.jpg
08c2118ea36867a5ee232fc46c5433c8
adf6117cf125a535a9832e45edaa3168e460b5fe
25559 F20101219_AABWUJ galluzzo_t_Page_124.QC.jpg
e47d614098fbbdee944d714dd417b583
c6d3052f3948e4da24ca2bd65b175f9404f2329d
23607 F20101219_AABWTU galluzzo_t_Page_111.QC.jpg
fe66aa945c64138cb4f1ef1e15901371
c5c6fa722ce9bc06a1f04593aad013d4992cf837
67850 F20101219_AABVRH galluzzo_t_Page_095.jpg
3404ae36c9d9e64d04233e8d935504bd
48c9d43dd7caa10965b618ca7f101a24741465ad
78004 F20101219_AABVQS galluzzo_t_Page_077.jpg
ffee61745e37f0fcded05b821f8896ec
edbb48ae31744d47cac507d45b9d9fe44513b174
6741 F20101219_AABWUK galluzzo_t_Page_124thm.jpg
c6480e839e3b71368c6e89f9031570ec
38598a78174fb21beb88dd15dded55ee63d01d23
6915 F20101219_AABWTV galluzzo_t_Page_112thm.jpg
bc2ef2e8e4ec9ad693849766fb5172c6
74a99f91ec2ac55b1861ef9ce68d6f11642a62ed
74860 F20101219_AABVRI galluzzo_t_Page_097.jpg
eeb2db20a1190ddadf09ac22d8385108
fe803654e8e41df7974a2fce2c31a03a6770a066
65501 F20101219_AABVQT galluzzo_t_Page_078.jpg
580c3aaafac3808e7224a4a53dd5ebd2
0669e8906708ea52a2b8e60250cbab1d6ef640de
23980 F20101219_AABWUL galluzzo_t_Page_125.QC.jpg
44ed5472088c86205f27c4e23ce87079
3fcefb59c0bf4ed47e87e503328c69712ff9d851
6659 F20101219_AABWTW galluzzo_t_Page_113thm.jpg
5feefc1a6870a338bdcba9f6f1ef1112
cb09415ff73e9e1b0e23760d040006818529c705
77548 F20101219_AABVRJ galluzzo_t_Page_099.jpg
c54f717e75a4761c5dc8c745b9396dc1
1312f1e67823fe6ce3b2a92add88217299437e02
59990 F20101219_AABVQU galluzzo_t_Page_079.jpg
7722532ce364c454c4b3264de4c4ebda
85c7c5d630c2792c711e47f62638ce92899b168c
12361 F20101219_AABWVA galluzzo_t_Page_138.QC.jpg
f2e7af33798a4dc4cee3b8a8d3e004c8
ce04a75e126dd98bb0700453f80ba181b229470d
26276 F20101219_AABWTX galluzzo_t_Page_114.QC.jpg
e2fb1ad9bf7dca29c07607be54eca4a2
99faa47f53acdc65dc4b217f7814c665c912b893
79328 F20101219_AABVQV galluzzo_t_Page_080.jpg
88306d208837747a93c08fa0ec23b635
c7f7e761362a6dc032186feede1e0b1b138488a0
3506 F20101219_AABWVB galluzzo_t_Page_138thm.jpg
8fd85a31e693c997ec6042046dfe5135
0085fdbac6dd4d086bc99377b59cd1dcba6eed70
12249 F20101219_AABWUM galluzzo_t_Page_127.QC.jpg
24be8af29465459718205049273a6c2c
9427045c88ce3ef21be38086ba97717b802cbf46
7163 F20101219_AABWTY galluzzo_t_Page_114thm.jpg
854a2faadcc31fa685cec71e5239ef00
854eb13fce4a20cf70e4791dabc3636628d52ec8
71549 F20101219_AABVRK galluzzo_t_Page_101.jpg
e78c56238da23e8f823f7325e1b2810a
725f03b13737de4be73a7e1d753e94e27498251c
58592 F20101219_AABVQW galluzzo_t_Page_083.jpg
20ca30be06edd697d23c748996551e29
7b07f0afbb250471981a3f0942aad08be1d0f08f
10064 F20101219_AABWVC galluzzo_t_Page_139.QC.jpg
5f3aee6c5adf4fd931c0ec4e73a363ea
1465bc0b54c5c2320a2580b33ec557b067d14e5f
3648 F20101219_AABWUN galluzzo_t_Page_127thm.jpg
3e7d62b7c9da8f2fcacd17626b2705f3
add80f398c6494e0bf4b6b87a75ec074dd8e0377
6603 F20101219_AABWTZ galluzzo_t_Page_115thm.jpg
583634beca4537081b1b51eec6f1bbf7
ef6c4e4534b2d9f363a1f5035a7a711e77d0a5b2
56008 F20101219_AABVRL galluzzo_t_Page_103.jpg
4aa8ed7ef9d1485e25e91a55cab6d23f
5d91c7aa12e6870ff1c28e5653e8436fd0c891c1
78624 F20101219_AABVQX galluzzo_t_Page_084.jpg
72a5d84381f069c4b8d5d1b40b967b4b
2800a16bd3757e0dd859ec375cde5acb7d817b61
78329 F20101219_AABVSA galluzzo_t_Page_123.jpg
5183eec27de82bd1fabddfbc70d2fc1b
47c169cae1ff5b17acededf9e7b2c5eef404211a
11848 F20101219_AABWVD galluzzo_t_Page_140.QC.jpg
d7dc77b681632e21b5eaaee32521378f
0958035eb7a4671be1f13f1d3d4cfc05d482fce6
27043 F20101219_AABWUO galluzzo_t_Page_128.QC.jpg
b605d82dc5ac6b69081e7315c62977b1
32246b80cc305183cf866146359dc3b6f52a737c
41741 F20101219_AABVRM galluzzo_t_Page_104.jpg
01a6a2580c70054e3a690a910eb1b2b5
4b4569f7092c6aa754f4f21ccdad5503a8dd2bc0
74726 F20101219_AABVQY galluzzo_t_Page_086.jpg
6678fe2b5bc60b65565099a907bc37fe
ebab8dad77b37a1f54a084e37b40635758d06c9a
73975 F20101219_AABVSB galluzzo_t_Page_125.jpg
63305d83acb2be190fce1aa097a7ea4b
30a5ae2b003d95fa01498dcaacf29fc686cc3aad
3853 F20101219_AABWVE galluzzo_t_Page_140thm.jpg
a29bd50e54b9eb4e983da26aacc511b2
5d62bcb21e252e64ea38cbe1945266620c837045
6861 F20101219_AABWUP galluzzo_t_Page_128thm.jpg
01fbf597cd83bd9897709f496679ea3d
b386f85cdeab987a32994cfdf48cf5bb2db75261
46810 F20101219_AABVRN galluzzo_t_Page_106.jpg
33086e393d3773fa909ab8ad17e3ab92
4275a473d791ec4d421044a53e52d7ef18081ef2
73867 F20101219_AABVQZ galluzzo_t_Page_087.jpg
5baf0984e64147e1795ab63faad3c093
409a46fde2d4137d54ee6f3f69b2d93077b1c5d9
75419 F20101219_AABVSC galluzzo_t_Page_126.jpg
2dbb3f0b395ae901d8b2dfdb1a01f56c
da0ba1dc64fdd36f7899a8ed64ece1a458a19ebc
12489 F20101219_AABWVF galluzzo_t_Page_143.QC.jpg
73134baf79b48d2a6984229370bfa62f
7f0da2e38b0fe8f2e9fa8116d4daf7c74a7ac2fa
20085 F20101219_AABWUQ galluzzo_t_Page_130.QC.jpg
fee601bacc50a90c84637b7919484638
4c1ce1f729b364339e52b393da83946d8c27c043
27377 F20101219_AABVRO galluzzo_t_Page_107.jpg
4ae427e5098ad9f850474dfba310c6e2
f989792caf52504312855137c9c9b53714261f5d
37479 F20101219_AABVSD galluzzo_t_Page_127.jpg
f9547b2157b9cd6e618d6aa3c661ca46
f6797029a9767bf970db2a6cd86673bc1538bc93
11030 F20101219_AABWVG galluzzo_t_Page_144.QC.jpg
94d325975953b73ccb6d63ed45917a25
13e448c934fd9f28097d04fe51ea7b551a5d56a3
4131 F20101219_AABWUR galluzzo_t_Page_131thm.jpg
a4d796b1d5f18a75c0e4912c3ccd30b8
718cec5b388b92b4c81ccff8569f06648df45b6a
33603 F20101219_AABVRP galluzzo_t_Page_108.jpg
83f34b76cadb3f8475884bd174db3d2f
209feae414cc33e3121cd0bb8dfb7ef7ba399737
99691 F20101219_AABVSE galluzzo_t_Page_128.jpg
376c0a7da3042c458c4a7ad4a5a80df3
c8227f7f8cd83e91936b6cfa19ce7f46741391cd
11469 F20101219_AABWVH galluzzo_t_Page_145.QC.jpg
d47c0bc2037a2efab6ad2fbb5c9ad4c8
1cc474bb49e39f2512d563f2017d84ad0faf8dd0
9122 F20101219_AABWUS galluzzo_t_Page_132.QC.jpg
a0271905f85f49b336b6485634317e8b
0c62c773ccb62bfeae9c8abfac8fe6ba5c6265fd
F20101219_AABVRQ galluzzo_t_Page_110.jpg
45f592b2bf11edf4b6b5503de9b1ea99
537e854c2f6718c032eb6e5938da038d1241a091
64087 F20101219_AABVSF galluzzo_t_Page_129.jpg
8327223fb8f89a1b21f10685ad63753c
93842ebb22c78800738b73abbeca4aedb7b6cdd5
3707 F20101219_AABWVI galluzzo_t_Page_145thm.jpg
4175dc717bce6e0f141042f91bdf9309
7051d78c27581acdfb050ea6023fe89c35602961
3199 F20101219_AABWUT galluzzo_t_Page_132thm.jpg
e6a9d248e7fcc7aa707005d0e4d11786
bcacc08506dedcf59a403e54c6e8c5876807a2e3
73653 F20101219_AABVRR galluzzo_t_Page_113.jpg
d0e914678109b02084e4b7bdab51a0bd
851b04a5ba4ab4c99f45458c9fde85c25b315c7e
65933 F20101219_AABVSG galluzzo_t_Page_130.jpg
d5222655ab327a5cd027c66001b2e94e
417c817f6e5b7f581c90a4b88ecd728632072403
12676 F20101219_AABWVJ galluzzo_t_Page_146.QC.jpg
94d62d3e5fa4af2383d3cbd1fff79d8d
793c511630afcc4846c5e7d893771394aac4a59d
9889 F20101219_AABWUU galluzzo_t_Page_133.QC.jpg
aeb656ede37acf9a48ec588b2ff9566d
e524cde6a4eb5177373019428d82a8529ec7e728
26937 F20101219_AABVSH galluzzo_t_Page_132.jpg
0ab24465f083c72cf28dd833e5eb41e8
5aadf6f46b560983becd87816b7e5e416d772113
79957 F20101219_AABVRS galluzzo_t_Page_114.jpg
e9f9720286d6b441cc8defb50cafb162
605e8bf668bb7e68b3f6ec9db1eddcc3df85ca35
4138 F20101219_AABWVK galluzzo_t_Page_146thm.jpg
15d3260c739fe7031c20b1e7ea01fabb
8fb32ee0b2680995a4565fc6fd0beabf2d88e003
10548 F20101219_AABWUV galluzzo_t_Page_134.QC.jpg
44842eca6f9bfe31856d2d65d2426288
5c17dbf907a1a32e8fa5b0b4c7f88a953ce05aa8
29853 F20101219_AABVSI galluzzo_t_Page_133.jpg
39465edac0ef45e8fb2c9e2abfdcf59b
25112b517a81638684b25a2ee7685b5680b754bd
69598 F20101219_AABVRT galluzzo_t_Page_116.jpg
c10ccdf3702fe3cf733576c4d98cfefc
59917c5b38d0c4aecc70c0ba957a20dbf785a6bf
22601 F20101219_AABWVL galluzzo_t_Page_148.QC.jpg
f56c1310aba63dcf7d1092a6faf57410
46125aafc6677c0c9e5bf64341bcee977784d678
3391 F20101219_AABWUW galluzzo_t_Page_134thm.jpg
0265b3d1c40a157bb272aa536fe7300c
84ed6dc36d729c71f3d8711b8a975e3fb85b5bc9
34865 F20101219_AABVSJ galluzzo_t_Page_136.jpg
c1ec0b1b74a5274ccf64bfbff8a75112
c16735fcebc5e4674fcc82cf9447f908a21162ce
76611 F20101219_AABVRU galluzzo_t_Page_117.jpg
acd088a629893ec8c83ff7de5448f66a
990990c3160fcd1489490ca555e00430d1d01442
25869 F20101219_AABWVM galluzzo_t_Page_149.QC.jpg
f1e0d245991a503684e81ee3e5bf99ea
3ed3c06dd57a265ff8034d571abcf9ec9e0a265a
11639 F20101219_AABWUX galluzzo_t_Page_135.QC.jpg
dcc329d5ee307f26d388be79f6ab997b
5c04767957cc70652521d9021b590429e53bb707
30216 F20101219_AABVSK galluzzo_t_Page_137.jpg
b444f3833b9dddedd80741df8f6556b2
0314963e2da08616e5eebb21f61b1a8d3885592f
77104 F20101219_AABVRV galluzzo_t_Page_118.jpg
f3657f405f28fd58cfea0fcf73f76a91
7347f26fa4a4a5b9661418156f7900a5880bc45f
3673 F20101219_AABWUY galluzzo_t_Page_135thm.jpg
d8315b1e6bd9dded2a62824394b0893d
f704c927a2d9f7119a90bf2d70e164022aa10162
77940 F20101219_AABVRW galluzzo_t_Page_119.jpg
9ab216cc0bdb67ea28c14d14958a9dcc
eee1b8b21936c0a67ac2160aed2d7924fc8bae83
25840 F20101219_AABWVN galluzzo_t_Page_150.QC.jpg
157444f0da6f768f77ecfc749dc9d259
7487e2cb3c8b9ee357ccaf9998923c5179dc4855
3426 F20101219_AABWUZ galluzzo_t_Page_136thm.jpg
74274d3807e2b6fe6bed8b3ab85efe8e
9b6ae779f0ec1455f25d15fea29945d9948a0f5a
97190 F20101219_AABVTA galluzzo_t_Page_155.jpg
a467e1edffc7f97325e61d35f4792ef1
f5cec79605d7f4c2b61713ef862362a3570a90a8
41374 F20101219_AABVSL galluzzo_t_Page_138.jpg
fa3941eb0d15ce157014b29b8e39b8e9
6ed17a59c40f95a94fb432588e79784494ecbfa8
79018 F20101219_AABVRX galluzzo_t_Page_120.jpg
f9a7cc89f82a9e87a9666dc52a0cde91
f63f952e86d0d2ae76e1aa33ea08ec58b6950133
7145 F20101219_AABWVO galluzzo_t_Page_150thm.jpg
a4ae9a85de128cd070e70f474495db49
2bc72bc98c89466eb5bcc49747e7fd5579bf3015
89952 F20101219_AABVTB galluzzo_t_Page_156.jpg
c887e75aca0200b3e23bb3e1f0d2ca1e
cf28c28585d83dff660a0157b02b94a6c5496ef3
34058 F20101219_AABVSM galluzzo_t_Page_139.jpg
0234c07f6feb5f276677731e4bebd153
13300005391bbf026eda6ea7555cf6bf457e38ba
79078 F20101219_AABVRY galluzzo_t_Page_121.jpg
60158e2dd33de8933ced8b7ec617e2ea
e56163fd7265635cc5559c60597f94497647c03c
5020 F20101219_AABWVP galluzzo_t_Page_151thm.jpg
41e5db2a9002577e81f262ba0c298cc6
9adfbe9d80907810e58d03c622d80ba86f41a707
24457 F20101219_AABVTC galluzzo_t_Page_157.jpg
7079ae68534cd7c57716296dbd39b8a8
15481588fcb66b9bb16128610db8d849b21f2818
39018 F20101219_AABVSN galluzzo_t_Page_140.jpg
f8fe87f8cc72d4bf812d952c08747761
56543f3da7db57b338c30557f0e1d005272d0f5d
77003 F20101219_AABVRZ galluzzo_t_Page_122.jpg
a677f8a43a6f3c1a0d312d7fb0c29171
bbbf81b7c776858084276639bb850d71a122e3e5
26283 F20101219_AABWVQ galluzzo_t_Page_152.QC.jpg
0d32273b515a4b82b3fa3a83b70abe07
9488f36b282d93c8e7cf8f98d543044318e92fd0
24930 F20101219_AABVTD galluzzo_t_Page_001.jp2
a75382e3d569a7f85ee68d68c7fe9e74
a4ff6509a75d712f991ff69b838c38090f2d3451
36204 F20101219_AABVSO galluzzo_t_Page_141.jpg
da4eb719dcb36deb5857069658e84d81
fac3e7c11a68128f09aa8dce376b90adaf140dcc
28469 F20101219_AABWVR galluzzo_t_Page_153.QC.jpg
a339c87e2750f180b3252fcdef3dd0f7
10c40e1ae0cd2c6453d1e77a8e8685aeb19052b5
6084 F20101219_AABVTE galluzzo_t_Page_002.jp2
05c759e9f1fa53558d94ca1187ef6700
5ebf6efab339067b9aebeaf2ae1ff890b465e227
31062 F20101219_AABVSP galluzzo_t_Page_142.jpg
a1fb6883173ab5cd70cb0ca678c410f3
df7808685812a613d7444c687fe0c80d095c232e
28512 F20101219_AABWVS galluzzo_t_Page_154.QC.jpg
ce2d4bdf316610c97be40139f0edea04
cb03d35bad1e7181960c883b329e706563f59d1b
13709 F20101219_AABVTF galluzzo_t_Page_003.jp2
09a66c2e9705da27092e9c3e95d6917a
e4aa56c44f9fcf543b3c4bc8b8c8541b8b43261e
42324 F20101219_AABVSQ galluzzo_t_Page_143.jpg
0646fb5bf124276cf8141ddf589596e3
e09b2315e89c24ee953ff14400d7b362a621994b
25924 F20101219_AABWVT galluzzo_t_Page_156.QC.jpg
36ea375a190eaf74c22cc7629256f6da
820d9293f48e3b17379fc33f182244903da2a093
54103 F20101219_AABVTG galluzzo_t_Page_004.jp2
70e05f824477925c8bac3491eb7d41d9
83e26842402360e0a37b3825fb214de0f5027196
35987 F20101219_AABVSR galluzzo_t_Page_144.jpg
fc4ea0d5fd851fd07b9e1a3c00bf79fc
46d31a4e43c3f7caea790ab646dec9845475a42c
6873 F20101219_AABWVU galluzzo_t_Page_156thm.jpg
8ac85b64daf301ec6bc17c10bfbd9d9b
42a157768aa04e76278a9d4ea0b38c017d8bb522
1051962 F20101219_AABVTH galluzzo_t_Page_005.jp2
005f81bfcdeb44f5ead61c27d3774ac8
3cc7db226f34120b0b2097aaaac972eae3ae7941
37022 F20101219_AABVSS galluzzo_t_Page_145.jpg
c6d6657e4d208038d3aaf8160fe3ee48
e275f2b89ae4cc1c18b7607613a9f80d27cf6510
7907 F20101219_AABWVV galluzzo_t_Page_157.QC.jpg
4cd5bcb9b4914e80a1e6009f650babe1
98ee0321d453f163f9db1163bf4e6a68d8106916
1051984 F20101219_AABVTI galluzzo_t_Page_006.jp2
e9dd8288f43265e56f634a80bf3623da
feb171809e9c76daed522053424645338ab59950
41350 F20101219_AABVST galluzzo_t_Page_146.jpg
cc1d7c2ee0b237c20a18fa98d6182b88
ba7a906ac308b68d3ceda997ebd586f801734d65
459770 F20101219_AABVTJ galluzzo_t_Page_007.jp2
e9432e4237f6bf8cf79576fbb396f5f1
369ef97ab56b61a1b683ca6bd8f01c9b5c97bbb3
43442 F20101219_AABVSU galluzzo_t_Page_147.jpg
b0d7bd6eecc173165df0894faf312019
409a3e4f0dfb961323cbd2fb5b22e4862c87c27c
1051986 F20101219_AABVTK galluzzo_t_Page_008.jp2
1d91479f9deb5c58e8d0b325c774fdea
f19fd96921e618b5022f281e9b7045564418b703
70892 F20101219_AABVSV galluzzo_t_Page_148.jpg
66a07eb90b8f2bb5b040a7e111aff632
b3805508a33d79fee3b87b9c08d4139f6fced185
410390 F20101219_AABVTL galluzzo_t_Page_009.jp2
9706fd3c52592b9cd215a7b9e0596295
1ef2fe189227dc0ec886dad0874ba43c4b2a136a
79516 F20101219_AABVSW galluzzo_t_Page_149.jpg
b3e6d6c0ea1d9e07b62d610d8d9cd85f
5f698f790e59efe6a4de0716b270babc1644a1af
79745 F20101219_AABVSX galluzzo_t_Page_150.jpg
d16c2a6a62a1f4f0ae3b6a19b543911f
3b254e0a4faae51d23cfdb0994d10d957dfe883c
118884 F20101219_AABVUA galluzzo_t_Page_025.jp2
c01014e78d46d2ef2e6f6f539d69fe75
d4a88ee4b0c36eeae1904844aa844af3cb4b238a
86509 F20101219_AABVTM galluzzo_t_Page_010.jp2
649e367f40a901c9311a7c4554d05ee7
f1ade47e445fc4234c3d2ac9988b767f3bebf33b
52803 F20101219_AABVSY galluzzo_t_Page_151.jpg
37aea2420fb533acdd5749daffd32c70
0c1a030ca45e21ddc817d50c2fbe049d3466ba9b
96911 F20101219_AABVUB galluzzo_t_Page_030.jp2
88e363ffeddb533cb24a68812ae0b710
ee5bc646e95d4794f97ff9d2c6c67ee0eb9287d6
106770 F20101219_AABVTN galluzzo_t_Page_011.jp2
3c2ab0fe755f31124e3f6c2bca45c2cf
8b6ec5f02303192dcffa0a28c8e037f1ef46df10
89801 F20101219_AABVSZ galluzzo_t_Page_152.jpg
397607d30df547e4df68b08de2e708cd
1c5db1d3bd80d412e2efacf085ead5beed7e26e8
116916 F20101219_AABVUC galluzzo_t_Page_031.jp2
78a53b2b7c396ba3cd439c786cb989d4
7712e122f89e014aebeca1d5aaac8f989c48442d
109577 F20101219_AABVTO galluzzo_t_Page_012.jp2
a8acd2d2e384d23b1b426ae21a8e58bb
f1539b4d31a465db5dc704dcde24f5d76180c6ab
115854 F20101219_AABVUD galluzzo_t_Page_032.jp2
5438a768dbf521c06270bb4b4962e4a2
d75bb590705f9ac0bd2c20dd324d4e8727b27601
113175 F20101219_AABVTP galluzzo_t_Page_013.jp2
666f0bd76edf682ea191676f68b35f11
539d9bd0562a3cc4336e8cd8ef7bce1bbc4e84ea
108030 F20101219_AABVUE galluzzo_t_Page_037.jp2
6c59073855f9561453a1d60a3f74b8d8
9609ded736968b5f2d55c6cdd403c24a4651db41
112980 F20101219_AABVTQ galluzzo_t_Page_014.jp2
04112af2d495f0b2881cea9180d47b45
a4b279256dcd4fa66e460c6f0515f16d93011a9f
109308 F20101219_AABVUF galluzzo_t_Page_039.jp2
dc3a420ed0cb8e93b94c4e60f3f8e3c8
18e92f5a1804afad6cb5dc297627ca8e8185edf8
111925 F20101219_AABVTR galluzzo_t_Page_015.jp2
d564cb0429e778fcbd735519f0b889ca
5168277d46148b2099d0c9c3c0f139911f73e68e
25271604 F20101219_AABWAA galluzzo_t_Page_069.tif
14e50aec81c8a0c6e84d10508fc03a31
6fcce9b1774ef07cc26790bc7da2886b3598c57a
78655 F20101219_AABVUG galluzzo_t_Page_040.jp2
ae6d78ebdb2c07f9c74b24f187d0d4da
473752f2693f21a5857eee09c895aa4898675fa0
99390 F20101219_AABVTS galluzzo_t_Page_016.jp2
cdd6540ffe8529e13e73cea3304acc8f
f041ba984d507af72408b3b27c244a0b1803a82e
F20101219_AABWAB galluzzo_t_Page_070.tif
6f7756191626a35bd373816a522756a3
ef54c7b9107f2f4eab8b301c05df1ac5a8fbdff2
86540 F20101219_AABVUH galluzzo_t_Page_041.jp2
3733cced524185279aeb665879418db7
694f25038cfe9d3a415ab86e196cc7cef7deef85
107918 F20101219_AABVTT galluzzo_t_Page_017.jp2
f9a55a0c711288cd75ef62ceb4d5f0a1
6634d28a4f24e0fdca00a245447dec57e7c254d7
F20101219_AABWAC galluzzo_t_Page_071.tif
70c194af64026ae76fc1687065903f43
c054f3f8eefb8c0c16882d828192c4ddd0a2f05b
113103 F20101219_AABVUI galluzzo_t_Page_042.jp2
8ff5241f511932c8fe8d64230cdbcd96
93f47e6a5503ee7b96f2118f6f8f88062eb336e3
113517 F20101219_AABVTU galluzzo_t_Page_018.jp2
0117d481d0fb38905aa731f94e0422f0
cff6b4810cbc2422e43cc47ae1f001b2bde8ee4b
F20101219_AABWAD galluzzo_t_Page_073.tif
3b96e66260de5360af97245f0ef6e13d
26593576376c674906d0294ab3650589dad34bfe
113768 F20101219_AABVUJ galluzzo_t_Page_044.jp2
80c1c6964d6eb63e1e89ed017e3f4c59
2c7c80447da9ffba0ea2c4b8972e651440682f57
28633 F20101219_AABVTV galluzzo_t_Page_019.jp2
d78fc6d6bcbce5babc0dd375278b8fa6
7a66a4aba4443ef74aabc61b59afaf2ad1ea8876
F20101219_AABWAE galluzzo_t_Page_074.tif
523ed8e5004feac3fcccff41c769fa00
669c54e5e3a6b252a7f79f37fd1f1695dd4cb74a
75636 F20101219_AABVUK galluzzo_t_Page_045.jp2
2922b008106e84ffa1dc8cf37ce22a47
122a45efc970083253ca9940b42291562fd9e63f
1051930 F20101219_AABVTW galluzzo_t_Page_020.jp2
5559f0c6c00e6e00cc7829561defd967
b27fae5db299898905624d650068abc5eb556795
F20101219_AABWAF galluzzo_t_Page_075.tif
419b44862a5206ef085034303b8c4465
4ac945affa3618ebd4f9d0564656e46f7491bf9d
106805 F20101219_AABVUL galluzzo_t_Page_046.jp2
243fed57dab3931acc26a466e0483835
91127a0cf5e9ad715b6d24e8176cd49d883249bb
114270 F20101219_AABVTX galluzzo_t_Page_021.jp2
b41edbb5a6f138d8323f808aa57dc2b2
f89849f27dda95daf65ee92fb594839f6e12dc07
F20101219_AABWAG galluzzo_t_Page_076.tif
8c2f91b84594d1e4432a94017cb38ec7
9bee2fbfac725957c3bf1a99073a6c538dfb9a3f
50289 F20101219_AABVVA galluzzo_t_Page_065.jp2
a445652d7e66c6ec53b12648b2f2e820
30065ef3c6088c5803412ed98c28621133e1343a
102035 F20101219_AABVUM galluzzo_t_Page_047.jp2
06566bfe611d753224e55b8ea9a08fa2
527b40b765a5303205a9530f82d95688fe693487
112330 F20101219_AABVTY galluzzo_t_Page_022.jp2
b37f1268ccd721451fd61e1df2695a9d
46a5c2960d452f0438f98d1e1d5279db72b9ecd7
F20101219_AABWAH galluzzo_t_Page_077.tif
f9c2abf3c007c994b17178856286d931
a42e9e55549c9145f8ebe70b10ac56ad3ca0b036
76224 F20101219_AABVVB galluzzo_t_Page_066.jp2
116c3bd7bad58d499801d2a72da28ad2
5ce1f298f7275e41da588fb68dea88eaed798bb6
119594 F20101219_AABVTZ galluzzo_t_Page_023.jp2
0a8dc1d83da0564a098e2c2d86fac01e
2480e7855ad2a94ec5724636c8a79e1a979118f6
F20101219_AABWAI galluzzo_t_Page_079.tif
80ff778bb68205128fc65f1459464345
32f2c49c5f2793c09ff092f2612b22d465520e35
441513 F20101219_AABVVC galluzzo_t_Page_067.jp2
dcae174428cf241724cc33e0895db6f7
2a302f075e54bd0133683ba2ac7474e26af72686
85871 F20101219_AABVUN galluzzo_t_Page_048.jp2
ca709d0db7af62d8e3bfb09ab3370959
d5ffb7d5334842138d6ff61a5e2562b120d6e0ce
F20101219_AABWAJ galluzzo_t_Page_080.tif
4b781d4aff05842363a3672a2f7ee240
fe26100c19e2269873a085a406514f9c5e5f4f17
389471 F20101219_AABVVD galluzzo_t_Page_068.jp2
b579e9fe81eff1024f16ec450a1ae7cb
563272b01075b687a7baf3cf3ef02b1b4ded3e60
115351 F20101219_AABVUO galluzzo_t_Page_049.jp2
a02a021b5a898ebab14e2d98fba74b75
762a593fc02f01b76ed5c523cefdd639240e0a90
F20101219_AABWAK galluzzo_t_Page_081.tif
6631d1b24a05c5a7bd8535e2d7b0385e
ae9ed42fe0bd0fa4dfa5b11728a2e1a2c81f5b65
488866 F20101219_AABVVE galluzzo_t_Page_069.jp2
2e899f96ed276b71e6c605bf12de9b82
f1558fd05c0eb5dfd7d007c1e1bcb4e2a88f40b6
77136 F20101219_AABVUP galluzzo_t_Page_050.jp2
0e1ca948c68ee4c4493ff942206dbfb8
8566c1981444d9ce725c2035f4317c5a672390bb
F20101219_AABWAL galluzzo_t_Page_084.tif
af9cd0283efe8270d3c98c85a199c224
a11d25655012ac17d478308a9c06969d4f137797
110225 F20101219_AABVVF galluzzo_t_Page_070.jp2
b2ad0e83cfbadfca1b1f5907c39e1ba7
b10384e950777a584bdd837df8e014d854261c88
106141 F20101219_AABVUQ galluzzo_t_Page_051.jp2
a580eee3d2d2827c5ec716f32ff1784e
e63f1a824fd0b159c5c51d54f8a3637614085703
F20101219_AABWAM galluzzo_t_Page_085.tif
1132de4c3342f81daf0081e81c597e51
7e39f24bd5473e5f1e1f340304baf813b9601fb3
116462 F20101219_AABVVG galluzzo_t_Page_071.jp2
98ed6222b8024565f96c45d172b5c725
8245abeafa7cb8c590ef41296822b1ec44d22653
101902 F20101219_AABVUR galluzzo_t_Page_053.jp2
d7020df320b42710ae999a353e74544a
f09b60700ec6e0723960097745e83c6a0304e0ed
F20101219_AABWBA galluzzo_t_Page_110.tif
659a1adef022c65f9ebd2a58ac7ba516
a6da0d0a4273ceeb4f343143abc435e3732dbc3e
F20101219_AABWAN galluzzo_t_Page_088.tif
3e578aab4f7ffa0bff280617d500cb7b
56c4064f9aeaa4c9fb380cc09f299d81f20a88af
119311 F20101219_AABVVH galluzzo_t_Page_072.jp2
ffba4c348160dae9a212b7fa8c5be91a
e0f69fe67ef425130e22b5a5fd64650e2544d78c
93634 F20101219_AABVUS galluzzo_t_Page_055.jp2
219aefc3a9efb782681f211dbbde4fae
2466e3b321ca142bff93ac784873c9987d703f81
F20101219_AABWBB galluzzo_t_Page_111.tif
23685cdd33133750f17088a55dedf635
c3dda3b22cff409d70814cebc093622ff260b168
F20101219_AABWAO galluzzo_t_Page_089.tif
17718c5a7a45e2cbc55e40a6696bcab5
a842972522a501bba084c06493af234e304a2905
117275 F20101219_AABVVI galluzzo_t_Page_073.jp2
145c7b58bf987a475a83dabf2f8dde5e
f42979fccaaf27f105891c6e373a9764d39451eb
99876 F20101219_AABVUT galluzzo_t_Page_056.jp2
0df4ae0c8f487daaf88c43093b180730
f6f8b0d4c5914697355ad6f869a6cdf016ce4ada
F20101219_AABWBC galluzzo_t_Page_112.tif
bbc7a4817607afaf5b2e1af5e16d1de0
68aa237c2a0ed6c35158cc6ca27009696847cc23
F20101219_AABWAP galluzzo_t_Page_090.tif
b877c5c711076c489676f809fbb1c051
cf72a1afcf72a00bf2c15646088e4592cf7e8559
94563 F20101219_AABVVJ galluzzo_t_Page_074.jp2
5df59ed617fdd46fcd67ea621e0e26a3
094baed1ee6bbe4f4eda915b5feb0222e1b3a621
72317 F20101219_AABVUU galluzzo_t_Page_057.jp2
66b4f4253169df9f7e342024e484a814
786732e534e80be95066efbdc6615d121ef00583
F20101219_AABWBD galluzzo_t_Page_113.tif
6eb492fd8b3dd7a20989425143e8c360
94c409eb247704af325fa117fc66c45b74a939de
F20101219_AABWAQ galluzzo_t_Page_093.tif
976fddcb32752014aaec5fc84283c67d
e8840e330c905d40d81b5d3f6753aec7d6fe3729
111503 F20101219_AABVVK galluzzo_t_Page_075.jp2
cef56d0da0724fdfe1b7f84b077ac373
6b7be4b079397683a2d3d045a569d94b5e0623e6
75945 F20101219_AABVUV galluzzo_t_Page_058.jp2
aa77e48a71551c3c7a5c1273a52927e4
663c9ad96caf3544cf4a7f9bcc2e2691e03c5908
F20101219_AABWBE galluzzo_t_Page_114.tif
dc61920587dc775f21697ef98914363a
f5628d023aa6a657bf337d5289df27fd8baa44b7
F20101219_AABWAR galluzzo_t_Page_094.tif
31ac44a8e47b478a407a10a46054766a
e8152d919fb0f26001e571e576d30d387241cef5
117237 F20101219_AABVVL galluzzo_t_Page_076.jp2
39a77fadf4066cd49efc0d05de28f64f
50eba97def98a8941b4ef7bfbe6e9c64b283221c
104833 F20101219_AABVUW galluzzo_t_Page_059.jp2
e98e2bbeb62e1ec896d136e084d9a70c
3bc686c39afe4a78471df8cfc4b8648b6e2ed5e2
F20101219_AABWBF galluzzo_t_Page_116.tif
9917b081e4eda6636d89bcd1ca752e51
d5a645342d6e8e33def16798c506e0bca3ccf57a
111910 F20101219_AABVWA galluzzo_t_Page_093.jp2
54357eb83458df23db773a7fffa5e88c
7ea7585cb76ed9c50800091b0c53ac313ed20ba8
F20101219_AABWAS galluzzo_t_Page_096.tif
7b94a06b5bbe6154ac91a216fc01ac5d
baefdaad0ada05d292682c846f9de08595471865
121257 F20101219_AABVVM galluzzo_t_Page_077.jp2
120d307bb2699d4cf301c1f9a83c1d18
f1b8eca2ea2224a89cc554bfb406be094b45c9b7
110646 F20101219_AABVUX galluzzo_t_Page_060.jp2
687ec4e258a918d7fd15026d25bba506
99c2f42c8b18770d2e9f2f4791f6cc150568f171
F20101219_AABWBG galluzzo_t_Page_118.tif
18d598c0d79f8da5f64063ec92da45b0
ed437193734cbc0ad1a0b0f0eb9d5c89b559024f
101596 F20101219_AABVWB galluzzo_t_Page_095.jp2
1786170d6615c16e273dec32067be65a
4eb95965447574ed8bd9045b746a9d92f2b3a30e
F20101219_AABWAT galluzzo_t_Page_097.tif
1cb363afa4af73cae6fabd3b99d809a6
9a154c898cb83da4484ddafb456a34eb2b22c058
99976 F20101219_AABVVN galluzzo_t_Page_078.jp2
84aca41345aee46be2bb8ad3bbd61c63
7da4d1d80cfdfe3500af726cf582316657fdbd9c
109434 F20101219_AABVUY galluzzo_t_Page_061.jp2
6c48d78e345690867d9e43b54e73260a
d8d22aca5a4a15d721018abe080820eb9c8df4f3
F20101219_AABWBH galluzzo_t_Page_119.tif
71c7932370e40266c7503e774d06d00c
633640630022544999c8f6435f4bb8793bca71fd
94457 F20101219_AABVWC galluzzo_t_Page_096.jp2
d2500c549e74cecffe789683e358ed69
3b8abab6b37f231dbdceaf54133424564a20225c
F20101219_AABWAU galluzzo_t_Page_098.tif
6d30b42300e299fa2b23582627aa2a0f
b70712328b13bb89e9c2e02f2ca7c924fbc0c644
116357 F20101219_AABVUZ galluzzo_t_Page_062.jp2
24400f9d1163b6fbd13e881278d30b3c
dd7480923647d1cf296c0388692f410012dabd22
F20101219_AABWBI galluzzo_t_Page_121.tif
86863ed12f72fd282efe2e15a6402566
e77ca9adfd8e04f0bf21d9657bbc1de2312373f6
112443 F20101219_AABVWD galluzzo_t_Page_097.jp2
cec949c9f8233581ea41c9fcffa4e753
719dc818646f5dd2037889fef7cb532da8502eea
F20101219_AABWAV galluzzo_t_Page_100.tif
ea5b8266c3010a71725eac5824d9ba07
35f4998853921233f80868af3ea4b1cf3dc4bcb4
85733 F20101219_AABVVO galluzzo_t_Page_079.jp2
ddc51486cdfa41d085b735a9ea87b830
713b5869786e07da2b353a664880e231a7a99af6
F20101219_AABWBJ galluzzo_t_Page_122.tif
cf76e4cea7f9e2fb41904b8a0699dc0c
107efa4460a3cea58ab37382f9dd21d87ab6b5b5
88399 F20101219_AABVWE galluzzo_t_Page_098.jp2
a5bbf5b4c7d7cc6111f60cdd652099f5
f8cfb3e10e7905e74b23194a1aa91d3a3a01d908
F20101219_AABWAW galluzzo_t_Page_104.tif
ff08d667bda6253fc84459df60914147
2161f4e323934cfd652473792871379e5d8d8013
117633 F20101219_AABVVP galluzzo_t_Page_080.jp2
3b600b0a0014beb237399e568f7e1205
6fa6baeb16e715b83c019e60f53561d742d2336e
F20101219_AABWBK galluzzo_t_Page_123.tif
9ba65b37a4b80c3eb861618d6bf2ac6b
195e6c4171dc881fccd5499880950dfad5a78de1
115695 F20101219_AABVWF galluzzo_t_Page_099.jp2
4ea0a7e5252039e2e51d8f43ec19dc97
728c8c7bc8c583fd038bbb596d6ff3fc3403de19
F20101219_AABWAX galluzzo_t_Page_105.tif
3106a6fd27d82ee43b9603e87c94e263
a5e656bbe6c6c485df659fd9392f1c0e1d49166f
109540 F20101219_AABVVQ galluzzo_t_Page_081.jp2
30becb62bac90e6692622c365606275c
6137bb1974bc5eba922588af6d92c12e84399c63
F20101219_AABWBL galluzzo_t_Page_124.tif
59d538aa71ebb2359d9ca9ce9533a916
cb17ce482da61f1b84a88b51e9a7b1ef0153ca0d
119346 F20101219_AABVWG galluzzo_t_Page_100.jp2
5b100eb1d0b1cdf1d6773b11d62961ea
f31ee6d4cfddf9c9edf30c6d0542583aabbe2273
89160 F20101219_AABVVR galluzzo_t_Page_083.jp2
6062ac413877caf04991ae8807f0ff99
d122b516d66aacb6cfd244953574b1958ed0f6b0
F20101219_AABWCA galluzzo_t_Page_141.tif
a3df0a0331b99fb68706edc62275f445
22bf275a8b3bb529555f71ce004c0c02a022a0f6
F20101219_AABWBM galluzzo_t_Page_125.tif
366f3461234a9a0c36b1a1460866aafc
9ed9b2a8efb38872611a94978706d1a311b73f65
108376 F20101219_AABVWH galluzzo_t_Page_101.jp2
74bf075a9a19f5eafdd2c4e2e77db807
82f26bedd0002e662d94d6f7ece26f6df7603091
F20101219_AABWAY galluzzo_t_Page_108.tif
f9fe3c05c79f468e8dce8d4a873965f7
548bc9fa5e0eeebb633dca2862a700edeb815190
117248 F20101219_AABVVS galluzzo_t_Page_084.jp2
1fa1138a122e822f7c22474d27cb8ad5
9100c47a7ac66e222fdb4420470d675fa247b57d
F20101219_AABWCB galluzzo_t_Page_142.tif
28f7075ab2e716d09af86fbf3ef335f7
07be82208154932a5db0572d0ff016c8e467e51d
F20101219_AABWBN galluzzo_t_Page_126.tif
ae178f821df075868a85345a4650c8e8
93f7b6cdd87ad1d3b29fc8a69afa86de91fc1936
29915 F20101219_AABVWI galluzzo_t_Page_102.jp2
746b5273cdeea3009edd84ba51500383
2629214738daa11af5bc55bdd92eaefa3cc561d3
F20101219_AABWAZ galluzzo_t_Page_109.tif
4934371782f4d397ceaf2764f57b053d
1cb32d32b6368b0813efa12c1822d924305ccc2f
113796 F20101219_AABVVT galluzzo_t_Page_085.jp2
5cdb1762b78f80e7fd3fb25a10c94459
36eaeb62cbd6c59787062ba1d66cefc062eb4c8d
F20101219_AABWCC galluzzo_t_Page_143.tif
ca4b693e2a352afe765c23260019c60d
67f73a50b21a5dae081190e2f3e2159617f2bb04
F20101219_AABWBO galluzzo_t_Page_127.tif
ce7a6288393654ee8f4dd790ed417596
633b441647e499434464476fcfa780d8da96f0f9
78627 F20101219_AABVWJ galluzzo_t_Page_103.jp2
b9d5824695f3255d53181f401bc5fb14
701792bdfdb68813b05a57c77ea718c609b7e40e
112805 F20101219_AABVVU galluzzo_t_Page_086.jp2
ec666a1f732b081e929557f1f5d00c85
59fe6e07ff10e7de200d5b54a8a79a37f9a00ca0
F20101219_AABWCD galluzzo_t_Page_144.tif
e4f66fa3ba82fe565419f2e01d3edbdf
3c339c1fc2c33aa24363e1db65e4f1806d0ad27d
F20101219_AABWBP galluzzo_t_Page_128.tif
65ba914c4d38d3a65378aa24c80cbeea
14d448e2c6e79cb02283eb202fa939235d1b342a
782662 F20101219_AABVWK galluzzo_t_Page_104.jp2
0e489a76c28f45ae0912786fa7a89131
dc909315401bbf3e9403c7017fa0c0678334e0fb
111776 F20101219_AABVVV galluzzo_t_Page_087.jp2
f82ab2f3ceb5a90110d9b027f5c5c3f5
adef3b704793e3c79421373bf316ba9362eba990
F20101219_AABWCE galluzzo_t_Page_145.tif
9b7f6b0ca9c1ffed0e8209b524f3c521
ceda3df031db317de6a4c08c6e590b74ef9e8ce9
F20101219_AABWBQ galluzzo_t_Page_129.tif
cb1c443565727615b979e86ad5b72d43
18a163283344b001fdda29350edcbe2648f1b192
1051815 F20101219_AABVWL galluzzo_t_Page_106.jp2
5527a39c059c58dd5ab9953b48609f82
cc6399fa9251811b9a872b5410b05c37c6e2a111
107862 F20101219_AABVVW galluzzo_t_Page_089.jp2
0195abe5061efbeb345259c89bdaa311
5345c2f8a511cff270884e6c45fe8d1b2e316cd1
F20101219_AABWCF galluzzo_t_Page_146.tif
1cb5c159091901664f7b3e4ec2f7cf6f
0e829956aa4ab0972c1f1fac4d0ff58fccd4d4c6
F20101219_AABWBR galluzzo_t_Page_131.tif
6ed2de96ee5eb11c84a859802c5db126
b875d9ddaae7ad82c1c22e603b175b56ba2e88d8
289152 F20101219_AABVWM galluzzo_t_Page_107.jp2
a1c98dcbf3e3ab951e05d00037e26ad2
6a34abd15d2a85083f0de4e813bf8b73630d09bb
117963 F20101219_AABVVX galluzzo_t_Page_090.jp2
59870d626f7af1a1cfc408e74827834c
482af1edeb6b3b296bc5c137a7ea627218ce43ce
F20101219_AABWCG galluzzo_t_Page_147.tif
151e41f6539cc801685305e738cd03ff
740b6acc33b50eea07896644554ef4e9b4ce70d3
110762 F20101219_AABVXA galluzzo_t_Page_125.jp2
94ebcbe7592faa55c940e310b4d38a63
570d9ed5adddf6cc9619ba7acf57cd06d451f52e
F20101219_AABWBS galluzzo_t_Page_132.tif
50ae06425e33a3e6eb60b310bee80a11
cb17c3b4c0a230331295ead9bf4540e2404adccb
559707 F20101219_AABVWN galluzzo_t_Page_108.jp2
5ba4b991e08ef27050115c45246d5942
6d2d7e78a0e0630478a19e6825aab90df2a7362d
119229 F20101219_AABVVY galluzzo_t_Page_091.jp2
8eaf0e8dc555331182c201d421c31d49
ec0fed39810b82dbe6be19b14bd121e32e30f101
F20101219_AABWCH galluzzo_t_Page_148.tif
0e79c18464e1df7bcb2b4c08dad88e2d
2a7e7effc63bbe01383d8fbaf3750170ee29ad9a
112926 F20101219_AABVXB galluzzo_t_Page_126.jp2
18be12c4f4b97ce18959ba9c10043077
3e1435df91dcd7fa5c3ddd879139f035a10041a4
F20101219_AABWBT galluzzo_t_Page_133.tif
a734766123daf867d7b2dd6f461eb2b5
ca6195944b042d85ac9a01f502ae4a18f14c9721
385790 F20101219_AABVWO galluzzo_t_Page_109.jp2
b3ec890eb6f180a43f8669a875402796
3ee762551e29190bcbe792f614bf2ee4e196fba9
115653 F20101219_AABVVZ galluzzo_t_Page_092.jp2
76be307fdf31d1772f84d841bc268318
b2a047081ef63988d9facf17213fe4c3edb65383
F20101219_AABWCI galluzzo_t_Page_151.tif
364f8e0f60400e198fdd52c0fabf8eba
efc65063a1b90188d01e60ea4fa2973fab67fc60
51920 F20101219_AABVXC galluzzo_t_Page_127.jp2
8b1e5656b5c76eaa20d52d25f4307fc6
40553f82c80a745717798a8d97ead253a7578f3a
F20101219_AABWBU galluzzo_t_Page_134.tif
1de0662ad587d869af60421cd8ac5764
aa9942720e76939fc93072f745ded7cbc36f46d4
F20101219_AABWCJ galluzzo_t_Page_152.tif
ee5ca44020e7a0743f0178de64412c23
ee444074a7bcff8455790e8dbf11265d1c602fd9
144036 F20101219_AABVXD galluzzo_t_Page_128.jp2
a7defc3429e1c212ba09cd15e62808ec
e5397a037be570d059c5d468582d4ba02552b0ef
F20101219_AABWBV galluzzo_t_Page_135.tif
10ffb9f007c9aeb6be7747f244238634
278f99ec7c8db8b926dfc8c51566cce891d2226e
F20101219_AABWCK galluzzo_t_Page_154.tif
0854cdc2f387b610d5c5e105a16aaaf5
2e124b6e33ed4f39c6b206453c1ced21b68cc00e
87553 F20101219_AABVXE galluzzo_t_Page_129.jp2
622bfd4988bc72b9b0589bd8117100ec
3e1f5b197b24fcea6469da01244ea8f4bf4f7c47
F20101219_AABWBW galluzzo_t_Page_136.tif
140cbf6e7bebd4760e0beca9bc3ea248
53eecd70869ad4660bb236e7d6b5cb39d4fe7317
111868 F20101219_AABVWP galluzzo_t_Page_110.jp2
fc48ddb63ca1c367fc0a8ca5dfee96cc
fc8e403eb2744087ca55eb07540ab7eef25b9a15
F20101219_AABWCL galluzzo_t_Page_155.tif
57b4bf4c2b5ab48041794a4f6ac6ca32
81d710e04c7eae6831e4572b2063c150320148aa
95593 F20101219_AABVXF galluzzo_t_Page_130.jp2
f40e5cfefa28dcaeeaa6cec65118c417
d74f33f0ff481030cbdeaec4fd2773b4823f14f2
F20101219_AABWBX galluzzo_t_Page_137.tif
58751a9cf0fb66e639a05af80d97cd60
e348647fc5f75d55c836e0082a4e7e701ceb1094
107312 F20101219_AABVWQ galluzzo_t_Page_111.jp2
514d033a135d7fe40e52d6cf9509ea62
48feea0175af546e29d10d20f2d4373922652b77
53277 F20101219_AABWDA galluzzo_t_Page_021.pro
5110e941ce804808e640ec9582f97afb
373954e0ba39b6b8b9dd226b57b7b5d682f9a2d7
7880 F20101219_AABWCM galluzzo_t_Page_001.pro
9b6a3993ca8066dfbcc1d7038525c29b
91cc38d9a46724c800f79c0a27f1b594e8327809
332051 F20101219_AABVXG galluzzo_t_Page_132.jp2
6653e61aef3523f67ec2646eae8cc0bb
882ad1cd79c8d905eaaf8edfbf14522f5e457d10
F20101219_AABWBY galluzzo_t_Page_139.tif
b1152e9b37fda3e1b30e64a8f509c2d3
7a87b418a146d30139412a16bacfe5bea10f466d
114712 F20101219_AABVWR galluzzo_t_Page_112.jp2
d20f3b916e3eb25148d30c4f33038560
c40a217300209b6779a3d49ad48705acb423fdee
56572 F20101219_AABWDB galluzzo_t_Page_023.pro
89af4f262a4c782fdbd5d5d0fc265185
c27183e8cbcf94e643c457160a437322162d2f14
4981 F20101219_AABWCN galluzzo_t_Page_003.pro
6d10af8db4aa6d8923e9e6043b56ae73
f0093a72b38029f06485dd6b90b09ee94e7fc399
282055 F20101219_AABVXH galluzzo_t_Page_133.jp2
4cede261ce441569216407af70a83e4c
568d05f0d1347761a286915b422e35760fd413c4
111452 F20101219_AABVWS galluzzo_t_Page_113.jp2
5ad9523948b95e72a49007eb5336412b
f77e8b9124c6aae6b688a06d7e6609408a50b1ff
55586 F20101219_AABWDC galluzzo_t_Page_024.pro
4f55ef4cbb9673ac9480669b224cadbf
e97bb521eca28d6eb941c50f09ac3e2788af6208
23511 F20101219_AABWCO galluzzo_t_Page_004.pro
2efadeb108d4d6a1e00df433a9ac8f25
bc99946b9b0592f14d4c28139ecff74e0dfbcea4
340654 F20101219_AABVXI galluzzo_t_Page_134.jp2
b5115f9c777380cb789b28a602f44bfd
d2cb8496540740202f97fc0ffeeb3253fe6c9aa0
F20101219_AABWBZ galluzzo_t_Page_140.tif
381bc78d24305968e1fee0076ede3f59
abb68bdbd7ed28e95f55be44ed7c75e4b693593d
108167 F20101219_AABVWT galluzzo_t_Page_115.jp2
53f221de19e787fa2277e5ddd1d369a4
2df161adbf5e4ca88a75d31eaacd55826eeae024
53288 F20101219_AABWDD galluzzo_t_Page_026.pro
9b4867141039ff5da113859c7738f254
3d2f592479ced735458f9789db58a72487abb99b
13444 F20101219_AABWCP galluzzo_t_Page_007.pro
83ec3a4d368a6a52e3edfdd9ad83a2d2
4c1e5280d4dd9968096a7156ce6bd9a79e147085
331623 F20101219_AABVXJ galluzzo_t_Page_136.jp2
5768a24861334aa920838d08257ab184
1642677dcd34ae5a60f70ad8d584041e413bbd05
117291 F20101219_AABVWU galluzzo_t_Page_118.jp2
e3f57e5f010caeceb8abf47cf9bccb17
c95176b81cb77fe64e212c01dae4c9e27afc2eb0
54626 F20101219_AABWDE galluzzo_t_Page_027.pro
e5993ff34e781abe4b9f1695ee04a062
5ae6e6f8b9600c857df0978db7c4d4204d4a7466
11363 F20101219_AABWCQ galluzzo_t_Page_009.pro
ae8565f87ca1a24f1dece41177405f8c
d9b16e7796360b4900d15b2790a0c7dc70521ee0
275196 F20101219_AABVXK galluzzo_t_Page_137.jp2
4a7aa235de9f01b1cb78144083f7b9d9
6499362313977acc2d2a5704d7aced6d4df021e7
119398 F20101219_AABVWV galluzzo_t_Page_120.jp2
f3c7f5972d1f800441474af3c9f8ec2e
dd23f76c8cdde0b366be0e37e4555ad50c0ba37b
44096 F20101219_AABWDF galluzzo_t_Page_030.pro
5f45b3bd1aaf97b3426788a97c0c273a
0e247413130bafd740c14c343fb6b7e8589cb9ea
38406 F20101219_AABWCR galluzzo_t_Page_010.pro
056c46e395eeeacc72b24dd76e6eab95
900dbc9664bfe5fea2b540f5001a659129e996a9
509655 F20101219_AABVXL galluzzo_t_Page_138.jp2
ef27dce5745f26e53b19f6f991b3fe1d
075a62231217c94e8c4944e8aa1c7333cb8fbb7b
118655 F20101219_AABVWW galluzzo_t_Page_121.jp2
e058974b38c48a9da06fc3653da1f859
ac406d7555d737033370d80bdded034e1be50798
54433 F20101219_AABWDG galluzzo_t_Page_031.pro
5e4357a1f4c0a59b22121659be8a0727
b9dc868cd769b6da846dd5886186d4f5233b300f
F20101219_AABVYA galluzzo_t_Page_003.tif
d1b83ffbc64f00e9b463d504ea846079
ce00c506e347731e8afaf61f84efbc554fcb20e5
49759 F20101219_AABWCS galluzzo_t_Page_011.pro
16705170d4b5ccdb0eebec96edc57f90
e249a34b70c8390815617d8aee081b1abc5da877
293129 F20101219_AABVXM galluzzo_t_Page_142.jp2
9343a399773269cbe33ed97a434fb009
8e0bc66321bf014561133a3daa5a7c0a362a5157
115435 F20101219_AABVWX galluzzo_t_Page_122.jp2
f3e717430aa12f6d1309cce21ac098d3
e6c14e1201c7355e45b0a50e1ae2267dc5529dd4
53396 F20101219_AABWDH galluzzo_t_Page_033.pro
8185128cfe1e80fe231a278f911aa4fa
d2b5d49fc8e28e8ba06b7a196b7207de969b6fb0
F20101219_AABVYB galluzzo_t_Page_004.tif
fb733d5d32e4656097562d72c151a77a
e5d6373054c6a060d659f142a73df2fd87782e9c
53382 F20101219_AABWCT galluzzo_t_Page_013.pro
3004a05ddf70fecfcaee914761db5ccd
228eff3f1a2381006ea169d1f6eef8e69e3f8ad7
535950 F20101219_AABVXN galluzzo_t_Page_143.jp2
c5d5edd629edeb44bbb6a12ca265f034
affe6b757644da1f42ad3576014acf0508fb3579
117400 F20101219_AABVWY galluzzo_t_Page_123.jp2
f0c6cd26b2d6a384386f87e3423628d2
0164b12b9ac69c7ff0d75b9515527b6c27e5314b
49381 F20101219_AABWDI galluzzo_t_Page_034.pro
460c9f34eb2029d38a6ea70eb404f840
4d826f5fa8238469eafdfeb76cccf4ff00b95a76
F20101219_AABVYC galluzzo_t_Page_005.tif
e2be4957122fc62ec5de326ab472848e
81dfed90e3d7100def5542df866091608f3fa317
52527 F20101219_AABWCU galluzzo_t_Page_014.pro
e14e5cf71c0b2df8629eeb80ed66124d
4230a851e6e9becfc5036ece473d6f0222521866
371811 F20101219_AABVXO galluzzo_t_Page_145.jp2
234c636f0f3e84bf9e8a3a527f62c6fb
be62e74a3d1e93b0a3247d854f450d077a1365f1
115275 F20101219_AABVWZ galluzzo_t_Page_124.jp2
38971ff2a2ef48efad890e09381e3288
76f86949607561bcd9da4793553a04e3a61815e0
48494 F20101219_AABWDJ galluzzo_t_Page_036.pro
9b2c2fa84192f9afcda078875ba5f4d7
fb9c433d084854f29781b13ac8c52dbe49a942fc
F20101219_AABVYD galluzzo_t_Page_006.tif
53a73bc34986a4475aa2ffee198e8ccd
815f79b5331d56c75e7d19ef9909c8b5403639a0
52057 F20101219_AABWCV galluzzo_t_Page_015.pro
21646f8a1e4e65fa0d741876410fdc1c
f41f87e46a6dda1d3eb9f27b8074229ace29fcbc
513218 F20101219_AABVXP galluzzo_t_Page_146.jp2
da4167e042342cfc8452ae2a54e1d221
fd6280872a63a877e2a38fab0d0c58c0d5021fe6
49982 F20101219_AABWDK galluzzo_t_Page_037.pro
ca5a0658cd16b560c6ae6d6217e60541
f89d8befde95fe3f506605095af92a6a7f9392e7
F20101219_AABVYE galluzzo_t_Page_007.tif
77f202c38abf34017bd4eb93f3854500
2b7a212de8ae71152d000d7d5c22f52686ce14c5
49698 F20101219_AABWCW galluzzo_t_Page_017.pro
6acdc9cede0b8a2153470b012f1a040f
63c4b08d7aa9aa302c79bb8518d65409d23ce667
44213 F20101219_AABWDL galluzzo_t_Page_038.pro
72a29bba43b02a2e74258c15aae05e70
39c57b86fd6ab1b5d385df62810d121b13ec6024
F20101219_AABVYF galluzzo_t_Page_008.tif
3535a045ab540c4ad85fd7bedb4b9353
85f34c8e30fccac7a191a629dad0f40269d01e97
52346 F20101219_AABWCX galluzzo_t_Page_018.pro
af5324b0b0105cc1d04ab97dbfb139b6
d2c6f5a42ca97eaec09fc16c7c44321f3a728491
839485 F20101219_AABVXQ galluzzo_t_Page_147.jp2
159ee02dc43aeeb20373893fb92b07a7
ce633760f661c6ed9f3afe3a0783083a1fdfacae
50475 F20101219_AABWDM galluzzo_t_Page_039.pro
fd2ba26162b5e3096813742de243a9fe
a777ba09228dfb7ce1e0f120468600ff07af213a
F20101219_AABVYG galluzzo_t_Page_009.tif
a124f9af33bda810417964fc5c374808
32d5ad2c9850439bab0ddb855eed478d914a9ec4
11863 F20101219_AABWCY galluzzo_t_Page_019.pro
c0bcf436b39694028e937b9944976219
040db497dd09a2551d71f8b6f6f59e77d792131f
118835 F20101219_AABVXR galluzzo_t_Page_149.jp2
d9c4eb128d08322491c1e7773f95eb68
b3ea09790738d3299457f9137001233706e12505
34204 F20101219_AABWEA galluzzo_t_Page_058.pro
167ae5418cf42d009149ae65821bf86d
f994fd172c4e6023a86535a4ae205bfb9c84e33a
F20101219_AABVYH galluzzo_t_Page_010.tif
d78c11e3e43d8554a5c71462f518effa
99af8d7349c066a3928c4f40eb2480cb2d977aa0
3811 F20101219_AABWCZ galluzzo_t_Page_020.pro
1c9bb50b7b17a21358eede907574cf3b
0920c8722ff7fa76e42da38c3a8ba2c039f951b6
120387 F20101219_AABVXS galluzzo_t_Page_150.jp2
7f6dd47c43465095ab210b3b146a1e49
0bf405914ebdf2c135d03952f1dcb7979e0b8c99
53069 F20101219_AABWEB galluzzo_t_Page_060.pro
3ec1ccc0e26f0187905797d11a9ab664
a10c4a32df23f8b4add5bec0ff12fded307bdb17
35026 F20101219_AABWDN galluzzo_t_Page_040.pro
173147a72e1ddd4bc9776ad1aaf0f9d4
556d5281773b60e7148f07ef0c31d75dabb9e134
F20101219_AABVYI galluzzo_t_Page_011.tif
b7544c6eded36eed03c166cd59b0252c
95f673568d7e6f63687b975163cd8273b8a29080
136061 F20101219_AABVXT galluzzo_t_Page_152.jp2
0c57a7105073da200da0770a926654a0
e45f77ee88e14f7f5d7eab115f5f27798fa87f1d
50907 F20101219_AABWEC galluzzo_t_Page_061.pro
e7d33c4b256c911f1024fafe1c8016de
f70b545657334345960b39fe320a6d4aac4fe448
37658 F20101219_AABWDO galluzzo_t_Page_041.pro
9f625bd406601b6eb0aad67f3a70b6cf
0eb08aa84580723ac86cb64935a60af9f30568a4
F20101219_AABVYJ galluzzo_t_Page_012.tif
7feb550acefeee2e796a7323b4dafbbe
64ed2cfc339fb3f73b59898f240d3215062a9d3b
152644 F20101219_AABVXU galluzzo_t_Page_153.jp2
c947e8f22d01a36898e908e49fce1197
5576c08ba4cc671aeda683e1c2f5dd937eb10766
50091 F20101219_AABWED galluzzo_t_Page_063.pro
4cfc760ea9338fae53fce932f509097d
6af72e5d4ba7043e63d0d5fcc289b2e11e08717b
48805 F20101219_AABWDP galluzzo_t_Page_043.pro
2c7427e83cdc8b1864ba8d869bcb70d7
78a2d84b1fd9f6a900713d36725a63f676dc8c75
F20101219_AABVYK galluzzo_t_Page_014.tif
9a63194ca0e693e61f431fb4b8491b42
bbed0a41b932b06258c10620240c64e2bf4c8cb2
150370 F20101219_AABVXV galluzzo_t_Page_154.jp2
3e2d71b806792924a5f3a104955d6c53
945ff2414d576062b3f4a0fdf9f8843e49442b67
26280 F20101219_AABWEE galluzzo_t_Page_064.pro
39863ca11a6fd5dfd12aad331d2ba73c
b9b6cba7c809eea9dcb4c688ac73e5297adc49b8
54058 F20101219_AABWDQ galluzzo_t_Page_044.pro
be31dad2fc2cde46d962f55aae9f6859
7ecd6980f86815d0327a9d0eb8780c3fed18c5b4
F20101219_AABVYL galluzzo_t_Page_015.tif
403f1e808ea6d48481b97db20290bd83
7326fa4c8ff144f22b3c8b27fca941f083607f1f
143049 F20101219_AABVXW galluzzo_t_Page_155.jp2
494bf30a6459e0306e02073769f09b9f
ae9eefc4aa63fcaeafa98393b77ad97b1c188259
21534 F20101219_AABWEF galluzzo_t_Page_065.pro
fdf89d98c13d232b3bb181236a8ae239
9ea4de85ca54abfef7ec2e7f6dddcb2b15a1b344
34002 F20101219_AABWDR galluzzo_t_Page_045.pro
1f7de2754ceb70bfc8044060697afe35
3c8537ba9e369668176ec6163e13379931a84f03
F20101219_AABVYM galluzzo_t_Page_017.tif
669fe25a702b742fe10cb1d349ad5f11
59913237bb1ecdfc4ff30b525803fb5b3a99d4e9
28438 F20101219_AABVXX galluzzo_t_Page_157.jp2
15993c8a4ce9906d53c3d1bbc73ec023
6cbb9839748650b4b58178266d3a9edd5ad7358b
14098 F20101219_AABWEG galluzzo_t_Page_067.pro
76895615a2e09858d718a4e2c1b6e803
3d7a0adc147d652a2816c25837f70e3c06cba6ff
F20101219_AABVZA galluzzo_t_Page_033.tif
3e49489e9131eb61d5fdf3b30199821d
1d48b027100d9df2440b44a3156b584c5e6d7ad8
49130 F20101219_AABWDS galluzzo_t_Page_046.pro
1a95f0d7540582e3e7ea0e9254847748
6fa676c5c7b2465ba9c2929e3003b06750a7febd
F20101219_AABVYN galluzzo_t_Page_018.tif
50e34d5988e1b42cc1c415f20e0afe3d
9bef0332f83e4c06e925fc39fb153ec82bf26801
F20101219_AABVXY galluzzo_t_Page_001.tif
18a8a63f272bd550266bcb711d397d34
ce3a145fa7f78f8b525487a5d92f06e634075cda
15663 F20101219_AABWEH galluzzo_t_Page_068.pro
ba7acfd10ebf3e89608d73b21d6184ab
127cc8bccbadd960a7e69d84ded9daafbbf03910
F20101219_AABVZB galluzzo_t_Page_034.tif
aa64521056e729621e1e1bb5f6f56817
ec5efb048a1c0176060e84ec2edf750c078155e5
47296 F20101219_AABWDT galluzzo_t_Page_047.pro
8b96801fb27df488ce8f8e4010140ec2
f0cd499564a851ed2d97c712dfd8a1fc1800568d
F20101219_AABVYO galluzzo_t_Page_019.tif
860e4211d1abfa516ba127bead0ed046
897e6b068e297ed6de27379b0d7ca60752d4b39d
F20101219_AABVXZ galluzzo_t_Page_002.tif
2d4ab712c510d83943d8b80121cfc3cc
af16f532d096731e5113af3e5c14f2edbaa46cfd
18790 F20101219_AABWEI galluzzo_t_Page_069.pro
e13a49b38534486d7e6112729e873577
414b7cb7ccef111ea9e2a9db41011916ac35e59b
F20101219_AABVZC galluzzo_t_Page_035.tif
4a048cccc9bd5f7b05929c483c57165b
cd6fd679b03198ede077ac5aaa0ba687fea0e115
39970 F20101219_AABWDU galluzzo_t_Page_048.pro
ce2c463a810f6327c8a720331d5420f4
5e8d5b0c2c000f18bff1d1e490384c6259f19a47
F20101219_AABVYP galluzzo_t_Page_020.tif
df5d6eb43fa0514302a70cb851e2ec3b
ba6d533a04ef56905510b8641501b3bd1f92b06b
50584 F20101219_AABWEJ galluzzo_t_Page_070.pro
17f1390ca0d04335b3e19470289e6427
8651f9b7703359b933e504aaead041b7cd6512fe
F20101219_AABVZD galluzzo_t_Page_036.tif
7669c4ad783d159f0e0d1e1d45853355
b306869288a8e9c9d46722afc1aeee9b087646d2
47973 F20101219_AABWDV galluzzo_t_Page_053.pro
1aab8ae49a4431d6bd0003d32641e944
2299665c8577d7b0f4ed7050168098fd00b2f1aa
F20101219_AABVYQ galluzzo_t_Page_021.tif
bd190f02a93c489ec81cc57762895a3e
a6c2b5f09f3507c6b22cfa26994d229535434926
55327 F20101219_AABWEK galluzzo_t_Page_071.pro
9114e12eed0998fbef966cfbb3570931
7335744d78cbd5add7ed64d59ca4efe437f34229
F20101219_AABVZE galluzzo_t_Page_037.tif
e50e2212529e7e5375a592645d427c27
2c8c322e9900bbe0f6fb11310a7c70dd3b97dbd2
55281 F20101219_AABWDW galluzzo_t_Page_054.pro
905059f491699ef700489b03057e59ec
3f5fa905376cafff7aed1c4f672abf19d412de86
55922 F20101219_AABWEL galluzzo_t_Page_073.pro
d2e66a0926cb148b53bf701927a5b0b5
74941ed9a0193684a09e8ed337f9880174ff597d
F20101219_AABVZF galluzzo_t_Page_038.tif
c6519513c8e07ef169c1acb5f8d7254e
2b938b88c0de2f71b82dd2039e3ed45bd97808a4
45029 F20101219_AABWDX galluzzo_t_Page_055.pro
3ab61e582f2a16a97afabcbbb8e80ed2
b8eac98ca21e52245145776a80efc18657fcd2fd
F20101219_AABVYR galluzzo_t_Page_022.tif
ab39c970e88023a025001f110262eec7
51b466d5ce4b0f5869c9604695304518146648d7
50602 F20101219_AABWFA galluzzo_t_Page_089.pro
319ff61959c28c92ab1897735d558e21
e9949485244d102086b32eb1848f60ec05307811
43481 F20101219_AABWEM galluzzo_t_Page_074.pro
72e9174ec73708ab286348594b6ac846
36e37ce31340584c5f0227a641b9b41b4fc0687c
F20101219_AABVZG galluzzo_t_Page_040.tif
5d023d8dfefbe2597abbab44e143414a
694bc5c686b0caad99e2a9558693c7cfa33a6e5f
46615 F20101219_AABWDY galluzzo_t_Page_056.pro
a172968880d82befab0a7f8a4936fecc
5eac2bf7375d7ca3e52fbf6ac0d8a8caa7df36ed
F20101219_AABVYS galluzzo_t_Page_023.tif
e50473a8c6c5027c42f665e7d53a4aa0
09accd7aa8498432e2062fc744b49e701e33fd71
56187 F20101219_AABWFB galluzzo_t_Page_090.pro
4d784b9333e40f7cf884b847dcf27847
6fa88101d83347314fba60ec140e3b1036024ab1
53278 F20101219_AABWEN galluzzo_t_Page_075.pro
cf6392e7adf479746a5c46fd3e9be949
011e9e957f2cf96d8a6e509102a8c441f6e44a24
F20101219_AABVZH galluzzo_t_Page_042.tif
f9c897a809bc77a120c1e3567ff10412
42b402ca799da51244f7f9511aa9f5488f625e09
31097 F20101219_AABWDZ galluzzo_t_Page_057.pro
203f73e4e57f8119dc106d71f495545f
78157543ce247d2baa31c2aae1427c26c1b5af21
F20101219_AABVYT galluzzo_t_Page_024.tif
405265fd22da1ec41efd0f58faaeff68
e94535876d9d7535e31b0994481933fc4ac436ed
57494 F20101219_AABWFC galluzzo_t_Page_091.pro
9b20514d93be04e15fc2b6b34dc4917d
2bf9b30e4ec7a6c68557deeaf31fcb0c725bb865
55336 F20101219_AABWEO galluzzo_t_Page_076.pro
37059d42c3629b787f59832cc3649aa7
a044b0d9940506a4fa0d5ccc0a4b7f17cbdc654d
F20101219_AABVZI galluzzo_t_Page_043.tif
17c4e78acf2f289a9964b7550c562864
f603f12ada49f3a252ac36055d341cdbd0b4edda
F20101219_AABVYU galluzzo_t_Page_025.tif
71a2dd1c8c3d9394b2309aa27c471b16
d3903250b093fb9c8930963679c3df67b805c4f3
54549 F20101219_AABWFD galluzzo_t_Page_092.pro
48bc9addb7798f7c7a93b5a1e639b338
9f4420ceb7c226c7bbdd3337e7e8c95762c51fcb
57400 F20101219_AABWEP galluzzo_t_Page_077.pro
a3a722774df7553b9e09f048009e4025
52dd5e5663a27d7812458da4252f4ac80bf4c6ab
F20101219_AABVZJ galluzzo_t_Page_044.tif
5d88b65ba932615838a517d9d95d2b9a
d723d81db532b7dcbf6ede68cbefb35cebc8c630
F20101219_AABVYV galluzzo_t_Page_026.tif
c305bcebd3ddbcee616a0d284569f7d5
21be7afeed718c0e27487cf9e0632fbeba99453a
53534 F20101219_AABWFE galluzzo_t_Page_093.pro
f1da31b670cba7adbfcade25aefd5bd2
b35574df2a08a13118176c26a16c0c86f12b8369
46237 F20101219_AABWEQ galluzzo_t_Page_078.pro
7771c10a68ae628051fef80f567fe103
36fedbdf21092eb49a749cc727f1078ae995fa6f
F20101219_AABVZK galluzzo_t_Page_045.tif
7b158681b87ce31ebaf58d342a5191d6
4abfd71c9c52da1783f70fd55b6ba1a484b2d4fb
F20101219_AABVYW galluzzo_t_Page_027.tif
e566e9e99d67a9140310587e70afd7a2
c701ae7d90174b6136bbf7b101f29a94e41abd1c
48426 F20101219_AABWFF galluzzo_t_Page_095.pro
82e32b76040e4e02665c5410efc7d5f5
d1ff8996939b17a6fd74ef23939a353211f6a458
39487 F20101219_AABWER galluzzo_t_Page_079.pro
960f4f9da7c5430a679bcfb7a5637875
9f827a233a5e2580c241f7323dcb9e7b0f7124c7
F20101219_AABVZL galluzzo_t_Page_046.tif
cf9a646f3986f06ad9a0737d0bfbbd61
521f71f8b6d49200f019ba0f82d87a8f43896bf9
F20101219_AABVYX galluzzo_t_Page_028.tif
c8f1fb92ed954875806138490e1c5847
c69a7c376d9648feb00ac279c86767ddd566fbf1
42663 F20101219_AABWFG galluzzo_t_Page_096.pro
49b908dea309a22469dee06902fd7d72
c173d660905b00d725d093703539db8dcde2050f
57324 F20101219_AABWES galluzzo_t_Page_080.pro
b78d78fa2e77d852d552deddf2515fca
854a170ccd404ac915038dcd79cb1ef2658c3737
F20101219_AABVZM galluzzo_t_Page_047.tif
ef48af58e47ddb39d688d61bb9990bf3
3a55dd96cc3bcd76837e909732606058ed9205ba
F20101219_AABVYY galluzzo_t_Page_030.tif
58352377ae027156ca8710951e1963cd
d60624498bdeedd174fee4f0b5e100429088a310
53485 F20101219_AABWFH galluzzo_t_Page_097.pro
5fc67dc99bd918a7806bc00093e013d9
9733a51058e68f6ed09c262e592543c3c0a0d7d2
51813 F20101219_AABWET galluzzo_t_Page_081.pro
6663fe94c6356d295feab770e65aa8bb
57429d6e376ba77ae369276c907fdbe0ad6ea5c0
F20101219_AABVZN galluzzo_t_Page_048.tif
41550591f053aa6f06b209615fcaa575
b32daa7db89116ed7f870ebb6fde9190476dbcf2
F20101219_AABVYZ galluzzo_t_Page_032.tif
96fddf98331d9531a5dcf73fb00cb29a
50870066a368ef352cc9fe6a2ca7743f1633bc42
41729 F20101219_AABWFI galluzzo_t_Page_098.pro
e9dfb3e40cac48b8223da3851bf1af74
800e2b4337a008bc0401c7e1cf52575b7d4b3023
40621 F20101219_AABWEU galluzzo_t_Page_082.pro
2e89da6a507ea10aba3edcd0f89d316a
f00d501b50a79c5822816af6d943e8700ca612cf
F20101219_AABVZO galluzzo_t_Page_049.tif
16da42731865985d18478ef7b3c78481
b2b0f602c03fdf09170668894a84bba395b3af4f
55692 F20101219_AABWFJ galluzzo_t_Page_099.pro
d3a6194d387a06ec87627538e983f298
24f3416fb54d13a332ff19fef93b336b20d23d01
55315 F20101219_AABWEV galluzzo_t_Page_084.pro
357aaf97aedfcb8b47bd3262c5ab8579
1062c3e3c0b726d468f90aeead1fcaea07d8eab9
F20101219_AABVZP galluzzo_t_Page_053.tif
8d7db7d3a1d7f1eb9a7fef1ec333793d
52f9ba8dd3d9321a9c6d34d6547d364f5dbe6385
56648 F20101219_AABWFK galluzzo_t_Page_100.pro
9de90aad3ed14b64c55f9a07abfbf38c
171da3a607de9c49cd10bf1456491cff7cb5696f
52117 F20101219_AABWEW galluzzo_t_Page_085.pro
61e7e981aa4f778a409a61def4cee613
3efd4c4fd1fccf19e579938bd6a7e2fec583c4c7
F20101219_AABVZQ galluzzo_t_Page_055.tif
9cb13a2a42acbe86aa582ac8d9bf5692
f25789c90622ea4401cbcb27dabbacdcd4603c56
50480 F20101219_AABWFL galluzzo_t_Page_101.pro
6c9cc4d54cff68a3489008b5e2a50db4
7d2a816fa5931cebb763aff8ac96711b4a2c12c2
52819 F20101219_AABWEX galluzzo_t_Page_086.pro
2e680dc68bee6a909b1da591d478385a
30d6bc83f25115b128ae89fb3be93a68a2affa09
F20101219_AABVZR galluzzo_t_Page_056.tif
b42b8922e27b05e59c48e30d4a427916
e5a5c57c7e5283002a96f7a0db9229b8157939f1
12659 F20101219_AABWFM galluzzo_t_Page_102.pro
ffff016233d6020ff1834c94e8da0894
1a068a3314a9718aa963eeca04990f11e60ef9c8
53000 F20101219_AABWEY galluzzo_t_Page_087.pro
67c0339a4b30a10f16d5fb094e65cbf1
24b9ab75d1d3d29724366ce13c28b53269de4c8f
57050 F20101219_AABWGA galluzzo_t_Page_120.pro
2c3d3d2af87909cf5427cfbce23d3a5d
d11879630c11b14e3ffa8efcd0ed1ac3e31777c8
36712 F20101219_AABWFN galluzzo_t_Page_103.pro
b740ab1e3618c86401da862db0b072dc
b37bdbef8109729d4749c583f87f5dc1ec26169d
58374 F20101219_AABWEZ galluzzo_t_Page_088.pro
f38e7613a3efd96c9abde3be4353aaf6
13ceb96bbd2808c215747013fd2072447745d264
F20101219_AABVZS galluzzo_t_Page_058.tif
046fb9d00bae413de0b95892283c141e
9419fb6bb0b271eb6be52edd40506c6abe02046e
56394 F20101219_AABWGB galluzzo_t_Page_121.pro
228727b5af2d37651f59fd9c1b1b905b
86849f3bc19ed8c7496e4c3777d12e4417d04d74
8667 F20101219_AABWFO galluzzo_t_Page_104.pro
8ca76b36c3b3f14128707512fcb472c8
1790ac486f8223f8764ca8295ea6786509a6f01c
F20101219_AABVZT galluzzo_t_Page_059.tif
8957833039d0445c03c6a2802f40acb7
75aa4380e0845601663ed9264b5478f4c7b276d4
54896 F20101219_AABWGC galluzzo_t_Page_122.pro
559de6d842614ecac8f7e8d478839ff7
5d33e8d4af95c48e1afc5f9d112f46d3d0073598
7975 F20101219_AABWFP galluzzo_t_Page_106.pro
45058025f5f704c6efc2eb1f67136619
a7c1f47eb1b81da14e8d38dc470e1a2c96afc783
F20101219_AABVZU galluzzo_t_Page_060.tif
898b7812f9a643b65cc14075c8e7a75f
0f41c95efbe25a57f66d052fd5ae1924a4dfd6a0
56308 F20101219_AABWGD galluzzo_t_Page_123.pro
8ade312e247b4f7bb7feb0f4cb232c96
a9fdd24c58d449fda4df0431f61f74e220d775ef
10711 F20101219_AABWFQ galluzzo_t_Page_107.pro
cb6277a199a60c3552baf1c639d61084
804569fa22c109ee61032f854941b198f5bd95ff
F20101219_AABVZV galluzzo_t_Page_063.tif
f4e26b39cf1547ea0d035963d71e0fad
3f1baa06ef5e24620e1f8f4626dd30e94933101e
54539 F20101219_AABWGE galluzzo_t_Page_124.pro
a56d14f5ba350a7a1b8dc74a50c07176
373aff3bfbaf5c478216b1992921e3c1fd80e5b5
4278 F20101219_AABWFR galluzzo_t_Page_108.pro
077b9645ffd4afa328295d0201c91609
8ac9e1d8d29e56f88e2388dde0b0543004611e53
F20101219_AABVZW galluzzo_t_Page_065.tif
8e56b501c62bf0ce22a91ce877b5fb49
509a28290e1a3267eabdbc8e60e5aabb52cbd63a
51816 F20101219_AABWGF galluzzo_t_Page_125.pro
fe08206577c6ada24225f9c6b1ea6458
e232f34adffed03b72480118dafee52b5cf3ede2
9275 F20101219_AABWFS galluzzo_t_Page_109.pro
e321e8c2e206611ee6edbeb3d0a1626d
2cbffe71791398f66a98154e576c1ff7e0d27c8d
F20101219_AABVZX galluzzo_t_Page_066.tif
b1fb53ffe6c916aeae39a6e8014b7551
07e9593dff62a63e35ee2d99382e9b14ebe04e0b
53831 F20101219_AABWGG galluzzo_t_Page_126.pro
e2f8204aaea26bba4475dec56381a043
14d1c97cbdac730abae87ae884736d05d1a2c51f
49947 F20101219_AABWFT galluzzo_t_Page_111.pro
17a7a241d34dd13c35cfa358932f3f18
53a2dbfd8cbb92547321c3b013db5028a4fba6a0
F20101219_AABVZY galluzzo_t_Page_067.tif
01bd67a16fa00e45333a3a02fc8ed98a
70067aa33f5686f9104b31a0b8bdddd9875869bf
22884 F20101219_AABWGH galluzzo_t_Page_127.pro
1c194a1a9bb9d82dbf4dba2750dee75d
7d46fd3306ea1f9a21532e9105799f7334596ea1
54011 F20101219_AABWFU galluzzo_t_Page_112.pro
4956675999e846f48131fc21b25fa1cd
4ae109ee2d40b00cc7365f7ffbcf80e31e511a60
F20101219_AABVZZ galluzzo_t_Page_068.tif
02495e4d8598937f7c9f552bcfe788f9
a17b789d7570a4a854b6d11005dbbb0bade5edf6
72233 F20101219_AABWGI galluzzo_t_Page_128.pro
38b57be4b7aef5c5817fc3415bddc3e2
68fdf72a1de73aaafb36e47863a515f8d4c0cd1d
51906 F20101219_AABWFV galluzzo_t_Page_113.pro
eb8d4415a3bc040a2b43a7fd8dd0ef05
1027ff29ebd96e53a31653ba4be3160952566208
41983 F20101219_AABWGJ galluzzo_t_Page_129.pro
4d7bfd1a45998c78c8c41233b85c85a8
08b388305d4c0404eaa49e587637c2371256db26
57301 F20101219_AABWFW galluzzo_t_Page_114.pro
a4509cf05a27fdfd419ca6a92288b5a2
ec6a400796bae8f2639ec03a9af00e4ee54a9374
5230 F20101219_AABWGK galluzzo_t_Page_131.pro
62d2ca05f80ec3991b31df0d54326328
401ec3fd7334d8afcf9f13f524458c8637cfb9ed
51454 F20101219_AABWFX galluzzo_t_Page_115.pro
17605249480c4e516d8f48e62c9c88ed
2b5be85c281d5147926e214ad5ddab4b303992c1
10988 F20101219_AABWGL galluzzo_t_Page_132.pro
af37897b4484024d6d62aeecca78dbfd
9adabd5fa31f937ca8e52c59d1e0eae1bad59aa1
55564 F20101219_AABWFY galluzzo_t_Page_118.pro
d7a8638f5b9f287fe33003acae0ba530
b07963bbf0b1d2b901488dd990b13b7f87ad6af8
56805 F20101219_AABWHA galluzzo_t_Page_150.pro
1a0e7097a46996754b66556881ef15de
3d5eac73f9fc2338df52466aca214f067a198e53
9095 F20101219_AABWGM galluzzo_t_Page_133.pro
3beaa27322e680dd6c07af45997247b8
d6f923ddca9dbc13928b31e4eac492bb1075e1eb
57433 F20101219_AABWFZ galluzzo_t_Page_119.pro
fdd595c8b0b5088383942b658e6afdb5
f1d7ba4b196bfb94318321428ef3a7ae9a41bd61
34791 F20101219_AABWHB galluzzo_t_Page_151.pro
edc031a806b6c2a5465631ec707dacf7
1e58ef833d3982d1b3e3240a591d4b35454bcdba
6031 F20101219_AABWGN galluzzo_t_Page_134.pro
32607a28496d6f87f8b6e5265c4e9328
0c31222f9def81b320a599ba921686a173ecb8b2
71162 F20101219_AABWHC galluzzo_t_Page_153.pro
dc2021a979c23dfc8f39a048c5702f65
0ce9c95855d07451aac28513f1d79b96497377a2
10942 F20101219_AABWGO galluzzo_t_Page_135.pro
70c6033f527e85a69b77602a9c3e0542
f86bd384fcae82c477553a87ceeecb070cf40f02
65528 F20101219_AABWHD galluzzo_t_Page_155.pro
302c61cd4f7373a16c950c2b50b60ff8
83371f98d1d11be5c87cda69405958a3fc2fe7d9
11300 F20101219_AABWGP galluzzo_t_Page_136.pro
c5f87122d4b310b495083a1b85b48435
30be54765eeb445d6708eff6a93bfe2a5dd50c7f
62279 F20101219_AABWHE galluzzo_t_Page_156.pro
e10def3a02a56decfef993013a02c3f8
6f5df755bee3956c16350bfafb29c4b322241cc7
5574 F20101219_AABWGQ galluzzo_t_Page_137.pro
05fe171b0d1a6cc0a5d50dffe2e9b5f1
b1b6367fcc08cde841bf31ab2a5d881bb09bf975
11333 F20101219_AABWHF galluzzo_t_Page_157.pro
e02b9d3d1c9bad27c8dcbfd4cc976476
3223184897e4d03f2f36b97a49cf6b8d5097f0fe
11922 F20101219_AABWGR galluzzo_t_Page_138.pro
623fbc11ce703a7492b43316ebfc7931
806b41ace4ee3eed4232c91ae5f7e631e3d63fd4
471 F20101219_AABWHG galluzzo_t_Page_001.txt
66b428a59cff63f6eba9febb568dd9ca
726989e62b9b096160743e6c659b3e18ead18ce3
9636 F20101219_AABWGS galluzzo_t_Page_139.pro
38649b64f00b233ca3b5da1c9dc6d12b
261fd93f424f9a723ea2031f8097f52a2a155da6
116 F20101219_AABWHH galluzzo_t_Page_002.txt
5880bc9fec0f79a4e3a03539da505570
83cd4b144aed4b2df9969fff6721d747429662b1
7363 F20101219_AABWGT galluzzo_t_Page_141.pro
f65a71d2e20da6b73f25b1f160ca55c2
d3a3df41e9753272ab8ca13bfb20622a94b1c7a0
241 F20101219_AABWHI galluzzo_t_Page_003.txt
7185957fa89df01561bb67ba9317a8b8
d2b5389658f3ad5733fade0a6d632a70ea19049f
8843 F20101219_AABWGU galluzzo_t_Page_142.pro
1147d61f87e63366355dc8437ad39920
6d79b8f30c138b61ad1264d42b4eabe1745d9a2b
983 F20101219_AABWHJ galluzzo_t_Page_004.txt
ff5e26407460577d17324e145e1889da
8eedcfd510454a56fcc3c8ba8814f554c97a6780
10304 F20101219_AABWGV galluzzo_t_Page_144.pro
80c7d8dfe23b03f3f667709ba44d53ad
da552074fdcbdb56884c8bc2f4e03f62eafedbf8
3211 F20101219_AABWHK galluzzo_t_Page_005.txt
6456f6402df58eed25708f87ebe79c21
bfbd91c787124f087f3ea6087c7e04c4fa0eea10
12322 F20101219_AABWGW galluzzo_t_Page_145.pro
02d2842a9d87e09fba2ce4d2b1836ae3
c2d37f6ced876861b2ef07726d79f0f6c088ea48
1632 F20101219_AABWHL galluzzo_t_Page_006.txt
92a3e6b65bc72339f87ccf84f5ede7f3
90e2502581176142ef61ec6425340491efa947fa
10415 F20101219_AABWGX galluzzo_t_Page_147.pro
df099d057611cc1679514fa399d95f13
8f9cff30dfc0c868bb08eda1ec00a19eb1e8d628
2182 F20101219_AABWIA galluzzo_t_Page_024.txt
5e913243243e039f0538ad1a696bb59d
5c0367e42213d121d28c8d2c7bf3d6cbd327ebfe
604 F20101219_AABWHM galluzzo_t_Page_007.txt
423bbcaefe2517506df47daf06a862ee
e8248e85a5f20be4d5c78023e4ee102ead6c908b
47164 F20101219_AABWGY galluzzo_t_Page_148.pro
56e3eaad1f837ebc0c7bc98eee1996b2
f3c670992b79665a13ce1aef5abebc5223a93c28
2193 F20101219_AABWIB galluzzo_t_Page_025.txt
7a27263a5c2e45def8589fa0ef2eb9c2
cd9d29be3da2cc7a5caf91b3762a9950aece6a52
458 F20101219_AABWHN galluzzo_t_Page_009.txt
e38e2cc476ce760ab0dce1b449c43a46
fa523f73e38c462443a05decb1a38ad69027abc8
55427 F20101219_AABWGZ galluzzo_t_Page_149.pro
29576c319adc0a51aceafceb59ad6642
e986b773bd2946899c033ee9293bfa9487e2e00f
2098 F20101219_AABWIC galluzzo_t_Page_026.txt
e010f4abdcfe05d78787a0449acee4d8
0e0b2a3f66bbb06a95c6d82c53a9162ad8cceb73
1748 F20101219_AABWHO galluzzo_t_Page_010.txt
e901e0e380ebe2d34a4348a186754f25
6ff6517703eb20ba982569255965254b3957287a
2159 F20101219_AABWID galluzzo_t_Page_027.txt
f71f4a48fb2ca4b1adc85521a4b6cb8d
d0fa591b5ee66e902688bb80a141a3f363284a20
2083 F20101219_AABWHP galluzzo_t_Page_011.txt
0de8716a0edb6e724b6db635f1bda397
c49dd771d26adfe3f74f6f9f7cd2c44fc6819457
1975 F20101219_AABWIE galluzzo_t_Page_028.txt
a12c7baa3e08b64ddf56702383bbfe9e
06ffde2154440b964e64cc1e047a4e07bd255a80
2112 F20101219_AABWHQ galluzzo_t_Page_013.txt
5128f8c22ebaaeda3fba314455b6ece9
e0c6a5e85afe7fb1df1de36b17a27956c9155749
1989 F20101219_AABWIF galluzzo_t_Page_029.txt
f3183d72ee8bf2cd6438be13b0393e3f
9dc34ad4d2ae8366e8e69b4967059c6d2def31c1
2081 F20101219_AABWHR galluzzo_t_Page_014.txt
4ff666b05839d13feb227341026ba87b
73fd7b9f8c42779c34e5d1c9ee2f094780df5627
1788 F20101219_AABWIG galluzzo_t_Page_030.txt
0d82dc89c41434a784d04057e55700aa
ce948cbd1d637ca5b1e275f88cee6661212f3eb7
2099 F20101219_AABWHS galluzzo_t_Page_015.txt
56fbe5724ba618b44d7b0b658757cfbf
b87daaf6c6c455b78520895e9b3953e57185baa6
2127 F20101219_AABWIH galluzzo_t_Page_032.txt
a38a62d2a25b67f2f3a7efdcff4cfc06
b3b0febd79ca183380b3ce724c45b19ad13c8589
1916 F20101219_AABWHT galluzzo_t_Page_016.txt
e251f785ef0d56e2f05590057a9f0c53
4d22bfe72419b30822b832b95163f9ac81a75de8
2109 F20101219_AABWII galluzzo_t_Page_033.txt
a8dfd25c30220fcf1e521e29ffdd98ff
9a473cfa8762bae648ad2d37dede8f21a5e16783
2013 F20101219_AABWHU galluzzo_t_Page_017.txt
6696a9271d511cd097f2a64ac2a743a7
d654b35779c74e54097af947396d7e20e981d8de
1985 F20101219_AABWIJ galluzzo_t_Page_034.txt
4f49b160903dc85389feb122779f9cc2
2b1132f202034f23ec562fd890883601a8ee2e20
2065 F20101219_AABWHV galluzzo_t_Page_018.txt
74bcb11d4813bba1ae08e26b4a8f0dfa
f03ed1a65fe2ddae18592329580424e1acf0c4c5
472 F20101219_AABWHW galluzzo_t_Page_019.txt
ff3291d081076d5badd44b154cbb12e5
40af95316314df6274e18af2e8284d3de9401699
1982 F20101219_AABWIK galluzzo_t_Page_037.txt
72b41472d4afed8e268f156f6a4bd89f
595f43392de89750138c1a47ba08dec1ad73b5ff
219 F20101219_AABWHX galluzzo_t_Page_020.txt
74ce88b34e62901d01cac30e60a3a2ff
a3cae44da60ed0624e6df3864c00ab454285319c
2050 F20101219_AABWJA galluzzo_t_Page_063.txt
a83eac5838aa72514b6ec62b932344cd
57cf58b420b35a626a06a3de0cce81cb5fc800c2
2108 F20101219_AABWIL galluzzo_t_Page_039.txt
198444f953c4d98a4a4bb5a8428099cd
a359f1749367ff15763dc695d12a81f73ece531a
2085 F20101219_AABWHY galluzzo_t_Page_022.txt
20ee5d44bc830f0ab986b9390a415e04
a540d53170a53add303a3a1fa552f3d114195637
618 F20101219_AABVFK galluzzo_t_Page_136.txt
f505cc9a0e969fa7701969a94e2aacfc
b2cebad5d4c07980668ab29652799254177137c5
1497 F20101219_AABWIM galluzzo_t_Page_040.txt
577685883bdda16884d5cc989986221c
bf9449c61df4e5129867b1fc4ab946bc62ca2167
2217 F20101219_AABWHZ galluzzo_t_Page_023.txt
c825ee3d0b1757f693d5c41664c07773
07225e30c773841008923777e463bf4014c97de8
1058 F20101219_AABWJB galluzzo_t_Page_064.txt
41ae2f401bd45f1c436ec9015d5e8317
60b5d4de67ecbdad4cfc7ff8450bab026e4cec23
3250 F20101219_AABVFL galluzzo_t_Page_144thm.jpg
f11261106be8c89c8543def93fd37d57
34335b7ea5f7246b2c774f4761820f202d2e83d4
2092 F20101219_AABWIN galluzzo_t_Page_042.txt
6a4ac0d9a6e752a65e241fe147e05382
c8c36b38ad0fbb91d446b52b372f37940f801e42
527 F20101219_AABVGA galluzzo_t_Page_139.txt
cd6c0aae0ffbd19a02660f35329dd409
0e803bcbe92588587c7d9364ddbe8efc8ee8153d
F20101219_AABWJC galluzzo_t_Page_065.txt
27f8983e7cd28a6d6491288fbc6e3fce
2bef0bb430391edbece229c9b73302332f9ef6f1
F20101219_AABVFM galluzzo_t_Page_062.tif
236242f8649e5cd7c95f0dc3938fbe4e
a9ffaefcb03597857dccea20af2bf5282a261bc3
1998 F20101219_AABWIO galluzzo_t_Page_043.txt
72e2a6bce1f7dbf70f7966aaf7f80f1d
5668dc0ef99de0a64c9c1356c09fd9986f4cdf2d
115878 F20101219_AABVGB galluzzo_t_Page_094.jp2
34c7ad53fd07ddc538572531804b0e25
82040b231e7baee0a9b8db8ce93e74bff8f1c8b7
1605 F20101219_AABWJD galluzzo_t_Page_066.txt
0b485fd136d9a74291f27f094ddd08ba
ccdbc5712fa9f25bd904b89e072d1356c1830b4e
25332 F20101219_AABVFN galluzzo_t_Page_080.QC.jpg
b6f18a4472d2738720bb808f348beb60
1fd0bcb159666387543d0047739d96bb5a2918c8
1976 F20101219_AABWIP galluzzo_t_Page_046.txt
58ec98b83ecc117c3c6c2a7be5dc9418
ddca6b7f941a961819af4bb94481aaa5198ec528
13206 F20101219_AABVGC galluzzo_t_Page_104.QC.jpg
905c711d3a1b9d6307efc9739ec310b7
05fe0502e43d60e54b81105332d6ca16e5589b00
681 F20101219_AABWJE galluzzo_t_Page_067.txt
9c4a5af6a683e8aa442669a06d85de5f
5787abcb9602ec937dd5e5e95a451892c2cec48f
60035 F20101219_AABVFO galluzzo_t_Page_064.jp2
7cc59c2367a27faceed99d3583ac847e
6b51e051efde7c510d6f29134e2791c3aa5c2d74
1945 F20101219_AABWIQ galluzzo_t_Page_047.txt
1a72e7feef199603ea4795b2bc754dbc
2cac4944b97f5756fcdbde1e89175201cfcedb1f
F20101219_AABVGD galluzzo_t_Page_101.tif
ae745c06c5aed14301781c507a5232a8
0a006b5088a1e9381bc042472d0c8a8a0a904629
989 F20101219_AABWJF galluzzo_t_Page_068.txt
d2eb86d044622123e6d3706ed143acd1
42440027b9e0cceb7fe507c9c973501826f161c3
F20101219_AABVFP galluzzo_t_Page_087.tif
d25508ce495ca82e14e99fb3e6b9e8c9
f36b92ee861efcea7bf4afe9fa36f40fbe57a98b
1796 F20101219_AABWIR galluzzo_t_Page_048.txt
5822c43a75455593df9077fcc8ef300e
c25f5cdb1cc1c86bf5565d7788475601b79cb311
24077 F20101219_AABVGE galluzzo_t_Page_061.QC.jpg
00c35974e9296eb2156610a09d7e8775
530e985eed6eaf0abba7e2b32a0f24890d816faa
1115 F20101219_AABWJG galluzzo_t_Page_069.txt
ce6d8d700b743777f14288f9cb04e8f0
2931eecfce9d6fb01927e245433c522afcf860a7
F20101219_AABVFQ galluzzo_t_Page_153.tif
1479658787bf62844d8153804196d52f
fee4636d33f790003fa1926de2e9e21db9da0b90
2132 F20101219_AABWIS galluzzo_t_Page_049.txt
34e17cb54d2fcf1a196ab85de9ac12ba
1d16352d3515306dc06b8de29b36e481822084c1
97728 F20101219_AABVGF galluzzo_t_Page_153.jpg
aa64aee9e25dc925a37a22590c1614de
441754475a5c83264d4f5161fa6d7ca6211982e2
2087 F20101219_AABWJH galluzzo_t_Page_070.txt
4016714d2c36cf213dc094b090d4e753
36e4fb6aabb74b3d6c70b7398b06facb66e0e105
F20101219_AABVFR galluzzo_t_Page_120.tif
627d158476c1fe333563987b9011f83d
f1d7950b14f12d269789e5effc31d7d5fd0dea92
1567 F20101219_AABWIT galluzzo_t_Page_050.txt
a382c605ab5b51c948fa2d46d311e761
2bc67c5dbda83147c20ed00852187dbdfaa9a77a
41726 F20101219_AABVGG galluzzo_t_Page_064.jpg
5aa50a90a4fbbe5acb30613e674011f1
b7e8138ecd98e9249b41bcb6e653d0000eefbd31
2171 F20101219_AABWJI galluzzo_t_Page_071.txt
1903c8040db041969ebee5c685dc0e29
7ac3a88995f9baeb18e06a6acc6b9b6454b87202
529 F20101219_AABVFS galluzzo_t_Page_147.txt
1f143c06f78db7fa201d423d724418f7
49f7a3d5c8b787a3a36496a7fbe02658d49572e9
1966 F20101219_AABWIU galluzzo_t_Page_053.txt
130b7cffce25320a1b1d96eb3076366f
d9b8d959d80d968472e351ef4bc051ea2c6fd64f
6886 F20101219_AABVGH galluzzo_t_Page_152thm.jpg
c836ca951d76c32bc4a21dd63ef93422
8c936d9dc0427f02ec36269a41d75dee4254b22c
2264 F20101219_AABWJJ galluzzo_t_Page_072.txt
2d16e022fbd3463f26f2bd01b0e2a194
f84bccb768bb3ef11a7d07bea46a943fbc58e585
103465 F20101219_AABVFT galluzzo_t_Page_116.jp2
d6ee1f6e268994a0c8fa6a9ae68f3483
b0035b62b3d0b9245a1720c578c935f7818f4fc5
1885 F20101219_AABWIV galluzzo_t_Page_056.txt
b4554019c96354d5ab63c1e4c1a5c761
726bb7613cc448ae87e8c78df4e898cbf6808028
F20101219_AABVGI galluzzo_t_Page_052.tif
7d3244261549ed68219e24d425319a69
860f9d68d6fbc69ff9b2a938d6f9479073d3930c
2192 F20101219_AABWJK galluzzo_t_Page_073.txt
5f9122416ecc54a46fa5635b69451d15
21bd3562009fbc90f381396da8ba3c1690123330
56891 F20101219_AABVFU galluzzo_t_Page_072.pro
bb12d4606fe3f4c66d760664eea08d0d
cb36644b6a3d4478dc217894de135f7fb53883e9
1655 F20101219_AABWIW galluzzo_t_Page_058.txt
ebae873ee6d67654030ca771d9cf58d3
0abd924e9f797000123b51240e6b6ba733f2a236
2254 F20101219_AABWKA galluzzo_t_Page_091.txt
367a289333a20fe62ecd5263dd7594e6
e7a2b08774ae95f11a73c067027fd98d720c04f0
660 F20101219_AABVGJ galluzzo_t_Page_133.txt
b27ace82db9dfad4b5732c5d4963d017
7c63b097972f4490b9c9803bcd0fadcc806a606d
1772 F20101219_AABWJL galluzzo_t_Page_074.txt
0e5d28e9ffcbc7e59c349e556c0e5064
9ca121a098f9e1de2fbb4d1cfd7752021c45ca13
23343 F20101219_AABVFV galluzzo_t_Page_036.QC.jpg
6d8eb0c4d47479732337e7895e6dcbdc
2d8241432f0b0ab1a434e4a747b4a59ca51ee3c5
1999 F20101219_AABWIX galluzzo_t_Page_059.txt
05ae7ea9a89c6682f868ce2c5c8cda81
47bdc0a8d3ee28d28681947c67256d541e45737b
2141 F20101219_AABWKB galluzzo_t_Page_092.txt
aa6abed03f136a4db62496a3de4a2810
aa7b94717aaa2dd5e326a68fc80e222b3f8b5603
119354 F20101219_AABVGK galluzzo_t_Page_024.jp2
5eea4d623fb1d117ecd79e6d20d6d62c
1123942d065f3e8b6c6329655803706b53726786
F20101219_AABWJM galluzzo_t_Page_075.txt
4de74849582cef371726f9d020717d5f
f9faa5df89bae6b5d869aa94b8a025823cb6ff55
6384 F20101219_AABVFW galluzzo_t_Page_029thm.jpg
65ac6bf2a9003a3fb89c994fdf0c8f6e
ee550e6c8b712eefcb97307e8a869d18d664312e
2120 F20101219_AABWIY galluzzo_t_Page_060.txt
ada36b9b29d261af0ad4872ea11ec4b2
39807c35425f57ba15dc034a66e96b544f30ac41
2039 F20101219_AABVGL galluzzo_t_Page_115.txt
2bf1b829eca3241d9969fb081962cc84
4ee4e039f0ee80c0aea2a37cc6175f487789ce8a
2169 F20101219_AABWJN galluzzo_t_Page_076.txt
4491fca96d0a7d0e6856f329f8ce53e4
382b6ddcfc285894e2630698fe3f821c11af2542
78834 F20101219_AABVFX galluzzo_t_Page_072.jpg
881f49ce4755b54d3e2040dfaec1672d
7064279991a10833b0cec86b54fdab3aa3e828b8
2012 F20101219_AABWIZ galluzzo_t_Page_061.txt
fa10658eb74d865d3750598ce31d4cde
7eccb819da5fc26f3433b01f9dafb9a0c37b8d4a
2114 F20101219_AABWKC galluzzo_t_Page_093.txt
81b9dbb5393a7b1d613e51ca39108312
fed96ba84c6e9acea07af2d695b1054263f19d1d
55813 F20101219_AABVHA galluzzo_t_Page_025.pro
0e126cad0fb5ac7198b8d0d946bf4def
538eaf1dcd8c92b9379d4d6d214c528865e74266
6312 F20101219_AABVGM galluzzo_t_Page_095thm.jpg
d80afff979e22bbabf21960b66135889
15b190b07193bc0efa3ff6bf7275b3ff4db20d09
2250 F20101219_AABWJO galluzzo_t_Page_077.txt
33583073bafa1058c9be4af174544e2f
f5e0dc9c3133b766697ea8bc4acfe3500d3b94ca
120426 F20101219_AABVFY galluzzo_t_Page_114.jp2
704d91fcd9bda7e9e387c836628a6419
e0a0389875aef8096d6257b314163a085854cce2
F20101219_AABWKD galluzzo_t_Page_094.txt
c60c1c16ff3e7ede55176b05be1ccd08
45d79ca6a9dbca08cb6546269b8a6ea349c02c36
1924 F20101219_AABVHB galluzzo_t_Page_036.txt
7f1b620e5d057677e4e24fd0521071e0
eaeb1fc26f93019268d3387af47714c242608a8f
73847 F20101219_AABVGN galluzzo_t_Page_015.jpg
ec908e93fca28a35b8d6b0c0bf785e9e
7f513ef1586f11bc7abdc994feb74072cecce115
1854 F20101219_AABWJP galluzzo_t_Page_078.txt
6c77409ea407126878f2ed1895b7bb89
f453e335be152d2d1f239982389bc9ff83c44b79
F20101219_AABVFZ galluzzo_t_Page_016.tif
0a295460c5719d550bbe7d2aae8fa671
227aef226878bb293adc3f4f71fd926c2387c10b
1759 F20101219_AABWKE galluzzo_t_Page_096.txt
d5e96e8c4351ab8671f8c7765489be08
90c923cf43e0226f83e57793e6ef398158ec0393
1896 F20101219_AABWJQ galluzzo_t_Page_079.txt
03209067206fd3c1df769810b4a3ff1d
7fe14cf9c893a912a8630dc57ac07613d87308ff
25736 F20101219_AABVHC galluzzo_t_Page_024.QC.jpg
76524a4611282372b02175dbb7a25506
013cb65ffb374eeebb2343acc65be5e6eeba8598
F20101219_AABVGO galluzzo_t_Page_107.tif
781b7aa8af9427b8e65217d3c3f8c58b
fbddfb7a7d59d22dc314326af98bca2e4be9f0a5
2224 F20101219_AABWKF galluzzo_t_Page_099.txt
88af340a4ab22fa1d82c045379a66165
45f7fe5324e7c8c1b74f02863996c6eb9a826ef5
2252 F20101219_AABWJR galluzzo_t_Page_080.txt
3d89346d246fff8f97c923795b46d4f6
4ca6f91b4d4bcb204b1aaad2ac0a0ac6228662fd
25693 F20101219_AABVHD galluzzo_t_Page_118.QC.jpg
9d0f69dbc8e56aad3ffa9d535c26b19c
eb097ee0c2da2069c07dd93d278b84bc6c938d36
6606 F20101219_AABVGP galluzzo_t_Page_026thm.jpg
2edcba2b4052ad4ea1837aeb08a01b86
85a8c3a7850b824dfe1daa66cb807fb0a61ebf03
2222 F20101219_AABWKG galluzzo_t_Page_100.txt
5146ba7603f4b0eb04f81cc09b30a015
d7f06d08070afc9182a0d802e667af732c847b0e
2061 F20101219_AABWJS galluzzo_t_Page_081.txt
66af3b780d91616ba70f5393c06bb7ed
595fde1f0d1498b721b03b30d051bb4c55cf41e8
77380 F20101219_AABVHE galluzzo_t_Page_027.jpg
fc406d996cba8fe89192b4f9df7acd07
36f51b4e3d154202330ecefaf3ddb736353ae3bc
50827 F20101219_AABVGQ galluzzo_t_Page_058.jpg
00d0d8b7075f7565c47236beba8671ad
22e0f8074753cb3c14ca058945ec6d4fc60c8274
2036 F20101219_AABWKH galluzzo_t_Page_101.txt
7c66c2d9ff84a6f893f58b3bf3c1b0f5
4ccec114b6b0435bce35f8142ea577ac8d8905c3
1865 F20101219_AABWJT galluzzo_t_Page_083.txt
e4610e0540164e0c0e2039bdea06c6cb
140492b097270822bb91eac0a1421131b47b0478
49210 F20101219_AABVHF galluzzo_t_Page_029.pro
a32eb7e45de2d3dc8d90c99c2d0a9935
e38fd9535372b65976e3c82ecb244ed1d1420c0e
55504 F20101219_AABVGR galluzzo_t_Page_094.pro
5b6fcd0a4f7e3d0bac66678b891d44b0
74c54a7d1186d2063521f6be9abac420dae63cc3
513 F20101219_AABWKI galluzzo_t_Page_102.txt
9f038ee6f35766d6a1c6e817266d7e9c
92b21b0a1830dea9778825becef9aa3a35359538
2205 F20101219_AABWJU galluzzo_t_Page_084.txt
a7c111a6376242206eb5e70fc0a8d763
020b6eae96b02828a76943dec99f37df44a5e9ac
533 F20101219_AABVHG galluzzo_t_Page_146.txt
b64a8e82fecdf9841594293cabd7ef6b
5faebaf2015ad0ab3a9a8877dc11d4b84d302309
60218 F20101219_AABVGS galluzzo_t_Page_098.jpg
661a86e951d1a808b0fff9c16c544998
84d37dbaee41c35ee635fb0487380f56ae5811a7
1505 F20101219_AABWKJ galluzzo_t_Page_103.txt
d0d28f3c768e2f66613d8bc7e31128b0
84ff590eb1fba771b44cf43e6d5a31656ee8db73
2052 F20101219_AABWJV galluzzo_t_Page_085.txt
be9f1b9b5b8707163a546b9487b67c50
b05598aae3d3b30f8a5083a845842c301117fced
F20101219_AABVHH galluzzo_t_Page_117.tif
96a1733fda23d589f7dc40d483d4a918
113c6158baecb6e586061ddc88e7b526da45efe4
102891 F20101219_AABVGT galluzzo_t_Page_052.jp2
324d8d7eace0b54cbbeee85c5cad0fa4
df73be7d3eda712da15926141b51e3f30cdf8032
F20101219_AABWKK galluzzo_t_Page_104.txt
3517c01749d9445cb2109efa144e9139
8e7a82d584cad6d4ef737a9179f7286a4725bf3c
F20101219_AABWJW galluzzo_t_Page_086.txt
afddc8752555885ca0ad3116c34f047d
de64bdff5b5d0245b802b814749ad6fc55630ad1
F20101219_AABVHI galluzzo_t_Page_050.tif
006ddb322dd01ccad985337ee48ab151
6444362829e00c9067e105dce61875fe3399c1d4
1252 F20101219_AABVGU galluzzo_t_Page_002.pro
2652e240f95f771f415a1f5d6ca249df
04260ad1264cd3c3d8bb82c5ba3e7cbfc08516d5
2042 F20101219_AABWLA galluzzo_t_Page_125.txt
ac12cf7a11111282dbe84e9bd3cc2bd2
602d50e7fc8b69e5cef4e971682d17c94db896db
641 F20101219_AABWKL galluzzo_t_Page_105.txt
f53c1f0feeccd6acf4e3a639d7b75a71
f02afe062656ff2287cbd5814fd1c723213379ad
2095 F20101219_AABWJX galluzzo_t_Page_087.txt
7458f78082966149168f87bcc54fc640
1ea9cde84eab0a9dac679ee0f1445b8b0c6f11cc
3546 F20101219_AABVHJ galluzzo_t_Page_006thm.jpg
ce14e7f14deb90e189a9a4d6a4a01072
13a41b0d8f3880ac5b6577ecc692c30e25a2accf
308701 F20101219_AABVGV galluzzo_t_Page_105.jp2
56e58b4a2a786b355df5f7977c964a55
b6232fd592913c1ea3af00a03132bdac7d446a69
2137 F20101219_AABWLB galluzzo_t_Page_126.txt
4a70e6ee98b9b59f05871bd2f96e2a69
26e103a679bc15a5e4c5d5b35156f11379941f68
407 F20101219_AABWKM galluzzo_t_Page_106.txt
679a7929f80472ab188d689b51f23fc5
f4c58c95a9553841e537ddec53ed6a8a118c0075
2288 F20101219_AABWJY galluzzo_t_Page_088.txt
e0549e9965784766524a1adde330ee8c
b47d7343a18970b1323b8a968f6c13a392aadc57
47683 F20101219_AABVHK galluzzo_t_Page_116.pro
33227048e4e078920e42ad8364f7d8f4
34fad03b7746f53fba667e9ab60e17569b0dc9e4
12158 F20101219_AABVGW galluzzo_t_Page_006.QC.jpg
97c67aeefe11fc7ec1e553546d4796d0
d1a851a84577b8bb6db9b2c2bf6302493611f48e
920 F20101219_AABWLC galluzzo_t_Page_127.txt
e5a2cb2e60847565d6b90835a5bdd621
9da81f74000820a495c65f0e77819b9e92882199
481 F20101219_AABWKN galluzzo_t_Page_107.txt
3350cee931021040ef894a9031375f6b
710aeae959bde1a245d5020c632e44978c903eb1
2211 F20101219_AABWJZ galluzzo_t_Page_090.txt
fe707b5e6a966a803ffc497bb723640e
fcc655f82f8b9942a9c9086508a7ba87868ce312
4529 F20101219_AABVHL galluzzo_t_Page_106thm.jpg
d721b3edc0154a60f1216b58fce9d500
789ab2b60e7cc547e8d062346d27179fbf86f10f
50061 F20101219_AABVGX galluzzo_t_Page_028.pro
ddfc3139171648bd48271c6a32a162b1
a790aa5f36de4d26e0ace4a9e05fc0053c24013a
F20101219_AABVIA galluzzo_t_Page_106.tif
edd760b612cd1403b9f1dfad2d2e1d58
12e789e47caf9a7e0243d6d1ffc680ba69247bf3
437 F20101219_AABWKO galluzzo_t_Page_109.txt
a55b69c62bfa1e25b5836976186a1a3a
fe0a9d13113e734e99e824c4006d4d163f60c369
14046 F20101219_AABVHM galluzzo_t_Page_140.pro
15985c9e6368c01e139db74cd0cf6575
105f4f81d8e69c0c9c81afcb90c811333fce332b
F20101219_AABVGY galluzzo_t_Page_095.txt
b2eacd8e5f1778182b6594ad5d477972
310153ab485e1296e8cda22b6f06acd89d431ea7
2873 F20101219_AABWLD galluzzo_t_Page_128.txt
cf6b3de51c2f3749188b91c41c39d7a4
e6318fc6b7ada70e675976736bd43db56dee301f
2139 F20101219_AABWKP galluzzo_t_Page_110.txt
f287e495b8ddf08263a286fe011b5e4a
1fc7850116fd7914f8b25bf6c573b8341f82bfcb
53900 F20101219_AABVHN galluzzo_t_Page_049.pro
b6468763a6678bbb687990d95befb9f3
f009b3188ecb2bc000dea2f796e145819a45da7a
67111 F20101219_AABVGZ galluzzo_t_Page_016.jpg
d08c0e31b036ed32945b7e7ac9f6ab46
2069016c1c9140c4b0227590b458befb1564fa8e
52286 F20101219_AABVIB galluzzo_t_Page_022.pro
31df4ac00a3f01e206336f6c4b663f7f
4d9be189147b943ccb5df94b001b62d5d7f65957
1819 F20101219_AABWLE galluzzo_t_Page_130.txt
3640387f49266be471842e62bc586bbe
6e46cd8acf01a01412583048a0991bf51489dc23
2015 F20101219_AABWKQ galluzzo_t_Page_111.txt
0bae254f6c9fdb4c15480b291662963d
42c6e2abdf143b5241d16faa642ad7b6410c5372
6587 F20101219_AABVHO galluzzo_t_Page_125thm.jpg
90c3edcd7f47656c543b444c7630e9c0
98a10190a21d0505bf43acbf0cd01fba42d5d49a
F20101219_AABVIC galluzzo_t_Page_092.tif
d5119eacf3216043dec2ee8f814645f2
e1b104307042bc02027e2eecc39cd85a6374e40a
278 F20101219_AABWLF galluzzo_t_Page_131.txt
a3dfd74c9a6c180e3a8bc4a5d597d3de
a735ecc7035f16f3396f8a4d03ae53d5fc47f317
2167 F20101219_AABWKR galluzzo_t_Page_112.txt
b6f6f1f01f22f3dd9737e4fd4007ecc2
6b7508cb3f3a2c825bebe07ec5e8b47dc871c70f
63153 F20101219_AABVHP galluzzo_t_Page_131.jpg
9d8306dcb99054945dbeeab270c0a235
5cb7e4ab5b2de969e27a76eba400344888630e9a
1863 F20101219_AABVID galluzzo_t_Page_055.txt
7eb99d61e4ae8d4fabc65d6594088332
2b46f7c4971d436642ab202058b08d26ec07f6b4
F20101219_AABWLG galluzzo_t_Page_132.txt
bbcaddcc030d4bdbf3ba8362ed419a31
bc32efa7533a2d2ed0a50596d9e652ae785f6ad2
2059 F20101219_AABWKS galluzzo_t_Page_113.txt
0ed907e6b6a17cc7fc9a614756da79b6
358dc37b9ec6b1430b2b72366d724f4d100b6187
54986 F20101219_AABVHQ galluzzo_t_Page_062.pro
d9153c073e0c53777e2c66d0c0549471
48167f9ef320a09006d1261df94886fdfa08d8f5
35440 F20101219_AABVIE galluzzo_t_Page_067.jpg
b43324f8b73a622a45f0886ec60b0dd4
4f01649312b2765ebc532f1209fd3cc341f31db9
324 F20101219_AABWLH galluzzo_t_Page_134.txt
0a1edabada71b6bac313ac5d975e5f95
6130a9f690712f3123b57010a18d0d20e2a1eb44
2294 F20101219_AABWKT galluzzo_t_Page_114.txt
fd2e39101e36aa68ab78f97f299b9278
f7de55c1cc8aa0f91251011efb5a366b70a8ec2b
14824 F20101219_AABVHR galluzzo_t_Page_147.QC.jpg
61945a83df5a57bc51413e8c6c2714ed
cb6b33598c5d0aa30e846fa41947513b72c66ec4
53871 F20101219_AABVIF galluzzo_t_Page_032.pro
dd750ade966a0835b3699d589460005a
9314e921846835612af036fcc264ccdcc0dd35ac
314 F20101219_AABWLI galluzzo_t_Page_137.txt
e1dd86ca101eaa0a7cf350a396686756
2ba6f9797ef84319e4da25910cb3fb46b44b92a4
2240 F20101219_AABWKU galluzzo_t_Page_117.txt
a1f832610b741bcfd56251750a4b36cc
bc12ae907a35d035fd1a08957829430d8e9a7d5a
F20101219_AABVHS galluzzo_t_Page_082.tif
91905222ea2a12ff5829a253728ae16b
3065d6480cdc82b16b31f38a6bc41e976f340848
F20101219_AABVIG galluzzo_t_Page_039.tif
609c8e561f7bfea85e204644b08f76aa
40a18dd1defac40639d2df580204daf9a0c46552
585 F20101219_AABWLJ galluzzo_t_Page_138.txt
09ec396b6c4b0cb85d482f5cb380bbb2
c258451f49412ea2881af35cb50f3aa3dfed4838
2191 F20101219_AABWKV galluzzo_t_Page_118.txt
85a99ea655e7230cf7503ce2edb760d7
a7205d58fee7eead0009145b67e4f5c7f4635e04
60685 F20101219_AABVHT galluzzo_t_Page_055.jpg
23952d0487f8f983bc435a2507b473d4
555e8cb9b891d76f06d65a7f87bfd14e6441e43f
79582 F20101219_AABVIH galluzzo_t_Page_100.jpg
9cf5a6721ae34680aabd6959937cbfc3
1d18bed04b701ac2b29b1bc67c67dfc549991ec3
852 F20101219_AABWLK galluzzo_t_Page_140.txt
f11dfa9efa502d608ee4a05c93101a01
0f8603d997a642eb38649726c0f3656b27fc50fe
2251 F20101219_AABWKW galluzzo_t_Page_119.txt
cd585802b8bf5f5bcf68eaa450416901
e83f1478fd9d177344035761402486b5fe621671
1638 F20101219_AABVHU galluzzo_t_Page_057.txt
08154552b6e772947f42a02e7ce1d608
4f51c13c294a61c5b9c1265f842a63d34fa2cfe0
62486 F20101219_AABVII galluzzo_t_Page_152.pro
87bfd3b3ca2748e030da5ace336417a7
8e35b8737a1df708ff8568371d18aa43ba50d6cf
6399 F20101219_AABWMA galluzzo_t_Page_148thm.jpg
9893fd41465170dea83ddc0eaf50f81c
d8739eabb3ecbda7748dd317711589a261e6a7a4
417 F20101219_AABWLL galluzzo_t_Page_141.txt
b77702e3bb6d9459a097010dd7118f9a
a31eccba69253d3bdf49d77f497ec56dac86a98a
2220 F20101219_AABWKX galluzzo_t_Page_121.txt
e06bfb74858ac8dc26ab0090c64ef1a8
92f8f7441f3df27c8d0458a1c50033532d4b2440
61151 F20101219_AABVHV galluzzo_t_Page_082.jpg
db1567e50aabe9281abc01e1fad4fa37
a53f730d7ccf8e3b4840b2578fc9389ea45efec0
23301 F20101219_AABVIJ galluzzo_t_Page_011.QC.jpg
d09d5cf7f7bf1ed8bc3dd7f00db82faf
f65d12b55e44f97ab697d6c45e8dbdccaa468692
3651 F20101219_AABWMB galluzzo_t_Page_141thm.jpg
db7780e89ef95e7c39f7dfecc06806f5
cd31f2addb860a95c113c38b89ff2ff2f38a8b74
496 F20101219_AABWLM galluzzo_t_Page_142.txt
91cfe218cb616ee32b054f6236014dbf
ee2a9f64b2fa015cffb1f054c29142561d0fc5c4
F20101219_AABWKY galluzzo_t_Page_123.txt
c458667ea666fd502adfdebc4e9e21b8
37ef5c5644e7916343a1efa5d7a6de48a168378d
F20101219_AABVHW galluzzo_t_Page_149thm.jpg
a4f8e3900bcda1340efe1648dd54ceab
c576179f8b4abe864b0f97c5d9350e340b3e3e46
F20101219_AABVIK galluzzo_t_Page_099.tif
b9b77506b4c4ff4c7eef1b451d6c5adf
40a9c77cb230bdaac05c967d0c1aa9bb01fd886a
24836 F20101219_AABWMC galluzzo_t_Page_060.QC.jpg
39fa3a5647c6d63b2d8551b01c21945d
283770e1feb78fa1c9858313f90b306b78ceed14
553 F20101219_AABWLN galluzzo_t_Page_143.txt
8a2c3c4e46249f76924d1566e92a076d
5a43ac729263e589281bdc3dc9815158755e990b
F20101219_AABWKZ galluzzo_t_Page_124.txt
a1af0d4cce7c9aeaeaa078f260e3cbb3
2d61703bc03f8447ab1d5e354efcebb544f03807
36474 F20101219_AABVHX galluzzo_t_Page_135.jpg
f7a22765622dcceb7a4db9f8f95cb659
7b168e2d91e2da48e99e28362e5cc103cce6a1b5
46834 F20101219_AABVJA galluzzo_t_Page_016.pro
aa3b569e69cadb6f458bce1afe134358
371354de3ce3f71501259c6440d05b8a93e38a5a
56391 F20101219_AABVIL galluzzo_t_Page_117.pro
b4663e3675668dc44a19cc6d41b8e33f
1c7c4fb178a9d9af78fb08f51a830d614c29237c
3261 F20101219_AABWMD galluzzo_t_Page_142thm.jpg
15e5cae78bdd632dfc7fe6c0f40f9d47
a74ce1165f025d116584066ae58969f5c4eff74c
500 F20101219_AABWLO galluzzo_t_Page_144.txt
763e9d072697ddc8ea43012cb400a0b7
d567e34537c79e19bf1ac4b1e037a5d6c1501dcd
353116 F20101219_AABVJB galluzzo_t_Page_141.jp2
fe55d8c96ffb178c0955fbbb08f1fd5b
5c704d2c01f760ce64156e6228030068a154876e
2173 F20101219_AABVIM galluzzo_t_Page_021.txt
0c1216f9be10ec15fc46d1f44a7bacd6
01e38b505a3e67897497b3d0b576b5f2fda28ef7
3575 F20101219_AABVHY galluzzo_t_Page_143thm.jpg
11c7271ba9fd5220fe59cd1a308cb1df
1c1b6de047d644089fb6ef89117ee12857846bf0
767 F20101219_AABWLP galluzzo_t_Page_145.txt
4b65d178d745bcf32d5797514e334b74
dde5c516eca004e102cf386d8df8b2bf5f108412
40590 F20101219_AABVIN galluzzo_t_Page_130.pro
e1c317416f69f2e36ea4fb6aeaf59c56
586be50e4259b3086ef881e6beeef0e78b82df25
F20101219_AABVHZ galluzzo_t_Page_031.tif
67c1bbd717c2a6cfb59135ff4db70783
0f1e53b7337da074f426fd88d9078a8c4cc18130
24196 F20101219_AABWME galluzzo_t_Page_063.QC.jpg
fc7a5ec923619713ae6eb0d47f9bf06f
bdf8d173cf3ab9dd16b69e81dc7cf5ed06c9fc78
1936 F20101219_AABWLQ galluzzo_t_Page_148.txt
f75580cb120d3b691255c78b2194966c
7f26e32f0b83b239a5a9bf85672c8793f5590d07
72324 F20101219_AABVJC galluzzo_t_Page_115.jpg
2172cdcf02c6d87607ff8fe821366f66
ae12a475e7f20ae1fb69cd6335ec596d20547d73
52507 F20101219_AABVIO galluzzo_t_Page_110.pro
a39b0a21834b937624ac15db8643f56c
955507ce9cf78cfd74d71a3f2502361899b69d41
24369 F20101219_AABWMF galluzzo_t_Page_015.QC.jpg
ea8f92eb3c92899b0a122f357477398d
af9e4c8cb7418b93ce1219cb17bbddb875874d15
F20101219_AABWLR galluzzo_t_Page_149.txt
92063dc7b753baf2fd75c3af39862dd6
ed597422e134602f7b911337c6bd3e33f5d0c45e
116901 F20101219_AABVJD galluzzo_t_Page_119.jp2
e82b415b8e09325c520a0b7ce300d3aa
ae067e1efc9060944b518be99dd830044f2051d2
26247 F20101219_AABVIP galluzzo_t_Page_073.QC.jpg
6fc6804d3c6e45d43fd33fbad7cc8c60
ae481c1e48a392d8e7a684dc9097ffe56770c536
6839 F20101219_AABWMG galluzzo_t_Page_018thm.jpg
27e6746c0e02bfd62739b485ddb0b273
1a987289adbea801d93f4d09d8e58d6089d714b3
2271 F20101219_AABWLS galluzzo_t_Page_150.txt
2651fd758e5cd40d03bf70dd7908f842
6e453a23d8c5a6858dbd9e6bea06968aa3dfbd67
90981 F20101219_AABVJE galluzzo_t_Page_082.jp2
aea0c74b58502cce3824bbb1b20d1d4d
ece2aeb1506394800bdd315a1a327707d504ed85
40187 F20101219_AABVIQ galluzzo_t_Page_004.jpg
5155bc62185d912b7d9bb29b2236f019
20a75d0120202592a20f59aa86c718ef05d358b7
24027 F20101219_AABWMH galluzzo_t_Page_115.QC.jpg
1ef404070f8612516126bd4ed77085aa
f2c1eb21f1e6dc89e3e1bdac73ad49bd3db02bd1
1384 F20101219_AABWLT galluzzo_t_Page_151.txt
ce2f126e1b8eee2c0b9a7543cfe4dfe3
c6081defacc2b7373d95da63815e65161841f2f6
2160 F20101219_AABVJF galluzzo_t_Page_031.txt
1abf59a3466af52519d4fffc3ad23dec
ef087ccae2b29e563ffa71d2e414cfa1973d63e6
2153 F20101219_AABVIR galluzzo_t_Page_044.txt
5fa01ac30e10ed181f8e3fe3c955efb1
81b8e9ddd92b3ca664f188d84598d68d7e096888
24447 F20101219_AABWMI galluzzo_t_Page_113.QC.jpg
e7497cc0ebfe4cd726990db6d5d92d3a
73a2bfd7f98f91f96323e18f453fb284c53a6e40
3009 F20101219_AABWLU galluzzo_t_Page_154.txt
f626901d5eb8d8b8c8616f255b7c94aa
61f4bd638a9e90aef4aff9242bccb1e89390381b
9235 F20101219_AABVJG galluzzo_t_Page_137.QC.jpg
35e851e801b37163222a690e6d60059e
01deb627a91597ea0428cabf47ba1759bf185c80
F20101219_AABVIS galluzzo_t_Page_157.tif
6a317433a653e1437660c36abbf41473
660e5aa53b859f51ca11c547288eafa93ca2f901
2783 F20101219_AABWMJ galluzzo_t_Page_107thm.jpg
f7b15c433cb340dabe4772e834897f6d
65816aad41e2c85e88735625f0e4a783c7f64622
2845 F20101219_AABWLV galluzzo_t_Page_155.txt
9c21750636d23a7cd8884cfe7f32de78
0e6dc4f922f88df21b373a33f5908ac65e8eaec5
49451 F20101219_AABVJH galluzzo_t_Page_059.pro
09da3e500fd2f91c6aa64a8919f1c3ed
bc183e911f89f54d89e200a540c33a73f2f95309
3224 F20101219_AABVIT galluzzo_t_Page_137thm.jpg
821932a0b1c5d709078997ee66aa2807
a080aff5ec5a7ec5e12784fd2aa817667e91e2c8
6786 F20101219_AABWMK galluzzo_t_Page_042thm.jpg
4b40632692c95c9f9f374eb6ac28f44d
fea5326f0559e967f7a684e5c000e81fd5b808ba
2712 F20101219_AABWLW galluzzo_t_Page_156.txt
e709b2b4779aa06ff9604a8d86ac42a5
ac90a9aa6ebb40ccb28b5d1ee0c4b634bba147e9
9403 F20101219_AABVJI galluzzo_t_Page_146.pro
51cd6964213104c0ffedda53ea102fd6
a6dd8c3b936f1ca24a3c2020b77e8515ed3a739d
28262 F20101219_AABVIU galluzzo_t_Page_105.jpg
8cf0df45bd0003817a2c087b1cd74598
2d95f1bc6d8418e415bd5a16dad5ead7944b4c91
4430 F20101219_AABWNA galluzzo_t_Page_103thm.jpg
948c2ad63a2b04b64bcf6105562558ca
e42cec78c7ea9b549b7afeffb85dc2cf90273efc
5441 F20101219_AABWML galluzzo_t_Page_010thm.jpg
cacf34376b2dd0a6e4d4237916c45010
b6c972c51b6cf1a70bd28bf4d9aa992efec8399e
489 F20101219_AABWLX galluzzo_t_Page_157.txt
81c4020422737a1bc588e54d26a96824
827af96ab6158778f49b42d5239fca7b95aea31c
74431 F20101219_AABVJJ galluzzo_t_Page_070.jpg
0fbe736a115570c3ed36161d4840be03
aa3771de67d630118cc7fbcd86e9a2728d31561f
39365 F20101219_AABVIV galluzzo_t_Page_083.pro
a76f2bcde6972190d4e1bf3ed774a75a
c72b77a8139e09df03a4cfb28ed5d55cea77e0b7
2323 F20101219_AABWNB galluzzo_t_Page_001thm.jpg
f72d8e7104ab56ba377a51f4421a31af
adbce2cfe6e7d1f35d0b535c678e66356a44bf1c
5986 F20101219_AABWMM galluzzo_t_Page_055thm.jpg
c5b17d931726d9345295a14debd41cd2
5d19ae08697cb78d4ff23d7e2fec56ee6313f2ff
999648 F20101219_AABWLY galluzzo_t.pdf
c2b0e4a95ffb3f763afb99a6add90332
d246b70118524e600fa236a11f8f71beb01dccbf
F20101219_AABVJK galluzzo_t_Page_050.jpg
614017d8ab0e88ebb594436aab4c0e93
0e179e0dc9952c10c19d161b154e54ec50491838
7377 F20101219_AABVIW galluzzo_t_Page_154thm.jpg
a31bacc779287471227ce00f047f78c1
214ce76cf248a96c787822389fe547e929db9816
15404 F20101219_AABWNC galluzzo_t_Page_131.QC.jpg
f2c3d8791971cc3ab138c833e6046340
231a016c914dbb3507b0c1da2e5baefecbba82ca
20628 F20101219_AABWMN galluzzo_t_Page_079.QC.jpg
b56b99ac6a2fdcf559ef1861818f91b0
f0a61f5e1d91a6f71efb094e4dcb8af0bc2d5166
25204 F20101219_AABWLZ galluzzo_t_Page_094.QC.jpg
406380facc3f74a02d21b33b20276ca8
9cbdce661cc5f32d0a39a4456f95236d8d988fa7
11150 F20101219_AABVJL galluzzo_t_Page_141.QC.jpg
4627919c2278e2cb80e0a79d607deb60
d3fc181b8e450120f1ca83767d0eb57d16bc4b78
21726 F20101219_AABVIX galluzzo_t_Page_030.QC.jpg
7f84fc09ab4a7a83edc265c8f53acac9
d4d050431e5683c3857b90215034bb318cd939a7
76986 F20101219_AABVKA galluzzo_t_Page_124.jpg
2b171d25c42cbab3f738b48ac59b589c
5d55847a657e1de8e13c44bb810e004b51cf6bef
7650 F20101219_AABWND galluzzo_t_Page_153thm.jpg
023e9a35c3c16d0d0108fe8b109d7aa3
6744bfe618e396e28449bd6b42c1320ad68a4522
6678 F20101219_AABWMO galluzzo_t_Page_036thm.jpg
12ea8cd9a3bd3e229816d58919c81790
acb4f9845e2ff88b9c62f1fedbe5e9bf6fc69c23
28508 F20101219_AABVJM galluzzo_t_Page_109.jpg
68807caedb1eff498731c429e72dd2eb
716cd8f7dbc2f940ff637cbb594ef85b6c485be1
F20101219_AABVIY galluzzo_t_Page_078.tif
82d7444f71f87f9c7917fec006241d47
14ae89ce9ef67a2c1eab610fbc81c8bfe927e4b9
65109 F20101219_AABVKB galluzzo_t_Page_038.jpg
c1c3509bda98df28da9890d40cc9f539
daafd2e9a39d6edb8764de11d2d43fab5d2249d5
7010 F20101219_AABWNE galluzzo_t_Page_119thm.jpg
9bf17c52f1f25341c4c54eddf6e9d419
fd950bb6699b2d7c61ec6e00749199f106f6e330
20980 F20101219_AABWMP galluzzo_t_Page_005.QC.jpg
5397e875f5af53bba69f613535541c3d
42e4eca1794ee7269a1f70f4034d5f6fe7579875
11582 F20101219_AABVJN galluzzo_t_Page_105.pro
0f741dd66ddbf433f16bd7d8bcf02e09
0e01d7017cefea891b958cc1626b463d2b14474d
2238 F20101219_AABVIZ galluzzo_t_Page_120.txt
367e39b1ef97b69ea902605829c1e5eb
5e43908ae27af81032dd706a8fba1fbb0794d23f
52969 F20101219_AABVKC galluzzo_t_Page_042.pro
d68c3d519731bf2c1686ec6db2a8b66a
15e781351ae50790f3a4fd08a445be688e7cbe50
6723 F20101219_AABWMQ galluzzo_t_Page_060thm.jpg
9cba8cf04610efed6f71c2dc3a863fd8
d29832fc0993d183d567c994641856e14afb892b
F20101219_AABVJO galluzzo_t_Page_138.tif
bc2e571d18f099bc6c739311707e96f5
b91c6009456d451a08fa5d9aeb8def904b5e8e4a
25229 F20101219_AABWNF galluzzo_t_Page_018.QC.jpg
93efa67cd9426a3462b68d6cf69fdd25
f6e27ce6fc2a8bcce7c5c097815a4f950858f416
6896 F20101219_AABWMR galluzzo_t_Page_085thm.jpg
3b2e0a0cb85ee6970c50404e5c3383bd
85036ae5034d0d4a118b4788f72bddec48b711d1
F20101219_AABVJP galluzzo_t_Page_095.tif
31a87739c619beb22cf3965383add928
5e18f2ccb58ff3ea76bd117027623dcf2f8a15a3
1967 F20101219_AABVKD galluzzo_t_Page_116.txt
c9538c47a2ef46f7463248d953699cfc
e74904a804461691b74a7fb87a7437f054550fc8
25219 F20101219_AABWNG galluzzo_t_Page_112.QC.jpg
4ed4a9ed93177b8d9654250ebe96c55a
8823ed7695706f9c5ee7a08012ed76d3d0f4ee1a
6692 F20101219_AABWMS galluzzo_t_Page_051thm.jpg
486631017dc0b3952765ca95a12f2fc2
523b2278a8950377feadba2cb757956139222340
1768 F20101219_AABVJQ galluzzo_t_Page_038.txt
72d5ec210334377d31179429f7733720
529db58c7fc7f3468069aa6a867cacc546eead03
24014 F20101219_AABVKE galluzzo_t_Page_028.QC.jpg
ed0e4c14e9ced0eb69044f9d7d2b031a
c1408bb11f4b4cbf79fec56088b7502001caac0b
7169 F20101219_AABWNH galluzzo_t_Page_088thm.jpg
5f1eaa0ba68fe586a7602aa47a697261
80b463d3de3a6c98c0deec1a06bc74f812307e60
24900 F20101219_AABWMT galluzzo_t_Page_076.QC.jpg
726f08476dd1d85d179a98b2aabcda8c
4fb8310c50534de63c86a7c5c60fcfb785fb4425
F20101219_AABVJR galluzzo_t_Page_062.txt
d9eda3ed2ae6ad877fdd77e31fadf655
ed5a1bc12c8df6589be8edd0d7b21aa621729cff
6996 F20101219_AABVKF galluzzo_t_Page_120thm.jpg
cbe407d6a419fa8958993909fd941d65
8b50f393989690f88e1c76ea4417b80953584ed2
6261 F20101219_AABWNI galluzzo_t_Page_056thm.jpg
c6056546a9c580c895ced8c72d30d75a
16f914899fe5b65f0c381dc6fe2320bae806dcf6
23207 F20101219_AABWMU galluzzo_t_Page_034.QC.jpg
9fc81baf796f1b1e93fffae056d8c306
3f99c33e6e96c39bb1dc865a273633fc638ce3c1
2021 F20101219_AABVJS galluzzo_t_Page_012.txt
49dce049c9987c0a4a77e3b68992e5f8
6e8afcdad462d0a9cfea294a174ea201528bc59f
25688 F20101219_AABVKG galluzzo_t_Page_084.QC.jpg
bba353040c9b7d6832cc5933fd71ea1f
78d5220f4b8ea01ebd755edf7d91e9a3bf29401b
20028 F20101219_AABWNJ galluzzo_t_Page_098.QC.jpg
ebacb8ec11893ca3d4f6409c7401aa29
8ad7c49b8c2ac8f46b82c4ed1ed2cb6c44b45b1d
7238 F20101219_AABWMV galluzzo_t_Page_155thm.jpg
4dc9cb4ee84d072df54cf8d26d19d204
015b4cbcda2a9f7345e75af7bbf452106b91d4a8
6854 F20101219_AABVJT galluzzo_t_Page_033thm.jpg
7e2d4b211b723f0bc8c4b736fb81e02b
92b25627a687fee96fa2675cd60840f0c1f07ad2
2026 F20101219_AABVKH galluzzo_t_Page_089.txt
1802723e3b3180355a4c706b1291f70b
a03c3a27d63701a389a17fdd3ed68538bb047953
11027 F20101219_AABWNK galluzzo_t_Page_136.QC.jpg
a1e8c5e88bde9504a424e201c5aa6134
6897e024e7fd066bff0d4d3be72e11305b250a53
23842 F20101219_AABWMW galluzzo_t_Page_037.QC.jpg
1d832d925391e05df806798484217d47
e037d992d268c49948378577ab5525f93cfe1eab
27922 F20101219_AABVJU galluzzo_t_Page_155.QC.jpg
6e3ebf81e294e05cbac9b790a226aa0c
a4abfdab04a18aabdf0890ad1398ff52823aad2e
11990 F20101219_AABVKI galluzzo_t_Page_143.pro
7042fc481ec258354b4142f70f58a0c8
0541a5309c6c248ea14a549087bdbd6282fa3ed6
7007 F20101219_AABWOA galluzzo_t_Page_025thm.jpg
357f425b93f1665e57caefd23b046e41
07cb03579f5038755b2138e74c254772cef61ca7
26445 F20101219_AABWNL galluzzo_t_Page_100.QC.jpg
4beffb7a9677b709fdcde3b815f5b013
a16d883808c9bd943c6d20f324a892a768c8fb98
7138 F20101219_AABWMX galluzzo_t_Page_084thm.jpg
59fc840d8d90cfafb2b066815c49e92a
a71615eafa198d6292662f2c3460a99ae7684997
20798 F20101219_AABVJV galluzzo_t_Page_009.jpg
49d1622769280d9a3c25eb50b39d9c65
69b375f57670abe6e3244f6c3fdc657ffcda6ca5
115222 F20101219_AABVKJ galluzzo_t_Page_026.jp2
5ed15ec0dc33e7c3c525eda6a5fe9005
90496d7bf5476223656a6c8606e91a211a344fd2
16837 F20101219_AABWOB galluzzo_t_Page_066.QC.jpg
ebdfcc0636cf958b2839b82a5b5f349d
30836a515788885f0f6d783c137ddcc1713b4d61
5119 F20101219_AABWNM galluzzo_t_Page_040thm.jpg
e971005e05ac83d350c3a7007262b234
ff40e2ff8c8e4451eb1d0f27d8beb7b7a4394c73
6841 F20101219_AABWMY galluzzo_t_Page_090thm.jpg
97b2355aaad1b76b4d191cf85a0965e9
58c5e74a7cb55935e9563917bf6f46cf2a6ac83b
1676 F20101219_AABVJW galluzzo_t_Page_129.txt
ae5ddcd668543bc0d72057e20cd5a7e2
68905753c7aa8086a01511b6ddc2caf288b5ebe2
3096 F20101219_AABVKK galluzzo_t_Page_153.txt
2b0ae4e36c3f91637d6f57a9526ff189
e94cfbe910cc69c68d8828511fcfe5d7df2fd794
14261 F20101219_AABWOC galluzzo_t_Page_106.QC.jpg
30f79cf6962d680c0078cfca77506412
9e8d05e5a03a1cc88caba5fefea2a8df1d95e649
1824 F20101219_AABWNN galluzzo_t_Page_003thm.jpg
d4c6cd96bb71b1db2a989d6a406d0398
3aa507cdf8abc59a906748658712dc482e67d87a
23760 F20101219_AABWMZ galluzzo_t_Page_089.QC.jpg
ad761ce02bb798bab928ef542e2cbae8
de154b05f3c015ce76dc1b55294e73d97ebdc869
6728 F20101219_AABVJX galluzzo_t_Page_034thm.jpg
abafa33f5bb1d2aef79ea7d1701cc78a
46ba035720947f9cc74639eb03bf05cce7aa4532
F20101219_AABVLA galluzzo_t_Page_102.tif
bce8073002c015a53f6366fa05f4cd0b
7a4c269aa5a607a86da6328247acf1aa93307853
54022 F20101219_AABVKL galluzzo_t_Page_035.pro
1a5f81b1beff1577343e094633554a9c
1130d89f81a94159ee5b5d3703fc2a0c5350488b
6865 F20101219_AABWOD galluzzo_t_Page_126thm.jpg
ba7fa8ffe0b118750912bffb0feb6a5f
0e1545a2457585a624d2c0441b9511b62c5d7646
9601 F20101219_AABWNO galluzzo_t_Page_142.QC.jpg
03b9c417cb0385804c8eecccac4de201
4693f28aac729e38a9da0f4b5247b81c8e4e5f13
2491 F20101219_AABVJY galluzzo_t_Page_008.txt
7289b2f990680c2d0d6ba4ea7e8f459a
12bc4344ff0b60e692ad69c32d22e94770464fc8
1958 F20101219_AABVLB galluzzo_t_Page_052.txt
1266a8f3a3c6ceb2e941409bcb6856aa
afd6643dc3948b2408e59a1e1642e1b4f67e9908
F20101219_AABVKM galluzzo_t_Page_091.tif
1f8a44f43c2924b8222214d02b919a41
3d51b63ad5027ca0bec1522ebb8c4df2414ee57b
6435 F20101219_AABWOE galluzzo_t_Page_116thm.jpg
5c1124e0c8c680a20615e8925e146301
e3e9e6cf7a98768a93e93376a67fd611f5bcbaf0
21820 F20101219_AABWNP galluzzo_t_Page_053.QC.jpg
6bb27a32ae5fbfe8414226c466b204cf
36a6e1c5479c7e0b5d615c6f597f82d611758199
F20101219_AABVJZ galluzzo_t_Page_029.tif
88321c6bff6c2794b9e94368180a1dad
ac725b1397877327d592a368d47fe3df57ca7d44
2180 F20101219_AABVLC galluzzo_t_Page_054.txt
f8b44090dc562c64b0bb327c635bb7a9
8a10a3c461a87bff9c6ac72d33b139b670a38954
7090 F20101219_AABVKN galluzzo_t_Page_099thm.jpg
8626f91f7a8ee11e04e48c3edfedda94
9da3242fc84c447836b8e1a8d5ba668cc5cf185e
1388 F20101219_AABWOF galluzzo_t_Page_002thm.jpg
01e9f69482e449e919a1530cf37ffb91
5671e71b002e9d8372686554cc271f7ded5acdbe
5063 F20101219_AABWNQ galluzzo_t_Page_147thm.jpg
2f1a36b08025bc3950d3c35794ccc45d
c50e4b196e8455734bcba9f2fbb48901f80822e9
1992 F20101219_AABVLD galluzzo_t_Page_051.txt
3888eed7909d78d9842b7edffba6255f
2279fe6a0f3dcd43801466abade9897fd7d0e984
F20101219_AABVKO galluzzo_t_Page_115.tif
920a1f3cf3a7dcb20f618322749ea541
0a2a09764a3c8364860e23b071ed7e0d0d5e5bd2
25093 F20101219_AABWNR galluzzo_t_Page_126.QC.jpg
df4cd46b4c31cbd553b911e43c9d1002
20e0c15e53cf378e9de294c885a07eaaa28e6006
F20101219_AABVKP galluzzo_t_Page_149.tif
c2fafb81448ab16b20bd51b0e7999cd6
33acf0a7d6c22a558451f0cb6e27ed9abfb7b68c
6887 F20101219_AABWOG galluzzo_t_Page_021thm.jpg
9097f42e7f78548c38dac55aa591eb30
824281b1af27c3418cfbdaaf6ebbeb10a4a347d5
13572 F20101219_AABWNS galluzzo_t_Page_064.QC.jpg
48a4ced9c7d96d227712cb631d07ab65
baf0d8dfa8fc19c8e060dd2a948a1cd81af09950
6693 F20101219_AABVLE galluzzo_t_Page_093thm.jpg
9caa98105a382e93f7f441a83d51f379
e1db39ea35a12eff241e566700a4f99588510474
588 F20101219_AABVKQ galluzzo_t_Page_135.txt
842d486f6619502ba9df388bf21a447a
c609c26f5f260baadefa9e744d63cbbd8a07163a
26382 F20101219_AABWOH galluzzo_t_Page_091.QC.jpg
5ba660fc9cb2364f8b9883922b8c9bc2
88bcfb6ca962603e09ac7e002ad384b17d9e3061
6296 F20101219_AABWNT galluzzo_t_Page_053thm.jpg
47c9b321065dda339af00b82edacf82a
24c7f83f030262d07373027b95fb77858e4d98d6
222 F20101219_AABVLF galluzzo_t_Page_108.txt
2f816b37cafc4f5f0736a54b56089615
11f6d230f7c7b7889933743a0cc626f3a646f32e
3393 F20101219_AABVKR galluzzo_t_Page_139thm.jpg
193bad2d34d22b4e51a9a5f0a16ba35c
4307dc7a0dd7ccb4d9ca30ac81397e68e42a1b8f
6075 F20101219_AABWOI galluzzo_t_Page_016thm.jpg
c449013d4fdda8d0db7b008cd5282e88
c3429453d3bfe793c49500e90e46abf0f5167e2a
8933 F20101219_AABWNU galluzzo_t_Page_109.QC.jpg
7369284f9112d2dbd786213f54d85002
12a6c7f77e0a2e44ae80f0839167abfa5becf075
25935 F20101219_AABVLG galluzzo_t_Page_120.QC.jpg
c95a07a709a9a9294401faf80c6207a8
4348702c30231a467020933cf290cb78b20b7d07
23835 F20101219_AABVKS galluzzo_t_Page_012.QC.jpg
ac17fe1c348b83e6ac304e8436b9cef9
42b033b46b506835807a24d939fc8c1665036152
22676 F20101219_AABWOJ galluzzo_t_Page_008.QC.jpg
6e28ad07fca1c6b6d32d75fea643f4b1
406781bc51f056f3cfe2d3feff1b546710dbf231
5128 F20101219_AABWNV galluzzo_t_Page_058thm.jpg
50211e0e3bb4a9399f39701ef7925a83
3bec4695dd01d648b23c2a12c649d8b740ea71a5
6547 F20101219_AABVLH galluzzo_t_Page_086thm.jpg
d397cdc9828da7fb6f96215a545c62d3
cd96b9f02bae490275047fdfce359d4f9e0194a3
F20101219_AABVKT galluzzo_t_Page_057.tif
7085e50e38896cf8ae0f7cd8bcca6d65
7b3176632b310313c7ffe125fd737eeb69a8fbda
6703 F20101219_AABWOK galluzzo_t_Page_046thm.jpg
cdb96f0932dd549e5eeb3754fc8407a6
29baebf1351060489302508301dd40b3a5e107d1
17622 F20101219_AABWNW galluzzo_t_Page_151.QC.jpg
5239bbf7a0827169636dbfdc12723028
7ae8be993d9bf7d76fc6f8748505bf12465f7e8d
F20101219_AABVLI galluzzo_t_Page_122.txt
563d702b50ea0f5af21258f320b3202d
bd593e0a4047f3ef08b7cc941a67383339d79ef0
6759 F20101219_AABVKU galluzzo_t_Page_044thm.jpg
b176040ef138e00defb3af6b374d0c98
a680361fbc8ae24053999e71031c94efc16faa81
6612 F20101219_AABWPA galluzzo_t_Page_011thm.jpg
0f2d78d2b3472e5f7b8dcad922dec427
d70c0dab6cba190beb62683f42bc1c275d7d83e8
6810 F20101219_AABWOL galluzzo_t_Page_015thm.jpg
e607f8a7d9fd2ec00771e7fb62b4dc71
bea3b29aa5181ab37cb76584d52a52128d2b219b
24204 F20101219_AABWNX galluzzo_t_Page_039.QC.jpg
975146ce0a55f57a2de01269f774cf17
c07e4f413899d24891490f9606cb9bf81bd71cb8
103497 F20101219_AABVLJ galluzzo_t_Page_148.jp2
ebde820236879d8df8716f806e1a7647
7735596a15fdbfabb92ad9772dcd3685849c9d92
69649 F20101219_AABVKV galluzzo_t_Page_036.jpg
80c47be55d4d3f74f776d8c3ef049220
468319aacb8d63d04d0dfa961a0038433f567276
24200 F20101219_AABWPB galluzzo_t_Page_013.QC.jpg
87da053015d5b1b22d5be7691ac05cce
33f97633d8b34e1b7e1a0cac08529ccbaa2b8765
2405 F20101219_AABWOM galluzzo_t_Page_157thm.jpg
7c695ffbb1c32a88ee6a15e450312fc8
f66ddfe2f64dce3192190b2e9fb49daa1a4ab462
5278 F20101219_AABWNY galluzzo_t_Page_130thm.jpg
da5484240f5a73aa11806c2c54343102
113243fc0b09dd5697453c5fe1a2d5f9e48d7e22
5788 F20101219_AABVLK galluzzo_t_Page_041thm.jpg
95e5d35505fdb3e21069eecefd1f8387
9fac435f3abc50eae746d6065a7bea43f849f05a
68839 F20101219_AABVKW galluzzo_t_Page_154.pro
42b47eaa29ba1791b08ee67485622177
117e507fd735a1670a9c7a88a66d168bed421c81
6523 F20101219_AABWPC galluzzo_t_Page_013thm.jpg
48776d4a74031c4042e99c2cf559d0b1
4f637deb656aaa37ccf3f78aaa81ec1fd4bf2c45
236589 F20101219_AABWON UFE0017421_00001.xml
f394b9155551de93f420ed06ff297e3b
df6ddf0b2251c6b3c8f2444b540ad3c465091fb4
3992 F20101219_AABWNZ galluzzo_t_Page_108thm.jpg
b5cc342a7973d9e042eb3924d6ba95c8
1e168031b17f77abf5f2c8a006632959c10ee3de
2103 F20101219_AABVMA galluzzo_t_Page_097.txt
94fe469ec5f8bef8a9c132e04455bf7b
2c9a441c45f36857a9c4844d95d3f85382f20dbe
F20101219_AABVLL galluzzo_t_Page_013.tif
5f13ddffe589abdfa26620262f67c49e
939ccbe5ce73303c23efa3eafd673656e2d005e6
64874 F20101219_AABVKX galluzzo_t_Page_030.jpg
366579c9c187350b4f77a956f37e4df6
621ba6677b065a39d677ae0fd308c22d722faf58
24835 F20101219_AABWPD galluzzo_t_Page_014.QC.jpg
5e174ff9c07005e5040a97936f05bf38
423bda1adfe290209c1bccc6b40e6421e50ee5ca
7116 F20101219_AABWOO galluzzo_t_Page_001.QC.jpg
e228719e535528812b980a5190b8f316
ecf479ba15e3441402507d208a43ab711ce68e18
F20101219_AABVMB galluzzo_t_Page_072.tif
96c4cec071c3f063bf85aedc928433f1
d90fd9dbafb090fa289f8d82560640ee97772f36
11543 F20101219_AABVLM galluzzo_t_Page_067.QC.jpg
1e094c0c19ebf3ce29e84944dae34f2c
0823d18975e18b4fcace98e15d9aaa8b7730cc0b
6795 F20101219_AABVKY galluzzo_t_Page_012thm.jpg
02a6a0d025ec8396df628123a0609cd4
dd98d0cd6ddb5790329c62a8714af3a7d6338126
6599 F20101219_AABWPE galluzzo_t_Page_014thm.jpg
0ab0bff9375412727ddae2ad303cb1f7
eb15ecbab3226ee75fe27a6fc4a6bc6748595d62
3357 F20101219_AABWOP galluzzo_t_Page_002.QC.jpg
314b739fd4c3ecf6267b017048d1748b
195034b1d0dece4c5c48e5bf15c133c712c6f5c3
6078 F20101219_AABVMC galluzzo_t_Page_038thm.jpg
c5c2d899ddefb19aa00f684121aaf8c9
e5a9453f8881739bb10fd60862a67909d6299d94
138295 F20101219_AABVLN galluzzo_t_Page_156.jp2
4f4ba8f953857b1e8bf6f8f96b26c173
6981736d44054ef933daf8e0f3a4190205bef230
118327 F20101219_AABVKZ galluzzo_t_Page_027.jp2
26b69c2710a5121ecb6a5538ce640ba7
e31b2e3247980ea63d5c56141291ed037b4ca885
22738 F20101219_AABWPF galluzzo_t_Page_016.QC.jpg
80e901b3d86c1d1225395757fa925c1d
569c7286d93ac34af20157f33fad1bfe200424f2
4565 F20101219_AABWOQ galluzzo_t_Page_003.QC.jpg
5b2907fe1071aad7318e301ee744c226
07e301127eafc70258f8a485a05e2b35469120ce
49112 F20101219_AABVMD galluzzo_t_Page_052.pro
8554a9e7ef1d01b434e9c28c6c955049
0c177196c78530fe9a4a2ebe86fddff3ab7e6445
96075 F20101219_AABVLO galluzzo_t_Page_038.jp2
00823005582ec80cedf2304540406b96
899f416c0b05268f031fc892ecb6e4e6936ab5ae
23609 F20101219_AABWPG galluzzo_t_Page_017.QC.jpg
c7ae0b658d357470aa4d6d93ab40a57c
b4a74e96371ed65c5686e347d01a6a430dcfb5c7
12791 F20101219_AABWOR galluzzo_t_Page_004.QC.jpg
2e7a0234c902fa12e7e3e1aa52d9ddc4
c8b22cf85f61ffd15963200829d34c3d96e1bdec
99234 F20101219_AABVME galluzzo_t_Page_154.jpg
3d1f8b56cb7f9395934a97d7821e21eb
308ba71326d20e83e83bac9ba03b0abf66c652a7
3398 F20101219_AABVLP galluzzo_t_Page_133thm.jpg
e614575f8b84e47bcf772769b9b30c3d
c033e004db61076df321c835f967a917ca1a7653
3893 F20101219_AABWOS galluzzo_t_Page_004thm.jpg
2bd60861c5739abb3cacee25d91d8e7c
6068b6d09f9b335196e155aeac773bcb19f711ba
116391 F20101219_AABVLQ galluzzo_t_Page_117.jp2
b51b37793071219fb2d8229a0835b0b4
821ba96939de1bee2b4998bd312f02bd71bac87c
6560 F20101219_AABWPH galluzzo_t_Page_017thm.jpg
42fd33f949195194f589cb93e9462403
ce6321f2172c33503ccfbe58a0aee71d07d5bed0
5256 F20101219_AABWOT galluzzo_t_Page_005thm.jpg
ad04049c653c3afc10616ea0758b0c71
e04c106d19b1bd62ae1d2edadd1ce47d5f01b4e4
114924 F20101219_AABVMF galluzzo_t_Page_033.jp2
7fb93a71f066e2a5eb87d4e8b0387b7f
0760809e8db2a358d275a9a916a24d90bc2897f3
376714 F20101219_AABVLR galluzzo_t_Page_135.jp2
a3e5140324759d585e2e921c0e1e0747
441eb5531a3f459945dbcb48acf8142121567e89
7588 F20101219_AABWPI galluzzo_t_Page_019.QC.jpg
3d21b71d0c766ccd079edb61ea461411
92bc853e9e7ea25401464a01bf885a85c354c0ba
7252 F20101219_AABWOU galluzzo_t_Page_007.QC.jpg
92724b18878e462e115956edc8bc2114
5080fabbfe07583138208333cd491acbb878cf1d
3588 F20101219_AABVMG galluzzo_t_Page_067thm.jpg
fce7789d91c8cbf0cd16d29c13c9571b
30d44118158b0c0493aa45f7042f88f722462633
72884 F20101219_AABVLS galluzzo_t_Page_081.jpg
da6f4073378b4a9fe34117b40d48287b
12f6c38f0a917b779db1f299743d4ca75c159c67
2440 F20101219_AABWPJ galluzzo_t_Page_019thm.jpg
595040e7e10f47965da79404fe3a6075
1d7656c68f83303f6d98f569b971b5a6f27184cf
2357 F20101219_AABWOV galluzzo_t_Page_007thm.jpg
bcaa1d50f241675e24a5b9ab3229e03e
ac7ac29303c6a25e690965a9e5d28fe735c37e3c
1471 F20101219_AABVMH galluzzo_t_Page_045.txt
1d8b5c3bc98caccf0dca928c7196d885
235723ff5785c0ebb03508fa8f0296fe1c39e122
68407 F20101219_AABVLT galluzzo_t_Page_056.jpg
832b1764618184511d6a7654c50e544f
faca1ef082064e89107041d605f4ab8985518871
14731 F20101219_AABWPK galluzzo_t_Page_020.QC.jpg
c066b6785c1cdf870380d9391874beae
66141a5f2cb2137c6c6954012971e4d028def61b
5702 F20101219_AABWOW galluzzo_t_Page_008thm.jpg
25950e62aaf4c5a0ee124dbd210a5d46
74a834a7b8e9ad17fb9b7085dd8899b645add422
F20101219_AABVMI galluzzo_t_Page_083.tif
389b33bff6cc10b305c1eeb2bf109418
4a0494abdf091facd09cea932784b8d9fa46d813
F20101219_AABVLU galluzzo_t_Page_041.tif
fe2eb41e4b28bd94294c524c88d6737e
a632fae991a106cbc4d2924eb56c23efa4e9afd8
6828 F20101219_AABWQA galluzzo_t_Page_031thm.jpg
f0f649bbcfeaa28f1f1d8546df1f6e1e
4da1ca7fb680d56ccee96054646eca08ef2b0c88
4588 F20101219_AABWPL galluzzo_t_Page_020thm.jpg
e6dd3bbedfb04c150299d5284c398c60
4373fa65d90983eae56e632936bf46e8a8cc1adb
6393 F20101219_AABWOX galluzzo_t_Page_009.QC.jpg
20fc3b922d0b1350ebb3ad3554ca4583
0d66b4db069341d19697829573f0d7011b259e7d
359505 F20101219_AABVMJ galluzzo_t_Page_140.jp2
04cf25a7a403831f5356dc03ff315d58
adfd77ee879b850abf31b619da51e066f731a5f0
34877 F20101219_AABVLV galluzzo_t_Page_050.pro
0c6de7c5c62b4d920b41eef27ec176e5
d8eac48d2b4fa00c0cdccbdf7f8f56e319018507
25372 F20101219_AABWQB galluzzo_t_Page_032.QC.jpg
80667d2fd1d368d1dab3330de94bc712
e1a0abc19992419ea5be77b93c62bf7b7c2eebe5
24895 F20101219_AABWPM galluzzo_t_Page_021.QC.jpg
cd6e646a26702c0fd0d0dd2f62f406a5
d8df31d51b5e18600993fdb94e89c90544b7248a
F20101219_AABWOY galluzzo_t_Page_009thm.jpg
fc1f7129146093495f1f3c7423099e84
f88fa0f471441d22b9a5e2e58b82012f04a4e970
F20101219_AABVMK galluzzo_t_Page_130.tif
d22d00ef84960476e2d7c79faa982d18
ee51fa947d0f4656a2d03a865e25841c91d4fc09
1904 F20101219_AABVLW galluzzo_t_Page_082.txt
1c9cedcd7f1fd560439396e94696822b
56d458abaf414ee4fc7b9b97a89d9006ea884291
6883 F20101219_AABWQC galluzzo_t_Page_032thm.jpg
0be6373e63d8a78d742e961bda97c940
b0c6ac6e11d44a3ebadfeaedeae3cc79fe24bf36
24594 F20101219_AABWPN galluzzo_t_Page_022.QC.jpg
6fc1a976d3d3a74d1ff16b6669a4e088
bc2ce8ebc484373c48e67cdd848131fba64994f3
18526 F20101219_AABWOZ galluzzo_t_Page_010.QC.jpg
92d52323d8c536637cc055116f628e79
d9040257f4ced29492dd0d4b6a580e40fa5bb425
6875 F20101219_AABVML galluzzo_t_Page_123thm.jpg
b3bfe291181be764ba01d770416f4b95
fa8941e8ceee12ce73d24b08ae6a4eac6d99a6bb
23731 F20101219_AABVLX galluzzo_t_Page_102.jpg
ea5ce83052e9933c5c52003ef891f3e2
7766a0c80bd0d9e72b20d62a017aa8eb1f50f3f2
6578 F20101219_AABVNA galluzzo_t_Page_111thm.jpg
a63c6b0a55b6040a5593139928bded4d
ff9b2be34fa8601376d893fccf34225371faf6d5
24704 F20101219_AABWQD galluzzo_t_Page_033.QC.jpg
5ed15d07979b5adb6118e960844d1d27
f3ab1118874244c8e7b4b065fa24ab821cff5389
6766 F20101219_AABWPO galluzzo_t_Page_022thm.jpg
b55e76dc65a428a85bbea34d859ff992
dce7dcb65e3b8e86e926faf31635e8476143b279
116219 F20101219_AABVMM galluzzo_t_Page_035.jp2
bdc872a27003e94add120ced16636753
1edb2431280819a4e47ba6629a673ebbec9cc046
26564 F20101219_AABVLY galluzzo_t_Page_054.QC.jpg
d8a625118ac6615acd607afefb16e7c4
5ae1ed277ca3872debeea31ce4acf8c29cf390bd
5046 F20101219_AABVNB galluzzo_t_Page_129thm.jpg
85958d95ee939bf5a267f927c3caf959
7b38c7215db8bd0b4167a7da56dde3dc70c3e9bc
25014 F20101219_AABWQE galluzzo_t_Page_035.QC.jpg
9dcc006e5d27bb39d1b7c4c05b6bc262
6ac9dfbe501bccf0264e2b970eb4a62c1d83e052
26569 F20101219_AABWPP galluzzo_t_Page_023.QC.jpg
c9817849aea064f78209fc9d0aeb10ee
4377d16a92692f5c2ec35266c62414904d4ddda1
104015 F20101219_AABVMN galluzzo_t_Page_043.jp2
40be80599fdeabe563a7a87284e6d103
34ab251ef0b7c591ac8a1d0292f10f0a9cf62fce
121001 F20101219_AABVLZ galluzzo_t_Page_088.jp2
9c78d9fb48a7367d2d4c044c5194e85f
a14322dc04750afaa6aa2234a467549ea7dc8ad2
F20101219_AABVNC galluzzo_t_Page_156.tif
db3e349eec0ee2f2e5463e54a022f6e5
76cdceef522086fd4e95dac13f249b7ea1117dee
6677 F20101219_AABWQF galluzzo_t_Page_037thm.jpg
ec51c697fe9725ea73359954b8a4549b
28c78b047f87033690cd288d264aba8d265fd042
7128 F20101219_AABWPQ galluzzo_t_Page_023thm.jpg
dec38d41faeb856288d674e05c0c02c9
3bdb00af6c973f4f4062f3cf8cd4bb7895cfa9b2
2720 F20101219_AABVMO galluzzo_t_Page_152.txt
21a119d42ec08ef472f51e9bbe349c89
cb4c60453d6757bcf06a96545cab53804c7f94e7
F20101219_AABVND galluzzo_t_Page_051.tif
781d62b89f3f46a7f34322ce66a33593
0b5ad4968d22c7eeb6697c7a4632ee2dc8deaff9
F20101219_AABWQG galluzzo_t_Page_039thm.jpg
e086f82df3b860a7230c2c40abd138a6
66882f4755c042abfa5a1943615b9aaee5c36cd7
6940 F20101219_AABWPR galluzzo_t_Page_024thm.jpg
14a0285836583c35a7022c05ab4f4e69
81085649dba36f279187a7de3f9b1e93fe3acc5a
F20101219_AABVMP galluzzo_t_Page_103.tif
35616ea301ffb6015d97f420c2f61867
7e9d7d834bba05d3e2ae406a088f9402e797ab1f
63596 F20101219_AABVNE galluzzo_t_Page_096.jpg
aa5407de8eef3a13e0fcaadff95c4605
2a16ea96ede8d3a83f2ebd5762f9f08d21781b72
16620 F20101219_AABWQH galluzzo_t_Page_040.QC.jpg
6ea8793902fb7568fefb3a588ab201cc
a90de369dba3628d1f13f2523ce2c92b8d840894
26145 F20101219_AABWPS galluzzo_t_Page_025.QC.jpg
c25a308f2dd546d29c9da307a49e4232
e3ee8f1c59e11f7670fe94120da162e3c89d38d6
25539 F20101219_AABVMQ galluzzo_t_Page_062.QC.jpg
c4957ad792b1e1653086c86b2a9fc5c2
3c68f563cd58b7cf8fb0be284564ac6fccd57870
110471 F20101219_AABVNF galluzzo_t_Page_028.jp2
b2f136b87ed634fe98b3292bf2535e60
563ffcf2773d0e30caa4e6e9929e3620d9e20f15
25314 F20101219_AABWPT galluzzo_t_Page_026.QC.jpg
470dfe1ce399cb8679031f56ab4216d2
85b634abfaad0a206d85cb6224a3195cf578738b
F20101219_AABVMR galluzzo_t_Page_061.tif
b36c867c5f589a536b9c33a1c068e885
e0bc0c9f6c91069bdd98c16b6cb3c4bcdec89462
18229 F20101219_AABWQI galluzzo_t_Page_041.QC.jpg
db4aabd8f9dac246eb7464da844458c1
43222cc30907e8a58f7a183573b7aa63125979ff
25659 F20101219_AABWPU galluzzo_t_Page_027.QC.jpg
4164f8d421949f8f3329b025c181296b
96018b6ba754d87a95313eb6ef4d125076499f8e
21732 F20101219_AABVMS galluzzo_t_Page_047.QC.jpg
bc8001aa7d87d93523161f4643ddb682
da1c53fc7512dd639cdc4cf7dc2d0f5060151a25
105156 F20101219_AABVNG galluzzo_t_Page_034.jp2
4f586c0654e0a82ca369808cddd4f591
a3a42dd31b77125dcc223f44a49497955d0e902a
24499 F20101219_AABWQJ galluzzo_t_Page_042.QC.jpg
f4583ce271738f2e78337aebc3e08483
8bedcb931ef08e7b96ea88355fcdfb3ff31df952
6956 F20101219_AABWPV galluzzo_t_Page_027thm.jpg
6004f1559f37469432c0ceffd2165d42
6af8fbcfa200ebe39848a7f46476999883dcd16d
21830 F20101219_AABVMT galluzzo_t_Page_038.QC.jpg
2d09b8affcb5258ef82faeb31a393015
060bc8c8a4f6933d8cb3662e275ee44727880608
6711 F20101219_AABVNH galluzzo_t_Page_035thm.jpg
28b93ae132ddd0188add6aeb7b47a4d1
bb4c60328a87fb442f350b5d6818281b0e6fb031
22609 F20101219_AABWQK galluzzo_t_Page_043.QC.jpg
020bf75646f9299a69fad70e7c0cb08c
b91f32c628d2aedd4cb72b7b02d0cb760b0e6ea6
6665 F20101219_AABWPW galluzzo_t_Page_028thm.jpg
7f8b33cc606ad9e72f5def3606a2eb73
11561c04723ea102b0e72771bc7b7ee9ba671f6b
107079 F20101219_AABVMU galluzzo_t_Page_063.jp2
763fa9577f1601875699097c5883d735
eb1e5f5a1464546533ed7ee0169cc2844972065c
1051985 F20101219_AABVNI galluzzo_t_Page_131.jp2
19849dc4545745b442a388ab244fd83c
87776c4d71600be22edc26d96b2b674864455a0c
21773 F20101219_AABWRA galluzzo_t_Page_055.QC.jpg
a443d806ffba8cb189b0f90df3affba4
4fe9103f6f55c3deaff4560b46788566b2db3e65
6553 F20101219_AABWQL galluzzo_t_Page_043thm.jpg
0813578afd550b1de4e64d4b0985ea42
0be52439bb59cb05100dfb9ec3127babbae74163
23898 F20101219_AABWPX galluzzo_t_Page_029.QC.jpg
69c3363930d6bb9896cc23e1b4752b64
14a47406c2bc573466fb1fb480ab829b19b74078
F20101219_AABVNJ galluzzo_t_Page_098.txt
90b31420905ff5c0f3dab5227755fec8
f1f3db92c69fac7dbdc8af2a2a2d6b5145debd10
24311 F20101219_AABVMV galluzzo_t_Page_070.QC.jpg
f85314a911641afecd86eb52e4da3862
3c6430863ffdfe369edb149a75360e9d2f95d947
21647 F20101219_AABWRB galluzzo_t_Page_056.QC.jpg
4fd41a28509892f3e83eff12687d54e5
f5b0431633fe00e6b6e0982468aea6ab9735eb8f
16983 F20101219_AABWQM galluzzo_t_Page_045.QC.jpg
202aac711b0c58487b567fdeeec5f3c4
e74478280411ff1fd364b7520637a22425a659e7
6210 F20101219_AABWPY galluzzo_t_Page_030thm.jpg
cba3c484245022b8891856b9a650ff8e
7d249754f86176747505ec7ca1f3490acc006dae
76026 F20101219_AABVNK galluzzo_t_Page_005.pro
f822efbe60e9012fc0d36b61ce6bad08
ce1420184b34c87d8e35d0d72fde5a4984653255
105213 F20101219_AABVMW galluzzo_t_Page_029.jp2
2a9f0bd08c27c94f204e3a7bd5ed56f5
948ea79bf6ac89401ab64f3f6d6080f17448f471
15486 F20101219_AABWRC galluzzo_t_Page_057.QC.jpg
fba3dc256d737f3500b34cc9e749c48c
5d81e1711e9b57b077565bf53ae3fd0708e778a2
5310 F20101219_AABWQN galluzzo_t_Page_045thm.jpg
73b4aa1dbf96d561bf33a2ec257846c1
e2ba1323a5644d570adf7e66d35dbe00a5097ce1
25366 F20101219_AABWPZ galluzzo_t_Page_031.QC.jpg
d188c0665d7a3ee07d4cd020cdd3329d
942f779e8a674b07e4f9a010755034a7aa341bab
F20101219_AABVOA galluzzo_t_Page_064.tif
11e18a7351557b4622e6686f665674e1
32ba8307b0eda0ebc0f4207bafee3a9341ddc6fe
113661 F20101219_AABVNL galluzzo_t_Page_054.jp2
a7e2e5bda6a486df906bab50cb58d6fd
8f673cd567b0677d694b2c922c3a36009ea6f625
322845 F20101219_AABVMX galluzzo_t_Page_139.jp2
cc71c0a40662b6394c057bded47c82b9
7d538ee70ccdb0cc18b5b372406597eeaf5a217c
4958 F20101219_AABWRD galluzzo_t_Page_057thm.jpg
1e3643f8806906cae27db37b932480a6
8b004298ab97a389c081648c9beb791a6c3e6be8
23909 F20101219_AABWQO galluzzo_t_Page_046.QC.jpg
71f806d31924afc5bf7e63899842e6b3
28cbb31f6006fb0629c577c0098fa55742c9527e
49324 F20101219_AABVOB galluzzo_t_Page_051.pro
f7bca98a9fa38d79748161e380a08658
ae8511ff746ae462414f1471a769b756b866cb62
2130 F20101219_AABVNM galluzzo_t_Page_035.txt
7c3501915f304adc5ef53d8779381936
5513235992e6b9347414a64af98c0dfc0443d137
106334 F20101219_AABVMY galluzzo_t_Page_036.jp2
d65471562b453994e881b55f9d59ff62
9b97e7759219744941592a74c3965b805027b357
15728 F20101219_AABWRE galluzzo_t_Page_058.QC.jpg
9d68c796314400fe3f2a0ec0850ae651
3874f50c8bad00c9d5e5bd607082528f1b1aa7c1
6349 F20101219_AABWQP galluzzo_t_Page_047thm.jpg
98a439a590d493be3008e8e495d2d800
f70d156cfae34446512caaec57bdd3331da40371
22507 F20101219_AABVOC galluzzo_t_Page_001.jpg
e381ccd0405575680625d2079bc1728d
a0a042e1279cd5ee395963d4141d85e2ba4b94d1
7084 F20101219_AABVNN galluzzo_t_Page_121thm.jpg
ca98148430daec1c72a7f565f2a189c5
fabc9759a3ffd1480cba5a5dbc3fbd511bee08f3
34332 F20101219_AABVMZ galluzzo_t_Page_066.pro
97e2d7c67b19a0b83aa93b91705423d3
f8caf0065b1f17ca0daebf4e586f2e448e874171
24568 F20101219_AABWRF galluzzo_t_Page_059.QC.jpg
2229f006a745d411e2024ff700fc08c8
d704afb9e303851bf498c3d25c9f2127d87b1235
18815 F20101219_AABWQQ galluzzo_t_Page_048.QC.jpg
c12529924207ba1cf944c5ba7e6a16aa
9ebeaddc693be5602563535ddb20f4eb1c4cc4e2
330958 F20101219_AABVOD galluzzo_t_Page_144.jp2
1b7e0769a2534f02d099b257a00fb31a
538b94a8ae47ba5d3de07179b1c294e621405b1e
34510 F20101219_AABVNO galluzzo_t_Page_134.jpg
dedbdf1d75a238cb6eb8a714cfa7f660
2198d694d1b903bba99abfaea2086481614cbf36
F20101219_AABWRG galluzzo_t_Page_059thm.jpg
4e15431cfba6e8e2ee84c5bd73d143fc
41ecaa28262e3cabfcda124ca93bafcd2efaf73c
5560 F20101219_AABWQR galluzzo_t_Page_048thm.jpg
cafe217ec5fcf87980623a5d98562e56
d8e44c1de47a9e50cc213584e0d34d2b498e6817
51264 F20101219_AABVOE galluzzo_t_Page_012.pro
b39231c7d92780db052a5047e8eabcad
945568c1e0124cae1ba94d23b877bb5c867f55f8
F20101219_AABVNP galluzzo_t_Page_150.tif
83e502cf6d1f6ebe4cd67154af2a65e3
db8664429e4dd2c8a54032f3d6f8688e45752437
6707 F20101219_AABWRH galluzzo_t_Page_061thm.jpg
397f1eeb1744587f2519ea86c521630c
a9e71a3dba0963778c95d8ddb7834e75c5737787
24336 F20101219_AABWQS galluzzo_t_Page_049.QC.jpg
81134acae55fac8f4cf4b3f4fef6a7fe
c6e67b9bce4ddb1bab1b885b2cebf4d723afca2a
76674 F20101219_AABVOF galluzzo_t_Page_112.jpg
e73a0cb179fe9c97874abc9ba97f4dcd
8f2cfc4d12d762987e05fa8c0b3a24f594a2a5c5
39355 F20101219_AABVNQ galluzzo_t_Page_006.pro
dcfa9823176a74ffc81ecaf2ea69570c
6758c68542836afa0a7af549dcf7a14118381af2
6832 F20101219_AABWRI galluzzo_t_Page_062thm.jpg
8a6a0224ed811114f7d11e3f216dd0b9
c261651c08ca1b0d5c9bacc2ba3fb9ab34c8174c
F20101219_AABWQT galluzzo_t_Page_049thm.jpg
fb14c0e07fa80664aae49aa820f44f75
6616325d4d040935e642946f1c483883c12e9d42
75757 F20101219_AABVOG galluzzo_t_Page_085.jpg
8371c94f2ae4de078685febf1294a78d
b0006b075ecb4b9377683f216b68a0292b3b92a2
57592 F20101219_AABVNR galluzzo_t_Page_048.jpg
a0f859b314397ed9aa51b8dc86bf55cf
759b32ca50bb6b43bc9a44074ca614fc0217a401
18388 F20101219_AABWQU galluzzo_t_Page_050.QC.jpg
1028f3b65f0a10bb1bd721a661627175
39bbefd4962a43a2af2892e287020ca3542a34b6
24192 F20101219_AABVNS galluzzo_t_Page_101.QC.jpg
83a44091a771aa234ce8db7ef329760e
50ef8d3d94c2be9cd198c1e90ed9d4d10ea4ddbe
6764 F20101219_AABWRJ galluzzo_t_Page_063thm.jpg
3dde0c4bc5911381f712eaa869c68c3e
8e8f7e80e53e21f42b9adb1e2578c9386df8c45e
5484 F20101219_AABWQV galluzzo_t_Page_050thm.jpg
0f2c78cfde70b0c36c546d7da8936f7c
53728e83000f40096694b16deb08b45404f8815e
18760 F20101219_AABVOH galluzzo_t_Page_129.QC.jpg
4fd29c73d1d1a1038aa3fe2632a3db70
474bd4e375eb5820a95e45bd745fe470a8594b33
76333 F20101219_AABVNT galluzzo_t_Page_151.jp2
fc242294e6e3b6c0e62fa8213be53677
7d43edcd91ecd1aa143a8007586c0bfdd8b00442



PAGE 1

1 SIMULTANEOUS PLANNING AND CONT ROL FOR AUTONOMOUS GROUND VEHICLES By THOMAS C. GALLUZZO A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLOR IDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 2006

PAGE 2

2 Copyright 2006 by Thomas C. Galluzzo

PAGE 3

3 I dedicate this dissertation entirely to my mother and father, Janice and Dennis Galluzzo. Their complete and unwavering support of my educa tion has made this achievement possible.

PAGE 4

4 ACKNOWLEDGMENTS I would first like to thank Dr. Carl Cran e for his kind support th roughout my graduate education. He has been an excellent advisor fo r both my academic and field research. I would also like to thank my comm ittee, Dr. Warren Dixon (co-chai r), Dr. B.J. Fregly, Dr. John Schueller, and Dr. Antonio Arroyo, fo r their support and guidance. This work has been made possible by the Ai r Force Research Labor atory at Tyndall Air Force Base, Florida. Thanks go to Al Neese, Dr. Je ff Wit and the rest of their staff. Also, I would like to thank the Air Force project manager at CIMAR, David Armstrong. He has been a good friend and mentor throughout this work. Finally I would like to thank my close coll eagues and friends at CIMAR, namely Danny Kent, Bob Touchton, Sanjay Solanki, Roberto Mont ane, and Chad Tobler. They have made this journey all the more exciting and worthwhile.

PAGE 5

5 TABLE OF CONTENTS page ACKNOWLEDGMENTS...............................................................................................................4 LIST OF TABLES................................................................................................................. ..........7 LIST OF FIGURES................................................................................................................ .........8 ABSTRACT....................................................................................................................... ............10 CHAPTER 1 INTRODUCTION..................................................................................................................11 Background..................................................................................................................... ........11 Focus.......................................................................................................................... .............15 Problem statement.............................................................................................................. ....16 Motivation..................................................................................................................... ..........17 2 REVIEW OF THE LITURATURE........................................................................................21 Planning and control input structures.....................................................................................22 Potential Fields............................................................................................................... .22 Navigation Functions.......................................................................................................23 Velocity Fields................................................................................................................ .25 Occupancy Grids.............................................................................................................26 Geometric Models...........................................................................................................27 Motion Command Structures..................................................................................................29 Planning Strategies and Algorithms.......................................................................................30 Deterministic Geom etric Planners...................................................................................30 Search and Heuristic Methods.........................................................................................31 Vector Methods...............................................................................................................32 Probabilistic Planning......................................................................................................33 Control Strategies and Algorithms.........................................................................................34 Kinematics Methods........................................................................................................35 Linear Control Systems...................................................................................................36 Nonlinear Control............................................................................................................37 Model Predictive Control................................................................................................38 3 THEORETICAL APPROACH..............................................................................................39 Introduction................................................................................................................... ..........39 Notation, Assumptions, and Preliminary Theorems...............................................................44 A* Algorithm and Admissibility............................................................................................46 Quantization and Invariant Sets..............................................................................................53 Heuristic Receding Horizon Control......................................................................................56

PAGE 6

6 Dual-Frequency Receding Horizon Control...........................................................................60 Conclusions.................................................................................................................... .........63 4 APPLIED APPROACH AND IMPLEMENTATION...........................................................70 Introduction................................................................................................................... ..........70 Obstacle Avoidance............................................................................................................. ...72 Admissible Heuristics for HRHC...........................................................................................79 Reactive Driver Implementation.............................................................................................84 Faults and Failure Modes....................................................................................................... .99 Conclusions.................................................................................................................... .......101 5 TESTING AND RESULTS..................................................................................................110 Test Plan...................................................................................................................... .........111 Test Review.................................................................................................................... ......112 Test Results................................................................................................................... ........114 6 FUTURE WORK AND CONCLUSIONS...........................................................................148 Future Work.................................................................................................................... ......149 Conclusions.................................................................................................................... .......150 LIST OF REFERENCES.............................................................................................................152 BIOGRAPHICAL SKETCH.......................................................................................................157

PAGE 7

7 LIST OF TABLES Table page 3-2 Algorithm for a single HRHC iteration.............................................................................66 4-1 RDs ready state control loop..........................................................................................103 5-1 The receding horizon control aut onomous vehicles test plan..........................................128 5-2 Test path circu it specification data..................................................................................130 5-3 The time based step response metrics..............................................................................130

PAGE 8

8 LIST OF FIGURES Figure page 1-1 Picture of the NaviGator AGV..........................................................................................20 3-1 Receding horizon control...................................................................................................67 3-2 The quantization of th e systems input space....................................................................68 3-3 This diagram identifies the basic DFRHC scheme............................................................69 4-1 The NaviGator high level c ontrol system block diagram................................................104 4-2 Simple obstacle avoidance case.......................................................................................105 4-3 The traversability grid concept........................................................................................106 4-4 Path tracking error system...............................................................................................107 4-5 Traversability grid dilation..............................................................................................108 4-6 Planning and control search area.....................................................................................109 5-1 An aerial photograph of the Gainesville Raceway road course.......................................131 5-2 The path segments designed............................................................................................132 5-3 The position data collected from run 1 of test part 1.......................................................133 5-4 The logged NaviGator heading si gnal from test part 1 run 1..........................................134 5-5 The cross track error signal from run 1 test part 1...........................................................135 5-6 The cross track error signal from test part 1 run 2...........................................................136 5-7 The cross track error signal from test part 1 run 3...........................................................137 5-8 The output of all three wrench effort signals...................................................................138 5-9 The speed controller performance da ta logged from run 1 test part 1.............................139 5-10 The position data collected from run 1 of test part 2.......................................................140 5-11 The cross track error signal from test part 2, run 1..........................................................141 5-12 The cross track error log from run 2, test part 2..............................................................142 5-13 Each output signal logge d during test part 2, run 1 (the nominal case)...........................143

PAGE 9

9 5-14 The speed control system data l ogged during run 1 of test part 2...................................144 5-15 The position data collected from run 1 of test part 3.......................................................145 5-16 The cross track error log from run 1, test part 3..............................................................146 5-17 Four traversability grids record ed during run 1 of test part 3..........................................147

PAGE 10

10 Abstract of Dissertation Pres ented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy SIMULTANEOUS PLANNING AND CONT ROL FOR AUTONOMOUS GROUND VEHICLES By Thomas C Galluzzo December 2006 Chair: Carl Crane Cochair: Warren Dixon Major Department: Mechanic al and Aerospace Engineering Motion planning and control for autonomous vehicles are comp lex tasks that must be done in order for a ground robot to opera te in a cluttered environment. This dissertation presents the theory, implementation, and test results for some new and novel Receding Horizon Control (RHC) techniques that allow these tasks to be unified into one. The first new method is called Heuristic R eceding Horizon Control (HRHC), and uses a modified A* search to fulfill the online optim ization required by RHC. The second is called Dual-Frequency Receding Horizon Control (DFRHC), and is used to simplify the trajectory planning process during the RHC optimization. Both methods are combined together to form a practical implementation, which is discussed in detail. The autonom ous ground vehicle, the NaviGator, developed at the Center for Intelligent Machines and Robotics, serves as a platform for the implementation and testing discussed. Finally, data and their analysis are presen ted. The results obtained help to support the theoretical and practical clai ms made by this dissertation.

PAGE 11

11 CHAPTER 1 INTRODUCTION Everyday more and more robotic vehicles are en tering the real world. They are being put to work just about everywhere manual vehicles have been used in the past. From agriculture, and mining operations, to inside fact ories and hospitals, they are in creasing safety, efficiency, and performance in all tasks otherwise considered to be too dull, dirty or dangerous for manual labor. Unmanned vehicles are being used intensely by militaries worldwide. The United States for example, has already been us ing unmanned air vehicles for seve ral years to patrol the skies over conflicts in foreign lands. Recently, by congr essional mandate, the U.S. Army has set a goal to have one-third of all operational ground co mbat vehicles operating unmanned by the year 2015 [US00]. This is a difficult feat that, if ach ieved, will save countless American lives on the battlefields of tomorrow. The recent explosion of unmanned vehicle t echnology has been made possible by vast improvements in sensors, computers and rese arch developments. Th ere is now a greater understanding of the problems that need to be so lved in order to allow autonomous machines to operate in the largely uncertain real world. Yet despite all of th e advancements, there is still room for improvement and much work to be done. Background Unmanned vehicles are designed to perform a variety of task s, which they perform with varying levels of independence. While some unmanned machines are rigidly controlled by human operators, via telemetry and wireless inpu t, others are sent a bout with little to no assistance. These are the type of unmanned vehi cles under consideration in this dissertation. They fall into the category known as autonomou s vehicles. Autonomous vehicles are operated under human control at the highest of levels. In structions here may simply command the vehicle

PAGE 12

12 to reach a goal point or follow a corridor. Commands may also be issued on an even higher level describing an abstract mission, su ch as patrolling a perimeter, or sweeping through a defined area. At these levels, the r obot is given a higher amount of command and control authority. Consequently, the less input provided by the opera tor, the more influence the machine has over its own actions. Autonomous vehicles pose a number of unique problems in their design and implementation. There is no longer a human-in-t he-loop control scheme for the vehicle. The unmanned system itself must close the loop from environment feedback to low-level vehicle control. Where a human operator would normally an alyze data feedback from telemetry, remote video, etc. and then decide the best course of action, designers must now instrument the vehicle so it can automate these tasks. This requires th e inclusion of internal state and environmental sensors, along with onboard computers and so ftware capable of processing the sensed information and planning the vehicles action a ccordingly. One way of formalizing this overall process is known as the sense-plan-act paradi gm for robotic development [NIL98]. It is a breakdown of the complete design into compartmen talized tasks and processes, which allows for ease of implementation of the whole system in general. The first design step in the sense-plan-act para digm is the inclusion of different types of sensors onto the vehicle platfo rm. These sensors serve two gene ral purposes. The first is to measure the state of the vehicle itself, such as its position, orie ntation, speed, and perhaps also health monitoring information such as temperatures pressures, etc. In humans, this is known as proprioception, a word derived from the combinati on of the Latin proprius, meaning one's own and perception. It is a vital part of the robotic system; without proprioceptive sensors the vehicle

PAGE 13

13 would not have the feedback necessary to be able to control itself, rega rdless of environmental conditions. The complement of propriocepti on is exteroception. This is th e systems ability to sense information originating outside of itself. It is the ability to sens e ones environment. Sensors such as cameras and range detectors provide this info rmation. The job of the system designer is to outfit the autonomous vehicle with those sensors necessa ry and appropriate to provide the correct environment feedback, thus allowing the system to decide how to act within it. A key note of importance is that accurate internal state estimates are critical in order to be able to make sense out of exteroceptive informa tion. An example that help s to understand this is the estimation of a cameras orientation on a vehi cle. Without knowing a cameras orientation in the environment, it is impossible for the robot to be able to know where the sensed images are coming from. This means that the robot must be aware of its own orientation before it can use the camera information. The same is true for othe r environment sensors, a nd thus it is necessary to have valid proprioceptive state estimates before analyzing exte roceptive information. Designers face the problem of ensuring the vali dity of information from both types of sensors. This problem becomes very difficult in the presence of noise and other uncertainty, which is always the case in real world implemen tations, and therefore it requires careful attention from design through implementation. The second step in the sense-plan-act design is giving the autonomous vehicle the ability to calculate how to react to sens ed internal and external info rmation. This step requires the unmanned vehicle to have the necessary proc essing and computational power along with the algorithms and software capable of providing robu st and stable control laws that guide the navigation of the robot. This step replaces the decision making and input provided by an

PAGE 14

14 operator, such as with teleope rated control. The decision maki ng process overall produces the desired response based upon the mission obj ective of the autonomous vehicle. Action is the final step in the paradigm. At th is phase, all of the sensed data have been processed and analyzed, and the autonomous ve hicle commands its own inputs. As with all unmanned vehicles, input commands are delivered to the actuators that allow the vehicle to produce motion: engine fuel valves, amplifie d electric motors, brakes, and many others. Autonomous vehicles generate their own decisions at the pla nning level. These govern how to drive the vehicle actuators, whic h cause the platform to move The sense-plan-act sequence continues on repeatedly, allowi ng the vehicle to self-regulate. This paradigm and its steps described can be applied to all autonomous vehicles, and in fact all autonomous robots. Howeve r, it is specifically used in th is dissertation for the design and application of autonomous ground vehicles (AGVs ), although other type s of vehicles may benefit from the topic proposed. There are many shapes and sizes of AGVs. Different methods of propulsion for AGVs have been explored by a number of researchers. There are skid-steered and differential drive vehicles which translate and turn by means of tw o sets of independent wh eels or tracks on either side of the vehicle platform. There are also ca r-like vehicles, which m ove by rotating a set of wheels, and turn by deflecting the relative angle between the wheels and the vehicle chassis. Many combinations of propulsion and turning exist in car-like vehicles: front, rear, and all-wheel drive, for example, are propulsion methods commonly used among them. There are several unique problems facing AGV e ngineers that are not of concern for other types of unmanned vehicles. The machine envi ronment poses the greatest problem for a successful AGV. Unlike air and water unmanne d vehicles, which can operate in a vast

PAGE 15

15 uncluttered space, AGVs must often operate wi thin confined spaces, among static and dynamic obstacles, and on different qualiti es of terrain. Avoidi ng collisions with obstacles and refraining from becoming trapped is a hard challenge to over come. The vehicle must be able to quickly and accurately realize its environment, so designers must incorporate robust sensors capable of resolving the complexity of the surroundings. Th e vehicle must also have a high degree of mobility with the ability to respond quickly to av oid potential collisions. Finally, the robot must be equipped with enough computati onal power to be able to quic kly process the large amounts of sensor data, and then cont rol its response safely. Focus The method by which a ground robot can plan and control its own motion is the subject of this research. AGV motion planni ng and control are difficult pr oblems for many reasons. First, they require the analysis of multidimensional data from multiple sensors. This means that control algorithms must be able to handl e a relatively high thr oughput of data, and be fast enough (on the machines that perform them) to maintain vehi cle stability and perfor mance. Second, the data must be processed with consid eration for any uncertainties in sensing and vehicle response. As aforementioned, uncertainty is always a concern when machines are operating in the real world. These uncertainties can be attributed to several sources, some examples include sensor limitations, noise and the inherent unpredi ctability of operating environments. Uncertainty in vehicle response is attributable to the fact th at machines can only respond to their inputs with a limited degree of repeatability. External distur bances and wear are examples of variation sources that affect how a vehi cle will respond to a given inpu t. By minding these influences during the data processing and pl anning phase, an AGV is far more likely to respond correctly in its situation.

PAGE 16

16 Another problem to motion planning and control is that there must be consideration for the motion constraints of any actuators involved or the vehicle platform itself. This is especially an important issue for car-like vehicles because th ey are subject to a nonholonomic constraint. This means that although a vehicle driving on a surf ace may have three de grees of freedom, (translation in two dimensions a nd rotation in one) it can only tr anslate in the direction it is immediately facing. Consequently, the equations of motion describing the vehicle dynamics are non-integrable, which makes the problem much hard er to solve. This al so means that car-like vehicles are under actuated. In ot her words, the number of contro l inputs to the system is less than the number of degrees of fr eedom in the systems configurati on space. This is illustrated by the fact that a car -like vehicle can only move by input of a steering whee l and the rotation of its drive wheels, yet given the righ t control sequence, it can assu me any position and orientation. This is the nature of the problem undertaken in this dissertation. Problem statement A formal description of the general AGV mo tion planning and control problem can be formulated as follows: Given: Sensed data describing the local environmen t around the vehicle, and a goal structure (point, line, trajectory, etc.) whic h the vehicle is desired to reac h, or track, and also, feedback estimates of the full vehicle state, i.e. position, velocity, and orientation. Develop: An algorithm capable of optimizing and ex ecuting the vehicles motion through its local environment, and obtaining the goal. The algorith m must be able to maintain throughput of sensor data and command the vehicle actuators accordingly.

PAGE 17

17 Motivation For over a decade The Center for Intelligen t Machines and Robotics (CIMAR) has been actively pursuing research in the field of autonomous robot ics and AGV technology. A key challenge during this endeavor has been tackling the problem of motion planning and control. The research of AGVs at CIMAR has primarily been conducted under the direct support of the Air Force Research Laboratory (AFRL) at Tyndall Air Force Base. The technology developed at CIMAR under this program has adva nced the fields of automated surveying and mapping, unexploded ordinance detection, mine fiel d clearing, and modular system architecture design. Over the years, many different groups of pe ople at CIMAR have successfully automated over ten unmanned ground vehicles. Th e latest of theses vehicles is called the NaviGator, shown in Figure 1-1. It is a front-wheel steered, all-wheel drive platform. The NaviGator is a custom built all-terrain vehicl e, with a mild steel roll bar frame. It has 9" Currie axles, B ilstein Shocks, hydraulic st eering, and front and rear disk brakes with rear emergency brakes. It has a Honda 150 HP transv erse engine mounted longitudinally. A locked transaxle connected to the engine drives front an d rear differentials. It has two integrated 28 volt alternators that generate 4800 watts of continuous electrical power. This power is delivered to onboard computers, actuators, a nd other electronics, along with a Ton air conditioning unit that cools an enclosure which houses most of th e vehicles electrical e quipment. The NaviGator is equipped with a number of sensors caged on th e front of the vehicle. The sensors include a radar unit, cameras, and three scanning laser ra nge detectors. All are used for environment sensing. The vehicle also has an integrated G PS/INS system, which is used for estimating its position, orientation and speed.

PAGE 18

18 This vehicle was used by CIMAR as an en try to the DARPA Grand Challenge national competition. DARPA is the Defense Advanced Research Projects Agency, a small division of the United States Department of Defense, and in 2004 through 2005 it sponsored the Grand Challenge competition in an effort to rapi dly advance experience and innovation in AGV technology. The competition was designed in a manne r that would allow participating research groups to help accelerate national research in this field, withou t diverting resources from other ongoing government projects. The goal of the competition was to build and fi eld a robotic vehicle that could traverse over 150 miles of desert terrain without any human control. This was a t echnological feat that, prior to the 2005 competition, had never been accomplished. However, in October 2005, five teams entered vehicles that successfully co mpleted the entire challenge course. Although team CIMARs NaviGator was not able to finish the competition, it did advance as one of 23 Finalists (out of over 200 applican ts) and complete over 15 miles of the course, which demonstrated the tremendous effort put fort h by all team members. The NaviGator is also considered a success because it will continue to se rve as a research and development platform at CIMAR for years to come. The development of an online path planning and control algorithm for the NaviGator has been the driving motivational force behind this resear ch topic. As part of the effort to enter the NaviGator into the 2005 DARPA Grand Challenge, a new approach to motion planning and control was developed. The approach is a va riation on the receding horizon control strategy, where a sequence of open-loop commands are repeat edly optimized and delivered to the system. In a typical receding horizon controller, th e optimal set of commands is calculated by minimizing a quadratic cost formula. The technique devised for the NaviGator is unique in that it

PAGE 19

19 obtains a near optimal solution via a heuristic search. This has se veral advantages and disadvantages that will be discussed in deta il in the following chapters. The fundamental significance is that this technique provided a we ll fit motion planning and control solution for the NaviGator. Although many other tec hniques and approaches exist, the research and advancement of this technique may benefit other implementations where it is suited.

PAGE 20

20 Figure 1-1. Picture of the NaviGator AGV in race c onfiguration, which was taken just before the DARPA Grand Challenge in October, 2006.

PAGE 21

21 CHAPTER 2 REVIEW OF THE LITURATURE To compare and contrast the newly devised co ntrol strategy, a review of published research literature has been conducted. Various researcher s have explored different methodologies for the AGV motion planning and control problem. The majority of the methods brake down the problem into two individual tasks. In one task, sensor or a priori data are analyzed and a geom etric path or a time varying trajectory of the robots motion is planned through an environment or workspace. These motion describing structures are often optimized for travel time, distance, or minimum collision potential. Sometimes combinations of parameters are optimized. The way in which the planning problem is formulated also varies greatly be tween applications. As input to the planning algorithms researchers use different techniques to describe the local environment. While some use discrete raster images or vector geometry, others use cont inuous mathematical functions. The different formulations have unique ch aracteristics that will be described in detail in this chapter. The control task attempts to solve the problem of regulating the vehicl e in order to execute a previously determined motion command. This co mmand can be as simple as a desired position and orientation, or as complex as a trajectory sequence requiring specifi c turning maneuvers and speed changes. As with planning, the techniques developed for the control task are diverse. Many researchers have struggled with and f ound viable solutions for dealing with the nonholonomic and other constrai nts of AGVs. Although the methods differ greatly in implementation, there is as always, a tradeoff be tween stability, robustness, and performance. The review of research has been broken down into exploring the input and motion structures and then the planni ng and control algorithms themselv es. Input structures represent sensor and other required data delivered to th e planning or control al gorithms. Likewise the

PAGE 22

22 results of the planning algorithm s are delivered to controllers via a motion structure. By understanding the different input and output structures, a greater understanding of the algorithms and techniques is gained. Planning and control input structures Potential Fields A category of input structures exist in the form of mathema tically described functions and fields. One of the earliest types of fields expl ored is known as a potentia l field. In 1985 Khatib [KHA85] presented an obstacle avoidance appro ach for manipulators and mobile robots based on the Artificial Potential Field concept, wher e obstacles were represented as potential energy fields that generated repulsive forces, and goal co nfigurations for the robot were represented as attractive gravitational fields. The resultant im aginary force acting on the robot was used to guide its motion. Since then researchers have used potential fiel ds in countless scenario s. Barraquand et al. generate collision free paths for a three degree of freedom mobile robot using potential fields [BAR92]. Their approach to path planning consis ts of incrementally bui lding a graph connecting the local minima of a potential function defined over the configuration spa ce of the mobile robot. A search was conducted over the graph until a go al configuration was obtained. This was an efficient approach that did not require any pr e-computation steps (as other researchers had suggested) to be performed over the potential field function. Warren addresses the issue of global path pl anning with potential fields [WAR89]. Here planning of a manipulator and mobile robot moti on was done in configuration space (C-space), a multi-dimensional space described by a set of generalized coordinates which represent the position and orientation of a rigi d body. In his implementation, Wa rren constructs an arbitrary trial path in the configuration space of the robot, which connects th e initial configuration to the

PAGE 23

23 goal configuration via a set of st raight line segments. The entire path is then modified under the influence of the potential field until a minimum po tential path is found. Th e effect of modifying the entire path at once greatly reduced the prob lem of becoming trapped in a local minimum of the potential field, however, a collision-fr ee path could still not be guaranteed. Several limitations of potential field methods applied to AGVs were identified by Koren and Borenstein [KOR91]. Specifically they iden tified four problems that could arise when a mobile robot was subjected to the imaginary forces of obstacles a nd a goal. First, a mobile robot could become trapped in the local minima of a potential field; as could occur when the goal configuration was blocked by a U-shaped obstacl e. (This phenomenon of pot ential field methods was previously identified by a number of other researchers; see Andrews et al. [AND83] and Tilove [TIL90].) Second, robots could often fa vor longer paths to travel around any closely spaced obstacles that they encountered, rather than simply pass untouched between them. Third, the robot motion could become unstable when passi ng nearby obstacles, and finally, oscillations could occur when a robot is traveling down a narrow corridor. This is because repulsive forces of walls close to either side of the robot caused os cillatory motion when it was subjected to a small disturbance. For these and other reasons, rese archers continued to pursue other ways of formulating the planning and control problem. Navigation Functions A special kind of potential field function, known as a navigation function, was introduced in 1988 by Rimon and Koditschek [RIM88]. The navi gation function is unique in that the only minima occurs at the goal configuration for the robot, no other local minima exists. This prevented the robot from becoming stuck in any local minima that might exist in a traditional potential field. The navigation func tion techniques however, are su sceptible to other drawbacks. For a proposed application offered by Rimon [RIM 91] the robot was requir ed to operate in a

PAGE 24

24 circular space inhabited only by disk shaped obstacles. This is a scen ario with little practicality in a real-world environment, and only considered effective in a highly controlled experiment. Another limitation is that the navigation functi on can be difficult or expensive to compute. Other researchers have attempted to overcom e these limitations. Konkimalla and LaValle were able to compute navigation functions for an arbitrary shaped workspace containing arbitrary clutter [KON99]. The navigation f unctions were computed numerically for nonholonomic systems, which they demonstrated by using their techniques to generate optimal motions for car-like robots in simulation. W ith their method, the navigation function was computed over a uniformly distributed quantized free configuration space. This was described by a set of points in the robots n-dimensional c onfiguration, which excluded the space occupied by any obstacles. However, since the robot was not c onstrained to occupy only discrete points in the space, the navigation function was interpolated (w ith a novel technique) between points in order to allow the vehicle to maintain smooth trajectori es, and also to keep th e free configuration space continuous. This method was also un ique in that it computed th e navigation function iteratively over a propagating wave-front, whic h originated at the goal conf iguration. This was a key to allowing arbitrary shapes in describing the navigation function. A drawback of the methodology developed is that it assu med the robot was operating in a stat ic and predetermined environment. Thus, the navigation function algorithm devel oped by Konkimalla and LaValle, was still not suitable for real-time application. One real-time strategy for using navigation f unctions to control a robot operating in a dynamic environment, was proposed by Loizou et al. in 2003 [LOI03]. Their approach was to develop a non-smooth navigation function, which a llowed for faster computation than a smooth function. To further simplify computation, the ob stacles in the dynamic workspace were assumed

PAGE 25

25 to be disk shaped, as with Rimons applicati on. The approach was proven to work in simulation, and guaranteed collision avoidance and motion convergence. However, arbitrarily shaped obstacles could not be accounted for. Velocity Fields Another type of field used to control an AGV is known as a velocity field. Here the environment of the robot is assumed to have an imaginary flow fi eld. The direction and magnitude of the field at any give n point describes the desired veloci ty of the robot. This concept was pioneered by a number of researchers in the early 1990s. Li and Horo witz first published a paper on the subject in 1993 [LI93]. In their research they remarked that velocity fields had an advantage over a traditional potential, or navi gation functions, in that they accounted for the robots desired motion over its complete workspa ce. In other methods, the path that a robot followed in order to reach its goal could not be predetermined without in tegrating the dynamics functions. Using velocity fields to describe the desired motion removed that ambiguity, because the robots desired speed and orientation is specified at all pos sible configurations. Li and Horowitz extended their initial wo rk by applying the velocity field concept specifically to robot contour follo wing problems [LI96]. In this research, a velocity field was constructed in a manner that would result in th e robot tracing out a desi red geometric contour. This was made possible because the resulting control scheme applied to the robot ensured convergence onto a stable limit cycle, which was equivalent to the desired contour. A novel methodology for calculating desired velo city fields was suggested by Keymeulen and Decuyper [KEY94], in which a field could be generated via fluid dynamics. In what they describe as a metaphorical appro ach, by placing an imaginary fluid source at the robot, a fluid sink at its destination, and constraining the boun dary conditions of the workspace and obstacles, the streamlines of the resulting fluid flow could be used to describe the desi red path of the robot.

PAGE 26

26 They showed that this was a very powerful a pproach because it was not susceptible to local minima, and also the imaginary flow would be able to instantly adap t to any dynamic topology. The major drawback of the fluid dynamics a pproach is the very expensive computation necessary when recalculating the flow field upon a ny change in the robots environment. At the time of publication, the authors sugg ested that it was well suited on a parallel, analog, or optical computing machine. However, as computing mach inery continues to adva nce, this powerful method becomes more and more applicab le to real-world implementations. Dixon et al. were able to es tablish a control scheme that allowed a nonholonomic Wheeled Mobile Robot (WMR) to track a desired velocity field [DIX05]. This extended the work other researchers had done, which did not account for nonholonomic syst ems. The group developed an adaptive controller, and employed a Lyapunov-base d analysis to prove global asymptotic tracking of the velocity field. Occupancy Grids Mobile robots are often desi gned to operate in environmen ts that are unstructured and unknown. In these cases, the system has no a pr iori model or knowledge of its surroundings. Occupancy grid structures offer a means for a robot to map and rationalize this unknown space. An occupancy grid is a multidimensional tessella tion (or array) of space into uniformly shaped cells. Each cell in the array cont ains a probability estimate that identifies whether the space is occupied or empty. The earliest uses of occupancy grids for mobile robot planning and control were developed by Alberto Elfes at Carnegie Mellon University. Elfes initially described the implementation of occupancy grids on mobile robots in a series of papers published in the mi d 1980s. Initially they were used for a sonar-based mapping and naviga tion system [ELF86]. Here the general issues pertaining to occupancy grids, su ch as spatial resolution and sens or uncertainties were described

PAGE 27

27 conceptually. Several years later, the formalized mathematics and problem structures were presented [ELF89]. In this resear ch, derived estimates of the cells were obtained by interpreting range readings using probabilistic sensor models. A Bayesian estimation procedure was employed to accurately calculate ev olving grid cell states as sensor readings repeated in time. Borenstein and Koren presented an approach that combined the concepts of occupancy grids and potential fields [BOR89]. In thei r method known as the Virtual Force Field, each occupied cell in the grid applied an imaginary repulsive for to the robot. The magnitude of the force was proportional to the probability that th e cell is truly occupied by an obstacle. This method yielded promising results, in its robust ness to sensor uncertainty, however it still was susceptible to the drawbacks of potential fi elds described in th e previous section. A classification of occupancy gr ids, described by Elfes as inference grids (where cells contain an estimate of multiple possible states ) was employed by Touchton et al. at CIMAR [TOU06]. In their implementation, a type of structure named traversi biliy grid stores an estimate of the quality of terrain contained in the robot s local environment. Here each cell expresses the degree to which a robot would be capable of successfully passi ng through the contained space. This level of classification was felt necessary in order to accommodate AGV navigation off-road, where space can rarely be considered only occupied or empty. Geometric Models In some of the earliest path planning rese arch, the robots environment and workspace were represented with geometric primitives such as lines, polygons and circles. These structures were used because they required only a minimal amount of computational memory (a resource more limited at the time than today). Research conducted by Lozano-Perez and Wesl ey [LOZ79], involve d the planning of a polyhedral object moving among other known polyhedral objects. In this original work, a graph

PAGE 28

28 known as a visibility graph was formulated to find free paths for the moving object. The graph was constructed by connecting straig ht line segments between the ve rtices of the polyhedrons. It was called a visibility graph, because connected vertices could see each other unobstructed from the polyhedral objects. A different approach to planning among pol ygonal obstacles was presented by Takahashi and Schilling [TAK89]. In their method, the free space of the robots environment was represented with a generalized Vo ronoi diagram, which is the lo cus of points equidistant from two of more obstacle boundaries including th e workspace boundary. For a polygonal workspace inhabited by polygonal objects, the diagram consis ts of only linear and parabolic line segments. The Voronoi diagram method made for more efficient planning, in that it consists of fewer vertices than a visibility gra ph, and also has the advantage of keeping the motion plan further away from obstacles. However, the method in ge neral produces larger tr avel distances, which can reduce performance. A method for maintaining minimum distan ce optimality, and increasing computation efficiency was proposed by Rohnert [ROH87]. In this method, a structure called a tangent graph was constructed, where common tangent line s connect convex polygons in the robots workspace. It is more efficient because it contains fewer vertices than a visibility graph. A means of computing the tangent graph was suggested by Liu and Arim oto [LIU94]. The research group proposed an algorithm called the moving-line algor ithm, which efficiently computed the graphs by decomposing the construction task into two sub-problems: detecti ng common tangents, and intersection checking among the tangents and obstacles. Thei r algorithm performance was demonstrated with a number of simulated experiments and the results were presented.

PAGE 29

29 Motion Command Structures The simplest input command structure to regul ate a mobile robots motion is a position and orientation set-point, in which the robot is de sired to maintain a fixed and specified pose. Another commonly used motion stru cture represents the path geometry of the mobile robot together with an associated speed profile. Comple te time varying trajector ies are also common in practice. In this case, the vehicles complete pos ition and orientation is de noted as a function of time. A broad overview of the different motion comm ands has been detailed by De Luca et al. [DEL98] in a chapter of the book: Robot Motion Planning and Control, edited by Jean-Paul Laumond. In their discussion they point out that these three motion structures can sometimes be cast as a higher level problem or sub-problem of one another. For example, some research has suggested that the path regulation problem is a subset of the higher level trajectory tracking problem. In their discussion, they anal yze the controllabili ty of a car-like robot attempting these three tasks. Their analysis employs a useful tool known as the Lie Algebra Rank Condition (see [ISI95]), which allows the controllability of a dr ift-less nonlinear system to be tested. Along with this test they exemplify that se t-point stabilization of a car-lik e robot cannot be achieved via a smooth time-invariant feedback control law. A result established on the basis of Brocketts theorem [BRO83], which implies that a necessary condition for smooth stabi lization of a system is that the number of inputs equals the number of states. Since this is not the case, such condition is violated. Despite the varying complexities and difficulties of all three control tasks, feedback control solutions have been identified for them. De Lu ca and group, present a number of the techniques,

PAGE 30

30 and the associated mathematics for them. Simulate d results are also presented in their overview. Some of the strategies are presented later in this chapter. Planning Strategies and Algorithms As previously stated, AGV moti on planning and control is ofte n divided into a planning task, which generates a motion command for the robot, and a control task, which regulates the vehicle onto the predetermined mo tion structure. A vast number of methods have been developed for the planning task. They ar e described here in detail. Deterministic Geometric Planners Early research in nonholonomic path planni ng considered only simple cases where environmental constraints and obsta cle avoidance were not part of the problem. Pioneering work was done by Dubins during the late 1950s. He proved that optimal path s connecting a car-like vehicle from an initial position and orientation, to a final confi guration state, were made up of straight line segments and circular arcs, with radius equivalent to that of the vehicles minimum turning radius [DUB57]. This th eory was developed for a vehicl e traveling only with forward motion. Reeds and Shepp extended the work of Dubi ns to include motion for a vehicle traveling both forwards and backwards [REE91]. There are several drawbacks to these planning methods. The most notable is that they do not consider the presence of any obstacles in th e workspace of the vehicle. Also, the curves are made up of segments with disc ontinuous curvature at the connections between them. This means that for a car-like robot to follow the curves ex actly, it must come to a stop at the segment junctions in order to ch ange its steering angle.

PAGE 31

31 Search and Heuristic Methods A group of motion planners rely on heuristic or graph search ing techniques. With these methods, a plan is constructed th at is based on the result of se arching through discrete graph representations of possible robo t configurations in its obst acle cluttered environment. A common search technique fo r these applications is called A* (A-star), and it was originally developed by Hart, Nilsson, and Raphael [HAR68]. Their research presented the formal basis for showing that the search met hod is both admissible and computationally optimal. Since its inception, A* has been used in a wide variety of mobile r obot planning algorithms. Kuan et al. use an A* search to find a path to a goal configuration for a mobile robot navigating among convex polygon shaped obstacles [KUA85]. Their method locates critical channels and passage regions within the fr ee space, which are then decomposed into nonoverlapping geometric-shaped primitives. From this representation, the path planning algorithm then finds trajectories inside th e channels and passage regions. Another implementation searches through a multi -resolution grid to find a path. Presented by Kambhampati and Davis [KAM86], a method using a quad-tree hierarchical representation of the workspace is exploited to gain a computati onal savings in the search. Their technique was more efficient because it did not consider the excess detail in parts of the space that did not substantially affect the planning operation. A minimum time planning approach for a robot was given by Meystel et al. [MEY86]. In this method, the robots acceleration, deceleratio n and turning capabilities were taken into consideration during planning in order to minimi ze the overall time-to-goal for the calculated trajectory. Their algorithm employed the A* search to optimize the plan. Thorpe and Matthies offer a path relaxation technique for mobile robot planning [THO85]. Here a grid search is performed to calculate and initial traject ory to the goal. Once an initial

PAGE 32

32 solution is established the path is relaxed by allowing the nodes th at describe the trajectory to follow the negative gradient of the cost grid. Th is is done to determine a more optimal final solution, and helps plan a path that is not too close to any obstacles. Vector Methods In an effort to increase computational e fficiency, reduce algorithm complexity, and to correct some of the problems resulting from field-based control methods, a number of researchers have devise d methods for planning us ing vector geometry. Borenstein and Koren pioneered the Vector Field Histogram method [BOR91]. In this method, a polar histogram of obstacle densities was constructed around a window centered at the robots location. The density values in the hi stogram were calculated by analyzing how objects in a grid interacted with a se t of vectors originating at th e robot. Once the histogram was calculated a desired heading vector was determined based on a target heading and the valleys in the histogram. Results showed successful local planning, but a possibility for the robot to become trapped in dead-end situations existed. A modification to the previous method wa s developed by An and Wang [AN04]. Their method known as Vector Polar Histogram differs s lightly form Vector Field Histogram in that the histogram is calculated directly from a polar se nsor (rather than a grid), and it is transformed into a binary histogram based on a dynamically changing threshold. This threshold value is calculated in real-time and is based on the robo ts velocity. Overall, the modifications were claimed to offer simpler and equally effective local obstacle avoidance. Vector based planning methods have also be en used to provide a simple means for avoiding moving obstacles. A tec hnique involving relative velocity vectors was offered by Fiorini and Shiller [FIO93]. A collision free path was planned for a circular object moving among circular obstacles with cons tant linear motions. To plan th e path a graph was constructed

PAGE 33

33 with straight line segments, which was a generali zation of the visibility graph to the case of moving obstacles. Jing and Wang advance a vector technique for avoiding obstacles in an uncertain environment, specifically for a mobile robot [JIN05]. The dynamic motion planning problem was transformed into an optimization problem in the robots acceleration space. As with Fiorini and Shillers method, relative velocity vectors between the robot and encountered obstacles are used in order to define the robots de sired behavior. With the behavior determined, a feedback control law was established, and stability in each planning period was proven. Probabilistic Planning Probabilistic methods for path planning have become increasingly popular for mobile robot navigation. These techniques are often designed to guide the robot through free space in a manner that reduces the risk of collisions or other undesired behavior s. Usually, an iterative analysis of the local environment is conducted as a preliminary step to probabilistic planning. Kavraki et al. developed an algorithm to calcula te probabilistic roadmaps of a robots free configuration space [KAV96]. In wh at they characterize as the learning phase of the planning method, the roadmaps are constructed by repeated ly generating randomized free configurations of the robot and then connecting these states with a simple motion pl anner. This process continues until enough configuration nodes exis t to successfully plan from a starting configuration to a goal. The number of free configuration nod es generated depends on the intricacy of the configuration space. A probabilistic method for obstacle avoida nce amongst moving obstacles with motion uncertainty is proposed by Miura et al. [MIU99]. In this resear ch, moving obstacles within the robots environment are modeled with motion uncertain ty, i.e. the predicted future location of the object is uncertain. The obstacles are also modeled for sensing uncertainty, in which the sensed

PAGE 34

34 instantaneous state of the obsta cle is unsure. Based on these pr obabilistic models, their method repeatedly selects the best motion plan in a deci sion-theoretic manner, that is, by a one-step lookahead search in a probabilistic search tree. Cell decomposition is a path planning me thod that involves partitioning the free configuration space of the robot in to disjoint sets, called cells. Me thods to generate the cell sets are often costly due to the comple xity of determining whether a cell is entirely contained in the free configuration space or not. Lingelbach pres ents a probabilistic method to cell decomposition where cells are probabilistically sampled to de termine if they are free [LIN04]. This method offered an improvement in the efficiency of cell decomposition for high dimensional configuration spaces. Thrun et al. present a broad explanation of probabilistic path planning algorithms for robotics [THR05]. Their overview describes a tec hnique known as value iteration, as a solution to a Markov decision process. In this process th e state of the robots environment is assumed to be known, but an allowance for stochastic action effects is maintained. In other words, the robots response to a given input may be uncerta in. The value iteration method in effect produces a probabilistic navigation function, which is used in planning to guide the robots motion. Control Strategies and Algorithms The control task for an AGV involves the regul ation of the vehicle onto a predetermined motion command. Here the goal is to minimize any error between the vehicles state and a desired state. This is done by commanding the ve hicle plant inputs in a deliberate manner, which is often specified by a mathematically define d function, or procedure. Many control methods have been developed for this purpose a nd some are described here in depth.

PAGE 35

35 Kinematics Methods Research in path tracking control of an AGV has demonstrated successful implementations of kinematic control methodologies, where system equations of the vehicles motion about a geometric path are used to develop a controlle r. An early kinematic technique known as pure pursuit was originally developed at Carnegie Mellon University. The solution gained much popularity due to its simplicity and performance. Coulter, a researcher at Carnegie Mellon, de scribes an implementation of the pure pursuit path tracking algorithm and some of the stability and performance considerations for it [COU92]. Essentially the method is used to calculate the arc (or curvature) necessa ry to get the vehicle back on the desired path. This is done by choos ing a look-ahead distance, and calculating the goal position on the path at that distance. This le ads to the analogy that th e vehicle is pursuing a moving point, which is always at some distance ahead of itself. A more in depth analysis of the algorithm was presented by Ollero and Heredia [OLL95]. In their research they presented mathematically fo rmulated stability criteria for a vehicle tracking a straight line and circular arcs Their work showed that the st ability of the closed-loop system was dependant upon the look-ahead distance paramete r, and any time delays in feedback data. They also presented simulated results; for va rying time delays and tuning on the look-ahead parameter. Vector pursuit is another kinematic technique devised for path tracking. This method was developed by Wit [WIT00] in his doctoral resear ch at CIMAR, and it involves determining the desired motion of the vehicle based on the theory of screws (introduced by Sir Robert S. Ball in 1900 [BAL00]). In an effort to correct some of the drawbacks of pure pursuit, Wit includes the vehicles desired orientation at the look-ahead point in the ge ometric analysis. Vector pursuit allowed for the consideration of both heading and distance errors without any mixed units (which

PAGE 36

36 other methods had) in the mathematical foundati on. This resulted in a ge ometrically meaningful control scheme. Linear Control Systems Linear control system theory contains a rich set of analysis and synthesis techniques for designing and implementing controllers. Many of these methods have been developed, tested, and proven for several decades, and are still comm only used in practice today. This is because the methods are often simple and robust in implementation, and because of these reasons, researchers have applied the th eories to the control of AGVs. Nelson and Cox, a team of researchers at AT&T Bell Laboratories, demonstrated the use of a simple proportional control scheme on a mobile robot [NEL88]. The controller was used to guide the vehicle along a set of pr edetermined path segments. There experimental results showed several problems with the control methodology. For example, the vehicle stability was affected directly by its speed, the faster the motion the le ss stable the path tracking. Also, transitions between path segments of varying curvature led to initial overshoots, which could not be corrected by control tuning. In a more recent effort, Choi presents a proportional derivative controller for an autonomous highway vehicle [CHO00]. Here the para meters are designed to be adaptive, in an attempt to correct persistent disturbances from wheel misalignments, unba lanced tire pressure, side wind, etc. The compensator developed provided closed-loop control fo r the vehicles lateral motion in highway lane following, and was demonstr ated in experiment to successfully stabilize the vehicle, and reject disturbances. A modern robust linear c ontrol technique known as H (H infinity) control, was used by Kim et al. to steer an AGV [KIM01]. This tech nique was used to synt hesize a state-space

PAGE 37

37 controller, which was robust to the quantifiable uncerta inty of: system parameters, noise, input signals, etc. In this groups research, the c ontroller developed was te sted on a car vehicle tracking a straight road. Initial results showed effective perfor mance in tracking the road, and merited additional experimentation on curved roads. Nonlinear Control Researchers in the field of mobile robot cont rol have widely devel oped nonlinear solutions to the problem. Nonlinear controll ers are designed and analyzed with a number of mathematical tools mostly based on the foundation of Lyapunov st ability criteria, which will be discussed in chapter three of this document. These methods are used, because the mobile robot control problem is highly nonlinear in nature, and it is not well suited for lineari zation or other linear control techniques. Significant results were obtaine d by Samson during the early 1990 s. In this work a smooth time-varying feedback controller was developed to regulate a wheeled mobile robot to an arbitrary set-point [SAM90]. This was a powerful re sult, because it showed that stable set-point feedback regulation, albeit time-varying, was practi cal despite the implica tions of Brocketts condition [BRO83], which proved tim e-invariant feedback for mob ile robot set-point regulation is not possible. Jiang et al. presented another time-varying fee dback result for globall y stable tracking of a mobile robot pursuing a reference trajectory that is a function of time [JIA97]. In this work, the group presented simulated results, which validated their theoretical result s. The robot kinetics equations were included in the design vi a an integrator b ackstepping technique. Dixon has developed several unified regulati on and tracking controlle rs, which guarantee stability of a wheeled mobile robot [DIX00] The differentiable kinematic control laws

PAGE 38

38 developed utilize a damped dynamic oscillator in wh ich the frequency of oscillation is tunable. These results led to continued successful work with simulated and experimental results. Model Predictive Control Model predictive control is an advanced technique often used in industry to solve optimization problems under certain constraints. A specific form of model predictive control is known as receding horizon control. In this met hodology, the control proble m is optimized over a finite period of time, and the re sulting control signal is applied to the system. This process is continually repeated. In each optimization, the firs t control signal in the optimized control profile is delivered to the plant. The remaining signals are discarded. Recently this technique has been applied to mo bile robot control. Gu et al. presented a result where a wheeled mobile robot was regulat ed to an arbitrary set-point using a receding horizon controller [GU05]. Their results showed th at stability for the r obot could be achieved and simulated data were given. Computation time was the main drawback of their result. They cited that real-time implementa tion of the controller was not pr actical given their method of optimization, and suggested further work was n ecessary in order to find ways of improving the computation efficiency. Binary de cision trees and artificial neur al networks were two methods suggested for incorporation, by the group. The following chapter offers the theoretical foundation and analysis for a new and novel methodology used to solve the computational proble ms faced in the real-time implementation of a receding horizon controller, particularly on an AGV.

PAGE 39

39 CHAPTER 3 THEORETICAL APPROACH Introduction Motion planning and control for an AGV ar e both challenging tasks. A novel methodology for unifying these into one task, while maintainin g online computability, is the main contribution of this dissertation. A newly devi sed heuristically optimized reced ing horizon controller (HRHC) is proposed for the combined task. The purpose of this chapter is to explain and formalize the mathematical foundation of the approach. Anothe r contribution of this dissertation is a novel extension to the standard reced ing horizon control scheme. The extension, called Dual-frequency receding horizon control (DFRHC) is al so presented in this chapter. Receding horizon control (RHC), or more gene rally, model predictive control (MPC) is an advanced technique used to solve complex constrained control problems online. A broad overview of the technique is offered in [MAY0 0]. It employs methodology from optimal control theory to determine the best control action for a given state. In receding horizon control, a sequence of open-loop plant inpu t commands are optimized over a finite time horizon. The first command in the sequence is then used as the control action for the plant and the optimization process repeats to determine a new control. Fee dback and disturbance rejection are incorporated into the technique by updating st ate estimates at a discrete ti me interval and executing the optimization procedure over the newly shifted time horizon. Figure 3, presents a visualization of the general RHC process, where an optimal input control sequence produces a minimal cost state trajectory in the state-space, when predicted though the system dynamics function of equation (3.1). A key concept of RHC is that the state trajec tory being tuned is generated by predicting the systems future states through a dynamical model. The procedure determines a set of open-loop

PAGE 40

40 commands which, when extrapolated through this model, yield a minimum cost path over the finite time horizon. Remark 1 : The use of RHC for an AGV inherently unifies the planning and control tasks, because the vehicles future motion is continua lly being optimized as a sub-problem of the overall control task. This con tinuous online optimizati on is equivalent to a separate planning process. The optimal control problem in receding horizon control is usually posed as the minimization of a quadratic cost function over the time interval[,] ttT For a time-invariant nonlinear system, the optimization is subject to the dynamics, whic h are given is their discrete form as, 1, x tfxtut (3.1) where,nmxtut denote the unconstrained state and control input vectors respectively. The dynamics function:nmnf is assumed to be continuous at the origin with0 0 0 f. The cost / value function for the optimization problem is typically given as (,)tT TT tVxtutxQxuRu (3.2) here bothQ and R are positive-definite symmetric constant weighting / gain matrices. The optimal control task is to choos e a sequence of future controls, which minimize the cost function over the projected time interval. The optimal input sequence is given by: 121 ,,,,tttttTuuuu (3.3)

PAGE 41

41 This optimal control sequence thus has a corr esponding sequence of future states, which is governed by (3.1). The instantaneous control input to the system in RHC is then selected as the first control vector in the sequencet : tutu (3.4) Repeating this process thus yields a clos ed-loop control system, because upon every time step the current state information is updated a nd a new optimal control is computed. Thus by repeatedly updating the state information, a feed back mechanism is inherently introduced into the control scheme. By substitution of the optimal control a nd predicted state sequence into equation (3.2), the minimum cost for the given state x is established. Typically RHC is used to control constrained nonlinear systems where: ,nmxtut are the constrained input and statespace which are convex subsets of the unconstraine d spaces, which include the origin at their interior. As a required ingredient for stability, a terminal state constraint xtT is also included in the problem, where n is a convex subset of the state-space which also includes the origin at its interior (The exact conditions which mu st be met for RHC stability are differed to later in the chapter.) With these cons traints, the optimal cost function for any given state can be expressed as the optimization problem solution: ,1()min 1, () subject to () ()tT TT uttT tVxxQxuRu xtfxtut xt ut xtT (3.5)

PAGE 42

42 Notice that equation (3.5) is explicitly inde pendent of time. This is because the underlying optimization of the system is time-invariant. In other words the optimization problem will always yield the same result for any sp ecific state regardless of time. Generally the minimal cost and its associ ated optimal control sequence are not known ahead of time and therefore a mechanism to determ ine these values is required to implement a receding horizon controller. Most commonly, th e optimization problem in receding horizon control is solved with Quadratic Programming techniques (due to the classically quadratic nature of the cost function) or Mixed Integer Quadra tic Programming (MIQP) [B EM00] (for finite and discrete systems). These are computationally expensive, complicated, and time consuming processes, which limit the use of receding horizon control for electro-mechanical systems. This limitation is primarily due to the time critical natu re of the required control, i.e., most electromechanical system have relatively short time constants and time-to-doubl e instability criteria. (Time-to-double is a widely used metric used to describe the amount of time it takes for an unstable system to double in amplitude. The s horter the time-to-double metric is, the more unstable the system is, and therefore it is more difficult to control.) However, RHC has seen the most of its success in the chemical process indus try where these types of system parameters can be several orders of magnitude larger than thei r electro-mechanical counter parts, and therefore a slower computation of the optimal control is acceptable. Motivated by the need to solve for these co mplex optimal trajectories online for electromechanical systems, the proposed heuristic reced ing horizon control (HRHC) uses a finite graph search known as A* (A-Star) to find the optim al control sequence, rather than a dynamic programming approach. A* search is a technique originally developed for Artificial Intelligence

PAGE 43

43 applications; however the method lends itself eleg antly for efficiently solving complex searches in state-space defined systems. Furthermore, since the optimization problem can become much more difficult for a nonquadratic cost function, in whic h systems are more generally de fined with the value function: ,1()min,tT uttT tVxLxu (3.6) where Lxtut is the general nonnegative intermedia te cost function over the optimization interval. A* search can be applied to such a system with little impact attributable to the complexity of L Other optimization methods require the function L to be in a specific form (primarily quadratic). One essential requirement of A* however, is that the state-space and input space be discrete and quantized. (General ly it is more important to have a quantized input space. The state-space may remain continuous, so long as a few simple modifications are made to the search. This will be discussed in more detail in the third section.) Cl assically, receding horizon control requires that the input and state-spaces are continuous in order to guarantee stability and optimality [MAY90] (Solutions that achieve these properties exist for both discrete and continuous systems. See [NIC98]). To apply A* to the RHC problem the notion of both stability and optimality must therefore be modified to in clude results that are su fficient but nevertheless sub-optimal. Researchers have shown that sub-opt imal solutions to the classic RHC problem can maintain overall stability [SCO99] but the idea of stability change s slightly when considering a system controlled by a quantized input set [BRO00]. It should be noted that the c onsideration of quantized input control is inherently more robust for implementation on real-world system s for a very practical reason. The modern

PAGE 44

44 approach for control systems incorporates the use of discrete comput ers and their respective electronic interfaces to the continuous system The underlying control mechanisms are thus discrete and quantized, i.e. pr ogram variables in memory, anal og to digital converters, etc. Therefore the inputs to the con tinuous systems are also discre te and quantized. Although these facts are more often now neglected due to the increasing resolution and speed of computing and interface hardware, by considering th eir effects in the control solu tion, a better defined and more predictable behavior can be achieved. The remaining portions of this chapter are br oken down into sections as follows: in the second section, basic assumptions notation and preliminary results are discussed. The third section defines the A* algorithm used by HRHC. In the fourth section, the required quantization and invariant set properties needed for stability criteria are given, and the formulation of the novel HRHC is presented in the fifth section. Dual Frequency Receding Horizon Control (DFRHC) is shown in 6, and fina lly conclusions are presented. Notation, Assumptions, and Preliminary Theorems An essential theorem for RHC is that of th e suboptimal stability conditions. When met, these criteria provide proof that the system will maintain stability, and converge to a desired set point. Classically, the stability of nonlinear syst ems has been identified with the standard Lyapunov stability theorem. One fu ndamental requirement of this theorem is that the input control u of the system is a conti nuous function of the st ate x, and hence this also implies that the control for any partic ular state be unique. The suboptimal stability results are formulated in a manner similar to that of the standard Lyapunov stability theorem; however they allow for a non-unique and discontinuous control law. As will be shown later in the chapter this is the case that must be considered for HRHC, because of the finite and quantized nature of the A* search.

PAGE 45

45 Before the suboptimal stability theorem is presented, some basic notation must first introduce. First, the Euclidian norm of vector x is denoted as x where the dimensionality of the vector x, is identified th rough the context. Any function defined on the range 0, is considered a class K-function if it is continuous and strictly increasing, with00. Lastly, let n r B denote a closed ball set of radius r in the spacen, or in another form, let the set :|nn r B xxr With these concepts defined, the suboptimal RHC stability theorem is referenced from [SCO99], and provides the basis of stability fo r the newly proposed HRHC scheme of this dissertation. Feasibility Theorem for Suboptimal RH C from [SCO99], let there exist: 1) a value function : V which is continuous at the origin with 0,00 V and a Kfunction such that nVxtxtx (3.7) 2) a set 0 nX that contains an open nei ghborhood of the origin and a K-function such that every realization of the controlled system with 00 x X satisfies0 x tX for all0 t and 1 VxtVxtxt (3.8) 3) a constant0 r and a K-function such that every realization of the controlled system withn r x tB satisfies

PAGE 46

46 t x t. (3.9) Then the controlled system is asymptotically stable in0 nX This theorem simply identifie s that: if the value function can be lower bounded by a class K-function and if the change in the value function can be upper bounded by another K-function and the norm of the suboptimal control sequence t can be upper bound by a K-function then the controlled system will be asymptotically stable in a the local region0 X The reader is referred to text [SCO99] for the complete detailed proof of the theorem. A* Algorithm and Admissibility As stated in section I, the process of determining the open loop input sequence (3.3) requires an optimization method in the recedi ng horizon control scheme. One way to accomplish this step is to conduct a search for the optimal sequence over a finite input and state-space graph. One of the most readily used techniques to do th is is known as the A* (A-Star) search. The bulk of information provided in this section is given in [N IL71] and [NIL98]. This gives a synopsis of the provided formulations and is used only as an introduction of the required knowledge needed to detail HRHC. For a more complete discussion refer to [HAR68]. A* is an admissible graph search algorithm. The admissibility of the algorithm guarantees that it will always terminate with a minimum cost optimal solution sequence if one exists. This is a required property for implementation of reced ing horizon control sin ce the optimality of a solution is closely related to the stability of the control. The A* algorithm is a heuristically guided search. The term heuristic means serving to aid to discover, and is derived from the Greek verb heuriskein meaning to find. The heuristic information, as will be seen, depends on some educated or special knowledge a bout the type of problem being represented by the graph. This

PAGE 47

47 information is used to guide the search in orde r to increase its efficiency and timeliness. The heuristic information is represented by a heuris tic function in the search algorithm. It will be shown that if this function adhere s to some simple constraints the search can be made to be both efficient and admissible. Before the A* algorithm is discussed, it is first necessary define the general graphsearching process. A gra ph consists of a set of nodes where each node represents a particular configuration in a corresponding st ate-space. A node in the graph can be connected to another node in the graph by an arc The arc defines a way to get from one node to the other and it can be correlated to a unique transition in the represented state-space. A graph search is a process that determines a sequence of state transitions, represented by arcs in the graph, that allow for the transversa l from one specific node to another specific node or group of nodes. Every search therefore has a start node which is associated with the initial state configuration, and a set of goal nodes or single goal node, which represent a final desired configuration. The successors for any node in the search, i.e. the set adjacent nodes connected to the original node by a single arc, are calculated via operations applicable to the corresponding state configuration describe by that node. For example, for a nonlinear system defined by (3.1), any state configurationt x represented by nodet x n can by succeeded by a set of states1t X which are the result of applying the se t of possible input commands t x U over a finite period of time. A way to show this process is as a ma pping from the given state to the se t of future possible states, as seen here: 1t xfxu tt uU x X (3.10)

PAGE 48

48 This operation is called the expansion of a node and is denoted by the operatorn The expansion of a node therefore produces a set of successor nodes, which can be shown with: 1iiNn. (3.11) As a direct requirement of the expansion pr ocess, when applying a ny graph search to a linear or non-linear state-space co ntrol system, the input space ( u ) must be finite and discrete (thereby implying a quantize-input system). Without a discrete i nput-space, the expansion of a single node would generate an infi nite number of successor nodes. Cl early this would result in an undefined search process. By using a naturally or artificially quantized input space, the graph search remains finite and computable. This quantization has a profound impact on the overall control stability, the complete discussion of wh ich is deferred to later in the chapter. During the expansion process, pointers are set up from each successor node to its parent. These pointers are used to trace a route back to the start node once a goal node has been found. The functions which define the relationship of a node with its represented state and the pointer to its parent are given here: 1,,iinnodextutn (3.12) 1 i i ii x nodenxt unodenut p nodenn (3.13) where equation (3.12) is the node construction functi on, which requires a state, input and predecessor node, and the equations in (3.13), provide a means to access a given nodes state, control input, and parent node.

PAGE 49

49 The graph structure automatically created as a result of the expansion process is known as a tree A tree is a graph in which each node has a uni que parent, except for an origin node which has no parent, and is called the root node In this case the root node is clearly the start node. Trees also have the unique property in that every path to a node in the graph is unique. Therefore, it can be guaranteed that each node created in the tree has never been generated before nor will it be generated again. As the expansion process continues, each of th e newly generated successors are checked to see if any of their represented st ate configurations meet the require d goal state criteri a. If such a goal node is found the arcs connecting the solutio n nodes are traced back to the start using the pointers, and the corresponding solu tion sequence of state operator s, which produce the path to the goal, is generated and returned as the result. This description is of a general graph search process. However, for the description to be complete, another process which clearly defines the order in which nodes are expanded must be established. One way to define this process is si mply to expand nodes in the order in which they were generated; this is known as a breadth-first search. Another way is to expand the nodes which were most recently ge nerated, a process called depth-first search. Both breadth-first and depth-first are known as blind-search procedures, because they do not use any information which is relevant to the problem being represented in the search graph. A* search uses heuristic information to provide a more informed way to search through the graph and its represented state-space. The heuris tic information is given in the form of a mathematical cost estimation function, which is part of an evaluation function that is used to order the node expansion process. This evalua tion function then serv es the purpose of ranking candidate nodes by which one is most likel y to be on the best path to the goal.

PAGE 50

50 The A* algorithm defines the evaluation function f n as an estimate of the cost to reach the goal along a path which is c onstrained to pass through node n This evaluation function therefore estimates the cost of a minimal cost path as the sum of the estimated cost from the start node s to n and the estimated minimal cost from the node n to any goal node. The candidate node which has the minimum value of f is thus the node with the best chance of being on the minimal cost path to the goal, and it should be expanded ne xt in the search. Assuming the function,ijknn provides the true minimum cost from nodein to node j n the following cost function is defined: min,gGhnkng. (3.14) Here G is a set of goal nodes. Note that this function is unde fined for any node from which the set of goal nodes is unreachable. The function gnksn (3.15) provides the minimum cost from the unique start node to the node n and is only defined for any node in which a path from the start node exists. The sum of equations (3.14) and (3.15) is defined as f ngnhn (3.16) and is the true minimum cost from the start node to the goal, on a pa th constrained to pass through the node n Since A* requires the evaluation function to be an estimate of (3.16), the estimate is defined as

PAGE 51

51 f ngnhn, (3.17) where g is an estimate ofg and h is an estimate of h Clearly gncan be calculated by simply summing the accumulated costs of single arc transitions from the start node through any successor nodes and ulti mately to the node n The estimate h however is much more difficult to calculate since no future knowle dge of the minimum cost path to the goal exists, because such a path is constructed only when the search is finished. At a midpoint in the search, heuristic information or knowledge about the problem being represented must be used. Hence his called the heuristic function This heuristic function must meet certain criteria in order to maintain admissibility of the A* algorithm. The A* algorithm is defined as an extension to the general graph s earch process, which uses the evaluation function given in (3.17) to select the order in which nodes are expanded. The algorithm is broken down into a sequence of steps shown in Table. Essentially, the search is conducted via the management of two sets, one set O is called the open set, and the other set C is known as the closed set. The open set maintain s a list of candidate nodes which have not been checked to see if they ex ist in the goal set. The closed set co ntains all of the previously expanded nodes, which are not in the goal se t, however must still be manage d in order to allow a solution sequence to be traced back to the start node from the goal node. Initially the algorithm is given the start node s and the goal set G The search continues the process of finding a minimum cost estimate node on the open set, and expanding the nodes until either a solution node is found or the open set runs out of candi dates. The expansion operator is responsible for generating successor nodes (i f they exist) and setting up pointers to the

PAGE 52

52 parent node. If a goal node is f ound, it is returned as the solution and it can be traced back to the start node through the es tablished pointers. Up until this point in the chapter, it has only been stated that the evaluation/cost function, f n must meet certain conditions in order for the A* search to find an admissible solution sequence to the goal set. This fact is based off of two keystone theorems proved by the creators of the A* algorithm [HAR68]. They are cited here only for reference. The reader is referred to the previous s ource for detailed proofs. A* Lemma: If hnhnfor all n then at any time before A* terminates and for any optimal pathPfrom node s to a goal, there exists an open node' nonPwith f nfs This lemma establishes that if the heuristic func tion cost estimate is less than the true cost to the goal for all nodes, then some node' n, created during the A* search process, exists on the set of open nodes, and its corre sponding path cost estimate f nis less than the true minimum cost path to the goal from the start node s. A* Theorem: Ifhnhnfor all nodes n, and if all arc costs are greater than some small positive number then algorithm A* is admissible. The initial A* lemma is used to prove the primary A* theorem which states that if a heuristic function is chosen that always underestimates the true cost to the goal, and if state transitions along arcs between nodes have some n on-zero cost, then the A* algorithm will always terminate in an admissible solution if one exists. For the theoretical approach described here, A* is used as a replacement for a classical optimization routine, and theref ore an algorithm is desired that can obtain an admissible, and thus near optimal, solution sequence from a start state to a goal state. In order to adhere to the A*

PAGE 53

53 theorems, a heuristic function is chosen that alwa ys underestimates the state transition cost to the goal region, in order for this implementation of RH C to be correct. The meaning of this heuristic function and how it is selected is very important and is the basis of the Heuristic RHC implementation discussion in the next chapter. Quantization and Invariant Sets As aforementioned in the previous section, in order to use the A* algorithm in place of an input sequence optimizer, a quantized (artificially if need be) input space must be used for the system that is being controlled. This is becau se the expansion of nodes during the search must yield a finite set of successor node s rather than an infinite con tinuum of possible future states. Since the expansion of a node is calculated by stimul ating all possible input commands over an interval of time, then the numb er of possible commands must also be finite and hence quantized. This quantization will guarantee a finite set of successor states for any given configuration represented by a node. Th e quantized input set is a subset of the continuous real input space and is defined as: 12:,,,m Nuuu (3.18) where subscripts 1 through N denote the different levels of quantization. The discussion of the effects of input quantiza tion first requires some critical definitions which are now introduced before the fo llowing formulations of the chapter: Definition 1: A set of state-space configurations is considered to be zero-measure set if it is made up of only singular discontinuous configurat ions, such that the meas urable probability of finding the system in that state would be equal to zero. Example: in a two-dimensional statespace, a non-null zero-measure set would consist onl y of points or curves in the configuration

PAGE 54

54 space, whereas a measurable set would consist of at least one con tinuous area or region. Likewise, the three-dimensional equivalent would require some measurable volume. Definition 2: The terminal constraint regionn is a controlled-invariant set for system (3.1) iffxu such that 1, xtfxu Definition 3: If0 nX then the set is said to be0 X attractive iff0 x Xthere exists some trajectory contained in0 X that enters in a finite number of steps. In addition, if 0 x X the trajectory can be chosen to be of length T (where T is the number of steps in the time horizon), thenis said to be0 X attractiveinTsteps By Definition 1, it can clearly be seen that th e quantized input set is indeed a zero-measure set in the constrained input space. The conseque nces of a quantized input space belonging to a continuous nonlinear system, such as an Autonom ous Ground Vehicle, are far reaching in their impact on its stability and its reachable state conf igurations. The classic concept of stability, i.e. asymptotic or exponential convergence to some setpoint or tracking point, is lost because the zero-measure nature of the control prevents the system from performing arbitrary state transitions. Instead, the system is restricted to a finite set of future states, which depend on the levels of quantization and the number of deci sion steps or time horizon. This restricted performance requires a more practical sense of stability, in which the system is allowed to converge to a broad set-region in the state-space. This notion was made clear in [DEL90] for an attempt to define more realistic stability properties for quantized systems. Also, since the input space is quantized, the determined solution will always be suboptimal. The reason for this is that the true optim al solution is assumed to be a sequence, which exists somewhere in the conti nuous input space. Since the in put set is zero-measure, the probability of finding the true optimal input sequen ce within the quantized set is zero. In other

PAGE 55

55 words, a quantized solution cannot include ever y possible input and ther efore one will never practically be able to find the true minimum cost trajectory that exists somewhere in the continuous state-space. This is reflected in a comparison of the optimal state transition cost between the quantized in put system and the continuous input system: min,min,.mu uVxuVxu (3.19) Figure shows the possible input space sequence over the time horizon, and that the optimal solution values will never exactly touch the possible quantized input values. As a result, the optimal quantized input state-spa ce trajectory will differ from th e continuous input optimal state trajectory. This trajectory difference will result in a larger value function cost, and thus is considered to be suboptimal. In order to insure stability of a RHC, one so lution [MAY90] is to impose a terminal state constraint, 0 xtT on the optimization problem. For a quantized input system, this would result in a zero-measure set of possible initial states, thus rendering this stability constraint unrealistic. Rather a quantized i nput system must incorporate a re laxed terminal state constraint to include an entire controlled-invariant region This allows the optimization problem to find a viable solution for a feasible and significant set of initial states. The significance of Definition 3 is that the region of attraction for the terminal state regionis only guaranteed to be local within the region0 X That is to say the system will only stabilize when initialized within the region0 X This concept is identical to that described in the feasibility theorem presente d in the second section.

PAGE 56

56 Heuristic Receding Horizon Control Motivated by the desire to unify the planning and control tasks for an AGV, Remark 1 proposes RHC as an elegant solution to comb ine the two problems into one. Unfortunately, traditional methods of optimization required for RH C hamper the ability to use the technique for electro-mechanical systems. This is due to the time consuming nature of the online optimization, which is usually much longer than the system re sponse time. As a means to greatly reduce online computation, this dissertation proposes the idea of Heuristic Receding Horizon Control (HRHC). In HRHC, heuristic information about the problem is used to maximize the performance of an online search of the systems input and state spac es. This search is then substituted in place of the usual optimization routines. A proven algorithm for heuristic searching in a finite decision space is the A* search. Section II of this chapter has presented the form al basis for the algorithms admissibility and its general computation. The direct consequence of using the A* sear ch for RHC is that a quantized input space must be used for this system. This quantization in turn has further consequences on the performance and stability of the system, which must now be characterized in a different form when compared to classic stability metrics. Thes e effects have been detailed in Section III, and the critical definitions and concepts presented in that section are now required for the complete stability analysis of HRHC. To begin, the general cost optimization problem, subject to the terminal state constraint is revisited, with the added constr aint that the input set be that of the quantized input space Thus the RHC optimization problem now takes on the form:

PAGE 57

57 ,1()min, 1, () subject to () ()tT uttT tVxLxu x tfxtut xt ut xtT (3.20) Furthermore, the A* minimum node-to-node transition cost functionk is also defined such that it is equivalent to that of the RHC general cost function given in (3.6), by taking advantage of the node to state re lationship functions provided in (3.13): 1,min,ijj ijkk unn ki kkknnLxnodenunoden subjecttonn (3.21) Also the expansion function Gamma is more completely defined as the union of all generated nodes over the quanti zed input set U and extrapolat ed though the dynamics function f thus yielding: ,,, ,iii u innodefxnodenuun subjecttofxnodenu (3.22) The combination of the two techniques used in HRHC, namely the A* search algorithm and Receding Horizon Control, is based off of the key concept that the general value function presented in (3.6), is obviously related to the A* cost-to-go function, which is given in (3.14). Lemma 1: The RHC optimal value function () Vxtsubject to the quantization constraints;()uxtT is equivalent to the A* cost-to-go functionihnwhen the

PAGE 58

58 function,ijknnis defined as in (3.21) with the additional condition that the terminal state x tT is represented by node j n and|()gGxnodeg Proof: Given that k x nodenx implies nodeknrepresents the system state at arbitrary time Sincekhnis the minimum cost from nodekn, to the goal region G, via the expansion operator, then the cost accumulated over each state tr ansition arc to the go al will equal that of the identical state tran sition sequence calculated via (3.6), and since is constrained to expand only quantized inputs through the mapping (3.10), then the state transitions will be restricted to the quantized permitted inputs used in the optimization problem(3.20). Therefore, the A* cost-to-go function is writte n more completely by the equations: 1minmin,j ijj ikk nG unn ki kkhnLxnodenunoden subjecttonn (3.23) It can be deduced from this nested minimi zation of the cost function that the overall minimum cost via a set of node input commands,ijunn will be the same for a single minimization subject to the additional constraintjnG Thus the nested minimization can be written as a single minimization in the form: 1min,ijj ikk unn ki kk jhnLxnodenunoden nn subjectto nG (3.24)

PAGE 59

59 In addition, if j is chosen such that j x nodenxtT or in other words all terminal nodes at generation j represent the system at timetT and since the expansion operator is constrained to quantized input extrap olations through th e dynamics function (3.1), and limited to the constrained state-space, then the constraints of (3.24) are identical to (3.20), and thus *ihnVxt (3.25) Theorem 1: If the A* heuristic function ihn is selected such that ()ihnVxt then the algorithm will terminate with a solution node, which when tra ced back to the start node represents an input decision sequence with the equivalent optimal value function V*(x) subject to the constraints of equation (3.20). Proof: From lemma 1, it is clear that the optim al value function and the A* cost-to-go functions are equivalent. The proof of Theore m 1 then follows from the A* admissibility Theorem referenced in the third section. If the heuristic function is selected such that* ()ihnVxt then obviously iihnhn and therefore by the A* Theorem it is known that the algorithm will terminat e with an admissible solution, and so the corresponding state transition sequence will be the eq uivalent of one determined with the quantized and constrained optimization problem of (3.20). The stability criteria of HRHC follow that of the suboptimal RHC (Feasibility Implies Stability) theorem referenced in Section II. Sinc e the A* quantized optimal solution sequence has to be suboptimal compared to the continuous in put optimal solution, then the conditions that HRHC must meet in order to maintain system stability must be relaxed to those of the suboptimal requirements. The first condition of the suboptimal RHC theorem is satisfied by the design of the cost function, which can be chos en such that it is lower bounded by a class K-

PAGE 60

60 function. The second condition is also easy to sati sfy by imposing an additional constraint on the search whereby the cost values along the solv ed trajectories must decrease by at least Lxtutwhere 0,1is just a constant. Lastly the third criteria is usually satisfied by assumption, however as will be discussed in the next chapter this constraint is less important for quantized systems where one can find some controlled-invariant set or even less important, when the system is simply turn ed off in the terminal state re gion. The main purpose of HRHC is to find a fast solution that will drive the system towards the goal region. With parts one and two of the feasibility theo rem met, that is all one needs to do the job. An outline of the HRHC algorithm is given in Table 3-2. The basic process is to first generate the A* start node based off of the syst ems current state, input and a null parent node pointer. Then an A* search is conducted, in order to find the least cost path from the start node to the goal region. The search differs slightly from the one outlined in Table, in that the goal test checks the state represented by the node for membership in the goal region set. Also, the solution node is not returned rather it is traced back to find the initial optimal input command in the sequence. If a solution doesnt exist then th e controller faults and ex ternal techniques could take corrective action. The outlined algorithm only represents a sing le iteration of the HRHC control loop, and therefore the process is repeated online at a fi xed interval, with state feedback information and any changes to the goal set if they exist. Dual-Frequency Receding Horizon Control For systems capable of providing feedback inform ation at a rate higher than that required for predictive planning and c ontrol, it may be desirable to take advantage of the feedback in realtime, rather than postponing any state upda tes until the next RHC optimization iteration.

PAGE 61

61 Furthermore, since RHC requires the prediction a nd optimization time steps to equal that of the state update period, if the update fr equency is very high, then too many intermediate steps to the desired horizon time may be required. The purpose of Dual-Frequency Receding Horizon Control (DFRHC) is to allow predictive optimization out to a desired time horizon, while simultaneously reducing the total number of planning steps and integrating feedback informa tion at its real-time rate. The method works by predicting the system state res ponse through a series of constant input commands, much in the same way classic RHC works. The difference is th at the constant input commands are held over a time step period which is a multiple of the shorter feedback period. For example, if the feedback period is one millisecond, then the optimization prediction period may be five milliseconds. This lower frequency prediction sequ ence is then optimized and the first command in the sequence is executed for one millisecond. Th en the process repeats, by again predicting the systems response through a chain of five millisecond input commands out to the time horizon. Figure diagrams the general DFRHC process. Sh own there is a three step planning sequence out to the time horizon T where the prediction period is denoted as p This planning period p is just some constant integer greater than the feedback period, which is just one for the example. The first input in the control sequence is then applied to the system for one feedback cycle, and the lower frequency optimization process is repeated to determine a new command. The name Dual-Frequency, comes from the fact that the optimization prediction steps are planned as if they are to be executed at one frequency, when actually only the first command in the sequence is used as the system input for th e feedback cycle, which is operating at a second fixed frequency.

PAGE 62

62 This method has several advantages, when compar ed to classic RHC. One of the benefits is the ability to maintain optimization computabili ty in real-time, over an extended time horizon. The reason for this is that sinc e the time of computation increa ses exponentially with the number of planning steps, by reducing the number of steps out to the horizon one can decrease computation. Because of this, the method also al lows for a longer time horizon, which increases the region of attraction for the controller, and allo ws for a larger envelope of system operation. Another important lead is that maintaining feedba ck at a high rate, allows for faster disturbance rejection, and increases robustness with respect to model inaccura cies, because of the systems ability to react to unpredicted changes faster. A disadvantage however is that because ther e are fewer planning steps, any obtainable state trajectories are more constr ained. Therefore, this will result in a higher cost value function, and will produce results less optimal than a high frequency input sequence. An illustrative example that explains the st rategy behind DFRHC can be presented in the form of an investment planning problem. Imagine for example a scenario where some investor is planning a five year investment policy. The cl assic RHC method would perhaps have the plan call for purchases and sales once a year and thes e transactions would be planned and predicted over what the investor thought the market was goi ng to do for the next five years. However, if there were a market crash at the midpoint of th e year, the initial stra tegy would not allow for rapid transactions to correct for the unforeseen crash. The investor would have to wait for the next year in order to plan and execute new transactions. A better strategy would be to plan transacti ons over the long term, and reevaluate those transactions on a frequent basis. To reduce complexity, the invest ments would not be planned at the same frequency as the reevaluations, but w ould rather represent on ly a broad strategy over

PAGE 63

63 the five year period. This way, if a market cr ash did happen, the frequent reevaluations would allow for a rapid correction in the long term pla n. This is the essence of DFRHC, changes to the plan can happen fast as new information becomes available, and this way if a large unpredicted event happens it can be accounted for right away. The computation process of DFRHC is nearly identical to the classic RHC with the exception that the intermediate predicted states are calculated recursively through the dynamics function (3.1), over each individual planning step. If the planni ng period is specified as p state update periods the calculati on of the a future state x tp given a constant input u is 12...(),,,p x tpfffxtuuu (3.26) where subscripts 1 through p simply represent the iteration of the recursively calculated state update function. It should also be noted that DFRHC is very easily incorporated into HRHC since the only change to the calculation is that the predicted st ates must be calculated re cursively as in function (3.26). This requires only a trivial change to the node expansion function. Conclusions This chapter has introduced two new and novel RHC advancements. The first is HRHC, in which the general strategy is to employ heuris tic information about the control problem being represented in order to maximize the performan ce of the required online optimization problem. This is done by replacing any usual optimization methods, which are often too slow for electromechanical systems, with an A* search algorithm. This algorithm is designed to take advantage of heuristic information during the search pro cess for any system defined in a state-space. The second technique is DFRH C, where the general concep t is to optimize a state trajectory over a set of extended period planni ng steps. The steps are planned at a frequency

PAGE 64

64 lower than that of the feedback update frequenc y, and then the proce ss repeats after a single feedback iteration. Both methods are easily combined together, which allows for a combined effect that further increases optimization pe rformance to an extended time horizon. This combination is simple to do because the expansion operation in th e A* search is simply changed to extrapolate state trajectories over a repeated single input command. One very important item not disc ussed in this chapter is the ability to use RHC methods to plan AGV motion through an obstacle riddled envi ronment. As per Remark 1 it should be possible to use RHC to execute simultaneously planning and control. However, in order to incorporate motion optimization around obstacles or though some other complex structured environment, then some non-trivial changes must be made to the setup of the RHC problem. These changes and their effects on system stab ility and performance are the focus of the following chapter.

PAGE 65

65 Table 3-1: The algorithm AStarSearch is used to find an admissible solution sequence to a goal region from a given start node. It requires the definition of an admissible cost function, and expansion process, in order to successfully execute. Line Action Comment 1: Algorithm AStarSearch( s, G): 2: Os // Let the open set equal the start node 3: C // Let the closed set equal null 4: while O do // While the open set is not empty 5: argmini infO // Find the minimum cost estimate node on open 6: OOn // Remove the node from open 7: CCn // Put the node on closed 8: if nG then // If the node is a member of the goal set 9: return n // Return the solution node 10: endif // End of if statement 11: OOn // Expand the node and put successors on open 12: endwhile // End of while loop 13: return // Return no solution found

PAGE 66

66 Table 3-2: This table represen ts the algorithm for a single HR HC iteration. This process is repeated online at a fixed rate, with f eedback state, input and goal information. Line Action Comment 1: Algorithm HeuristicRHC( x, u, ): 2: ,, snodexu // Initialize start node to current state and control // Begin to conduct an A* search 3: Os // Let the open set equal the start node 4: C // Let the closed set equal null 5: while O do // While the open set is not empty 6: argmini infO // Find the minimum cost estimate node on open 7: OOn // Remove the node from open 8: CCn // Put the node on closed 9: if () xnoden then // If the node state is a member of the goal set 10: endwhile // A solution has been found, so end the search 11: endif // End of if statement 12: OOn // Expand the node and put successors on open 13: n // Reset the node to null 14: endwhile // End of while loop // Now trace back the solution 15: if n then // If a goal node has been found 16: whilepn do // Loop back until the start node is reached 17: npn // Set the current node equal to its parent 18: endwhile // End of while loop 19: return unode(n) // Return the initial optimal control input 20: else // Else no solution has been node found 21: return // Return null to indicate a fault 22: endif // End of if statement

PAGE 67

67 Horizon Time utt+1 tt+T t-1 Horizon Time x ttt+T Horizon Time utt+1 tt+T t-1 Horizon Time x ttt+T Optimal Input ControlsOptimal State Trajectories f xtut f xtut Repeat Optimization Online Figure 3-1: Receding horizon control is the optim ization of an open-loop sequence of system inputs, in order to produce a minimal cost state trajectory and then repeating the process online. This diagram shows a typica l piecewise constant input sequence with the corresponding measured and predicted state trajectories.

PAGE 68

68 Horizon Timeutt+1 tt+T t-1 Horizon Time x ttt+T Input ControlsState Trajectories f xtut Continuous System: Quantized System: Key:Suboptimal Optimal Figure 3-2: The quantization of the systems i nput space prevents the optimization problem from achieving true optimal performance. The true optimal control input lies somewhere in the control space, but the probability of fi nding that sequence in the quantized input space is very low. Hence, the quantized system will always achieve only a suboptimal state trajectory.

PAGE 69

69 Horizon Timeutt+p tt+T t-1 Horizon Time x ttt+T Horizon Timeutt+p tt+T Horizon Time x ttt+T Optimal Input ControlsOptimal State Trajectories f xtut f xtut Repeat Optimization Online t-1 Figure 3-3: This diagram identifies the basic DF RHC scheme. Notice that there are two distinct time frequencies, one for state feedback and re-optimization, a nd the other for the prediction steps to the horizon. The proce ss optimizes an input sequence, predicted with some input time period p, and then repeats the optimization after state information has been updated after a single feedback period.

PAGE 70

70 CHAPTER 4 APPLIED APPROACH AND IMPLEMENTATION Introduction The need to implement online planning and real-time control on the CIMAR NaviGator AGV was the driving motivation behind the work presented in this dissertation. Using the theoretical concepts and mathematics described in Chapter 3, simultaneous planning and control was put into operation on the vehicle through th e use of Heuristic Receding Horizon Control (HRHC), combined with Dual-Frequency Recedi ng Horizon Control (DFRHC). Both of which are the new and novel theore tical concepts presente d by this dissertation. The NaviGator has served, as the basis platfo rm for implementation and testing of these concepts. In the overall NaviGato r control system, the implemen ted novel planning and control task is compartmentalized into a software component called the Reactive Driver (RD). Figure 41 shows a block diagram of this control system with the RD component residing within the Intelligence element. The RD allows the planning and control functionality to be decomposed into a separate compact module. By breaking th e overall system down into smaller components such as this, the implementation of other tasks and cap abilities like environment sensing, and low level vehicle actuation, becomes less complicated because they are only loosely coupled to the rest of the system. The RD is responsible for closing the l oop between sensors and actuators. As such information sensed from the environment is first processed by feedback components called Smart Sensors. These sensors process informati on from sensed raw data and normalize it into a standard form which can be easily fused with similar data from other Smart Sensors. The exact format of and information represented by this data will be discussed in the second section of this chapter. After the sensor data is fused togeth er by an Arbiter component, it proceeds to the

PAGE 71

71 Reactive Driver, where the RHC algorithm of th is dissertation attempts to find actuator commands which regulate the vehicle onto a pr edetermined motion path. This flow of information is inline with the sense-plan-act sche me mentioned in chapter I, since it is repeated continuously throughout the systems online operat ion, and also because the planning step is inherent to the RHC functiona lity of the Reactive Driver. The use of environmental sensors within the sy stem leads to one major issue which is not theoretically addressed in the pr evious chapter. Namely the issu e that comes into play during implementation is Obstacle Avoidance (OA). The introduction of obstacles into the vehicles task and configuration space has severe repercus sions on the systems stability and performance. For RHC to work, it is essential that the OA problem be cast into a form that allows the optimization procedure to find a valid control so lution that will guide the system safely through the state space. This requires the obstacles a nd environment to be represented in a way that elegantly blends the OA problem with the trajecto ry or state regulation problem during the online computation. In turn, the value function must be modified to reflect the inclusion of additional environmental or state-environment interaction costs. An essential section of this ch apter addresses in detail the issues of OA. It is a vital discussion because OA capability for AGVs is what allows them to operate and execute different missions through their often cluttered and unpred ictable environments. Since knowledge of the environment structure is usually incomplete prio r to task execution, th e robotic vehicle must have some OA functionality. This also means that the system must also have the ability to sense any obstacles or other undesired st ates, and a way to represent what is sensed so that it can be used by other processes that plan the vehicles motion. This abilit y, on the NaviGator vehicle, is implemented as mentioned, within the Smart Sens or components, and is not the focus of this

PAGE 72

72 dissertation. However, the output of those se nsors is consumed by the Reactive Driver component of the system and theref ore needs to and will be discussed. Aside from the ability to sense disagreeable st ate configurations, an AGV can also benefit from the capacity to sense desirable states, terra in or conditions. This allows the system to maximize the chances of successful task execution. An example of this would be sensing a road adjacent to the vehicles current path and then sw itching onto driving that road if it were more conducive than the current path. This ability, like OA, can also be incorporated into the RHC task, assuming that the desirable state configurati ons are represented in a way that allows such information to be combined with state regulation costs, within the optimization routine. The RD component in conjunction with the NaviGators Sm art Sensors, allows for this behavior, and is implemented in unison with the OA behavior. Th e ability to both avoid obstacles and track desirable terrain is inherent in the design of the Smart Sensor / Reactive Driver interaction, and will be addressed in detail later in this chapter. Obstacle Avoidance From Remark 1 in the previous chapter, it is suggested that RHC applied to an autonomous vehicle system will allow for unifi ed motion planning and control. If the optimization problem is cast correctly, this should inhe rently include an OA capability However, it should first be considered that the regulation of a vehicle onto some desired stat e motion structure, while at the same time avoiding any undesired regions in the configuration space (due to obstacles, or other high risk hazards) is by nature c ontradictory. For example, if th e system is required to drive along a particular geometric path, avoiding an obstac le in the way of that path also demands that the vehicle depart from the initial intended traj ectory. This behavior, when viewed from the classical control sense, is unstabl e with respect to the goal. Error signals used for path regulation would inherently increase duri ng the avoidance maneuver. Howeve r, the overall behavior, when

PAGE 73

73 viewed from the system user, seems desirable an d in a new sense stable. The implications of this simple concept are far reaching in their impact on the notions of system stability and performance. To simply put that the idea of stab ility requires the continuous minimization of all error signals for all time is no longer valid. The desired perfor mance of the system, and what could be considered stable be havior, now involves the movement around and away from the original goal structure. The essence of these concepts is that stabil ity, in the presence of obstacles, requires the minimization of a properly designed value func tion, not the minimization of only state error signals. This therefore suggests that unstable behavi or is coupled to the su b-optimality of the cost function and open-loop input sequence of the RHC process. Meaning that if the value function, which incorporates a cost component due to envi ronment, and obstacles, is not minimized then the probability of unstable behavior such as obstacle collisions increases. A value function designed to provide both stable control (motion regulation) and stable behavior (obstacle avoidance), mu st incorporate both classic stat e regulation costs, and a state environment cost. The state environment cost adds a new term(s) to the value function, which was not discussed in Chapter 3. This new compon ent describes the cost associated with the system occupying a given state in it operating envir onment, which in general can be attributed to obstacles, terrain quality, etc. Equation (4.1) presents a new cost func tion form with an additional termPx, which describes the added cost due to the systems state within its environment. It effectively trades off state error signal value wi th obstacle avoidance value. Meaning that if the cost of occupying a given state due to Px increases, the overall optimization will allow for a slight increase in the remaining two terms in orde r to reduce the cost due to the environment. The remaining terms are identical to the value functions discussed in the previous chapter. The cost

PAGE 74

74 due to error in motion regulation is expressed within() Qx and the cost due to input command is given by() R u. Notice that both Pxand ()Qxare both functions of the systems state. The difference in these two functions is that, ()Qxis a mapping of state to error signals (which are based upon a predetermined motion structure) and Pxrequires a mapping of system state to environmental cost. ()()()uVxPxQxRu (4.1) The addition of the new term Px to the RHC value function has a significant impact on the Feasibility Theorem for Suboptimal RHC refere nced in the second section of Chapter 3. Of the three conditions of that th eorem, only one can be partially satisfied when the state environmental costPx is included. The first condition states that the RHC va lue function must be lower bounded by some class K-function Assuming the term Px is designed such that it is always positive, this condition can still be satisfied, since it is si mply adding a positive number to the remaining portions of the function which can already be lower bounded by However, the condition also states that the value function is equal to zero at its origin. Since Px, must be allowed to have a value greater than zero for cases where ob stacles are present at the origin, this condition cannot be fully satisfied. The second condition states that the cost function V(x) must be monotonically decreasing for successive time steps of the RHC solution seque nce. This criterion cannot be satisfied when obstacle avoidance is included in the optimization pr oblem. The reason for this is that in order to

PAGE 75

75 avoid an undesirable state during motion trackin g, additional cost may be incurred on by the value function in order to produce a desirable avoidance maneuver. Finally the third condition cannot be guaranteed since the uni queness of the control input for any given state can no longer be certain. A simple example that demonstrates all of these cases is depicted in Figure 4-2, which shows a vehicle attempting to track a straight line and a single obs tacle in way of that track. In this case it is possible to find two opposite but eq ual solutions to the RHC problem. Therefore, it is not possible to guarantee the uniqueness of a cont rol solution or to ensure the control input is a well behaved function of the systems state, when obstacle or environment cost is included in the RHC value function. Also, since the cost of the value function inherently increases during some OA maneuvers such as the one depicted in Figure 4-2, it is not possible to satisfy the decreasing cost constraint which is require d to prove feasible stability. Although it can be shown that cases may exist which disagree with the criteria presented by the Suboptimal Feasibility Theorem, under nom inal conditions they may still be satisfied whilst including obstacle avoidance as part of the RHC optimizati on. In addition, for all cases in which the state environment cost function Px is zero, such as when no obstacles are present in the immediate environment, then the value functi on simply reduces to the classic RHC form, and all of the stability criteria may be applied as usual. However, for simplicity in this implementation, the three criteria are not explicit ly verified. Rather, the control solution is guaranteed to be admissible, by designing a valid A* heuristic function. This topic is discussed in detail in the next section. The ability to formulate the environmental cost component Px online, allows the RHC optimization problem to dynamically modify the vehicles predicted motion, in order to avoid

PAGE 76

76 obstacles or drive on more desira ble terrain. This online cost mappi ng is a functionality that must be provided by exteroceptive sens ors since the required informa tion is originating from the vehicles surroundings. Thus information provided by those sensors must be in a form that effectively represents the cost of occupying a given state in the workspace. For implementation on the NaviGator, this information is provided in a form known as a traversability Grid. The traversability grid models the systems workspac e as a raster image in which each pixel contains a value that estimates how desirable the terrain and space contained within that pixel is for the vehicle to occupy. The traversability value is eff ectively a gain like parame ter that allows for a tradeoff between input effort or motion error an d quality of terrain. Th e worse the terrain, the more willing the RHC is to add erro r cost to the determined path in order to circumvent that poor area. Obstacles are represented by a trav ersability grid in much the same way as they are in an Occupancy grid. Both positive and negative obstacl es (such as pot holes) within the environment can be mapped equivalently to poor traversability regions. In f act, this is one feature of the traversability grid that cannot be effectively represented by an Occupancy grid. In an Occupancy grid, only information about the occupied or free state of a pixel is given, whereas a traversability grid can encapsulate these pieces of information and also describe terrain quality. This means that any type of terrain can be ma pped into traversability space without having to convey anything specific about the given topog raphy. In the traversability sense, positive obstacles appear the same as negative obstacles or steep slopes. Traversability also allows for the evaluation and scoring of unoccupied space. For ex ample, pavement can be classified as more traversable than sand, grass or gravel. Therefore th e vehicle is able to select the best possible path for motion when it is presente d with different types of terrain.

PAGE 77

77 The units of measurement for the values containe d within the traversability grid must also be carefully considered. As aforementioned, the values are used to tradeoff occupying a given space with motion structure error and or input effo rt. As such, the grid values are essentially dimensionless, and do not describe an amount of travel energy required or probability of safe motion, etc. This is because values with these types of physical uni ts would inherently change as a function of the systems complete state (i.e. speed and orientation), and would require much more information about the environment to be ma pped by sensors. It would also require a more complex Pxcost function. Therefore, traversability as discussed in this dissertation is only considered as a qualitative parameter that can si mply and effectively allow the Reactive Driver component to make decisions a bout the desired vehicle motion. Figure 4-3 presents the traversability grid concept. In this image a model of the surroundi ng local environment is mapped into the corresponding traversability space. The area outside of the vehicles commanded operating space is all mapped to poor (shown in red) traversability values. The values go from shades of red, which are poor, to sh ades of green and blue, which are desirable. In implementation on the NaviGator system, the traversability grid format for all sensors feeding the Reactive Driver component is a 121 by 121 pixel rasterized image with a resolution of 0.5m by 0.5m per pixel. Each pixel in the grid contains is a 4-bit integer, which can represent a traversability value or one of several special case values. The grid is designed such that the vehicle is always positioned at the center of the image, and as the vehicle moves the values within the image are shifted so that the vehicle remains in the center. When shifted, new values around the edge of the image are updated with new da ta from sensors. The coordinates within the image are easily mapped to local vehicle coordinate s and therefore the traversability grid serves as the environmental cost function Px, for implementation in the RHC value function.

PAGE 78

78 However, since the orientation of the vehicle at each pixel within the im age is not considered, only the vehicles position within the grid is used to determine environmental cost, and not its full state (position and orientation). The complete value function used for implementation in the RD component, which includes traversability, cross track error, and heading error, has been designed as: 222()**tT travherr tVxtkTravxkHerrxXTrackx (4.2) Where the sub function Travx accounts for the environmental cost due to obstacles and terrain quality, and has a co rresponding optimization weight travk The remaining two sub functions provide transformations of the systems state into path tracking error coordinates, and allow for optimization of the vehicles motion trac king of a desired trajec tory. The heading error function, Herrx is multiplied by an optimization weight herrk whereas the cross track error function, XTrackx is not altered. This allows for nor malization of cost units, using the cross track error as the reference base for overall value. Figure 4-4 presents a geometric representation of the tracking error sy stem measurements, Herr and XTrack. Thus the implementer is free to modify the remaining weight factors to tradeoff traversability, and heading error with cross track error as a baseline. Note that input effort / control value has been neglected he re since there is not term in th e function penalizing it. It has been found through extensive testing that desirabl e results are obtainable without control effort in the cost function, and that the overall optimiza tion is less constrained to find an appropriate solution with the value function provided in equation (4.2).

PAGE 79

79 For implementation of HRHC where the A* search is used in place of a classic optimization routine, the depth cost function Gn, must be specified. Since the general value function provided in (4.2) specifies the cost structure for the underlying problem, a variation of that function is used as the depth function: 2 2 2* *itravi herri i iGnkTravxnoden kHerrxnoden XTrackxnoden Gpnoden (4.3) ipnoden In this form the depth function is defined re cursively, and is dependent upon the depth cost of the parent of node in For the root node s the depth function is simply: 0Gs (4.4) Admissible Heuristics for HRHC The cost function presented in the previ ous section provides a means for the RHC implementation to optimize both obstacle avoidan ce and motion tracking onlin e. In the previous chapter the new technique, Heuristic Receding Ho rizon Control (HRHC), offers a means to use heuristic information and the A* search algorith m to implement the optimization task within the overall RHC scheme. One essential requirement for HRHC then is to establish a heuristic function which can estimate a cost-to-go for the va lue function provided in the second section of this chapter. As will be shown in this section the heuristic function can take on many different forms, each with various strengths and w eaknesses. Finally the form decided upon for implementation in the NaviGators RD component will be presented.

PAGE 80

80 Cost functions for a typical RHC and a typical A* implementation tend to be very different in nature. Classically, A* state to state transition or arc cost values are relatively constant or simply depend on the transition distance, wherea s RHC state transition costs decrease as the system approaches the origin or goal. Regardle ss of this difference, the general method or technique for HRHC allows for a total cost f unction f (n) to take on any form, so long as it satisfies some basic criteria. First, the arc or st ate transition cost must always be greater than zero. Since the value function provided in (4.2), is positive definite and provides this cost measurement, the first condition is satisfied. The second condition require s that the heuristic function hx be an underestimate of the total co st-to-go for the provided value function. Therefore, careful consideration for the heuristic function must be taken in its design to ensure that it is upper bounded by the true optimal total to th e goal. If this condition is violated then the algorithm A* is no longer admissible and ma y determine an invalid solution sequence. A good approach to heuristic function design is to analyze each term in the RHC value function, and to establish a heuristic estimator fo r each of those terms. Th en all of the partial heuristics can be summed to obtain the complete heuristic function. For implementation within the RD component on the NaviGator, it is desired to find a heuristic estimator that appro aches the true minimum cost so lution over the time horizon for equation (4.2). In analyzing that function term by term it can be seen that the first term provides the cost due to environment, which is directly related to the mapped traversability value. The ideal heuristic for this term would provide a co st sum over the remaining time interval with the true traversability encountered along the optimal state trajectory. Since th at trajectory is not known, an estimate or prediction of the encountered traversability must be made. Also, to adhere to the admissibility constraint of the A* searc h, the traversability estimate must not exceed the

PAGE 81

81 optimal solutions value, so a c onservative approach must be taken. In other words, the predicted traversability cost must be less than the actual future remaining time traversability cost. One simple heuristic function that estimates the futu re incurred traversabili ty cost, at a given time ( ), within the HRHC search is: 2 mintravtrav xtT hkTravx (4.5) where is the time step period of the search. This heuristic estimates that the total future cost due to traversability is equal to the minimum trav ersability value of any possible state, multiplied by the traversability cost wei ght, and the number of future tim e steps. This function is the heuristic estimate used by the RD component in implementation. It provides a fast method for calculating an estimate which is guaranteed to be upper bound by the true future traversability cost. It is fast because the minimum traversability need only be calculated once, and then that minimum value may be applied for calculating each search nodes heuristi c cost. Other heuristics which are more informed about the underlying system dynamics and problem are able to calculate a more accurate heuristic. However, these functions tend to be much more demanding since the future minimum traversability is trul y a function of the systems state and must be recalculated for each search node. Thus the time saved in reducing the total number of explored nodes, by using a better heuristic, is lost since the heur istic itself takes much more computation time, and so more advanced heuristics are not worth implementation. Heuristic estimates for the heading error a nd cross track error cost components are both calculated directly from the systems state at any given node within th e A* search. Unlike the traversability estimate which must have knowle dge of the systems surroundings, and therefore must perform a separate search to find the futu re minimum traversability the system state only

PAGE 82

82 dependent costs of heading and cross track e rror may be calculated by pure geometric and kinematic constraints. For the heading error heuris tic design, the total incurre d cost may be lower bounded by knowledge of the vehicles minimum turning radius constraint, and a constant speed assumption. In more detail, since the NaviGator is a front wh eel steered vehicle, there is a minimum turning radius that the platform is able to drive. At a given speed (the one at wh ich the HRHC search is attempting to optimize motion) there exists a maximum turning rate for the vehicle. By calculating this maximum turning ra te at any given nodes state in the search, the future incurred heading error cost may be estimated with the equation: 2 min min *T herrherrv hxkHerrx r rHerrx v (4.6) The above equation assumes that the heading e rror will decrease linearly at a rate equal to the maximum vehicle turning rate, where v is the vehicles desired speed, and minr is the minimum turning radius. The estimated future co st is therefore at l east the summation of the minimum possible heading errors, up until the point at which a heading error of zero is possible, and from thereon it is assumed to remain zero For all time greater than the time at which the heading error would be equal to zero, the future incurred cost is assumed to also be zero or min 0herrhx v Herrx r (4.7) because it is assumed that the heading error wi ll become zero and remain zero before the next search time at and therefore no future cost will exist.

PAGE 83

83 The cross track error heuristic is calculated in much the same way as the heading heuristic. For this estimate, it is assumed that the vehicle s cross track position will decrease as if it were headed perpendicularly towards the desired motio n path. This clearly will lower bound the true future cost since the vehicle must approach the pa th at an angle near pa rallel with a line tangent to the path, if it is to converge onto it. To calculate the heuristic then, a summation of the minimum future possible cross track errors is made. The following equation makes this calculation, within the RD component, and assume s that the vehicles de sired speed will remain constant 2T xtrackhxXTrackxv XTrackx v (4.8) Since the actual accumulated cost given in the value function (4.2) does not multiply the cross track cost by a weighting factor, th en neither does the heuristic given in (4.8). As in the heading error heuristic it is also assumed for th e cross track error, that once the error reaches zero, it will remain zero for all future time. Therefore for the heuristic estimate, the summation of future estimated cross track errors is only de fined for those with posit ive values, and for the cases in which the future cross track error is ze ro the heuristic is also zero and is given by: 0 *xterrhx XTrackxv (4.9) The total heuristic function is simply the su mmation of the partial heuristics given above and can be expressed as: travherrxtrackhxhxhxhx (4.10)

PAGE 84

84 The above heuristic function provides a lowe r bound estimate of the true future incurred cost of the optimal state trajectory, and theref ore should allow for the A* search to yield an admissible solution. The solution obtained should satisfy the basic feasibility criteria, necessary for stable Receding Horizon Control, especially under obstacle free circumstances. It should be noted that there seems to be a strong connection between the heuristic cr iteria of A* and the second feasibility implies stabilit y criterion. Essentially if the he uristic function is not admissible then it may not always underestimate the true futu re cost to goal. In that case, the solution will not be admissible and will almost certainly violate the second stab ility criterion. This simple connection implies that an admissible heuristi c function may account for the majority of the HRHC algorithms stability and control effectiveness. Reactive Driver Implementation The Reactive Driver (RD) component of the Na viGators overall cont rol system houses the HRHC implementation of this thesis. Along with th e cost functions and heuristics detailed in the previous two sections, there are a number of impor tant functions of the RD that merit discussion, and complete the system integration puzzle, which allows for the RD to provide true functionality in the real-world system. As shown in Figure 4-1, the RD is one of many components which makeup the complete autonomous control system. Each of these components is designed as per the Joint Architecture for Unmanned Systems (JAUS), and each houses a core functionality that is defined by JAUS. JAUS is a standard which specifies a ba sic structure and methodology for unmanned and autonomous systems design and integration. It is intended to aid in the integration of and to support interoperability amongs t many heterogeneous unmanned systems originating from different developers. In addition to the core component architecture, JAUS primarily offers a means for common messaging and information exchange among its intended hierarchical

PAGE 85

85 network of systems, subsystems and computing node s. This messaging system is what allows the RD to communicate with and control surround ing components in the NaviGators control system. Like all components implemented on the NaviGator, the RD extends a core JAUS component template and a corresponding JAUS library, which are implemented in the C programming language. The software is built upon the Linux and GNU tool-chain, with its extensive set of libraries and compilation utilities such as the GNU C Compiler (gcc). This base understructure provides each of the components operating on the NaviGator a means to support timing processes, inter and intra nodal communi cation, as well as multithreading capability. The RD component has been implemented to run on a computing node which is made up of a Gigabyte motherboard with AMD CPU, 1 GB of RAM, and a 4 GB Compact Flash solid state hard drive. The computing node runs the Linux Fedora Core 3 operating system, which allows for advanced software development as we ll as execution directly on the NaviGator. Also, the node is connected via a high speed Netgear Ethernet switch to seven other identical computers onboard the NaviGator. Each one runni ng its own set of tasks and processes for the vehicles control system, and a ll intercommunicating via JAUS base datagram packets which are routed through the onboar d Ethernet switch. The JAUS messaging communicati on provides essential data to the RD. Specifically, there are five data streams originating from other co mponents in the control system, each of which the RD requires for complete operation. The data included are: the vehicl es global position and orientation, its velocity state, the state of the surrounding loca l environment (in the form of a traversability grid), feedback from low level actuat ors, and their health stat us. Each of these data streams is in a form known as a JAUS servi ce connection, which allows for JAUS message

PAGE 86

86 reports to be sent on a periodic basis without needing to re-query for the report every time it is desired. Both the position and velocity JAUS message s originate from the same computing node which runs multiple components. One component is the Global Position and Orientation Sensor (GPOS), the other is the Velocity State Sensor (V SS). Both of these tasks process feedback from low level vehicle state sensors, such as accelero meters, GPS, and odometers, and cast it into the proper JAUS message for consumption within the rest of the computing network. The traversability grid data is wrapped into a JAUS message which originates from the Smart Arbiter (SARB) component, and is a compila tion of a number of other grids from lower level Smart Sensor components. Each of the Smart Sensor components maps data from a physical environment sensor, such as a camera, to a single traversability gr id. Then each grid is sent to the SARB where it is fused together, to form a composite and more complete estimate of the local environment. Lastly, information from the component dir ectly below the RD in control loop, the Primitive Driver (PD), is fed back up to the RD level. This information includes two data streams. One stream contains information about th e low level vehicle actuato rs (steering, throttle and brake), specifically the current position of each actuator, and is in the form of a JAUS report wrench effort message. (A wrench describes a se t of forces and moments, and supports the way JAUS abstracts low level platform control.) This wrench is needed to k eep an updated model of the vehicle, mainly for determining the current front wheel steering angle, and thus allowing for accurate state predictions to be made during th e HRHC routine. The second stream contains information about the health status of the PD itself This data is important to the RD in order for it to maintain control of the vehicle, and to take evasive action if there is a fault within the PD.

PAGE 87

87 All JAUS components on the NaviGator are implemented as finite state machines. Each one can assume one of seven possible accepted stat es; they are enumerated and named: Startup, Initialize, Standby, Ready, Emergency, Failure, and Shutdown. By monito ring the state of the PD the RD is able to infer its health status, and therefore able to maintain a more fault tolerant level of control. In most cases the component executes its main task while it is in the Ready state. The other states such as Initia lize and Standby are included to al low the component to switch its behavior in order to establish needed data service connections, disconnect from the rest of the system, or to pause for operator control. The RD Ready state software is mainly composed of one control loop. Within this loop all of the necessary procedures and steps are taken in order to execute its primary purpose which is to command the desired vehicle control wrench to the PD. This wrench is the only output signal / data stream provided by the RD, and its purpose is to command the vehicles steering, throttle and brake actuators such that the intended mo tion of the Receding Horizon Controller is executed. The steps in between updating local software variables from the input data streams, and the output of the command wrench, include faul t detection, determina tion of the vehicle goal state, traversability grid modi fication, and finally the execution of the HRHC and a simple PID loop to control the vehicles speed. Table, outlines each of these important steps a nd will be used for re ference within this section and the rest of the chapter. In the first step of the RD control loop data is updated from the five incoming service connections detailed above. The next step in the procedure begins to use that data in order to detect if any possible faults have occurred. Specifically, in verifying that all critical communication streams are still active and that th e PD component is still in a health state,

PAGE 88

88 waiting to be commanded. The third step will simply switch the RD into the Standby state if it is so commanded by the operator. This command is determined by checking the state of the PD, and observing if it is also in the Standby state, if so then the RD follows into Standby. The fourth step in the procedure requires some special consideration. This is the first step in the procedure which requires data from the input path file. The path is provided to the RD by an operator as a flat data file, and specifies an a priori motion plan for the vehicle. The file contains a data structure which is made up of a list of piecewise continuous path segments. Each segment is specified with a starting point latitu de and longitude, end point latitude and longitude, desired speed, and segment curvat ure. At this step the RD determines which segment the vehicle should attempt to track by analyzing the vehicle s current position with respect to the path segment ahead of the segment it is currently tracking. If the vehicle is closer to the next segment than it is to the current segment, then it will switch to tracking the next one in the sequence. Since the desired speed may vary from segment to segment, it is necessary in the following step to update the current desired speed of the vehicle. This step requires looking forward in time on the desired path to check for lower speeds and taking into consideration the vehicles deceleration capability. Lower speeds on the path mi ght also be attributable to the curvature of the desired path segment. If the curvature is high enough, it may require the vehicle to slow down in order to track that segment without risk of rolling the vehicle. This procedure is done by finding the minimum path segment speed (due to desired or curvature value) over a nominal deceleration period, and then analyzing if that speed requires the vehicle to begin slowing down at the present time. If it does, then the current desired vehicle speed is set to a value which accounts for deceleration time. If it does not, then th e current desired speed is simply set to the desired speed of the current path segment. This functionality is equivalent to the equation,

PAGE 89

89 min*ii iDesiredSpeedspeedsDdistTos (4.11) Where the functions speeds, and distTos, determine the desired speed of path segment s, and the distance from the vehicle to the start of the path segment respectively. The constant D accounts for a nominal distance based deceler ation, measured in meters per second per meter. The value used on the NaviGator is tuned to: 0.25/ Dmpsm The fifth step, of the RD control loop calcu lates the latitude, long itude and size of the desired RHC goal region. The region is a circle centered at the determin ed coordinates and its size is simply determined by a radius value, calc ulated in units of mete rs. The center of the area is determined by using the RHC planning time hor izon period, and the a priori path data. The algorithm projects the vehicles curre nt location onto a point perpe ndicular to the path, and then extrapolates out in time, using the current desi red speed, to a point that lies somewhere on the desired path ahead. The radius of the goal regi on is scaled linearly wi th the desired vehicle speed, to allow the discrete planner enough space to seek out, rather than a fixed size goal, which might be too narrow to find. Two special cases exist in determining the goa l point. The first occurs when the goal is found to lie outside of the loca lly mapped traversability space. Since the planner requires knowledge of the traversability va lue at any given state, points outside of the grid region are undefined and therefore seeking a goal in that space would require some significant assumptions. Rather than plan outside of the traversability defined region, th e goal point is simply projected onto its boundary, where it meets the desired path. The second special case occurs when the end of the path is encountered within the time horizon. If so, the goal point is just set to the endpoint of the last path segment.

PAGE 90

90 With the desired speed and goal point known, there is one last step required in implementation before executing the HRHC algorithm. The step is called grid dilation and serves a very practical purpose for obs tacle avoidance. Since the ve hicle takes up a region of area within its local environment, it is necessary to account for its size during planning, in order to ensure that there is enough cl earance around the vehicle to comp letely avoid any obstacles. One method to do this would be to find the minimum traversability value within a region representing the vehicles footprint, in order to calculate the traversability cost at any point in the planning search. This would thus require a separate minimum traversabili ty value search for every node expanded during the A* algorithms execution. Since there are many nodes expanded during a nominal search, and many pixels to explore for any given footprin t configuration, this operation would be very cumbersome. A more efficient method is to expand any obstacles within the traversability grid, by the approximate size and shap e of the vehicle, and th en assume the vehicle occupies only is a single point in space, during the search routine. This dilation then need only be done once per iteration, rather than many times during the search itself. Also, since the traversability value is a gene ral description of envi ronment cost, and not purely an obstacle representati on, it makes sense to dilate the grid by the any minimum traversability value within the expansion area, and not solely obstacle values. This guarantees that the search will account for vehicle size and shape, even when seeking out desirable traversability regions, or avoidi ng regions of intermediate cost. The dilation procedure is implemented as a pixel by pixel loop ove r the entire grid. For each pixel the dilation value is determined by looping again through an area around that pixel, and finding the minimum traversability value with in that area. The search area is called the kernel, and it represents the approximate size and shape of the vehicle. Since the orientation of

PAGE 91

91 the vehicle at any given node within the search may vary, the shape of the vehicle, which is ideally rectangular, cannot be assumed in any on e configuration. Theref ore, the shape of the kernel is assumed to be a circle, with a radius slightly larger than the half width of the NaviGator. Figure 4is an example of what a traversabi lity grid image looks like before and after circular dilation. The circular shape guarantees th at if an area is avoided in the dilated image, then the vehicle should at least have enough clearance to pass by it at its side. Since the vehicle may be approaching the region at a slightly different orientation, th e kernel radius is tuned to be slightly larger than what is probably needed in order to account for its difference in shape. At this point in the RD cont rol loop, all of the required data and values have been determined or modified such that the Heuris tic Receding Horizon Controller (HRHC) can be executed. The purpose of this step is to determ ine a control input that when commanded to the system will yield the desirable motion to both main tain path tracking and if necessary avoid any obstacles. The form of this control input is the steering wrench effo rt portion of the JAUS wrench message that will be sent to the Primitive Driver for low level vehicle actuation. This value varies from -100 to 100% effort, and essen tially maps directly to the steering system for turning the front wheels anywhere fr om 100% left, through 100% right. As discussed in the fifth section of Chapter 3 of this dissertation, the HRHC algorithm is implemented as a modified A* search. The first st ep in the routine creates the root node by using the current vehicle state feedback (position and orientation), and the current control (steering effort). All nodes in the search are stored as a C language data structure, with variable members including: cost-to, cost-to-goa l estimate, parent node pointer generation number, and vehicle state / control information. A fixed number of theses nodes are allocate d in memory prior to running the routine for the first time. They are stored in a linked list data structure, named in this

PAGE 92

92 implementation Node Dispenser, which allows node s to be divvied out as needed, and can be reset quickly by simply resetting a single pointer that indicates the node to be dispensed next. This Node Dispenser method has been implemented to optimize the code a nd increase efficiency, verses allocating and freeing a si ngle node, every time one is used. The next step in the algorithm establishes th e root node onto a set of nodes called the Open Set. In this implementation, the Open set has been optimized for searching and sorting according to the cost-to-goal estimate which represents the A* f n value. The optimization is done by casting the Open set into a data structure known as a heap stack. A heap stack is a stack of nodes divided into multiple levels. The first level in the stack contains a single node, the second level contains two nodes of which the node above is pa rent to. Each level af ter can store twice as many values as the one above it, because the two child per parent relationship continues on as the stack grows. In this manner, the stack expands exponentially in the hori zontal direction as it grows vertically. The heap stack is design to main tain one special property, that is, the parent node value is guaranteed to be le ss than (or greater than, depending upon if the stack is desired to be ascending or descending) the two child node valu es. This relationship ensu res that the value at the top of the heap stack will always be the minimum or maximu m of all nodes. This is very desirable for the A* implementation, since fi nding the minimum cost-to-goal estimate node on the Open set is a crucial part of the algorithm. Having the Open set organized in this fashion allows for that node to be found in a single step no search need be conducted. The heap stack however, requires to be reordered when a node is popped from or pushed onto it, but because of the exponentially growing nature of the heap, this reordering is efficient and can be done in logOn computation time, where n is the number of nodes on the stack.

PAGE 93

93 The ability to quickly find and remove the minimum cost estimate node from the heap stack is taken advantage of in th e next step of the algorithm, wher e it is removed from the Open set and then checked for membersh ip in the goal set. This is done by analyzing if the nodes vehicle state is in the goal region. If it is, then a solution node has been f ound, if not then the A* search continues by expanding a new set of child nodes through the expansion function n. The expansion function for HRHC is implem ented by generating a new set of possible control inputs and then predic ting their effect by propagating th e current nodes state through a vehicle model function. The manner in which the control inputs are generated is defined by the artificial input space quantization that has been disc ussed in fourth section of Chapter 3. The true input that can be commanded to the PD is a cont inuous value in the range of -100 to 100% effort. However, this would require generating far too ma ny nodes to be practical. Therefore, a finite number of nodes, representing a finite set of quantized input commands are expanded, and the one sequence yielding the least cost trajectory is found. The firs t input command associated with this sequence is then delivered as the control. For the RD, the input space quantization reso lution is a tunable parameter that can be increased or decreased in order to improve optimality, or increase speed. This means that as the quantization resolution is increased, the A* sear ch is able to find a more optimal solution, whereas if the resolution is low, the solution is less optimal, and there is a chance that may not be found at all. Also the finer the quantization, the more elegant the vehicle control, because the input commands will tend to vary only slightly be tween control iterations. If the quantization is low, then as the commands change between cont rol iterations, the vehicle will tend to nudge and jolt as the steering wheels move back and forth between commands.

PAGE 94

94 The input commands for the NaviGator are genera ted ad hoc to take advantage of one key vehicle constraint. The steering wheel actuator on the NaviGator has a rate limit which only allows the wheels to turn up to a maximum speed. This rate limit corresponds to a maximum and minimum input command at each execution of the node expansion function. Since the steering is rate limited, and there is a finite time betw een commands in the horizon search, then any command higher than the rate limited maximum w ould yield the same result as the maximum itself. Therefore, expanding any nodes with input commands higher than the rate limited maximum will not add any value to the search and will only waste search effort. This constraint thus allows the input space to be truncated on an expansion basis, and so resolution is increased in the truncated space when the number of divi sions is held constant. The rate limit on the NaviGator vehicle was measured to be: 60%/sec effort Also, in an effort to minimize search comple xity, the quantization resolution is decreased as a function of the search depth. This is done because the search resolution as the depth increases is less and less critical to successful control, because th e goal of the search is to find the first input command which leads to a successf ul state trajectory. Th erefore, higher control resolution is most important at the root node expansion. For each control input determined during the quantization procedure, a search node is generated and then its vehicle st ate is copied from its parent node. This state is then is extrapolated through the vehicle model function over the ho rizon planning time interval, using the newly determined control input. The vehicle model used is kinematics based, and works by projecting the vehicles position a nd orientation along a straight lin e, or circular arc, depending upon the steering curvature of the ve hicle state. Since the rate lim it of the steering system has a significant impact on the NaviGators maneuverability it is also taken into account in the vehicle

PAGE 95

95 model. The model function first determines how much the wheels will move in the given time step, based upon the input command and the rate limit. The effective path curvature is then calculated by averaging the steering path curvatur e at the beginning of the time step with the steering curvature at the end of the time step. It is assumed that there is a linear relationship between the steering effort and th e geometric curvature of the path that the vehicle will drive. The relationship can be equated as follows: *patheffortkKSteeringEffort (4.12) This is a simple mapping given the steering effort value from -100 to 100%, and the constant effortK, determines the effective curvature of th e path the vehicle will drive. As long as the front wheel steering angle re mains significantly less than 90 degrees, then this assumption will be valid. On the NaviGator the mapping constant was measured to be: 0.0016/*effortKeffortm Since the geometric curvature is simply the multiplicative inverse of path radius, the new vehicle position and orientation ma y be calculated once the curvatur e is known. For the model, it is assumed that the average curvature over the tim e interval is effectivel y what the vehicle will drive, because the change in curvature in each pla nning step tends to be sm all, this assumption is relatively benign. Also, if the aver age curvature is found to be very small, then it is assumed that the vehicle is simply driving al ong a straight line, and so the new position and orientation state is calculated as such. However, if the average cu rvature is outside of the straight assumption threshold, then the new state is extrapolated along a circular arc, with radius equal to the inverse of curvature. Both the straight line and circular projections assume that the vehicle speed is

PAGE 96

96 constant over the time interval Here the equation for calcula ting the new state position along a straight line of motion is: sin ** cosprev avethreshold prevx x vkk y y (4.13) The state yaw angle is measured in global coordinates where true North is equal to zero, and East is 90 degrees. Therefore equation (4.13), calculates the new x position using the sinfunction and the new y position using the cosfunction. The new position along a circular arc is calculated usi ng a somewhat more lengthy equation. This is done when the average cu rvature exceeds the straight line approximation threshold and is given by, cos1cossinsin 1 cossinsin1cosprev avethreshold prev avex x kk y y k (4.14) For implementation in the NaviGato r RD, a curvature threshold: 0.01thresholdk was found to work well. During node expansion the traversa bility arc cost is calculat ed by analyzing the vehicles state transition through the grid as it moves from its starting positi on and orientation to its end. This is done by measuring which values it encoun ters and then calculating an average over the interval. The grid values encountered during a state transition from one point to another are found by assuming the vehicle moves along a straight line from the start poi nt to the end point. Since the grid resolution is somewhat low, 0.5 m by 0.5 m, this assumption is valid, because the pixel values touched by the state tr ajectory would vary l ittle between a short circular arc path and a short straight line path, which is mostly the case. Bresenhams line algorithm [BRE63] is used

PAGE 97

97 to determine which pixel values to measure along the state transition line. This algorithm is highly optimized for calculating the pixel coordi nates of a straight lin e through a rasterized image space, and so it is very desirable for this implementation, where thousands of small lines need to be measured during each search. One option the operator has when executing th e RD component, is to plot the image coordinates in the traversability grid, which are measured during the HRHC algorithm. This allows for the effective search sp ace to be analyzed at runtime. Figure shows the result of this plotting within a sample traversability grid on the left. As shown, the HRHC routine creates a tree like structure of possible stat e trajectory paths through the loca l environment. This structure corresponds to the quantized cont rol inputs which are generated and extrapolated through the vehicle model. By analyzing this area searched by the algorithm it is possible to gauge the optimality of the solution trajectory. If the area searched both relatively large and dense, then the solution path should be the minimum of all path s within that area, a nd therefore has been weighed against many possibilities. However if th e searched space is spar se, then the solution may be poor, because not enough other possible solutions have been checked to verify than nothing better exists. This is one of the ke y methods used in tuning the HRHC algorithm. Parameters such as the number of quantized input commands, horizon time, and planning time step, are tuned so that the search will be as broad as possible, while still remaining fast enough for real-time execution. Finally, after a solution trajectory has been found, it is traced back from the goal node to the root node via the parent node pointers. The n ode directly before th e root node is reached, contains the control input value that is then used as the steering command for the iteration of the control loop. At this point the HRHC al gorithm is complete.

PAGE 98

98 The next step in the overall process is to execu te a simple PID controller to maintain the desired vehicle speed. This controller produces two mutually exclusive commands. One is for the throttle and the other for th e brake actuator. They are f ound by executing the PID controller given the set point speed, and th e current vehicle speed feedback, in order to determine a value called the linear control effort. If the effort is positive, then it is multiplied by a throttle gain value, which determines throttle command sent to the PD. Also if the linear effort is positive, the brake command is simply set to zero. Conversely, if the linear effort value is negative, then it is scaled by a brake gain, and then de livered to the brake, while the throttle value is held at zero. The general PID controller form is modifi ed slightly with a feed-forward gain f fk and a constant bias value effortb This linear effort control value effortL is calculated by: v effortpvivdffdesiredeffortde Lkekedtkkvb dt (4.15) Where ,,pidkkk are the PID gains, ve is the instantaneous velocity error, and desiredv is the instantaneous desired velocity. The linear effort value requires a c onstant bias value in order to maintain a positive brake command when the rema ining terms are zero. The throttle and brake commands are then calculated as if 0 0otherwise if 0 0otherwisetefforteffort effort befforteffort effortkLL T kLL B (4.16) The constant control parameters used for the RD implementation on the NaviGator are: 15.0, 6.7, 20.0, 15.0, 57.5, 0.65, 1.3pidffefforttbkkkkbkk

PAGE 99

99 and to prevent integral windup, the velocity error integrator is limited to 4.9 This keeps the vehicle from large over or unders hooting of the desired velocity, if it is greatly disturbed, from terrain or other unexpect ed external forces. After the PID controller is finished determ ining the steering and throttle commands, the complete wrench effort structure, containing th e steering, throttle and brake commands, is ready to be sent on to the PD. This step is done by wrapping the values into the JAUS set desired wrench effort message, and then transmitting the corresponding data packet to the PD. This functionality is provided thr ough the data structures and AP I functions linked to the RD application by the CIMAR JAUS libraries discussed above. Faults and Failure Modes The Reactive Driver control l oop has several built-in fault de tections, for conditions that may persist and can cause the system to fail. The first condition occurs when an obstacle or group of obstacles causes the planning search not to be able to fi nd a solution trajectory. In this case the vehicle would inevitably have to collide with the obstruction if it were to continue on course. In order to avoid this possibility, th e control loop detects th e obstruction by observing that the HRHC solution passes through an obstacl e, and slows the vehicle down. By doing this, the vehicle is free to make more evasive maneuvers because it is has more mobility at slower speed. In the case where the vehicle continues to slow until it comes to a complete stop, and still cannot find an unobstructed solution, then the RD goes into a fault state called Blocked. This means that the vehicle is essentially stuck in pl ace and must either wait for the obstruction to clear out of the way or it must re verse to find a different course. The Blocked condition tends to occur more th an other errors in practice and testing, especially during navigation in harsh environments, such as off-road terrain. The causes for these blockages usually are false posi tive obstacles detected by one or more of the systems Smart

PAGE 100

100 Sensors, while operating on a narrow road or corridor. This forces the system to believe it cannot find an unobstructed solution, whil e in reality, there is nothing in the way.To overcome this problem in practice, a Nudge mode was built-in to the control loop, where the system would move forward slightly after bei ng Blocked for a short period of tim e. Most of the time this had the effect of clearing the fals e positive in the traversability grid, and the NaviGator would continue on course. Often a light obstacle, such as a high patch of grass, or stick would cause the blockage and the vehicle would simply push over it unharmed. Another failure mode may occur when ther e is some coupling between the vehicle dynamics and the traversability grid, input path or goal point. This problem was discovered during an experimental implementation of th e RD component on an Air Force Research Laboratory (AFRL) autonomous vehi cle. In that experiment, the goal point for the HRHC search was set to be a fixed distance from the vehicle, and explicitly dependant upon its instantaneous heading. This distance and heading dependency caus ed the planner to repeatedly obtain the same trajectory and control solution. In this case, the in itial control action was often opposite the desired motion. The first control command in the solution sequence would usually be intended by the planner to make a slight course correction, in order to find a more desirable path. This made the HRHC solution unpredictable and caused the vehicle to be unstable. The problem was corrected by removing the explicit dependence on the vehicles heading when calculating the goal point, thus allowing the algorithm to obtain a unique solution upon the following control loop. Lastly, this implementation of a Receding Ho rizon Controller does not make use of a locally stabilizing control law. Th ey are often used in RHC to drive the system inside of the goal region, and also in the stability analysis, to de termine a terminal state cost penalty. The reason for this is that the system is not designed to ever reach the goal regi on. Upon each control loop

PAGE 101

101 the goal region is recalculated at a point further along the desired tr ajectory than in the previous iteration. This cycle continues unt il the vehicle reaches the end of the path. In this scenario, the size of the goal region tends to be much smaller th an the scale of the entire motion path, so it is reasonable to simply stop the vehicle at any point w ithin the goal region, rather than driving it as close as possible to the goal point. Therefore, in practice the vehicle is simply halted, and the steering command is set to zero, when the goal region is reached, and so no locally executed control law is needed. Conclusions This Chapter has detailed the application a nd implementation of the theoretical concepts introduced in Chapter 3, and also introduced so me new thoughts and considerations for obstacle avoidance in the optimization pr oblem. Specifically addressed in the implementation overview, is the Reactive Driver component of the Navi Gators control system. This component employs the new and novel Heuristic Recedi ng Horizon Controller, introduced in this dissertation as a means to simultaneously plan and control an autonomous vehicle through a cluttered environment. As highlighted in the fourth section, there ar e a number of steps and procedures that must be addressed before execution of the HRHC al gorithm. Some of these steps require ad hoc implementations, such as determining the goal re gion for the search. Also, there are some steps which require optimized data structures, and advanced knowledge of computing methods, such as the heap stack design, used here for the A* implementation. The new planning and control method, which ha s been shown to unify two tasks into one, comes with some disadvantages as well. The fi fth section, has menti oned some of the known faults and failure possibilities that this techni que may present. Although, many are avoidable and

PAGE 102

102 predictable, there is an inhere nt unknown when working with su ch a new technology that still requires a sufficient amount of testing and lear ning, in order to truly apply it in practice. The following chapter is dedicated to some of the testing that has been done on this new and novel technique. It highlights and discusses th e data and results colle cted, which help to support this thesis, and demonstrate the capabil ities of both the theory and implementation discussed.

PAGE 103

103 Table 4-1: RDs ready state cont rol loop step by step procedure. Step # Step Procedure 1 Update information and local variables from incoming service connection data streams. 2 Check for system communications or PD faults. If any exist, then switch the RD into the Emergency State. 3 Check operator Run / Pause command. If Pa use, then switch the RD into the Standby State 4 Determine the current path segment which the vehicle is attempting to navigate, based upon the systems newly updated position value. 5 Determine the current instantaneous desired speed from the RDs input motion path file. 6 Calculate the current goal region for the Receding Horizon Controller, based upon the input motion path, the planning time horiz on, and the current desired speed. 7 Dilate the traversability grid received from the Smart Arbiter into a new grid which will be used for planning by the RHC routine. 8 Execute the HRHC algorithm given the curren t desired speed, goal re gion, vehicle state, and dilated traversability grid. Obtain the desired steering command based on this algorithm. 9 Execute speed PID control loop in order to calculate the current desired throttle and brake commands. 10 Wrap the current desired steering, throttle and brake commands into a JAUS set wrench effort message, and send the message to the Primitive Driver for execution. 11 Repeat procedure, starting at Step 1.

PAGE 104

104 Figure 4-1: The NaviGator high le vel control system block diagram. The system is made up of four key elements, highlighted in red, ora nge, green and blue. They are the: control, intelligence, planning, and perception elements respectively.

PAGE 105

105 Obstacle Vehicle Desired Motion Path Multiple Equal Solution Paths Figure 4-2: Simple obstacle avoidance case, showi ng a vehicle attempting to track a straight line and a single obstacle existing on the center of that line. This case intuitively shows that there may exist multiple and equivalent minimum cost state trajectories, yielding different but equal control input sequen ces as a result of the RHC optimization process.

PAGE 106

106 Figure 4-3: The traversability grid concept. Th e local environment, de picted (above), with a corresponding traversability grid (bel ow). Both images are conceptual representations of both the real world lo cal environment around the vehicle at the center, and its mapped grid values respectively.

PAGE 107

107 Vehicle Desired Motion Path XTrack Herr Path Tangent Vehicle Heading Figure 4-4: Path tracking error system. The track ing metric is made up of two measurements. The cross track error measurement, XTrack, is the perpendicular position error of the vehicle with respect to the path. The headi ng error measurement, Herr, is the heading error angle of the vehicle with respect to a path tangent.

PAGE 108

108 Figure 4-5: Traversabi lity grid dilation before (left) and after (right). The gr id on the right is dilated with a circular kern el with radius 2.5 pixels.

PAGE 109

109 Figure 4-6: Planning and c ontrol search area, sample traversa bility grid outputs. The pink region (left) shows the area searched by the A* optimization routine, in order to determine the solution sequence trajectory shown in black. The image on the right shows the optimal predicted trajectory with no obstacles surrounding th e path sequence.

PAGE 110

110 CHAPTER 5 TESTING AND RESULTS The receding horizon controller described in this dissertation has been implemented and tested in several different forms. The first version implemented was designed for the 2005 DARPA Grand Challenge competition. Several lessons learned were gained from working with and testing that implementation. The most important one them is that the motion stability of the RHC is highly coupled to the system model and the optimality of the calculated control sequence. This unfortunately mean s that there are few gains or pa rameters that can be tuned to adjust control stability. Simply put, if the sy stem model is drastically incorrect or the optimization routine cannot find an admissible so lution then the system will be inherently unstable. At that point, either a new more accurate model must be introduced and or the optimization algorithm must be enhanced. The second version was implemented on an Air Force Research Laboratory (AFRL) vehicle at Tyndall AFB. The vehicle, known as th e Land-Tamer, is a skid-steered hydraulically actuated platform. Therefore, the vehicle model used for the RHC implementation was significantly different from the one used for the NaviGator vehicle. Several lessons were learned from this implementation. The main one disc overed was the state-goal coupling instability failure, which was discussed in Sec tion 5 of the previous chapter. The latest version follows directly from the discussion of the previ ous chapter and is the one being tested and reported on here. This implementation is the most inline with the theoretical approach detailed in Chapter 3. The CIMAR NaviGator vehicle and the computing machines within will serve as the general test bed and provi de a single platform to eliminate any variation between implementations on different machines. It is assumed that if the claims made within this dissertation can be supported by im plementation and testing on the NaviGator vehicle, then they

PAGE 111

111 would in turn be validated for other simila r AGVs. Although, it should be understood that any methods tested here would almost certainly need to be modified and or tuned to support the vehicles upon which they are operating. Before infield testing of the implemented RH C algorithm, a test plan was established for organizational purposes. The first s ection of this Chapter outlines a nd explains the test plan for data collection and analysis of results. The plan has since been conducted and a post test review is given in the second section. Finally, the data results are presented and some conclusions are drawn in the third section. Test Plan The following test plan establishes and outlines a means to collect experimental data and results that can either support or refute the primary new and novel concepts of this dissertation. The critical concept follows from Remark 1 of Chapter 3, which claims that RHC applied to an AGV inherently unifies the planning and control task s. Traditionally these tasks have been seen as separate problems for autonomous vehicles. In order to support this claim, information and evidence must be co llected that shows a single RHC process accomplishing classic controll er-like capabilities such as: stabilization and regulation onto a predetermined motion st ructure, while also achieving convergence characteristics that can be identified by t ypical performance metrics. This means that measurements defining the systems time res ponse to step, ramp, and other motion commands, must be obtainable. In addition, separate tests must be conducte d that show the same exact RHC task demonstrating planner-like capabilities. Thes e include abilities such as: obstacle avoidance, and favoring desirable terrain. Da ta that corroborate these behavi ors, such as object clearance distance and trajectory de parture times, should also be presented.

PAGE 112

112 One item of critical importance in testing these claims is the use of baselines or controls against which the aforementioned results can be compared. One valid baseline would be use of a classic AGV motion controller. Pure Pursuit [COU 92], Vector Pursuit [WIT00], or a simple PID controller, have all been implemented in th e past with success. A comparison of the RHC algorithms performance against one of these algorithms implemented on the same vehicle would offer a useful contrast to relativ ely score the new control algorith ms value. If in addition, the RHC algorithm can be shown to achieve planner-lik e behaviors then clearly some value has been added to the overall control; an ability which by nature could not be prov ided by any traditional motion control scheme. To facilitate organization of the different tests that will be conducted Table 5-1 details the design, setup, pro cedures, and data collection for each part. Test Review The tests detailed in the previous secti on, were conducted on Friday September 15th 2006, at the Gainesville Raceway Road Course (Figure 5-1). This location was selected because it offers a controlled on-road operating environment for the vehicle, and it s seclusion makes it a very safe place to run the NaviGator. Since the NaviGator is a larg e and heavy vehicle, safety is very important during its operation. If the vehicle becomes unstable, or goes out of control, it is cr itical that no person is nearby, because the behavior of the system w ould be unknown. The road course allows a robust test to be conducted, with few observers and opera tors needing to be present. Also, in the event that a problem does occur, the NaviGator is equi pped with a rugged wireless kill switch system, which shuts down the engine, releas es its emergency brake, thus a ssuring that it will come to a stop. The kill switch system also has a run / paus e signal which is used to start, stop, and pause mission execution from a safe distance. At the Ga inesville Raceway, the ve hicles kill switch can

PAGE 113

113 be controlled from a single static base station. This is because th ere is continuous line-of-sight to the NaviGator no matter where it is on the course. The test location also offers a near limitless variation of path geometry that may be constructed for any given test run. There are a number of different smooth curved track segments, many with different radii, and also long straight-aways, both of which allow for good testing of tracking performance, and meet the criteria of the test design above. More importantly, the track allows the obser vers and operators to visually gauge the vehicles performance in real-tim e. Since the designed path geom etry is known ahead of time, it is clear that by observing the vehicle on-road, it is executing the correct mission. A motion path executed over an area with no clear landmarks or road geometry, makes mission observation uncertain at runtime, and only by observing tracking data, can it be made clear whether or not the vehicle executed the mission correctly. The conducted tests required several days of se tup and preparation prior to being able to run them and collect valid data. The first step in this setup process was to create a map of the racetrack. This was done by logging global position system (GPS) data of the NaviGator while it was driven manually around all of the different part s of the course. Once collected, the data was post processed and loaded into Mobius, an Oper ator Control Unit (OCU) software application developed by Autonomous Systems Inc. Within M obius, the GPS data of the track was used to create a map, so that motion path segments of the test mission could be drawn by hand over the computer modeled track. The path segments drawn were designed to follow the test plan intent and layout detailed in Table 5-1. These segments were then saved to a flat file, in the format accepted by the NaviGators RD component, and uploaded to the vehicle control computing node.

PAGE 114

114 The conditions during test runs were nominal. The weather was fair, allowing for the mechanical systems of the vehicle to run wit hout any problems, such as overheating or rain interference with system sensor s. However, one problem presen ted with the onboard GPS system throughout the day. This was observed when the vehicle was noticed to drive along a different lateral position on the road cour se during each indivi dual test run, even though the mission path file was held constant. This behavior is typical because the GPS solution position will tend to drift slowly throughout the day as the GPS satellite constellation continuous to change overhead. However, the GPS solution on the day of the test dr ifted to an extent whic h caused the vehicle to drive adjacent to, and not on th e road. Although, it remained cl ear that the vehicle was still attempting to drive, the correct pa th as sensed by GPS. The problem was analyzed and isolated to the onboard position system, because the control error never reached a value greater than a few meters, while at the same time the vehicle was visually observed to be off track by approximately 10 meters. Therefore, the pr oblem had to be within the GPS data. The obstacle avoidance portion of the test s was also successful. However, since the vehicles position estimate continued to cha nge over time, it was difficult to place the obstructions along the path so that the vehicle would encounter then he ad-on during any given run. One lesson learned from this, is that it is be st to use very large obs tructions when testing OA with position uncertainty. The obsta cles used were construction ba rrels approximately 0.6 meters in diameter, which was found to be somewhat too small to test with while position system errors are on the order of several meters. Nevertheless the vehicle was found to avoid the obstacles, when encountered, and the data presented in the following section supports this find. Test Results The first step in the test given the plan above is to design a path circuit for motion tracking. As aforementioned, this was done using the Mobius software tool. The path circuit designed for

PAGE 115

115 the tests indeed does satisf y the requirements presented in the test plan. It is made up of segments both straight, and curved, with the curved portion s having varying radii. The road course at the test site greatly facilitated this design. The se gments were easily mapped over a subset of the track and lie near the center of the actual road pavement. The decided upon path segments and their geometry is depicted in Figure 5-2. As shown there are 11 segments, 5 straight and 6 curved; they are numbered in order of intended motion tracking. The curved segments tend to decrease in radius as the circuit progresses from start to finish, and thus making tracking more and more difficult as the vehicle pursues the mission. The last segment is a large arc included simply to bring the vehicle back to its starting position on the course. Also, notice that there is a discontinuity between segments number six and seven. This was purposely built into the circuit in order to test the systems re sponse to an instantaneous step in cross track error. Since both segments have the same orientation, the cross track error is isolated and its response can be measured. The data making up the path file for the test is summarized in Table 5-2. For each of the 11 segments, the starting point latitude and longitude are given, along with th e endpoint latitude and longitude. The radius values shown in the table were calculated as the multiplicative inverse of the segment curvature specified in the path defi nition file. Also each segment has an associated desired speed value, which is not shown in the tabl e, but was set to 4.5 mps for the test. This is a nominal speed for the NaviGator and allowed for the effect of speed variations in testing to be minimized. The first series of tests are intended to establish tracking results for the designed path circuit using a classic vehicle motion controller on the NaviGator. This is done in order to

PAGE 116

116 determine a set of baseline metrics that may be compared to the measurements found for the RHC algorithm that is executed in the RD component. The classic method decided upon for this test is a simple PD controlle r that regulates the two tracking states: cross track error, and heading error. The controller is used to determine the vehicle steering command, while it is operating at a constant sp eed along the path. By regulating the two tracking signals to zero, the vehicle is guaranteed to track the desired path. The controller was implemented within a co mponent on the NaviGator, and took the place of the RD within the vehicles overall control system. The component is called the Global Path Segment Driver (GPSD), and takes as its input, the same global path segment file that is used for RD execution. Like the RD, it us es feedback from the GPOS and VSS components to measure the vehicles state in order to generate a cont rol wrench message that is commanded to the PD component. Unlike the RD, this component does not receive wrench feedback from the PD, nor does it receive any traversability grids from the vehicles Smart Arbiter. For consistency, the PID speed controller within th e GPSD was kept to be an identical copy of the one used within the RD component, thus canceling any effect speed cont rol might have on the performance of the two controllers. The PD control algorithm is essentially two controllers summed together, which determine a wrench value somewhere between -100 and 100% st eering effort. It is also modified slightly with a feed forward path curvature term in order to assist the cont roller with tracking curved path segments. The steering effort control value effortS is thus calculated by: effortxtpxtdhphdffkdXTerrdHerr SkXTerrkkHerrkks dtdt (5.1)

PAGE 117

117 Where ,,, x tpxtdhphdkkkk are the PD gains for the cross tr ack and heading error respectively, f fk is the curvature feed forward gain, and ks is the current path segment curvature. The gain values tuned into the NaviGator for this controller are: 7.0, 2.0, 45.0, 10.0, 625.0xtpxtdhphdffkkkkk and were determined qualitatively to pr oduce stable desirable tracking motion. Three test runs were conducted, measured and logged for this controller. The data collected was logged at a rate of 10 Hz, the same rate at which the controller is ex ecuted. The first run was intended to measure the cont rollers tracking performance al ong the path, given no initial significant error in either cross track or headi ng. It was setup by positioning the vehicle near the start point of the first path segment, and then switching the automatic control system on. The radio kill switch system mentioned above was used to start the NaviGator from a safe distance. Figure 5-3 shows the tracking position data logg ed from the first run of the GPSD. Due to the scale of the image, it is difficult to observe th e fine details of the tr acking performance of the vehicle. However, there are seve ral distinguishable feat ures that can offer some insight. In the plot, it can be seen that the vehicle begins sl ightly off track and then quickly stabilizes and converges onto the path. During most of the initial tracking, the vehicle is t oo close to the path to notice any difference between the two data sets, but after the 6th segment it is clear that the planned instantaneous step in cr oss track error is quickly regula ted back close to zero. Lastly, notice that the vehicle tracking performance degrades significan tly around the two tight turn segments 8 and 9. This is because the turn ra dii are very close to the NaviGators minimum turning radius, and it becomes very difficult for the controller to regulate the vehicle while it is so close to its operating limit. Nonlinear dynami c effects, such as input saturation tend to increase in their impact on performance during these scenarios. Also, the inherent delay in

PAGE 118

118 steering angle, due to its natural rate limit, keep s the steering wheels from getting to the correct tracking position as soon as the segments are encountered. This is a classic problem with front wheel steered vehicles and their dynamical constr aints. If the path bei ng tracked is not second order continuous, then the vehicle is required to come to a stop at the discontinuity, so that it may turn its wheels to the correct pos ition. Since the path segments designed here are continuous in both position, and heading, but not curvature, this phenomenon presents itself in the test. An anomaly discovered during data analysis and post processing can also be observed within the planned path itself at segments 8 and 9. Clearly there is a discontinuity between segments, although they were designed to be sm ooth. This is simply due to post processing, because the path data points were calculated from the vehicles location, cross track error, and heading. In the controller softwa re the path segment transition ha ppened prior to the intersection of the two segments and so a discontinuity is observed because the segments do not share the same curvature or center point location. Since the scale of the complete path circuit is too large to observe the full detail of tracking performance, a better set of data to visualize are the heading and cross track error signals. A plot of the heading error for the first te st run of the GPSD is provided in Figure 5-4, it clearly shows more detail of the regulation perf ormance for the PD controller. At this scale it is possible to observe the quantized natu re of the heading feedback signal, due to resolution of the systems heading sensor, the discrete values of the signal are identifiable within the plot. Clearly since the two tracking signals are coupled dyn amically, the plot of the syst ems cross track error appears similar, and is given by Figure 5-5. Notice that both signals indicate a large initi al tracking error, a large disturbance at approximately 100 sec (due to the discontinuity between segments 6 and 7), and another large

PAGE 119

119 disturbance at 125 sec (due to th e tight turn segments 8 and 9). Also, both signals settle out and remain close to zero for the last sixty seconds. Rather than disp lay and analyze both heading and cross track error for each test run, their inhe rent coupling allows only one to be studied to support the thesis. Therefore, for brevity, analysis of all test runs is focused only on cross track error, for this dissertation. Its resolution on the scale analyzed here is finer than the heading errors, so it allows for clear er distinctions to be made. The second run of the GPSD tested its response to an intended very large initial cross track error. The purpose of this was to observe the PD contro llers reaction to an error value closer to the point of its operating envelope. Since the PD is a linear control system operating on a nonlinear system, its control region only a local neighborhood of the error system origin. Outside of that region the control system will inherently be unstable, and the system will fail. It is incapable of globally stabilizing th e vehicle onto the path, or in other words, it cannot bring the vehicle to the path from any arbi trary point. A simple case can justify this concept. As the cross track error increases from zero to infinity, at some point it will completely dominate the remaining terms in the control equation (5.1). At this point, the steering effort will be saturated in one direction, and the vehicle will simply drive in a never ending circle, because the cross track error will never drop below the saturation value. The cross track error signal for the second run is depicted in Figure 5-6. Here the large initial cross track is shown to be -25 meters. Regardless of this, the system is indeed within its operating limits because the tracking error is quickl y regulated and stabilized back close to zero. However, due to the controllers linear capability, there is a large overshot of the path (7 meters, or about 30%) and again an undershot (2.5 meters) before it is reacquired. From that point on in the path mission, the tracking performance is very similar to the first test run. The disturbance

PAGE 120

120 between segments 6 and 7 is rejected, and the e rror peaks to approximately 3 meters on the sharp turn segment 8 and 9. The large overshoot in this test run is hi ghly undesirable since the vehicle traveled far off of the intended path after it was already reached. A final test run of the GPSD was conducted with an even larger initi al cross track error than the second run. This was executed to demonstr ate the unstable nature of the control system while operating outside of its acceptable range, and to observe its behavior during this mode. The expected behavior was that the system would drive in a continuous circle, however that was not observed. Instead, the vehicle turned almost co mpletely around and star ted driving a direction opposite than what the path desired. This is mo st likely because the vehicle was still within a range that did not saturate th e steering command, but was enough to create an unstable and unpredictable behavior. In Figure 5-7,notice that th e cross track error begins to converge but is then interrupted and only reaches a mi nimum absolute value around 20 meters. The output signals from each test run were al so recorded for cont rol system analysis. Figure 5-8 provides the three sign als: steering, throttle, and brake. All are mapped within the same plot because they all have a similar scale. Steering exists from 100 to 100% effort, while throttle and brake have a range of 0 to 100% effort. The steering signal is negative for left-hand turns and positive for right-hand turns. The steeri ng signal clearly indicates all of the maneuvers and features encountered during th e run. There is an initial re sponse to the off-track starting position, each turn segment can be clearly identified from the large steps in the command, which occur due to the curvature feed-f orward term in the controller, and the cross track step at segments 6 and 7 is seen as a step response in the steering shortly befo re the 100 sec time mark. Interestingly, there appears to be a slight bias in the steering c ontrol for long straight segments. This is most likely due to a small misalignment in the steering actuator system.

PAGE 121

121 Speed control for the GPSD system worked we ll during the tests. The velocity control system response for the first GPSD test run can be seen in Figure 5-9. As indicated there are many disturbances in the signal, even though th e command is held constant, the speed does not appear to reach a steady state. Th is occurs for several reasons. First, the current path segment geometry is changing regularly, so the steeri ng wheels must turn often and thus upset the external forces acting on the vehi cle. Second, the throttle, engi ne, and drive train dynamics are highly nonlinear. Continuous gear switching in th e automatic transmission is one nonlinear effect, for example, which can cause the system to change response. Also, the resolution of the speed measurement is only around 0.1 mps, this ma y prevent the control system from any fine tuning that is required to achieve steady state. Despite this beha vior, the measured speed remains within 0.5 mps of the desired most of the time This is a very acceptable bound in practice. In summary of test part 1, the set of r uns conducted with the G PSD component executing the PD controller described, yielded a complete se t of baseline data needed for comparison to the RD algorithm. The controller performed as exp ected, stabilizing the vehicles motion onto the a priori path structure, and performing better on wide turns than on sharp turns. The expected unstable behavior for a large cross track error was also observed in the thir d run, and offers some insight to the limits of the algorithm. Test part 2 requires runs identi cal to the nominal cases of part 1 to be conducted using the RD component, which executes the new and novel re ceding horizon controller introduced in this dissertation. As a brief review the RHC algorithm implemented on the NaviGator uses feedback information from the system state and environmen tal sensors, to simultaneously plan and control the vehicles motion on track and around obstacles. The output of th e RD is a wrench command, containing the three steering, throttle and brake effo rt values, and is identical to the output format

PAGE 122

122 of the GPSD. The test runs conducted here in pa rt 2 measure the algorithms ability to regulate the path tracking of the segments given in Figure 5-2. For part 2, two test runs were conducted, meas ured and logged for this controller. The data collected was recorded at a rate of 10 Hz, th e same rate at which the RD receding horizon controller is executed. Also like before, the firs t run was intended to measure the controllers tracking performance along the path, given no si gnificant cross track or heading error. Figure 5-10 shows the tracking pos ition data logged from the first run of the RD. As before, the scale of the image makes it difficu lt to observe the fine details of tracking performance. However, the same distingui shable features are present after the 6th segment where it is clear that the planned step in cross track er ror is quickly regulated ba ck close to zero. Also, the vehicle tracking performance degrades signifi cantly around the two tight turn segments 8 and 9, as expected and similar to the linear cont roller. The main difference between the GPSD and the RD observed here is that the RD tends to have a more prominent steady state cross track error. This is due to the nonlinear nature of th e controller, input quantiz ation, and system model inaccuracies. However, the performance overall remains quite acceptable for path tracking and regulation. The cross track error data for this run is a much better indicator of controller performance at the vehicle scale. Shown in Figure 5-11, the error signal inte restingly corresponds closely to what was observed in the PD contro ller signal, with the exception th at steady state error is larger. However certain performance features are almost identical to those observed in Figure 5-5, and Figure 5-6. For example, the initi al error quickly converges down to a value within 1 meter, the 6 to 7 segment transition step and its respons e is clearly observable around 100 seconds, and like the PD controller, the RHC has difficulty maintaining close tracking during the sharp turns. The

PAGE 123

123 peak error value around 3 m during segments 8 and 9 is analogous to the peak error observed in the linear controller. This data shows c oncretely, especially when compared to Figure 5-5, that there is no major tracking performance differe nce between the two controllers. The only distinguishable difference remains the cross track steady state erro r, which although is larger for the RD, is within acceptable limits for the task. Most likely it coul d be reduced further with some additional performance tuning. A more noticeable distinction between the PD and RHC contro llers is identifiable in the second RD run data (see Figure 5-12). In this instance, the RD was given a large initial cross track error, approximately equal to that of the second run of th e GPSD, about 25 meters. In this case, there is still an overshoot of the path, but not nearly as mu ch as the one encountered for the GPSD. The overshoot seen here is approximately 1.5 meters, which is st ill within acceptable operating limits. This ability makes the RHC cont roller much more desirable than the PD controller, since fast and stable path reacquisition is one of the most critical performance qualities of an autonomous vehicl e control system. Af ter this portion of the test run, the performance remains nominal and similar to that seen in each of the previous stable runs. Figure 5-13 presents the output performance for the RHC contro ller. Here some significant differences in control can be observed between the classic PD controlle r and the RHC algorithm. The first noticeable difference is that the RHC steer ing output tends to oscillate in a square wave like fashion, especially during the wide turn segmen t times. This is caused by the artificial input quantization that must be done in order to allo w the HRHC algorithm to find a solution in realtime. The quantization does not produce a fixed se t of discrete states for the steering value to occupy, because it is based off of the instanta neous steering feedback from the primitive driver component. Thus the quan tization is recomputed ad hoc, within the node expansion function of

PAGE 124

124 the A* search. Another clear distinction is th at the RD uses much more command authority (steering range) than the PD c ontroller, specifically during the in itial convergence, and the sharp turning period. This is largely attributable to the lack of steering cost penalization within the value function of the RHC. However, this effect is not undesirable in practice since it allows for faster tracking and regulation of pa th motion. Conversely, the RD us es less control authority than the GPSD for small disturbance instances, such as the cross track step at segments 6 and 7. This is due to its higher steady state error tolerance, and lack of co nvergence effort within its goal region. For equality the speed control system perfor mance of the vehicle during RD execution is presented in Figure 5-14. The plot is give n for the first and nominal run of the RD, as with the GPSD plot. Similar to the previ ous speed controller performan ce graph, this figure shows the speed remaining with 0.5 mps of the desired spee d, most of the time. In terestingly, the speed tends to converge during the late r portion of the run. This is an example of the unpredictable nature of a nonlinear control sy stem within its bounded stability region. It could have been caused by anything from a constant gear selection in the automatic transmission, to an activation of the vehicles onboard air condit ioner, which is coupled to th e engine dynamics through power generation equipment. Since these causes are not measured or m odeled, they cannot and are not explicitly compensated for in the controller. As a final controlled comparison and summary of tests part 1 and 2, the response times, percent overshoot, settling times, a nd steady state errors, were reco rded for the cross track error step between segments 6 and 7, for both the G PSD runs 1 and 2, and the RD runs 1 and 2. Table 5-3 contains the values determined for each measurement. This side by side comparison analysis of the four step responses strongly supports th e hypothesis that th e RHC algorithm can

PAGE 125

125 effectively regulate an autonomous ground vehicle onto a predetermined motion structure. While there appear to be some quantitative tradeoffs be tween the two controllers, it is evident from both the plots above and the table, that new RHC cont roller response is stable, effective and its response is able to be measured in the same wa y as a classical controlle r. Clearly by tuning it is possible to change the numerical results presented here. Therefore their pur pose is only to show that the two controllers are comparable and w ithin some tolerance of one another, which it indeed does. The third test part is intended to demonstr ate the Obstacle Avoidance (OA) capability of the RHC algorithm, something wh ich cannot be provided by a clas sic style controller, and to offer an analysis of the collected OA data. The data was collected over a single run of the RHC controller on the same test track as the previous two parts. Along with th e signal data typically collected on each run, traversabili ty grid images, which are output by the RD as a development and debugging tool, were recorded. These imag es were logged remotely by a standalone visualization component at a rate of 3 Hz, an arbitrary value. Unfortunately, post processing of the tracking data from this test revealed significant position system problems during the run. There are several visible jumps in the vehicles estimated position, and as a result, it is difficult to detect where in time the vehicle deviates from the prescribed path in order to avoid an obstruction. Neverthele ss, there were a total of four obstacles placed on the path prior to the run, and the NaviGator was able to avoid them. The four objects were large construction barrels, which are easily dete cted and mapped into the traversability grid by the NaviGators Smart Sens or components. The logged traversability grid data shows the avoidance much more apparen tly than the position and error signal data.

PAGE 126

126 As in the previous two test parts, an overv iew of the vehicles track position data is presented in Figure 5-15. Here it can be seen that the ve hicle deviates from the path at the four obstacle locations, each of which is called out. Pos ition system uncertainties are clearly present, especially around segment 7, which indicates a strong estimate drive to the North. The detail of the run is identified in Figure 5-16. Again the four obstacle avoidance maneuvers are called out in the diagram. In these portions of the mission, the vehicle clearly deviates from the intended tracking, as anticipa ted. Also, the large jumps in position estimate are called out and circled in blue. These are not control system re lated, and instead are caused by solution discrepancies within one of the two onboard GPS receivers. The obstacle avoidance of each of the four barre ls is most apparent in the traversability grid images, as mentioned. Figure 5-17 provides these grid imag es, and indicates the results of the RHC optimization routine; at or near the time each object was passed by the NaviGator. The barrels appear as red or orange ci rcles in each image, and were dilated by a radius of 3.5 pixels, so the vehicle would have enough clearance to maneuver around them during the run. Other large red or orange areas in th e images indicate surrounding terrain or trees, and are not in the way of the vehicle while it is on track. Some of the images have spotti ng artifacts in them which are attributable to instantaneous jumps in the position solution, which causes sensed data to be placed in the wrong grid location. However, since the position between the obstacles and vehicles is relative, their relative position in the grid remains constant, and the RHC algorith m is able to consistently steer the vehicle around the true obstacles. Also, as discussed in the previ ous chapter, the pink region in the grid indicates the possible solution trajectories that were explored during optimization, a nd the black or white line shows

PAGE 127

127 the final trajectory selected. The pink lines on the grid edges are new spaces which the vehicle is moving towards, but has yet to popula te with any environment estimate. In summary of test part 3, the NaviGator was given a path mission iden tical to the previous two tests. The vehicle performed as expected, av oiding all four of the en countered obstacles and also maintaining adequate path tracking while in free space. These data and results of this part therefore support the hy pothesis claim that RHC applied to an autonomous ground vehicle allows planning and control to be done simultaneously. The next chapter focuses on the overall results and conclusions which can be drawn from this dissertation. It also details some of the advanced concepts, which are outside of the scope here and also some future work that can be done to progress this research area.

PAGE 128

128 Table 5-1: The receding horizon control autonomous ve hicles test plan. The test plan is made up of a hypothesis and three main parts: one for control, another for the RHC algorithm itself, and lastly a part to test Obstacle Avoidance. Part Label Part Explanation Test Purpose Establish RHC algorithms ability to unify planning and control for autonomous vehicle motion, and to compare the algorithms performance against a classical linear controller. Hypothesis RHC applied to an autonomous ve hicle inherently unifi es the planning and control tasks, so that they may be executed simultaneously. This allows a single task to accomplish motion state re gulation and also provide obstacle avoidance capability. Expected Results The RHC algorithm will exhibit robust tracking performance and will be less susceptible to large disturbances than the classic linear controller. However, the linear controller wi ll probably prove to track better than RHC, under nominal conditions, because the RHC al gorithm is inherently suboptimal due to input quantization and other fact ors such as system dynamics model inaccuracies. As an addition, the RHC method will also be able to avoid obstacles, whereas this behavior is impossible for the linear controller. Part 1, Purpose Measure classical linear path tracking controller performan ce as a control for the hypothesis. Part 1, Design The vehicle will attempt to track an obstacle free path using a classical motion controller. The path will be provi ded as a preset circuit made up of a variety of straight line segments and cu rved segments of different radii. The use of a circuit track will maximize the collection of data per given test run, which is beneficial since the time an d preparation required to setup a single run is nontrivial. The circuit will be de signed such that the system should be able to reach a stable steady state on on e segment before the next is reached. For each new segment encountered on the path, there will be a discontinuity in curvature, heading, or cross track error. These discontinuities will allow for time domain step response measurements to be made. The test will be executed and logged at a nominal speed, in order to isolate the effect of velocity on tracking performance. The test will then be repeated with a large initial tracking error, in order to measur e the controllers ab ility to reacquire the path. Part 1, Logged Measurements Error Signals: Cross Track Error, Heading Error, and Speed Error. Input Signals: Desired Vehicle Position, Heading, and Speed (all from input path). Output Signals: Steering, Thrott le and Brake Actuator Commands. Part 2, Purpose Measure the RHC algorithms path tracking control system performance.

PAGE 129

129 Table 5-1: Continued. Part Label Part Explanation Part 2, Design The vehicle will attempt to track an obstacle free path using the RHC algorithm detailed in Chapter IV. All test tracks, speeds and procedures will be identical to that of part one in or der to maintain equality between the two tests. The test will then be repeated with a large initial trac king error, in order to measure the RHC ability to reacquire the path. Part 2, Logged Measurements Error Signals: Cross Track / Transverse Error, Heading Error, and Speed Error. Input Signals: Desired Vehicle Position, Heading, and Speed (all from input path). Output Signals: Steering, Thrott le and Brake Actuator Commands. Part 3, Purpose Measure the RHC algorithms planning ability. Test Part 3 Design The vehicle will attempt to track the same path circuit as the previous to test parts with the addition of obstacles. Th e obstructions will be placed such that tracking the path on center would cause an impact, th erefore the vehicle must depart from the current path segment in order to avoid collision with the obstacle. The obstacles used for this test will be light weight construction barrels, which are easily detected by syst em sensors and safe in the event of a collision. Test Part 3 Data Error Signals: Cross Track / Transverse Error, Heading Error, and Speed Error. Input Signals: Desired Vehicle Position, Heading, and Speed (all from input path). Output Signals: Steering, Thrott le and Brake Actuator Commands. Other data: Obstacle Clearance Di stance (Minimum distance observed between vehicle and obstacles)

PAGE 130

130 Table 5-2: Test path circuit specification data. The 11 path segments for the control system tests described in this Section ar e given with a start point, and end point latitude and longitude. The segment radius is calculate d as the multiplicative inverse of the specified curvature. Positive curvature valu es indicate a leftward turning segment and negative values indicate a ri ghtward turning segment. Segment Start Lat (deg) Start Lon (deg) End Lat (deg) End Lon (deg) Radius (m) 1 29.75262026 -82.26275871 29.75340236 -82.26275587 2 29.75340236 -82.26275587 29.75376698 -82.26318436 40.0 3 29.75376698 -82.26318436 29.75336974 -82.26361331 41.7 4 29.75336760 -82.26361326 29.75268459 -82.26361854 5 29.75268459 -82.26361854 29.75247728 -82.26383552 -23.3 6 29.75247705 -82.26384131 29.75248487 -82.26467643 7 29.75250188 -82.26473602 29.75250472 -82.26565011 8 29.75250472 -82.26565011 29.75240730 -82.26576274 10.9 9 29.75240730 -82.26576274 29.75231923 -82.26567174 9.8 10 29.75231897 -82.26566695 29.75228804 -82.26321990 11 29.75228804 -82.26321990 29.75260181 -82.26277899 43.5 Table 5-3: The time based step response metrics r ecorded between segments 6 and 7 in all of the stable test runs. The values vary betw een controllers, but remain comparable. Run Label Response Time (sec) Percent Overshoot Settling Time (sec) Steady State Error (m) GPSD Run 1 4.3 38.4 20.8 -0.34 GPSD Run 2 4.4 39.7 20.4 -0.28 RD Run 1 8.6 8.3 20.6 -0.67 RD Run 2 8.8 0 19.7 -0.79

PAGE 131

131 Figure 5-1: An aerial photograph of the Gainesville Raceway road course. The track has a variety of geometry that allows for accurate a nd controlled testing of an autonomous ground vehicle.

PAGE 132

132 29.7520 29.7524 29.7528 29.7532 29.7536 29.7540 -82.2660-82.2655-82.2650-82.2645-82.2640-82.2635-82.2630-82.2625Longitude (deg)Latitude (deg)1 2 3 4 5 6 7 8 9 10 11 Figure 5-2: The path segments designed for the testing conducted at the Gainesville Raceway road course. A total of 11 segments make up the course, each with varying curvature. They are plotted over a geo-referenced global grid.

PAGE 133

133 Figure 5-3: The position data collect ed from run 1 of test part 1. Both the vehicles position and the planned path geometry are pl otted over a geo-re ferenced grid.

PAGE 134

134 Figure 5-4: The logged Navi Gator heading signal from test part 1 run 1. The signal starts off with an initial error value around 0.25 radians, a nd then regulates clos e to zero. There are disturbances during the 6 to 7 segment transi tion and at the sharp turn portion of the track.

PAGE 135

135 Figure 5-5: The cross track error signal from run 1 test part 1. The cross track error is initially around 4 meters and then converges toward zero. A disturban ce is introduces at approximately 100 seconds, and the sharp turn creates a few large peaks shortly there after. The system is shown to track well he re with steady state errors averaging less than 0.5 meters.

PAGE 136

136 Figure 5-6: The cross track error signal from test part 1 run 2. There is purposely a large initial error, about 25 m, which is quickly regul ated away by the PD controller, and the system remains stable. The remaining parts of the mission are executed in a fashion very similar to run 1, which is indicate d by the timing and magnitude of the signal shown here.

PAGE 137

137 Figure 5-7: The cross track error signal from test part 1 run 3. The initial signal is two large for the PD controller to regulate and therefore causes the system to stay at -20 meters. The run was only conducted for approximate ly 30 seconds and then terminated for safety concerns.

PAGE 138

138 Figure 5-8: The output of all three wrench effort signals: steering throttle and brake, during run 1, test part 1. The steering signal is mo stly smooth, with shar p discontinuities at segment transitions where curvature feed-forward dominates. The speed control signals are given for reference and demons trate the speed systems limit cycle like behavior.

PAGE 139

139 Figure 5-9: The speed controller performance data logged from run 1 test part 1. Notice that the speed measurement reaches an oscillating but stable limit cycle, even though the command remains constant. This is attributable to power train system nonlinearities and complex dynamics.

PAGE 140

140 Figure 5-10: The position data collect ed from run 1 of test part 2. Both the vehicles position and the planned path geometry are plotted over a geo-referenced grid. This runs performance data is very similar to the pr evious controller, with the exception of a larger steady state cross track error.

PAGE 141

141 Figure 5-11: The cross track error signal from test part 2, run 1. Similar to the previous cross track signals, shown here is the systems performance while using the RD receding horizon controller. There is a discontinuity around 100 seconds, due to path step input, and also a large error peak due to the last sharp turn at 125 seconds.

PAGE 142

142 Figure 5-12: The cross track error log from run 2, test part 2. An intende d large initial error is given, about 28 m. The RHC system regulates this directly down to near zero, with minimal overshoot. From this point on the c ontroller performs almo st identically to the previous run.

PAGE 143

143 Figure 5-13: Each output signal l ogged during test part 2, run 1 (the nominal case). The steering control signal is much different than the one seen in the classic controller. It is much larger in certain cases and much smaller in others. One key f eature is the input quantization, which is implied by the square wave like signals during the wide turns and long straight-aways.

PAGE 144

144 Figure 5-14: The speed control syst em data logged during run 1 of test part 2. Again the system demonstrates a stable limit cycle, as it did in the previous dem onstration. This time the signal relaxes for a period, the ca use of which is unknown. It is probably attributable to some nonlinear ity in the system dynamics.

PAGE 145

145 Figure 5-15: The position data colle cted from run 1 of test part 3. The obstacle locations during this run are called out with re d leaders. Notice that the ve hicle position deviates from the path around these areas.

PAGE 146

146 Figure 5-16: The cross track error log from run 1, test part 3. The obstacle locations during this run are called out with red leaders. Notice that the error signal increases and then decreases at these points. Also a group of GPS position solution spikes are called out and circled in blue.

PAGE 147

147 Figure 5-17: Four traversability grids recorded during run 1 of te st part 3. Barrel 1 is avoided first (top left), then the 2nd (top right), the 3r d (bottom left), and finally the last barrel (bottom right). Free space is indicated in gr ay, with obstacles in shades of red and yellow. The pink region is space searched by the RHC algorithm, while the pink edges represent unknown space.

PAGE 148

148 CHAPTER 6 FUTURE WORK AND CONCLUSIONS This dissertation has intr oduced a new and novel planni ng and control scheme for autonomous systems. The method, called Heuristic Receding Horizon Control (HRHC) is used to simultaneously plan and control an autonomous system through its operating environment. Also a novel extension to classic Receding Horizon C ontrol (RHC), called Dual-Frequency Receding Horizon Control (DFRHC) has been proposed. The focus and motivation for the two technologie s has been established in Chapter I, along with an initial problem statemen t. Specifically, it is desired to establish a method by which an autonomous ground vehicle may control its ow n motion through a cluttered environment. Chapter II has reviewed much of the relevant literature published by othe r researchers in this field, and has thus helped to establish the tec hnologys uniqueness and nich e within the realm of robotics and automation. The theory behind th e HRHC and DFRHC concepts was offered and detailed in the third Chapter. In addition, the ke y proposal of this dissert ation was summarized in Remark 1 of that chapter. Also both of the ne w and novel methods were implemented and tested on a real autonomous ground vehicle, the NaviGator, at the Center for In telligent Machines and Robotics. The tested performance results for that implementation were given in Chapter IV, and were found to strongly support th e theory and claims proposed. Some advanced ideas and con cepts, along with some remaining work that can be done to continue this research in the future are offered in the first section below. They are followed in the second section with some of the detailed conclusi ons that can be drawn from studying the theory, implementation and testing results of this dissertation.

PAGE 149

149 Future Work There are several concepts and advancements that can be made and tested for the RHC strategies of this dissertation. One comes from an implied hypothesi s that both HRHC and DFRHC technique allow for RHC to be applied faster and more efficiently than a classic RHC optimization routine. While these techniques have been applied, tested, and shown to work on an electromechanical system, they have not been compared directly with a classic optimizer. For this hypothesis, the modi fied RHC routine would ideally be tested and controlled against one that uses traditional optimiza tion methods: Branch and Bound, Quadratic Programming, etc. Since these algorithms ar e very time consuming and complicated to implement, performing a thorough analysis of th e new RHC algorithm against a classic one has been determined to be beyond th e scope of this dissertation. The testing would require m easuring the computation perf ormance of the algorithms themselves. Metrics that directly support the claim such as c ontrol loop frequency, bandwidth, and data throughput, can offer valuable input wi th regard to the algorithms efficiency and effectiveness. For example, sin ce HRHC requires the expansion of state representing nodes, the number of nodes searched in the process is an other very good metric to evaluate the algorithms efficiency, especially since the time performa nce and computation requirements are directly proportional to the number of nodes expanded. This type of testing would be very valuable to support the work begun in this thesis and offers a specific path for future research. Another conceptual area could be focused on finding more advanced and theoretically supported ways of input quantization in order to increase the solution optimality of the HRHC routine. As discussed in the prev ious chapters, input qua ntization is required for the A* search, but diminishes the quality of the overall control. Since the quantization is currently generated ad hoc; further research in this area could certainly make the control algorithm and theory stronger.

PAGE 150

150 Finally, many optimization routines implemented for RHC are able to use the previously determined solution trajectory as a warm or running start for the next optimization attempt. Since the state describing variables te nd to change only slightly betw een control loop iterations, the previous solution makes for a very good initial guess. The HRHC routine implemented in this thesis does not use this technique, mostly because the solutions we re shown to provide satisfactory control, and the algorithm is able to maintain real-time performance. However, research into giving the HRHC routine a warm start, could offer increased efficiency, which would allow for more nodes to be searched and a more optimal solution to be found. This result could then let the algorithm be appl ied to even more complex systems. Conclusions Motion planning and controlli ng an autonomous ground vehicle are very challenging tasks. These tasks are difficult even when accomplis hed in two sequential steps, which is the conventional practice in design and implementation. This diss ertation has studied, theorized, implemented, and tested the unifica tion of the two tasks into one. It can be drawn from this work that their combination indeed offers a significant amount of engineering consolidation. This is especially true when faced with the often daunting system integrati on effort required to create a functional real world robotic system. All of th e signals, interconnections and validations that must be made between the otherwise two sequent ial processes are avoide d. This single task therefore, allows for less time to be spent in the development phase of the implementation. One drawback in general is that the technology still needs so me theoretical and practical hardening. It is not yet a tr ied and true methodology, and it is not simple. Even after the development stage, tuning a Receding Horizon C ontroller is difficult and vague. The engineers working with it must have a thorough knowledge of the system dynamics and nuances, as well as an advanced understanding of the underlying optimi zation routine. However, because the RHC is

PAGE 151

151 more informed of the system dynamics, stronger control system performance can be achieved with the technique. Both system stability and robustness can benefit from the nonlinear capabilities of the controller. Finally, the theoretical concepts of this thesis have overall been in effort to help unify the two largely accepted approaches to advanced ro botics, namely, the Artif icial Intelligence (AI) approach and the Control Systems approach. The AI approach is mainly logical in nature, and is based around proving that theoretical methods w ill yield admissible results, or in other words results which are valid, predictabl e and consistent. The controls ap proach is largely mathematical in nature and is concerned with the system dyna mics and proving that formulaic controllers will yield stable and convergent beha vior. Clearly the two methods mu st be related somehow, since the end results tend to be very similar, and because of the strong connections that analytical and logical mathematics share. This dissertation has shown that for one particular control method, an AI approach, A* search, and a c ontrols method RHC, can be unified if the problem is structured and cast in a particular way. This is an important result identifying that the two largely practiced approaches may be more re lated than they appear.

PAGE 152

152 LIST OF REFERENCES [AN04] An, D., Wang, H., VPH: A New La ser Radar Based Obstacle Avoidance Method for Intelligent Mobile Robots, Proceedings. 2004 IEEE World Congress on Intelligent Control and Automation, Hangzhou, China, June (2004), pp. 46814685. [AND83] Andrews, J.R., Hogan, N., Impedance Control as a Framework for Implementing Obstacle Avoidance in a Manipulator, Control of Manufacturing Processes and Robotic Systems, Eds. Hardt, D.E. and Book, W., ASME, Boston, 1983, pp. 243251. [BAL00] Ball, Sir R.S., A Treatise on the Theory of Screws, Cambridge, UK, Cambridge University Press, 1900. [BAR92] Barraquand, J., Langlois, B., Lato mbe, J.-C., Numerical Potential Field Techniques for Robot Path Planning, IEEE Transactions on Systems, Man and Cybernetics, Volume 22, Issue 2, March-April (1992), pp. 224-241. [BEM00] Bemporad, A., Mignone, D., MIQP.M: A Matlab Function for Solving Mixed Integer Quadratic Programs, Technical Report, code available at http://control.ethz. ch/~hybrid/miqp, Zurich, September 2006. [BOR89] Borenstein, J., Kore n, Y., Real-Time Obstacle A voidance for Fast Mobile Robots, IEEE Transactions on Systems, Man, and Cybernetics, Volume 19, Issue 5, October (1989), pp. 1179-1187. [BOR91] Borenstein, J., Koren, Y., The V ector Field Histogram-Fast Obstacle Avoidance for Mobile Robots, IEEE Transactions on Robotics and Automation, Volume 7, Issue 3, June (1991), pp. 278-288. [BRE63] Bresenham, J.E. An Increm ental Algorithm for Digital Plotting, Presented at ACM National Conference, August (1963). [BRO83] Brockett, R.W., Asy mptotic Stability and Feedback Stabilization," in Differential Geometric Control Theory, R. W. Brockett, R. S. Millman, H. J. Sussmann (Eds.), Birkhauser, Boston, MA, (1983), pp. 181-191. [BRO00] Brockett, R., Liberzon, D., Quan tized Feedback Stabilization of Linear Systems, IEEE Transactions on Automatic Control, Volume 45, Issue 7, July (2000), pp. 1279-1289. [COU92] Coulter, C., Imple mentation of the Pure Purs uit Path Tracking Algorithm, Report CMU-RI-TR-92-01, Carnegie Me llon University, Pittsburg PA, 1992. [CHO00] Choi, S.B., The Design of a Look-Do wn Feedback Adaptive Controller for the Lateral Control of Front-Wheel-Steer ing Autonomous Highway Vehicles, IEEE Transactions on Vehicular Technology, Volume 49, Issue 6, November (2000), pp. 2257-2269.

PAGE 153

153 [CRA06] Crane, C. D., Armstrong, D.G., Touchton, R., Galluzzo, T., Solanki, S., Lee, J., Kent, D., Ahmed, M., Montane, R., Ridgeway, S., Velat, S., Garcia, G., Griffis, M., Gray, S., Washburn, J., Routson, G., "Team CIMARs NaviGATOR: An Unmanned Ground Vehicl e for Applicatio n to the 2005 DARPA Grand Challenge." Journal of Field Robotics, Volume 29, Issue 9, September (2006), pp. 599-623. [DEL90] Delchamps, D.F., Stabilizing a Linear System with Quantized State Feedback, IEEE Transactions on Automatic Control, Volume 35, Issue 8, August (1990), pp. 916-924. [DEL98] De Luca, A., Oriolo, G., Samson, C., Feedback Control of a Nonholonomic Carlike Robot, Chapter 4 of: Laumond, J-P., Robot Motion Planning and Control. Lectures Notes in Control and Informati on Sciences 229: Springer-Verlag Telos, 1998. [DIX00] Dixon, W.E., Dawson, D.M ., Zergeroglu, E., Behal, A., Nonlinear Control of Wheeled Mobile Robots, Vol. 262 Lecture Notes in Control and Information Sciences, Springer-Verlag London, 2000. [DIX05] Dixon, W.E., Galluzzo, T. Hu, G., Crane, C., Adaptive Veloc ity Field Control of a Wheeled Mobile Robot. Proceedings of the Fifth International Workshop on Robot Motion and Control, 2005. RoMoCo Dymaczewo, Poland, June (2005), pp. 145-150. [DUB57] Dubins, L.E., On Curves of Mini mal Length with a Constraint on Average Curvature, and the Prescribed Initial and Terminal Positions and Tangents. American Journal of Mathematics, (1957), 79(3): pp. 497-516. [ELF86] Elfes, A., A Sonar-based Mapping and Navigation System. Proceedings. 1986 IEEE International Conference on Robotics and Automation, April (1986), pp. 1151-1156. [ELF89] Elfes, A., Using Occ upancy Grids for Mobile Robot Perception and Navigation. IEEE Computer, Volume 22, Issue 6, April (1989), pp. 46-57. [FIO93] Fiorini, P., Shiller, Z., Motion Pl anning in Dynamic Environments Using the Relative Velocity Paradigm, Proceedings. 1993 IEEE International Conference on Robotics and Automation, May (1993), pp. 560-565. [GU05] Gu, D., Hu, H., A Stabilization Receding Horiz on Regulator for Nonholonomic Mobile Robots, IEEE Transactions on Robotics, Volume 21, Issue 5, October (2005), pp. 1022-1028. [HAR68] Hart, P.E., Nilsson, N.J., Raphael B., A Formal Basis for the Heuristic Determination of Minimum Cost Paths, IEEE Transactions on Systems Science and Cybernetics, SSC4 (2), (1968), pp. 100-107. [ISI95] Isidori, A., Nonlinear Control Systems, 3rd Edition, London, UK: SpringerVerlag, 1995. [JIA97] Jiang, Z-P., Nijmeijer, H., Tracking Control of M obile Robots: A Case Study in Backstepping, Automatica, Volume 33, Issue 7, (1997), pp. 1393-1399.

PAGE 154

154 [JIN05] Jing, X-J., Wang, Y-C., Control of Behavior Dynamics for Motion Planning of Mobile Robots in Uncertain Environments, Proceedings. 2005 IEEE International Conference on Mechatronics, Taipei, Taiwan, July (2005), pp. 364369. [KAM86] Kambhampati, S., Davis, L., Multi resolution Path Planning for Mobile Robots, IEEE Journal of Robotics and Automation, Volume 2, Issue 3, September (1986), pp. 135-145. [KAV96] Kavralu, L., Svestka, P., Latombe, J-C., Overmars, M., Probabilistic Roadmaps for Path Planning in High-Dimen sional Configuration Spaces, IEEE Transactions on Robotics and Automation, Volume 12, Issue 4, August (1996), pp. 566-580. [KIM01] Kim, C.S., Park, K.S., Jeong, S.G., Lee, W.G., Lee, H.C., Kim, J.C., Bae, J.I., Lee, M.H., H Steering Control System for the Unmanned Vehicle, Proceedings. 2001 IEEE International Symposium on Industrial Electronics, Pusan, Korea, June (2001), pp. 1441-1445. [KEY94] Keymeulen, D., Decuyper, J., The Fluid Dynamics Applied to Mobile Robot Motion: The Stream Field Method, Proceedings. 1994 IEEE International Conference on Robotics and Automation, May (1994), pp. 378-385. [KHA85] Khatib, O., Real-tim e Obstacle Avoidance for Mani pulators and Mobile Robots, Proceedings. 1985 IEEE International Conference on Robotics and Automation, Mar (1985), pp. 500-505. [KON99] Konkimalla, P., LaValle, S.M., Effi cient Computation of Optimal Navigation Functions for Nonholonomic Planning. Proceedings of the First Workshop on Robot Motion and Control, 1999. RoMoCo Kiekrz, Poland, June (1999), pp. 187-192. [KOR91] Koren, Y., Borenstein, J., Poten tial Field Methods and Their Inherent Limitations for Mobile Robot Navigation, Proceedings. 1991 IEEE International Conference on Robotics and Automation, April (1991), pp. 1398-1404. [KUA85] Kaun, D., Zamiska, J., Brooks, R., N atural Decomposition of Free Space for Path Planning, Proceedings. 1985 IEEE Internati onal Conference on Robotics and Automation, March (1985), pp. 168-173. [LI93] Li, P., Horowitz, R., On Velocity Field Control of M echanical Systems, Proceedings. 1993 IEEE Confer ence on Decision and Control, December (1993), pp. 3124-3125. [LI96] Li, P., Horowitz, R., Application of Passive Velocity Field Control to Robot Contour Following Problems, Proceedings. 1996 IEEE Conference on Decision and Control, December (1996), pp. 378-385. [LIN04] Lingelbach, F., Path Planning us ing Probabilistic Cell Decomposition, Proceedings. 2004 IEEE International Conference on Robotics and Automation, New Orleans, LA, April (2004), pp. 467-472.

PAGE 155

155 [LIU94] Liu, Y-H., Arimoto, S., Comput ation of the Tangent Graph of Polygonal Obstacles by Moving-Line Processing, IEEE Transactions on Robotics and Automation, Volume 10, Issue 6, December (1994), pp. 823-830. [LOI03] Loizou, S.G., Tanner, H.G., Kuma r, V., Kyriakopoulos, K.J., Closed Loop Navigation for Mobile Agents in Dynamic Environments. Proceedings. 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems, Las Vegas, NV, October (2003), pp. 3769-3774. [LOZ79] Lozano-Perez, T, Wesley, M., A n Algorithm for Planning Collision-Free Paths Among Polyhedral Obstacles, Communications of the ACM, Volume 22, Issue 10, October (1979), pp. 560-570. [MAY90] Mayne, D.Q., Michalska, H., Recedi ng Horizon Control of Nonlinear Systems, IEEE Transactions on Automatic Control, Volume 35, Issue 7, July (1990), pp. 814-824. [MAY00] Mayne, D. Q., Rawlings, J. B., Rao, C. V., Scokaert, P. O. M., Constrained model predictive control: Stability and optimality, Automatica, Volume 36, Issue 6, June (2000), pp. 789-814. [MEY86] Meystel, A., Guez, A., Hillel, G., Minimum Time Path Planning for a Robot, Proceedings. 1986 IEEE International Conference on Robotics and Automation, April (1986), pp. 1678-1687. [MIU99] Miura, J., Uozumi, H., Shir ai, Y., Mobile Robot Motion Planning Considering the Motion Uncerta inty of Moving Obstacles, Proceedings. 1999 IEEE International Conference on Systems, Man, and Cybernetics, Tokyo, Japan, October (1999), pp. 692-697. [NEL88] Nelson, W.L., Cox, I.J., Local Path Control for an Autonomous Vehicle, Proceedings. 1988 IEEE International Conference on Robotics and Automation, April (1988), pp. 1504-1510. [NIC98] Nicolao, G.D., Magni, L., Scattolini R., Stabilizing Receding-Horizon Control of Nonlinear Time-Varying Systems, IEEE Transactions on Automatic Control, Volume 43, Issue 7, July (1998), pp. 1030-1036. [NIL71] Nilsson, Nils, J. Problem Solving Methods in Artificial Intelligence. New York: McGraw-Hill, 1971. [NIL98] Nilsson, Nils, J. Artificial Intelligence: A New Synthesis. San Francisco: Morgan Kaufman Publishers, Inc., 1998. [OLL95] Ollero, A., Heredia, G., Stability Analysis of M obile Robot Path Tracking, Proceedings. 1995 IEEE/RSJ International Conference on Intelligent Robots and Systems, (1995), pp. 461-466. [REE91] Reeds J.A., Shepp, R.A., Optimal Pa ths for a Car that Goes Both Forward and Backward, Pacific Journal of Mathematics (1991), 145(2): pp. 367-393.

PAGE 156

156 [RIM88] Rimon, E., Koditschek, D.E., Exact Robot Navigation using Cost Functions: The Case of Distinct Spherical Boundaries in En, Proceedings. 1988 IEEE International Conference on Robotics and Automation, April (1988), pp. 17911796. [RIM91] Rimon, E., A Navigation Function for a Simple Rigid Body, Proceedings. 1991 IEEE International Conference on Robotics and Automation, April (1991), pp. 546-551. [ROH87] Rohnert, H., Shortest Paths in th e Plane with Convex Polygonal Obstacles, Information Processing Letters, Volume 23, 1987, pp. 71-76. [SAM90] Samson, C., Velocit y and Torque Feedback Control of a Nonholonomic Cart, Proceedings. International Workshop in Adaptive and Nonlinear Control: Issues in Robotics, Grenoble, France, 1990. [SAM95] Samson, C., Control of Chained Sy stems Application to Path Following and Time-Varying Point-Stabilization of Mobile Robots, IEEE Transactions on Automatic Control, Volume 40, Issue 1, January (1995), pp. 64-77. [SCO99] Scokaert, P.O.M, Mayne, D.Q., Raw lings, J.B., Suboptimal Model Predictive Control (Feasibility Implies Stability), IEEE Transactions on Automatic Control, Volume 44, Issue 3, March (1999), pp. 648-654. [TAK89] Takahashi, O., Schilling, R.J., Mot ion Planning in a Plane Using Generalized Voronoi Diagrams, IEEE Transactions on Robotics and Automation, Volume 5, Issue 2, April (1989), pp. 143-150. [THO84] Thorpe, C., Matthies, L., Path Rela xation: Path Planning for a Mobile Robot, Proceedings. 1984 IEEE Conference OCEANS, September (1984), pp. 576-581. [THR05] Thrun, S., Burgard, W., Fox, D., Probabilistic Robotics, Cambridge, MA: The MIT Press, 2005. [TIL90] Tilove, R.B., Local Obstacle Avoi dance for Mobile Robots Based on the Method of Artificial Potentials, Proceedings. 1990 IEEE International Conference on Robotics and Automation, May (1990), pp. 566-571. [US00] United States. Floyd D. Spence Nationa l Defense Authorization Act for Fiscal Year 2001. H.R. 5408. H.Rept. 106-945. Congressional Record. Washington: GPO, October 6, 2000. [WAR89] Warren, C.W., Global Path Planning using Artificial Potential Fields, Proceedings. 1989 IEEE International Conference on Robotics and Automation, Volume 1, May (1989), pp. 316-321. [WIT00] Wit, J., Vector Pursuit Path Tracking for Autonomous Ground Vehicles. Ph.D. Dissertation, University of Florida, 2000.

PAGE 157

157 BIOGRAPHICAL SKETCH Thomas Galluzzo was born and raised in west ern New York. He holds a B.S. in aerospace engineering from Embry-Riddle Aeronautical Univ ersity at Daytona Beach, FL. He is currently working on completing a doctoral degree from the University of Florida, focused on robotic ground vehicles. He plans to continue his career as an engineer at Harris Corporation in Melbourne, FL, after his graduate education.


Permanent Link: http://ufdc.ufl.edu/UFE0017421/00001

Material Information

Title: Simultaneous Planning and Control for Autonomous Ground Vehicles
Physical Description: Mixed Material
Copyright Date: 2008

Record Information

Source Institution: University of Florida
Holding Location: University of Florida
Rights Management: All rights reserved by the source institution and holding location.
System ID: UFE0017421:00001

Permanent Link: http://ufdc.ufl.edu/UFE0017421/00001

Material Information

Title: Simultaneous Planning and Control for Autonomous Ground Vehicles
Physical Description: Mixed Material
Copyright Date: 2008

Record Information

Source Institution: University of Florida
Holding Location: University of Florida
Rights Management: All rights reserved by the source institution and holding location.
System ID: UFE0017421:00001


This item has the following downloads:


Full Text





SIMULTANEOUS PLANNING AND CONTROL FOR AUTONOMOUS GROUND
VEHICLES





















By

THOMAS C. GALLUZZO


A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL
OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT
OF THE REQUIREMENTS FOR THE DEGREE OF
DOCTOR OF PHILOSOPHY

UNIVERSITY OF FLORIDA

2006

































Copyright 2006

by

Thomas C. Galluzzo





























I dedicate this dissertation entirely to my mother and father, Janice and Dennis Galluzzo. Their
complete and unwavering support of my education has made this achievement possible.









ACKNOWLEDGMENTS

I would first like to thank Dr. Carl Crane for his kind support throughout my graduate

education. He has been an excellent advisor for both my academic and field research. I would

also like to thank my committee, Dr. Warren Dixon (co-chair), Dr. B.J. Fregly, Dr. John

Schueller, and Dr. Antonio Arroyo, for their support and guidance.

This work has been made possible by the Air Force Research Laboratory at Tyndall Air

Force Base, Florida. Thanks go to Al Neese, Dr. Jeff Wit and the rest of their staff. Also, I would

like to thank the Air Force proj ect manager at CIMAR, David Armstrong. He has been a good

friend and mentor throughout this work.

Finally I would like to thank my close colleagues and friends at CIMAR, namely Danny

Kent, Bob Touchton, Sanjay Solanki, Roberto Montane, and Chad Tobler. They have made this

journey all the more exciting and worthwhile.












TABLE OF CONTENTS


page

ACKNOWLEDGMENT S .............. ...............4.....


LI ST OF T ABLE S ........._..... ...............7....__........


LI ST OF FIGURE S .............. ...............8.....


AB S TRAC T ............._. .......... ..............._ 10...


CHAPTER


1 INTRODUCTION ................. ...............11.......... ......


Background ................. ...............11.................
Focus ................. .......... ...............15.......
Problem statement .............. ...............16....
Motivation............... ...............1


2 REVIEW OF THE LITURATURE ................. ...............21........ ....


Planning and control input structures .............. ...............22....
Potential Fields .............. ...............22....

Navigation Functions............... ...............2
Velocity Fields............... ...............25.

Occupancy Grid s .............. ...............26....
Geometric Model s .............. ...............27....
Moti on C omm and Structure s ................ ...............29........... ..
Planning Strategies and Algorithms .............. ...............30....
Deterministic Geometric Planners............... ...............30
Search and Heuristic Methods ................. ...............31........... ...
Vector Methods .............. ...............32....
Probabilistic Planning............... ...............33
Control Strategies and Algorithms .............. ...............34....
Kinematics Methods ................. ...............35.................

Linear Control Systems .............. ...............36....
Nonlinear Control ................. ...............37.......... .....
Model Predictive Control .............. ...............38....


3 THEORETICAL APPROACH .............. ...............39....


Introducti on ................ .. ............ ............ .............3
Notation, Assumptions, and Preliminary Theorems ................. ...............................44
A* Algorithm and Admissibility .............. ...............46....
Quantization and Invariant Sets ................. ...............53....... .....
Heuristic Receding Horizon Control .............. ...............56....













Dual-Frequency Receding Horizon Control ................. ...............60................
Conclusions............... ..............6


4 APPLIED APPROACH AND IMPLEMENTATION ................. .............................70


Introducti on .........__... ..... .__ ...............70....
Ob stacl e Avoid ance ........._._...........___ ...............72....
Admissible Heuristics for HRHC .............. ...............79....

Reactive Driver Implementation............... .............8
Faults and Failure Modes............... ...............99.
Conclusions............... ..............10


5 TESTING AND RESULTS S................ ...............110...............


Test Plan ................. ...............111......... ......
Test Review ................. ...............112......... ......
Test Results ................. ...............114................


6 FUTURE WORK AND CONCLUSIONS ................. ...............148........... ...


Future Work............... ...............149.
Conclusions............... ..............15




LIST OF REFERENCES ................. ...............152................


BIOGRAPHICAL SKETCH ................. ...............157......... ......










LIST OF TABLES

Table page

3-2 Algorithm for a single HRHC iteration .............. ...............66....

4-1 RD's ready state control loop. ............. ...............103....

5-1 The receding horizon control autonomous vehicles test plan ................. ................ ...128

5-2 Test path circuit specification data. ............. ...............130....

5-3 The time based step response metrics ................. ...............130........... ..











LIST OF FIGURES


Figure page

1-1 Picture of the NaviGator AGV. .........__. ........... ...............20...

3-1 Receding horizon control ................. ...............67........ .....

3-2 The quantization of the system' s input space ...._ ......_____ .......___ .........6

3-3 This diagram identifies the basic DFRHC scheme ......___ ..... ... ._ ...............69

4-1 The NaviGator high level control system block diagram. ................... ...............10

4-2 Simple obstacle avoidance case ........._._.._......_.. ...............105...

4-3 The traversability grid concept. ............. ...............106....

4-4 Path tracking error system. ............. ...............107....

4-5 Traversability grid dilation .............. ...............108....

4-6 Planning and control search area. ............. ...............109....

5-1 An aerial photograph of the Gainesville Raceway road course ........._.._.. .. ............... 13 1

5-2 The path segments designed .............. ...............132....

5-3 The position data collected from run 1 of test part 1 .............. ...............133....

5-4 The logged NaviGator heading signal from test part 1 run 1. ............. ..................... 134

5-5 The cross track error signal from run 1 test part 1. ............. ...............135....

5-6 The cross track error signal from test part 1 run 2. ....._____ .... .._._. ........_........3

5-7 The cross track error signal from test part 1 run 3 ...._.._.._ .... .._._. ......._.._......3

5-8 The output of all three wrench effort signals ........._._.._......_.. ......... ......138

5-9 The speed controller performance data logged from run 1 test part 1 .............................139

5-10 The position data collected from run 1 of test part 2. ........._._. .. ..... ..............140

5-11 The cross track error signal from test part 2, run 1. ............. ...............141....

5-12 The cross track error log from run 2, test part 2. ............. ...............142....

5-13 Each output signal logged during test part 2, run 1 (the nominal case). .......................143











5-14 The speed control system data logged during run 1 of test part 2. ............._ ........._.....144

5-15 The position data collected from run 1 of test part 3. ....____ ... ......_ ...............145

5-16 The cross track error log from run 1, test part 3.......... ................ ........._.. .......146

5-17 Four traversability grids recorded during run 1 of test part 3 ................. ................ ...147









Abstract of Dissertation Presented to the Graduate School
of the University of Florida in Partial Fulfillment of the
Requirements for the Degree of Doctor of Philosophy

SIMULTANEOUS PLANNING AND CONTROL FOR AUTONOMOUS GROUND
VEHICLES

By

Thomas C Galluzzo

December 2006

Chair: Carl Crane
Cochair: Warren Dixon
Major Department: Mechanical and Aerospace Engineering

Motion planning and control for autonomous vehicles are complex tasks that must be done

in order for a ground robot to operate in a cluttered environment. This dissertation presents the

theory, implementation, and test results for some new and novel Receding Horizon Control

(RHC) techniques that allow these tasks to be unified into one.

The first new method is called Heuristic Receding Horizon Control (HRHC), and uses a

modified A* search to fulfill the online optimization required by RHC. The second is called

Dual-Frequency Receding Horizon Control (DFRHC), and is used to simplify the traj ectory

planning process during the RHC optimization.

Both methods are combined together to form a practical implementation, which is

discussed in detail. The autonomous ground vehicle, the NaviGator, developed at the Center for

Intelligent Machines and Robotics, serves as a platform for the implementation and testing

discussed.

Finally, data and their analysis are presented. The results obtained help to support the

theoretical and practical claims made by this dissertation.









CHAPTER 1
INTTRODUCTION

Everyday more and more robotic vehicles are entering the real world. They are being put to

work just about everywhere manual vehicles have been used in the past. From agriculture, and

mining operations, to inside factories and hospitals, they are increasing safety, efficiency, and

performance in all tasks otherwise considered to be too dull, dirty or dangerous for manual labor.

Unmanned vehicles are being used intensely by militaries worldwide. The United States

for example, has already been using unmanned air vehicles for several years to patrol the skies

over conflicts in foreign lands. Recently, by congressional mandate, the U.S. Army has set a goal

to have one-third of all operational ground combat vehicles operating unmanned by the year

2015 [US00]. This is a difficult feat that, if achieved, will save countless American lives on the

battlefields of tomorrow.

The recent explosion of unmanned vehicle technology has been made possible by vast

improvements in sensors, computers and research developments. There is now a greater

understanding of the problems that need to be solved in order to allow autonomous machines to

operate in the largely uncertain real world. Yet despite all of the advancements, there is still

room for improvement and much work to be done.

Background

Unmanned vehicles are designed to perform a variety of tasks, which they perform with

varying levels of independence. While some unmanned machines are rigidly controlled by

human operators, via telemetry and wireless input, others are sent about with little to no

assistance. These are the type of unmanned vehicles under consideration in this dissertation.

They fall into the category known as autonomous vehicles. Autonomous vehicles are operated

under human control at the highest of levels. Instructions here may simply command the vehicle










to reach a goal point or follow a corridor. Commands may also be issued on an even higher level

describing an abstract mission, such as patrolling a perimeter, or sweeping through a defined

area. At these levels, the robot is given a higher amount of command and control authority.

Consequently, the less input provided by the operator, the more influence the machine has over

its own actions.

Autonomous vehicles pose a number of unique problems in their design and

implementation. There is no longer a human-in-the-loop control scheme for the vehicle. The

unmanned system itself must close the loop from environment feedback to low-level vehicle

control. Where a human operator would normally analyze data feedback from telemetry, remote

video, etc. and then decide the best course of action, designers must now instrument the vehicle

so it can automate these tasks. This requires the inclusion of internal state and environmental

sensors, along with onboard computers and software capable of processing the sensed

information and planning the vehicle' s action accordingly. One way of formalizing this overall

process is known as the sense-plan-act paradigm for robotic development [NIL98]. It is a

breakdown of the complete design into compartmentalized tasks and processes, which allows for

ease of implementation of the whole system in general.

The first design step in the sense-plan-act paradigm is the inclusion of different types of

sensors onto the vehicle platform. These sensors serve two general purposes. The first is to

measure the state of the vehicle itself, such as its position, orientation, speed, and perhaps also

health monitoring information such as temperatures, pressures, etc. In humans, this is known as

proprioception, a word derived from the combination of the Latin proprius, meaning "one's own"

and perception. It is a vital part of the robotic system; without proprioceptive sensors the vehicle










would not have the feedback necessary to be able to control itself, regardless of environmental

conditions.

The complement of proprioception is exteroception. This is the system' s ability to sense

information originating outside of itself. It is the ability to sense one's environment. Sensors such

as cameras and range detectors provide this information. The job of the system designer is to

outfit the autonomous vehicle with those sensors necessary and appropriate to provide the correct

environment feedback, thus allowing the system to decide how to act within it.

A key note of importance is that accurate internal state estimates are critical in order to be

able to make sense out of exteroceptive information. An example that helps to understand this is

the estimation of a camera's orientation on a vehicle. Without knowing a camera' s orientation in

the environment, it is impossible for the robot to be able to know where the sensed images are

coming from. This means that the robot must be aware of its own orientation before it can use

the camera information. The same is true for other environment sensors, and thus it is necessary

to have valid proprioceptive state estimates before analyzing exteroceptive information.

Designers face the problem of ensuring the validity of information from both types of

sensors. This problem becomes very difficult in the presence of noise and other uncertainty,

which is always the case in real world implementations, and therefore it requires careful attention

from design through implementation.

The second step in the sense-plan-act design is giving the autonomous vehicle the ability to

calculate how to react to sensed internal and external information. This step requires the

unmanned vehicle to have the necessary processing and computational power along with the

algorithms and software capable of providing robust and stable control laws that guide the

navigation of the robot. This step replaces the decision making and input provided by an










operator, such as with teleoperated control. The decision making process overall produces the

desired response based upon the mission obj ective of the autonomous vehicle.

Action is the Einal step in the paradigm. At this phase, all of the sensed data have been

processed and analyzed, and the autonomous vehicle commands its own inputs. As with all

unmanned vehicles, input commands are delivered to the actuators that allow the vehicle to

produce motion: engine fuel valves, amplified electric motors, brakes, and many others.

Autonomous vehicles generate their own decisions at the planning level. These govern how to

drive the vehicle actuators, which cause the platform to move. The sense-plan-act sequence

continues on repeatedly, allowing the vehicle to self-regulate.

This paradigm and its steps described can be applied to all autonomous vehicles, and in

fact all autonomous robots. However, it is specifically used in this dissertation for the design and

application of autonomous ground vehicles (AGVs), although other types of vehicles may

benefit from the topic proposed.

There are many shapes and sizes of AGVs. Different methods of propulsion for AGVs

have been explored by a number of researchers. There are skid-steered and differential drive

vehicles which translate and tumn by means of two sets of independent wheels or tracks on either

side of the vehicle platform. There are also car-like vehicles, which move by rotating a set of

wheels, and tumn by deflecting the relative angle between the wheels and the vehicle chassis.

Many combinations of propulsion and turning exist in car-like vehicles: front, rear, and all-wheel

drive, for example, are propulsion methods commonly used among them.

There are several unique problems facing AGV engineers that are not of concern for other

types of unmanned vehicles. The machine environment poses the greatest problem for a

successful AGV. Unlike air and water unmanned vehicles, which can operate in a vast










uncluttered space, AGVs must often operate within confined spaces, among static and dynamic

obstacles, and on different qualities of terrain. Avoiding collisions with obstacles and refraining

from becoming trapped is a hard challenge to overcome. The vehicle must be able to quickly and

accurately realize its environment, so designers must incorporate robust sensors capable of

resolving the complexity of the surroundings. The vehicle must also have a high degree of

mobility with the ability to respond quickly to avoid potential collisions. Finally, the robot must

be equipped with enough computational power to be able to quickly process the large amounts of

sensor data, and then control its response safely.

Focus

The method by which a ground robot can plan and control its own motion is the subject of

this research. AGV motion planning and control are difficult problems for many reasons. First,

they require the analysis of multidimensional data from multiple sensors. This means that control

algorithms must be able to handle a relatively high throughput of data, and be fast enough (on the

machines that perform them) to maintain vehicle stability and performance. Second, the data

must be processed with consideration for any uncertainties in sensing and vehicle response.

As aforementioned, uncertainty is always a concern when machines are operating in the

real world. These uncertainties can be attributed to several sources, some examples include

sensor limitations, noise and the inherent unpredictability of operating environments. Uncertainty

in vehicle response is attributable to the fact that machines can only respond to their inputs with

a limited degree of repeatability. External disturbances and wear are examples of variation

sources that affect how a vehicle will respond to a given input. By minding these influences

during the data processing and planning phase, an AGV is far more likely to respond correctly in

its situation.










Another problem to motion planning and control is that there must be consideration for the

motion constraints of any actuators involved or the vehicle platform itself. This is especially an

important issue for car-like vehicles because they are subj ect to a nonholonomic constraint. This

means that although a vehicle driving on a surface may have three degrees of freedom,

(translation in two dimensions and rotation in one) it can only translate in the direction it is

immediately facing. Consequently, the equations of motion describing the vehicle dynamics are

non-integrable, which makes the problem much harder to solve. This also means that car-like

vehicles are under actuated. In other words, the number of control inputs to the system is less

than the number of degrees of freedom in the system' s configuration space. This is illustrated by

the fact that a car-like vehicle can only move by input of a steering wheel and the rotation of its

drive wheels, yet given the right control sequence, it can assume any position and orientation.

This is the nature of the problem undertaken in this dissertation.

Problem statement

A formal description of the general AGV motion planning and control problem can be

formulated as follows:

Given :

Sensed data describing the local environment around the vehicle, and a goal structure

(point, line, traj ectory, etc.) which the vehicle is desired to reach, or track, and also, feedback

estimates of the full vehicle state, i.e. position, velocity, and orientation.

Develop:

An algorithm capable of optimizing and executing the vehicle's motion through its local

environment, and obtaining the goal. The algorithm must be able to maintain throughput of

sensor data and command the vehicle actuators accordingly.









Motivation

For over a decade The Center for Intelligent Machines and Robotics (CIMAR) has been

actively pursuing research in the field of autonomous robotics and AGV technology. A key

challenge during this endeavor has been tackling the problem of motion planning and control.

The research of AGVs at CIMAR has primarily been conducted under the direct support of

the Air Force Research Laboratory (AFRL) at Tyndall Air Force Base. The technology

developed at CIMAR under this program has advanced the fields of automated surveying and

mapping, unexploded ordinance detection, mine field clearing, and modular system architecture

design.

Over the years, many different groups of people at CIMAR have successfully automated

over ten unmanned ground vehicles. The latest of theses vehicles is called the NaviGator, shown

in Figure 1-1. It is a front-wheel steered, all-wheel drive platform.

The NaviGator is a custom built all-terrain vehicle, with a mild steel roll bar frame. It has

9" Currie axles, Bilstein Shocks, hydraulic steering, and front and rear disk brakes with rear

emergency brakes. It has a Honda 150 HP transverse engine mounted longitudinally. A locked

transaxle connected to the engine drives front and rear differentials. It has two integrated 28 volt

alternators that generate 4800 watts of continuous electrical power. This power is delivered to

onboard computers, actuators, and other electronics, along with a%3/ Ton air conditioning unit

that cools an enclosure which houses most of the vehicle's electrical equipment. The NaviGator

is equipped with a number of sensors caged on the front of the vehicle. The sensors include a

radar unit, cameras, and three scanning laser range detectors. All are used for environment

sensing. The vehicle also has an integrated GPS/INS system, which is used for estimating its

position, orientation and speed.









This vehicle was used by CIMAR as an entry to the DARPA Grand Challenge national

competition. DARPA is the Defense Advanced Research Proj ects Agency, a small division of

the United States Department of Defense, and in 2004 through 2005 it sponsored the Grand

Challenge competition in an effort to rapidly advance experience and innovation in AGV

technology. The competition was designed in a manner that would allow participating research

groups to help accelerate national research in this field, without diverting resources from other

ongoing government projects.

The goal of the competition was to build and field a robotic vehicle that could traverse over

150 miles of desert terrain without any human control. This was a technological feat that, prior to

the 2005 competition, had never been accomplished. However, in October 2005, five teams

entered vehicles that successfully completed the entire challenge course.

Although team CIMAR' s NaviGator was not able to finish the competition, it did advance

as one of 23 Finalists (out of over 200 applicants) and complete over 15 miles of the course,

which demonstrated the tremendous effort put forth by all team members. The NaviGator is also

considered a success because it will continue to serve as a research and development platform at

CIMAR for years to come.

The development of an online path planning and control algorithm for the NaviGator has

been the driving motivational force behind this research topic. As part of the effort to enter the

NaviGator into the 2005 DARPA Grand Challenge, a new approach to motion planning and

control was developed. The approach is a variation on the receding horizon control strategy,

where a sequence of open-loop commands are repeatedly optimized and delivered to the system.

In a typical receding horizon controller, the optimal set of commands is calculated by

minimizing a quadratic cost formula. The technique devised for the NaviGator is unique in that it









obtains a near optimal solution via a heuristic search. This has several advantages and

disadvantages that will be discussed in detail in the following chapters. The fundamental

significance is that this technique provided a well fit motion planning and control solution for the

NaviGator. Although many other techniques and approaches exist, the research and advancement

of this technique may benefit other implementations where it is suited.





































Figure 1-1. Picture of the NaviGator AGV in race configuration, which was taken just before the
DARPA Grand Challenge in October, 2006.









CHAPTER 2
REVIEW OF THE LITERATURE

To compare and contrast the newly devised control strategy, a review of published research

literature has been conducted. Various researchers have explored different methodologies for the

AGV motion planning and control problem. The maj ority of the methods brake down the

problem into two individual tasks.

In one task, sensor or a priori data are analyzed and a geometric path or a time varying

traj ectory of the robot' s motion is planned through an environment or workspace. These motion

describing structures are often optimized for travel time, distance, or minimum collision

potential. Sometimes combinations of parameters are optimized. The way in which the planning

problem is formulated also varies greatly between applications. As input to the planning

algorithms researchers use different techniques to describe the local environment. While some

use discrete raster images or vector geometry, others use continuous mathematical functions. The

different formulations have unique characteristics that will be described in detail in this chapter.

The control task attempts to solve the problem of regulating the vehicle in order to execute

a previously determined motion command. This command can be as simple as a desired position

and orientation, or as complex as a traj ectory sequence requiring specific turning maneuvers and

speed changes. As with planning, the techniques developed for the control task are diverse.

Many researchers have struggled with and found viable solutions for dealing with the

nonholonomic and other constraints of AGVs. Although the methods differ greatly in

implementation, there is as always, a tradeoff between stability, robustness, and performance.

The review of research has been broken down into exploring the input and motion

structures and then the planning and control algorithms themselves. Input structures represent

sensor and other required data delivered to the planning or control algorithms. Likewise the









results of the planning algorithms are delivered to controllers via a motion structure. By

understanding the different input and output structures, a greater understanding of the algorithms

and techniques is gained.

Planning and control input structures

Potential Fields

A category of input structures exist in the form of mathematically described functions and

fields. One of the earliest types of fields explored is known as a potential field. In 1985 Khatib

[KHA85] presented an obstacle avoidance approach for manipulators and mobile robots based on

the "Artificial Potential Field" concept, where obstacles were represented as potential energy

fields that generated repulsive forces, and goal configurations for the robot were represented as

attractive gravitational fields. The resultant imaginary force acting on the robot was used to

guide its motion.

Since then researchers have used potential fields in countless scenarios. Barraquand et al.

generate collision free paths for a three degree of freedom mobile robot using potential fields

[BAR92]. Their approach to path planning consists of incrementally building a graph connecting

the local minima of a potential function defined over the configuration space of the mobile robot.

A search was conducted over the graph until a goal configuration was obtained. This was an

efficient approach that did not require any pre-computation steps (as other researchers had

suggested) to be performed over the potential field function.

Warren addresses the issue of global path planning with potential fields [WAR89]. Here

planning of a manipulator and mobile robot motion was done in configuration space (C-space), a

multi-dimensional space described by a set of generalized coordinates which represent the

position and orientation of a rigid body. In his implementation, Warren constructs an arbitrary

trial path in the configuration space of the robot, which connects the initial configuration to the









goal configuration via a set of straight line segments. The entire path is then modified under the

influence of the potential Hield until a minimum potential path is found. The effect of modifying

the entire path at once greatly reduced the problem of becoming trapped in a local minimum of

the potential Hield, however, a collision-free path could still not be guaranteed.

Several limitations of potential field methods applied to AGVs were identified by Koren

and Borenstein [KOR91]. Specifically they identified four problems that could arise when a

mobile robot was subj ected to the imaginary forces of obstacles and a goal. First, a mobile robot

could become trapped in the local minima of a potential field; as could occur when the goal

configuration was blocked by a U-shaped obstacle. (This phenomenon of potential field methods

was previously identified by a number of other researchers; see Andrews et al. [AND83] and

Tilove [TIL90].) Second, robots could often favor longer paths to travel around any closely

spaced obstacles that they encountered, rather than simply pass untouched between them. Third,

the robot motion could become unstable when passing nearby obstacles, and finally, oscillations

could occur when a robot is traveling down a narrow corridor. This is because repulsive forces of

walls close to either side of the robot caused oscillatory motion when it was subj ected to a small

disturbance. For these and other reasons, researchers continued to pursue other ways of

formulating the planning and control problem.

Navigation Functions

A special kind of potential field function, known as a navigation function, was introduced

in 1988 by Rimon and Koditschek [RIM88]. The navigation function is unique in that the only

minima occurs at the goal configuration for the robot, no other local minima exists. This

prevented the robot from becoming stuck in any local minima that might exist in a traditional

potential field. The navigation function techniques however, are susceptible to other drawbacks.

For a proposed application offered by Rimon [RIM91] the robot was required to operate in a









circular space inhabited only by disk shaped obstacles. This is a scenario with little practicality in

a real-world environment, and only considered effective in a highly controlled experiment.

Another limitation is that the navigation function can be difficult or expensive to compute.

Other researchers have attempted to overcome these limitations. Konkimalla and LaValle

were able to compute navigation functions for an arbitrary shaped workspace containing

arbitrary clutter [KON99]. The navigation functions were computed numerically for

nonholonomic systems, which they demonstrated by using their techniques to generate optimal

motions for car-like robots in simulation. With their method, the navigation function was

computed over a uniformly distributed quantized free configuration space. This was described by

a set of points in the robot' s n-dimensional configuration, which excluded the space occupied by

any obstacles. However, since the robot was not constrained to occupy only discrete points in the

space, the navigation function was interpolated (with a novel technique) between points in order

to allow the vehicle to maintain smooth traj ectories, and also to keep the free configuration space

continuous. This method was also unique in that it computed the navigation function iteratively

over a propagating wave-front, which originated at the goal configuration. This was a key to

allowing arbitrary shapes in describing the navigation function. A drawback of the methodology

developed is that it assumed the robot was operating in a static and predetermined environment.

Thus, the navigation function algorithm developed by Konkimalla and LaValle, was still not

suitable for real-time application.

One real-time strategy for using navigation functions to control a robot operating in a

dynamic environment, was proposed by Loizou et al. in 2003 [LOIO3]. Their approach was to

develop a non-smooth navigation function, which allowed for faster computation than a smooth

function. To further simplify computation, the obstacles in the dynamic workspace were assumed









to be disk shaped, as with Rimon's application. The approach was proven to work in simulation,

and guaranteed collision avoidance and motion convergence. However, arbitrarily shaped

obstacles could not be accounted for.

Velocity Fields

Another type of Hield used to control an AGV is known as a velocity field. Here the

environment of the robot is assumed to have an imaginary flow Hield. The direction and

magnitude of the Hield at any given point describes the desired velocity of the robot. This concept

was pioneered by a number of researchers in the early 1990's. Li and Horowitz first published a

paper on the subj ect in 1993 [LI93]. In their research they remarked that velocity Hields had an

advantage over a traditional potential, or navigation functions, in that they accounted for the

robot' s desired motion over its complete workspace. In other methods, the path that a robot

followed in order to reach its goal could not be predetermined without integrating the dynamics

functions. Using velocity Hields to describe the desired motion removed that ambiguity, because

the robot's desired speed and orientation is specified at all possible configurations.

Li and Horowitz extended their initial work by applying the velocity field concept

specifically to robot contour following problems [LI96]. In this research, a velocity field was

constructed in a manner that would result in the robot tracing out a desired geometric contour.

This was made possible because the resulting control scheme applied to the robot ensured

convergence onto a stable limit cycle, which was equivalent to the desired contour.

A novel methodology for calculating desired velocity fields was suggested by Keymeulen

and Decuyper [KEY94], in which a field could be generated via fluid dynamics. In what they

describe as a metaphorical approach, by placing an imaginary fluid source at the robot, a fluid

sink at its destination, and constraining the boundary conditions of the workspace and obstacles,

the streamlines of the resulting fluid flow could be used to describe the desired path of the robot.










They showed that this was a very powerful approach because it was not susceptible to local

minima, and also the imaginary flow would be able to instantly adapt to any dynamic topology.

The maj or drawback of the fluid dynamics approach is the very expensive computation

necessary when recalculating the flow Hield upon any change in the robot' s environment. At the

time of publication, the authors suggested that it was well suited on a parallel, analog, or optical

computing machine. However, as computing machinery continues to advance, this powerful

method becomes more and more applicable to real-world implementations.

Dixon et al. were able to establish a control scheme that allowed a nonholonomic Wheeled

Mobile Robot (WMR) to track a desired velocity Hield [DIX05]. This extended the work other

researchers had done, which did not account for nonholonomic systems. The group developed an

adaptive controller, and employed a Lyapunov-based analysis to prove global asymptotic

tracking of the velocity Hield.

Occupancy Grids

Mobile robots are often designed to operate in environments that are unstructured and

unknown. In these cases, the system has no a priori model or knowledge of its surroundings.

Occupancy grid structures offer a means for a robot to map and rationalize this unknown space.

An occupancy grid is a multidimensional tessellation (or array) of space into uniformly shaped

cells. Each cell in the array contains a probability estimate that identifies whether the space is

occupied or empty.

The earliest uses of occupancy grids for mobile robot planning and control were developed

by Alberto Elfes at Carnegie Mellon University. Elfes initially described the implementation of

occupancy grids on mobile robots in a series of papers published in the mid 1980's. Initially they

were used for a sonar-based mapping and navigation system [ELF86]. Here the general issues

pertaining to occupancy grids, such as spatial resolution and sensor uncertainties were described









conceptually. Several years later, the formalized mathematics and problem structures were

presented [ELF89]. In this research, derived estimates of the cells were obtained by interpreting

range readings using probabilistic sensor models. A Bayesian estimation procedure was

employed to accurately calculate evolving grid cell states as sensor readings repeated in time.

Borenstein and Koren presented an approach that combined the concepts of occupancy

grids and potential fields [BOR89]. In their method known as the Virtual Force Field, each

occupied cell in the grid applied an imaginary repulsive for to the robot. The magnitude of the

force was proportional to the probability that the cell is truly occupied by an obstacle. This

method yielded promising results, in its robustness to sensor uncertainty, however it still was

susceptible to the drawbacks of potential fields described in the previous section.

A classification of occupancy grids, described by Elfes as inference grids (where cells

contain an estimate of multiple possible states) was employed by Touchton et al. at CIMAR

[TOU06]. In their implementation, a type of structure named traversibiliy grid stores an estimate

of the quality of terrain contained in the robot' s local environment. Here each cell expresses the

degree to which a robot would be capable of successfully passing through the contained space.

This level of classification was felt necessary in order to accommodate AGV navigation off-road,

where space can rarely be considered only occupied or empty.

Geometric Models

In some of the earliest path planning research, the robot' s environment and workspace

were represented with geometric primitives such as lines, polygons and circles. These structures

were used because they required only a minimal amount of computational memory (a resource

more limited at the time than today).

Research conducted by Lozano-Perez and Wesley [LOZ79], involved the planning of a

polyhedral obj ect moving among other known polyhedral obj ects. In this original work, a graph









known as a visibility graph was formulated to find free paths for the moving obj ect. The graph

was constructed by connecting straight line segments between the vertices of the polyhedrons. It

was called a visibility graph, because connected vertices could "see" each other unobstructed

from the polyhedral obj ects.

A different approach to planning among polygonal obstacles was presented by Takahashi

and Schilling [TAK89]. In their method, the free space of the robot' s environment was

represented with a generalized Voronoi diagram, which is the locus of points equidistant from

two of more obstacle boundaries including the workspace boundary. For a polygonal workspace

inhabited by polygonal obj ects, the diagram consists of only linear and parabolic line segments.

The Voronoi diagram method made for more efficient planning, in that it consists of fewer

vertices than a visibility graph, and also has the advantage of keeping the motion plan further

away from obstacles. However, the method in general produces larger travel distances, which

can reduce performance.

A method for maintaining minimum distance optimality, and increasing computation

efficiency was proposed by Rohnert [ROH87]. In this method, a structure called a tangent graph

was constructed, where common tangent lines connect convex polygons in the robot's

workspace. It is more efficient because it contains fewer vertices than a visibility graph. A means

of computing the tangent graph was suggested by Liu and Arimoto [LIU94]. The research group

proposed an algorithm called the moving-line algorithm, which efficiently computed the graphs

by decomposing the construction task into two sub-problems: detecting common tangents, and

intersection checking among the tangents and obstacles. Their algorithm performance was

demonstrated with a number of simulated experiments and the results were presented.










Motion Command Structures

The simplest input command structure to regulate a mobile robot's motion is a position and

orientation set-point, in which the robot is desired to maintain a fixed and specified pose.

Another commonly used motion structure represents the path geometry of the mobile robot

together with an associated speed profile. Complete time varying traj ectories are also common in

practice. In this case, the vehicle's complete position and orientation is denoted as a function of

time.

A broad overview of the different motion commands has been detailed by De Luca et al.

[DEL98] in a chapter of the book: Robot Motion Planning and Control, edited by Jean-Paul

Laumond. In their discussion they point out that these three motion structures can sometimes be

cast as a higher level problem or sub-problem of one another. For example, some research has

suggested that the path regulation problem is a subset of the higher level traj ectory tracking

problem.

In their discussion, they analyze the controllability of a car-like robot attempting these

three tasks. Their analysis employs a useful tool known as the Lie Algebra Rank Condition (see

[ISI95]), which allows the controllability of a drift-less nonlinear system to be tested. Along with

this test they exemplify that set-point stabilization of a car-like robot cannot be achieved via a

smooth time-invariant feedback control law. A result established on the basis of Brockett' s

theorem [BRO83], which implies that a necessary condition for smooth stabilization of a system

is that the number of inputs equals the number of states. Since this is not the case, such condition

is violated.

Despite the varying complexities and difficulties of all three control tasks, feedback control

solutions have been identified for them. De Luca and group, present a number of the techniques,









and the associated mathematics for them. Simulated results are also presented in their overview.

Some of the strategies are presented later in this chapter.

Planning Strategies and Algorithms

As previously stated, AGV motion planning and control is often divided into a planning

task, which generates a motion command for the robot, and a control task, which regulates the

vehicle onto the predetermined motion structure. A vast number of methods have been developed

for the planning task. They are described here in detail.

Deterministic Geometric Planners

Early research in nonholonomic path planning considered only simple cases where

environmental constraints and obstacle avoidance were not part of the problem. Pioneering work

was done by Dubins during the late 1950's. He proved that optimal paths connecting a car-like

vehicle from an initial position and orientation, to a final configuration state, were made up of

straight line segments and circular arcs, with radius equivalent to that of the vehicle's minimum

turning radius [DUB57]. This theory was developed for a vehicle traveling only with forward

motion. Reeds and Shepp extended the work of Dubins to include motion for a vehicle traveling

both forwards and backwards [REE91].

There are several drawbacks to these planning methods. The most notable is that they do

not consider the presence of any obstacles in the workspace of the vehicle. Also, the curves are

made up of segments with discontinuous curvature at the connections between them. This means

that for a car-like robot to follow the curves exactly, it must come to a stop at the segment

junctions in order to change its steering angle.









Search and Heuristic Methods

A group of motion planners rely on heuristic or graph searching techniques. With these

methods, a plan is constructed that is based on the result of searching through discrete graph

representations of possible robot configurations in its obstacle cluttered environment.

A common search technique for these applications is called A* (A-star), and it was

originally developed by Hart, Nilsson, and Raphael [HAR68]. Their research presented the

formal basis for showing that the search method is both admissible and computationally optimal.

Since its inception, A* has been used in a wide variety of mobile robot planning algorithms.

Kuan et al. use an A* search to find a path to a goal configuration for a mobile robot

navigating among convex polygon shaped obstacles [KUA85]. Their method locates critical

"channels" and "passage regions" within the free space, which are then decomposed into non-

overlapping geometric-shaped primitives. From this representation, the path planning algorithm

then finds traj ectories inside the channels and passage regions.

Another implementation searches through a multi-resolution grid to find a path. Presented

by Kambhampati and Davis [KAM86], a method using a quad-tree hierarchical representation of

the workspace is exploited to gain a computational savings in the search. Their technique was

more efficient because it did not consider the excess detail in parts of the space that did not

substantially affect the planning operation.

A minimum time planning approach for a robot was given by Meystel et al. [MEY86]. In

this method, the robot's acceleration, deceleration and turning capabilities were taken into

consideration during planning in order to minimize the overall time-to-goal for the calculated

traj ectory. Their algorithm employed the A* search to optimize the plan.

Thorpe and Matthies offer a path relaxation technique for mobile robot planning [THO85].

Here a grid search is performed to calculate and initial traj ectory to the goal. Once an initial









solution is established the path is "relaxed" by allowing the nodes that describe the traj ectory to

follow the negative gradient of the cost grid. This is done to determine a more optimal final

solution, and helps plan a path that is not too close to any obstacles.

Vector Methods

In an effort to increase computational efficiency, reduce algorithm complexity, and to

correct some of the problems resulting from field-based control methods, a number of

researchers have devised methods for planning using vector geometry.

Borenstein and Koren pioneered the Vector Field Histogram method [BOR91]. In this

method, a polar histogram of obstacle densities was constructed around a window centered at the

robot' s location. The density values in the histogram were calculated by analyzing how obj ects

in a grid interacted with a set of vectors originating at the robot. Once the histogram was

calculated a desired heading vector was determined based on a target heading and the valleys in

the histogram. Results showed successful local planning, but a possibility for the robot to

become "trapped" in dead-end situations existed.

A modification to the previous method was developed by An and Wang [ANO4]. Their

method known as Vector Polar Histogram differs slightly form Vector Field Histogram in that

the histogram is calculated directly from a polar sensor (rather than a grid), and it is transformed

into a binary histogram based on a dynamically changing threshold. This threshold value is

calculated in real-time and is based on the robot's velocity. Overall, the modifications were

claimed to offer simpler and equally effective local obstacle avoidance.

Vector based planning methods have also been used to provide a simple means for

avoiding moving obstacles. A technique involving relative velocity vectors was offered by

Fiorini and Shiller [FIO93]. A collision free path was planned for a circular obj ect moving

among circular obstacles with constant linear motions. To plan the path a graph was constructed









with straight line segments, which was a generalization of the visibility graph to the case of

moving obstacles.

Jing and Wang advance a vector technique for avoiding obstacles in an uncertain

environment, specifically for a mobile robot [JIN05]. The dynamic motion planning problem was

transformed into an optimization problem in the robot's acceleration space. As with Fiorini and

Shiller' s method, relative velocity vectors between the robot and encountered obstacles are used

in order to define the robot's desired behavior. With the behavior determined, a feedback control

law was established, and stability in each planning period was proven.

Probabilistic Planning

Probabilistic methods for path planning have become increasingly popular for mobile robot

navigation. These techniques are often designed to guide the robot through free space in a

manner that reduces the risk of collisions or other undesired behaviors. Usually, an iterative

analysis of the local environment is conducted as a preliminary step to probabilistic planning.

Kavraki et al. developed an algorithm to calculate probabilistic roadmaps of a robot' s free

configuration space [KAV96]. In what they characterize as the learning phase of the planning

method, the roadmaps are constructed by repeatedly generating randomized free configurations

of the robot and then connecting these states with a simple motion planner. This process

continues until enough configuration nodes exist to successfully plan from a starting

configuration to a goal. The number of free configuration nodes generated depends on the

intricacy of the configuration space.

A probabilistic method for obstacle avoidance amongst moving obstacles with motion

uncertainty is proposed by Miura et al. [MIU99]. In this research, moving obstacles within the

robots environment are modeled with motion uncertainty, i.e. the predicted future location of the

obj ect is uncertain. The obstacles are also modeled for sensing uncertainty, in which the sensed









instantaneous state of the obstacle is unsure. Based on these probabilistic models, their method

repeatedly selects the best motion plan in a decision-theoretic manner, that is, by a one-step look-

ahead search in a probabilistic search tree.

Cell decomposition is a path planning method that involves partitioning the free

configuration space of the robot into disj oint sets, called cells. Methods to generate the cell sets

are often costly due to the complexity of determining whether a cell is entirely contained in the

free configuration space or not. Lingelbach presents a probabilistic method to cell decomposition

where cells are probabilistically sampled to determine if they are free [LINO4]. This method

offered an improvement in the efficiency of cell decomposition for high dimensional

configuration spaces.

Thrun et al. present a broad explanation of probabilistic path planning algorithms for

robotics [THR05]. Their overview describes a technique known as value iteration, as a solution

to a Markov decision process. In this process the state of the robot' s environment is assumed to

be known, but an allowance for stochastic action effects is maintained. In other words, the

robot' s response to a given input may be uncertain. The value iteration method in effect produces

a probabilistic navigation function, which is used in planning to guide the robot' s motion.

Control Strategies and Algorithms

The control task for an AGV involves the regulation of the vehicle onto a predetermined

motion command. Here the goal is to minimize any error between the vehicle's state and a

desired state. This is done by commanding the vehicle plant inputs in a deliberate manner, which

is often specified by a mathematically defined function, or procedure. Many control methods

have been developed for this purpose and some are described here in depth.









Kinematics Methods

Research in path tracking control of an AGV has demonstrated successful implementations

of kinematic control methodologies, where system equations of the vehicle' s motion about a

geometric path are used to develop a controller. An early kinematic technique known as pure

pursuit was originally developed at Carnegie Mellon University. The solution gained much

popularity due to its simplicity and performance.

Coulter, a researcher at Carnegie Mellon, describes an implementation of the pure pursuit

path tracking algorithm and some of the stability and performance considerations for it [COU92].

Essentially the method is used to calculate the arc (or curvature) necessary to get the vehicle

back on the desired path. This is done by choosing a look-ahead distance, and calculating the

goal position on the path at that distance. This leads to the analogy that the vehicle is "pursuing"

a moving point, which is always at some distance ahead of itself.

A more in depth analysis of the algorithm was presented by Ollero and Heredia [OLL95].

In their research they presented mathematically formulated stability criteria for a vehicle tracking

a straight line and circular arcs. Their work showed that the stability of the closed-loop system

was dependant upon the look-ahead distance parameter, and any time delays in feedback data.

They also presented simulated results; for varying time delays and tuning on the look-ahead

parameter.

Vector pursuit is another kinematic technique devised for path tracking. This method was

developed by Wit [WITOO] in his doctoral research at CIMAR, and it involves determining the

desired motion of the vehicle based on the theory of screws (introduced by Sir Robert S. Ball in

1900 [BALOO]). In an effort to correct some of the drawbacks of pure pursuit, Wit includes the

vehicle's desired orientation at the look-ahead point in the geometric analysis. Vector pursuit

allowed for the consideration of both heading and distance errors without any mixed units (which









other methods had) in the mathematical foundation. This resulted in a geometrically meaningful

control scheme.

Linear Control Systems

Linear control system theory contains a rich set of analysis and synthesis techniques for

designing and implementing controllers. Many of these methods have been developed, tested,

and proven for several decades, and are still commonly used in practice today. This is because

the methods are often simple and robust in implementation, and because of these reasons,

researchers have applied the theories to the control of AGVs.

Nelson and Cox, a team of researchers at AT&T Bell Laboratories, demonstrated the use of

a simple proportional control scheme on a mobile robot [NEL88]. The controller was used to

guide the vehicle along a set of predetermined path segments. There experimental results showed

several problems with the control methodology. For example, the vehicle stability was affected

directly by its speed, the faster the motion the less stable the path tracking. Also, transitions

between path segments of varying curvature led to initial overshoots, which could not be

corrected by control tuning.

In a more recent effort, Choi presents a proportional derivative controller for an

autonomous highway vehicle [CHO00]. Here the parameters are designed to be adaptive, in an

attempt to correct persistent disturbances from wheel misalignments, unbalanced tire pressure,

side wind, etc. The compensator developed provided closed-loop control for the vehicles lateral

motion in highway lane following, and was demonstrated in experiment to successfully stabilize

the vehicle, and rej ect disturbances.

A modern robust linear control technique known as H, (H infinity) control, was used by

Kim et al. to steer an AGV [KIM01]. This technique was used to synthesize a state-space









controller, which was robust to the quantifiable uncertainty of: system parameters, noise, input

signals, etc. In this group's research, the controller developed was tested on a car vehicle

tracking a straight road. Initial results showed effective performance in tracking the road, and

merited additional experimentation on curved roads.

Nonlinear Control

Researchers in the field of mobile robot control have widely developed nonlinear solutions

to the problem. Nonlinear controllers are designed and analyzed with a number of mathematical

tools mostly based on the foundation of Lyapunov stability criteria, which will be discussed in

chapter three of this document. These methods are used, because the mobile robot control

problem is highly nonlinear in nature, and it is not well suited for linearization or other linear

control techniques.

Significant results were obtained by Samson during the early 1990's. In this work a smooth

time-varying feedback controller was developed to regulate a wheeled mobile robot to an

arbitrary set-point [SAM90]. This was a powerful result, because it showed that stable set-point

feedback regulation, albeit time-varying, was practical despite the implications of Brockett' s

condition [BRO83], which proved time-invariant feedback for mobile robot set-point regulation

is not possible.

Jiang et al. presented another time-varying feedback result for globally stable tracking of a

mobile robot pursuing a reference traj ectory that is a function of time [JIA97]. In this work, the

group presented simulated results, which validated their theoretical results. The robot kinetics

equations were included in the design via an integrator backstepping technique.

Dixon has developed several unified regulation and tracking controllers, which guarantee

stability of a wheeled mobile robot [DIX00]. The differentiable kinematic control laws









developed utilize a damped dynamic oscillator in which the frequency of oscillation is tunable.

These results led to continued successful work with simulated and experimental results.

Model Predictive Control

Model predictive control is an advanced technique often used in industry to solve

optimization problems under certain constraints. A specific form of model predictive control is

known as receding horizon control. In this methodology, the control problem is optimized over a

Einite period of time, and the resulting control signal is applied to the system. This process is

continually repeated. In each optimization, the first control signal in the optimized control profie

is delivered to the plant. The remaining signals are discarded.

Recently this technique has been applied to mobile robot control. Gu et al. presented a

result where a wheeled mobile robot was regulated to an arbitrary set-point using a receding

horizon controller [GU05]. Their results showed that stability for the robot could be achieved

and simulated data were given. Computation time was the main drawback of their result. They

cited that real-time implementation of the controller was not practical given their method of

optimization, and suggested further work was necessary in order to Eind ways of improving the

computation efficiency. Binary decision trees and artificial neural networks were two methods

suggested for incorporation, by the group.

The following chapter offers the theoretical foundation and analysis for a new and novel

methodology used to solve the computational problems faced in the real-time implementation of

a receding horizon controller, particularly on an AGV.









CHAPTER 3
THEORETICAL APPROACH

Introduction

Motion planning and control for an AGV are both challenging tasks. A novel methodology

for unifying these into one task, while maintaining online computability, is the main contribution

of this dissertation. A newly devised heuristically optimized receding horizon controller (HRHC)

is proposed for the combined task. The purpose of this chapter is to explain and formalize the

mathematical foundation of the approach. Another contribution of this dissertation is a novel

extension to the standard receding horizon control scheme. The extension, called Dual-frequency

receding horizon control (DFRHC) is also presented in this chapter.

Receding horizon control (RHC), or more generally, model predictive control (MPC) is an

advanced technique used to solve complex constrained control problems online. A broad

overview of the technique is offered in [MAYO0]. It employs methodology from optimal control

theory to determine the best control action for a given state. In receding horizon control, a

sequence of open-loop plant input commands are optimized over a finite time horizon. The first

command in the sequence is then used as the control action for the plant and the optimization

process repeats to determine a new control. Feedback and disturbance rej section are incorporated

into the technique by updating state estimates at a discrete time interval and executing the

optimization procedure over the newly shifted time horizon. Figure 3, presents a visualization of

the general RHC process, where an optimal input control sequence produces a minimal cost state

traj ectory in the state-space, when predicted though the system dynamics function of equation



A key concept of RHC is that the state traj ectory being tuned is generated by predicting the

system's future states through a dynamical model. The procedure determines a set of open-loop









commands which, when extrapolated through this model, yield a minimum cost path over the

finite time horizon.

Remark 1: The use of RHC for an AGV inherently unifies the planning and control tasks,

because the vehicle' s future motion is continually being optimized as a sub-problem of the

overall control task. This continuous online optimization is equivalent to a separate planning

process.

The optimal control problem in receding horizon control is usually posed as the

minimization of a quadratic cost function over the time interval [t, t + T] For a time-invariant

nonlinear system, the optimization is subj ect to the dynamics, which are given is their discrete

form as,


x (t +1) = f(x(t), u (t)) (3.1)


where x(t) E R",u*(t) E R"'l denote the unconstrained state and control input vectors respectively.

The dynamics function f (-) : R" x R"' 4 RW", is assumed to be continuous at the origin

with f(0,0)= 0 The cost / value function for the optimization problem is typically given as


V

here both Q and R are positive-definite symmetric constant weighting / gain matrices. The

optimal control task is to choose a sequence of future controls, which minimize the cost function

over the proj ected time interval. The optimal input sequence is given by:









This optimal control sequence thus has a corresponding sequence of future states, which is

governed by (3.1). The instantaneous control input to the system in RHC is then selected as the

first control vector in the sequence r,~:


u (t) = 2,. (3.4)


Repeating this process thus yields a closed-loop control system, because upon every time

step the current state information is updated and a new optimal control is computed. Thus by

repeatedly updating the state information, a feedback mechanism is inherently introduced into

the control scheme.

By substitution of the optimal control and predicted state sequence into equation (3.2), the

minimum cost for the given state x is established. Typically RHC is used to control constrained

nonlinear systems where: x(t) EX C R", u(t)E EUC R"'n are the constrained input and state-

space which are convex subsets of the unconstrained spaces, which include the origin at their

interior. As a required "ingredient" for stability, a terminal state constraint x(t + T) E n is also

included in the problem, where OZc XS c _-is a convex subset of the state-space which also

includes the origin at its interior. (The exact conditions which must be met for RHC stability are

differed to later in the chapter.) With these constraints, the optimal cost function for any given

state can be expressed as the optimization problem solution:


ut t+T1


(3.5)
subj ect to x (t> J~ ) EX~









Notice that equation (3.5) is explicitly independent of time. This is because the underlying

optimization of the system is time-invariant. In other words the optimization problem will always

yield the same result for any specific state regardless of time.

Generally the minimal cost and its associated optimal control sequence are not known

ahead of time and therefore a mechanism to determine these values is required to implement a

receding horizon controller. Most commonly, the optimization problem in receding horizon

control is solved with Quadratic Programming techniques (due to the classically quadratic nature

of the cost function) or Mixed Integer Quadratic Programming (MIQP) [BEMOO] (for finite and

discrete systems). These are computationally expensive, complicated, and time consuming

processes, which limit the use of receding horizon control for electro-mechanical systems. This

limitation is primarily due to the time critical nature of the required control, i.e., most electro-

mechanical system have relatively short time constants and time-to-double instability criteria.

(Time-to-double is a widely used metric used to describe the amount of time it takes for an

unstable system to double in amplitude. The shorter the time-to-double metric is, the more

unstable the system is, and therefore it is more difficult to control.) However, RHC has seen the

most of its success in the chemical process industry where these types of system parameters can

be several orders of magnitude larger than their electro-mechanical counterparts, and therefore a

slower computation of the optimal control is acceptable.

Motivated by the need to solve for these complex optimal traj ectories online for electro-

mechanical systems, the proposed heuristic receding horizon control (HRHC) uses a finite graph

search known as A* (A-Star) to find the optimal control sequence, rather than a dynamic

programming approach. A* search is a technique originally developed for Artificial Intelligence









applications; however the method lends itself elegantly for efficiently solving complex searches

in state-space defined systems.

Furthermore, since the optimization problem can become much more difficult for a non-

quadratic cost function, in which systems are more generally defined with the value function:


V(x) = min C[L~x,,r),u,)) (3.6)
u t,t+T-11


where L (x(t),u(t)) is the general nonnegative intermediate cost function over the optimization

interval. A* search can be applied to such a system with little impact attributable to the

complexity ofL (-) Other optimization methods require the functionL I(-) to be in a specific form

(primarily quadratic).

One essential requirement of A* however, is that the state-space and input space be

discrete and quantized. (Generally it is more important to have a quantized input space. The

state-space may remain continuous, so long as a few simple modifications are made to the

search. This will be discussed in more detail in the third section.) Classically, receding horizon

control requires that the input and state-spaces are continuous in order to guarantee stability and

optimality [MAY90] (Solutions that achieve these properties exist for both discrete and

continuous systems. See [NIC98]). To apply A* to the RHC problem the notion of both stability

and optimality must therefore be modified to include results that are sufficient but nevertheless

sub-optimal. Researchers have shown that sub-optimal solutions to the classic RHC problem can

maintain overall stability [SCO99], but the idea of stability changes slightly when considering a

system controlled by a quantized input set [BRO00].

It should be noted that the consideration of quantized input control is inherently more

robust for implementation on real-world systems for a very practical reason. The modern










approach for control systems incorporates the use of discrete computers and their respective

electronic interfaces to the continuous system. The underlying control mechanisms are thus

discrete and quantized, i.e. program variables in memory, analog to digital converters, etc.

Therefore the inputs to the continuous systems are also discrete and quantized. Although these

facts are more often now neglected due to the increasing resolution and speed of computing and

interface hardware, by considering their effects in the control solution, a better defined and more

predictable behavior can be achieved.

The remaining portions of this chapter are broken down into sections as follows: in the

second section, basic assumptions, notation and preliminary results are discussed. The third

section defines the A* algorithm used by HRHC. In the fourth section, the required quantization

and invariant set properties needed for stability criteria are given, and the formulation of the

novel HRHC is presented in the fifth section. Dual Frequency Receding Horizon Control

(DFRHC) is shown in 6, and finally conclusions are presented.

Notation, Assumptions, and Preliminary Theorems

An essential theorem for RHC is that of the suboptimal stability conditions. When met,

these criteria provide proof that the system will maintain stability, and converge to a desired set

point. Classically, the stability of nonlinear systems has been identified with the standard

Lyapunov stability theorem. One fundamental requirement of this theorem is that the input

control u of the system is a continuous function of the state x, and hence this also implies that the

control for any particular state be unique.

The suboptimal stability results are formulated in a manner similar to that of the standard

Lyapunov stability theorem; however they allow for a non-unique and discontinuous control law.

As will be shown later in the chapter this is the case that must be considered for HRHC, because

of the finite and quantized nature of the A* search.









Before the suboptimal stability theorem is presented, some basic notation must first

introduce. First, the Euclidian norm of vector x is denoted as IxI ERi where the dimensionality of

the vector x, is identified through the context. Any function a (-) defined on the range [0, 00) is

considered a class K-functfion if it is continuous and strictly increasing, with a (0) = 0 Lastly, let

B: denote a closed ball set of radius r in the space _- or in another form, let the

setB; := (x t | Ixl <; r .

With these concepts defined, the suboptimal RHC stability theorem is referenced from

[SCO99], and provides the basis of stability for the newly proposed HRHC scheme of this

dissertation.

Feasibility Theorem for Suboptimal RHC from [SCO99], let there exist:

1) a value function V (-): R which is continuous at the origin with V (0, 0) = 0 and a K-

~fun~ction a (-), such that


V (x(t)) > a (Ix(t) V) x E 1 (3.7)


2) a set Xo c that contains an open neighborhood of the origin and a K-jim~ctionl Y(-),

such that every realization of the controlled system with x(0) E Xo, satisfies x(t) E Xo for

all t >0 and


V(x(t+1))- V(x(t))<-y7tx(t)) (3.8)


3) a constant > 0 and a K-funrction r (-) such that every realization of the controlled

system with x(t)E e Bsatisfies













Then the controlled system is asymptotically stable in X, c-

This theorem simply identifies that: if the value function can be lower bounded by a class

K-function, and if the change in the value function can be upper bounded by another K-Jimction,

and the norm of the sub optimal control sequence l can be upper bound by a K-function, then

the controlled system will be asymptotically stable in a the local region X, The reader is

referred to text [SCO99] for the complete detailed proof of the theorem.

A* Algorithm and Admissibility

As stated in section I, the process of determining the open loop input sequence (3.3)

requires an optimization method in the receding horizon control scheme. One way to accomplish

this step is to conduct a search for the optimal sequence over a finite input and state-space graph.

One of the most readily used techniques to do this is known as the A* (A-Star) search. The bulk

of information provided in this section is given in [NIL71] and [NIL98]. This gives a synopsis of

the provided formulations and is used only as an introduction of the required knowledge needed

to detail HRHC. For a more complete discussion refer to [HAR68].

A* is an admissible graph search algorithm. The admissibility of the algorithm guarantees

that it will always terminate with a minimum cost optimal solution sequence if one exists. This is

a required property for implementation of receding horizon control since the optimality of a

solution is closely related to the stability of the control. The A* algorithm is a heuristically

guided search. The term heuristic means serving to aid to discover, and is derived from the Greek

verb heuriskein, meaning "to find". The heuristic information, as will be seen, depends on some

educated or special knowledge about the type of problem being represented by the graph. This









information is used to guide the search in order to increase its efficiency and timeliness. The

heuristic information is represented by a heuristic function in the search algorithm. It will be

shown that if this function adheres to some simple constraints the search can be made to be both

efficient and admissible.

Before the A* algorithm is discussed, it is first necessary define the general graph-

searching process. A graph consists of a set of nodes, where each node represents a particular

configuration in a corresponding state-space. A node in the graph can be connected to another

node in the graph by an arc. The arc defines a way to get from one node to the other and it can be

correlated to a unique transition in the represented state-space.

A graph search is a process that determines a sequence of state transitions, represented by

arcs in the graph, that allow for the transversal from one specific node to another specific node or

group of nodes. Every search therefore has a start node, which is associated with the initial state

configuration, and a set of goal nodes or single goal node, which represent a final desired

configuration.

The successors for any node in the search, i.e. the set adj acent nodes connected to the

original node by a single arc, are calculated via operations applicable to the corresponding state

configuration describe by that node. For example, for a nonlinear system defined by (3.1), any

state configuration xt, represented by node nx, can by succeeded by a set of states X, which are

the result of applying the set of possible input commands Ux, over a finite period of time. A way

to show this process is as a mapping from the given state to the set of future possible states, as

seen here:



t f~x,u > t+1. (3.10)









This operation is called the expan2sionr of a node and is denoted by the operator F(n) The

expansion of a node therefore produces a set of successor nodes, which can be shown with:


N, = F(n, (.1

As a direct requirement of the expansion process, when applying any graph search to a

linear or non-linear state-space control system, the input space (u) must be finite and discrete

(thereby implying a quantize-input system). Without a discrete input-space, the expansion of a

single node would generate an infinite number of successor nodes. Clearly this would result in an

undefined search process. By using a naturally or artificially quantized input space, the graph

search remains finite and computable. This quantization has a profound impact on the overall

control stability, the complete discussion of which is deferred to later in the chapter.

During the expansion process, pointers are set up from each successor node to its parent.

These pointers are used to trace a route back to the start node once a goal node has been found.

The functions which define the relationship of a node with its represented state and the pointer to

its parent are given here:


n", = node (x (t), u (t), n, (3.12)


xn~ode (n,)=x(t)
uno2de (n,)= u(t) (3.13)
pnzode (nI) =n n,

where equation (3.12) is the node construction function, which requires a state, input and

predecessor node, and the equations in (3.13), provide a means to access a given node's state,

control input, and parent node.










The graph structure automatically created as a result of the expansion process is known as

a tree. A tree is a graph in which each node has a unique parent, except for an origin node which

has no parent, and is called the root node. In this case the root node is clearly the start node.

Trees also have the unique property in that every path to a node in the graph is unique.

Therefore, it can be guaranteed that each node created in the tree has never been generated

before nor will it be generated again.

As the expansion process continues, each of the newly generated successors are checked to

see if any of their represented state configurations meet the required goal state criteria. If such a

goal node is found the arcs connecting the solution nodes are traced back to the start using the

pointers, and the corresponding solution sequence of state operators, which produce the path to

the goal, is generated and returned as the result.

This description is of a general graph search process. However, for the description to be

complete, another process which clearly defines the order in which nodes are expanded must be

established. One way to define this process is simply to expand nodes in the order in which they

were generated; this is known as a breadth-first search. Another way is to expand the nodes

which were most recently generated, a process called depth-first search. Both breadth-first and

depth-first are known as blind-search procedures, because they do not use any information which

is relevant to the problem being represented in the search graph.

A* search uses heuristic information to provide a more informed way to search through the

graph and its represented state-space. The heuristic information is given in the form of a

mathematical cost estimation function, which is part of an evaluation function that is used to

order the node expansion process. This evaluation function then serves the purpose of ranking

candidate nodes by which one is most likely to be on the best path to the goal.









The A* algorithm defines the evaluation function f (n) as an estimate of the cost to reach

the goal along a path which is constrained to pass through node n. This evaluation function

therefore estimates the cost of a minimal cost path, as the sum of the estimated cost from the start

node s to n, and the estimated minimal cost from the node n to any goal node. The candidate

node which has the minimum value of f (-) is thus the node with the best chance of being on the

minimal cost path to the goal, and it should be expanded next in the search.

Assuming the function k(n,,n provides the true minimum cost from node n, to noden2,,

the following cost function is defined:


h (n) = min k(n, g) (3.14)
gtG

Here G is a set of goal nodes. Note that this function is undefined for any node from which

the set of goal nodes is unreachable. The function


g(n) = k(s,n), (3.15)


provides the minimum cost from the unique start node to the node n, and is only defined for any

node in which a path from the start node exists. The sum of equations (3.14) and (3.15) is

defined as


.f (n)= g(nl)+h(n), (3.16)


and is the true minimum cost from the start node to the goal, on a path constrained to pass

through the node n.

Since A* requires the evaluation function to be an estimate of (3.16), the estimate is

defined as









f (n= Jn)+hn),(3.17)


where f (-) is an estimate ofg (-) and h;(-) is an estimate ofh(-) Clearly ( (n) can be calculated by

simply summing the accumulated costs of single arc transitions from the start node through any

successor nodes and ultimately to the node n. The estimatehj(-) however is much more difficult

to calculate since no future knowledge of the minimum cost path to the goal exists, because such

a path is constructed only when the search is finished. At a midpoint in the search, heuristic

information or knowledge about the problem being represented must be used. Henceh~(-) is

called the heuristic function. This heuristic function must meet certain criteria in order to

maintain admissibility of the A* algorithm.

The A* algorithm is defined as an extension to the general graph search process, which

uses the evaluation function given in (3.17) to select the order in which nodes are expanded. The

algorithm is broken down into a sequence of steps shown in Table. Essentially, the search is

conducted via the management of two sets, one set O, is called the open set, and the other set C,

is known as the closed set. The open set maintains a list of candidate nodes which have not been

checked to see if they exist in the goal set. The closed set contains all of the previously expanded

nodes, which are not in the goal set, however must still be managed in order to allow a solution

sequence to be traced back to the start node from the goal node.

Initially the algorithm is given the start node s, and the goal set G. The search continues the

process of finding a minimum cost estimate node on the open set, and expanding the nodes until

either a solution node is found or the open set runs out of candidates. The expansion operator

r(-) is responsible for generating successor nodes (if they exist) and setting up pointers to the









parent node. If a goal node is found, it is returned as the solution and it can be traced back to the

start node through the established pointers.

Up until this point in the chapter, it has only been stated that the evaluation/cost

function, f (n>, must meet certain conditions in order for the A* search to find an admissible

solution sequence to the goal set. This fact is based off of two keystone theorems proved by the

creators of the A* algorithm [HAR68]. They are cited here only for reference. The reader is

referred to the previous source for detailed proofs.

A*"Lemma: Ifh(n) <; h(n) for all n, then at any time before A* terminates and for any


optimal path P from node s. to a goal, there exists an open nodenI'on P with f (n') < f (s)

This lemma establishes that if the heuristic function cost estimate is less than the true cost

to the goal for all nodes, then some node n', created during the A* search process, exists on the

set of open nodes, and its corresponding path cost estimate ]~(n2')is less than the true minimum

cost path to the goal from the start node s.

A* Theorem: Ifh;(n) <; h(n) for all nodes n, and if all arc costs are greater than some small

positive number 3, then algorithm A* is admissible.

The initial A* lemma is used to prove the primary A* theorem which states that if a

heuristic function is chosen that always underestimates the true cost to the goal, and if state

transitions along arcs between nodes have some non-zero cost, then the A* algorithm will always

terminate in an admissible solution if one exists.

For the theoretical approach described here, A* is used as a replacement for a classical

optimization routine, and therefore an algorithm is desired that can obtain an admissible, and

thus near optimal, solution sequence from a start state to a goal state. In order to adhere to the A*









theorems, a heuristic function is chosen that always underestimates the state transition cost to the

goal region, in order for this implementation of RHC to be correct. The meaning of this heuristic

function and how it is selected is very important and is the basis of the Heuristic RHC

implementation discussion in the next chapter.

Quantization and Invariant Sets

As aforementioned in the previous section, in order to use the A* algorithm in place of an

input sequence optimizer, a quantized artificiallyy if need be) input space must be used for the

system that is being controlled. This is because the expansion of nodes during the search must

yield a Einite set of successor nodes rather than an infinite continuum of possible future states.

Since the expansion of a node is calculated by stimulating all possible input commands over an

interval of time, then the number of possible commands must also be finite and hence quantized.

This quantization will guarantee a Einite set of successor states for any given configuration

represented by a node. The quantized input set U is a subset of the continuous real input space

and is defined as:


U:= {uz,u,...us)) c- `, (3.18)


where subscripts 1 through Ndenote the different levels of quantization.

The discussion of the effects of input quantization first requires some critical definitions

which are now introduced before the following formulations of the chapter:

Definition 1: A set of state-space configurations is considered to be zero-mea~sure set if it

is made up of only singular discontinuous configurations, such that the measurable probability of

finding the system in that state would be equal to zero. Example: in a two-dimensional state-

space, a non-null zero-measure set would consist only of points or curves in the configuration










space, whereas a measurable set would consist of at least one continuous area or region.

Likewise, the three-dimensional equivalent would require some measurable volume.

Definition 2: The terminal constraint region OZc _-is a controlled'-invariant set for system

(3.1) iff~x E R 3u E l- such that x (t +1) = .f (x, ut) En .

Definition 3: IfOZ c X, C then the set 0Z is said to be X, attractive iff~x E X, there

exists some trajectory contained in X, that enters 0Z in a finite number of steps. In addition, if

Vx E X, the traj ectory can be chosen to be of length T (where T is the number of steps in the

time horizon), then 0Z is said to be X, attractive in T steps .

By Definition 1, it can clearly be seen that the quantized input set is indeed a zero-measure

set in the constrained input space. The consequences of a quantized input space belonging to a

continuous nonlinear system, such as an Autonomous Ground Vehicle, are far reaching in their

impact on its stability and its reachable state configurations. The classic concept of stability, i.e.

asymptotic or exponential convergence to some set-point or tracking point, is lost because the

zero-measure nature of the control prevents the system from performing arbitrary state

transitions. Instead, the system is restricted to a finite set of future states, which depend on the

levels of quantization and the number of decision steps or time horizon. This restricted

performance requires a more "practical" sense of stability, in which the system is allowed to

converge to a broad set-region in the state-space. This notion was made clear in [DEL90] for an

attempt to define more realistic stability properties for quantized systems.

Also, since the input space is quantized, the determined solution will always be sub-

optimal. The reason for this is that the true optimal solution is assumed to be a sequence, which

exists somewhere in the continuous input space. Since the input set is zero-measure, the

probability of finding the true optimal input sequence within the quantized set is zero. In other









words, a quantized solution cannot include every possible input and therefore one will never

practically be able to find the true minimum cost traj ectory that exists somewhere in the

continuous state-space. This is reflected in a comparison of the optimal state transition cost

between the quantized input system and the continuous input system:


min v (x,u> > min V(x,u>. (3. 19)
tl~l neI~m


Figure shows the possible input space sequence over the time horizon, and that the optimal

solution values will never exactly touch the possible quantized input values. As a result, the

optimal quantized input state-space traj ectory will differ from the continuous input optimal state

traj ectory. This traj ectory difference will result in a larger value function cost, and thus is

considered to be suboptimal.

In order to insure stability of a RHC, one solution [MAY90] is to impose a terminal state

constraint, x(t + T) = 0 on the optimization problem. For a quantized input system, this would

result in a zero-measure set of possible initial states, thus rendering this stability constraint

unrealistic. Rather a quantized input system must incorporate a relaxed terminal state constraint

to include an entire controlled-invariant region 0 This allows the optimization problem to find a

viable solution for a feasible and significant set of initial states.

The significance of Definition 3 is that the region of attraction for the terminal state

region 0Z is only guaranteed to be local within the region X, That is to say the system will only

stabilize when initialized within the region X, This concept is identical to that described in the

feasibility theorem presented in the second section.









Heuristic Receding Horizon Control

Motivated by the desire to unify the planning and control tasks for an AGV, Remark 1

proposes RHC as an elegant solution to combine the two problems into one. Unfortunately,

traditional methods of optimization required for RHC hamper the ability to use the technique for

electro-mechanical systems. This is due to the time consuming nature of the online optimization,

which is usually much longer than the system response time. As a means to greatly reduce online

computation, this dissertation proposes the idea of Heuristic Receding Horizon Control (HRHC).

In HRHC, heuristic information about the problem is used to maximize the performance of an

online search of the system' s input and state spaces. This search is then substituted in place of

the usual optimization routines.

A proven algorithm for heuristic searching in a finite decision space is the A* search.

Section II of this chapter has presented the formal basis for the algorithm's admissibility and its

general computation. The direct consequence of using the A* search for RHC is that a quantized

input space must be used for this system. This quantization in turn has further consequences on

the performance and stability of the system, which must now be characterized in a different form

when compared to classic stability metrics. These effects have been detailed in Section III, and

the critical definitions and concepts presented in that section are now required for the complete

stability analysis of HRHC.

To begin, the general cost optimization problem, subject to the terminal state constraint is

revisited, with the added constraint that the input set be that of the quantized input space U Thus

the RHC optimization problem now takes on the form:









V'(x)= min CL(x u[t,t+T-1] t

(3.20)
x (~) ~(t) u~)xtEX
subj ect to IutEU~ )E~




Furthermore, the A* minimum node-to-node transition cost functionk(-) is also defined

such that it is equivalent to that of the RHC general cost function given in (3.6), by taking

advantage of the node to state relationship functions provided in (3.13):


k (na, n )= min L (xnode (nk MHde (nk
u[ vi] k=I (3.21)
subject to nk+1 rlk)

Also the expansion function Gamma is more completely defined as the union of all

generated nodes over the quantized input set U and extrapolated though the dynamics function

f (*), thus yielding:


F (n.)=U Unn(f(xrnou'(n ),2r),r,n,)
utu (3.22)
sulbject to (f (xn~ode (nz) u) X

The combination of the two techniques used in HRHC, namely the A* search algorithm

and Receding Horizon Control, is based off of the key concept that the general value function

presented in (3.6), is obviously related to the A* cost-to-go function, which is given in (3.14).

Lemnma 1: The RHC: optimal value function V* (x(t)) subj ect to the quantization

constraints e E ; x(t + T) E n i s equivalent to the A* cost-to-go functi on h (ne) when the









functionk(n,n ISis defined as in (3.21) with the additional condition that the terminal

state x (t + T) is represented by node ni and Vg E G | xnzode(g) E S .


Proof: Given that xnode (nk) = x(r), implies nodenkz TepfeSents the system state at arbitrary

time r Since h (nk)iS the minimum cost from node nk, to the goal region G, via the expansion

operator (-), then the cost accumulated over each state transition are to the goal will equal that

of the identical state transition sequence calculated via (3.6), and since E (-) is constrained to

expand only quantized inputs through the mapping (3.10), then the state transitions will be

restricted to the quantized permitted inputs used in the optimization problem(3.20). Therefore,

the A* cost-to-go function is written more completely by the equations:


h (n ) = min min iL xnode (nk, MH~Ode (nk)
">EG u qnJ k=I (3.23)
,subject to (nk+1 r 1k)

It can be deduced from this nested minimization of the cost function that the overall

minimum cost via a set of node input commandsuc n,, 17 will be the same for a single

minimization subj ect to the additional constraintn~ EG Thus the nested minimization can be

written as a single minimization in the form:


h (n )= min [ L xnode (nk MHdde (nk
u 4,,ni] k=I
(3.24)
Snk+ k~~l~
subject ton E









In addition, if j is chosen such that xnode (n, x(t +T), or in other words all terminal

nodes at generation j represent the system at time t + T and since the expansion operator is

constrained to quantized input extrapolations through the dynamics function (3.1), and limited to

the constrained state-space XS then the constraints of (3.24) are identical to (3.20), and thus


ha(ne)=V(x(t)). (3.25)


Theorem 1: If the A* heuristic functionh(ne) is selected such thath(n ) <; V' (x(t)) then the

algorithm will terminate with a solution node, which when traced back to the start node

represents an input decision sequence with the equivalent optimal value function V*(x) subject

to the constraints of equation (3.20).

Proof: From lemma 1, it is clear that the optimal value function and the A* cost-to-go

functions are equivalent. The proof of Theorem 1 then follows from the A* admissibility

Theorem referenced in the third section. If the heuristic function is selected such

thathi(n, ) <; V'(x(t)), then obviouslyhi(ne) < h (n2), and therefore by the A* Theorem it is known

that the algorithm will terminate with an admissible solution, and so the corresponding state

transition sequence will be the equivalent of one determined with the quantized and constrained

optimization problem of (3.20).

The stability criteria of HRHC follow that of the suboptimal RHC (Feasibility Implies

Stability) theorem referenced in Section II. Since the A* quantized optimal solution sequence has

to be suboptimal compared to the continuous input optimal solution, then the conditions that

HRHC must meet in order to maintain system stability must be relaxed to those of the

suboptimal requirements. The first condition of the suboptimal RHC theorem is satisfied by the

design of the cost function, which can be chosen such that it is lower bounded by a class K-









function. The second condition is also easy to satisfy by imposing an additional constraint on the

search whereby the cost values along the solved traj ectories must decrease by at least


pL (x(t), u(t))where p E (0,1l]is just a, constant. Lastly the third criteria is usually satisfied by

assumption, however as will be discussed in the next chapter this constraint is less important for

quantized systems where one can find some controlled-invariant set 2, or even less important,

when the system is simply turned off in the terminal state region. The main purpose of HRHC is

to find a fast solution that will drive the system towards the goal region. With parts one and two

of the feasibility theorem met, that is all one needs to do the j ob.

An outline of the HRHC algorithm is given in Table 3-2. The basic process is to first

generate the A* start node based off of the system's current state, input and a null parent node

pointer. Then an A* search is conducted, in order to find the least cost path from the start node to

the goal region. The search differs slightly from the one outlined in Table, in that the goal test

checks the state represented by the node for membership in the goal region set DZ. Also, the

solution node is not returned rather it is traced back to find the initial optimal input command in

the sequence. If a solution doesn't exist then the controller faults and external techniques could

take corrective action.

The outlined algorithm only represents a single iteration of the HRHC control loop, and

therefore the process is repeated online at a fixed interval, with state feedback information and

any changes to the goal set if they exist.

Dual-Frequency Receding Horizon Control

For systems capable of providing feedback information at a rate higher than that required

for predictive planning and control, it may be desirable to take advantage of the feedback in real-

time, rather than postponing any state updates until the next RHC optimization iteration.









Furthermore, since RHC requires the prediction and optimization time steps to equal that of the

state update period, if the update frequency is very high, then too many intermediate steps to the

desired horizon time may be required.

The purpose of Dual-Frequency Receding Horizon Control (DFRHC) is to allow predictive

optimization out to a desired time horizon, while simultaneously reducing the total number of

planning steps and integrating feedback information at its real-time rate. The method works by

predicting the system state response through a series of constant input commands, much in the

same way classic RHC works. The difference is that the constant input commands are held over

a time step period which is a multiple of the shorter feedback period. For example, if the

feedback period is one millisecond, then the optimization prediction period may be Hyve

milliseconds. This lower frequency prediction sequence is then optimized and the first command

in the sequence is executed for one millisecond. Then the process repeats, by again predicting the

system's response through a chain of five millisecond input commands out to the time horizon.

Figure diagrams the general DFRHC process. Shown there is a three step planning sequence out

to the time horizon T, where the prediction period is denoted as p. This planning period p is just

some constant integer greater than the feedback period, which is just one for the example. The

first input in the control sequence is then applied to the system for one feedback cycle, and the

lower frequency optimization process is repeated to determine a new command.

The name Dual-Frequency, comes from the fact that the optimization prediction steps are

planned as if they are to be executed at one frequency, when actually only the first command in

the sequence is used as the system input for the feedback cycle, which is operating at a second

Eixed frequency.









This method has several advantages, when compared to classic RHC. One of the benefits is

the ability to maintain optimization computability in real-time, over an extended time horizon.

The reason for this is that since the time of computation increases exponentially with the number

of planning steps, by reducing the number of steps out to the horizon one can decrease

computation. Because of this, the method also allows for a longer time horizon, which increases

the region of attraction for the controller, and allows for a larger envelope of system operation.

Another important lead is that maintaining feedback at a high rate, allows for faster disturbance

rej section, and increases robustness with respect to model inaccuracies, because of the system' s

ability to react to unpredicted changes faster.

A disadvantage however is that because there are fewer planning steps, any obtainable

state traj ectories are more constrained. Therefore, this will result in a higher cost value function,

and will produce results less optimal than a high frequency input sequence.

An illustrative example that explains the strategy behind DFRHC can be presented in the

form of an investment planning problem. Imagine for example a scenario where some investor is

planning a Hyve year investment policy. The classic RHC method would perhaps have the plan

call for purchases and sales once a year and these transactions would be planned and predicted

over what the investor thought the market was going to do for the next Hyve years. However, if

there were a market crash at the midpoint of the year, the initial strategy would not allow for

rapid transactions to correct for the unforeseen crash. The investor would have to wait for the

next year in order to plan and execute new transactions.

A better strategy would be to plan transactions over the long term, and reevaluate those

transactions on a frequent basis. To reduce complexity, the investments would not be planned at

the same frequency as the reevaluations, but would rather represent only a broad strategy over









the five year period. This way, if a market crash did happen, the frequent reevaluations would

allow for a rapid correction in the long term plan. This is the essence of DFRHC, changes to the

plan can happen fast as new information becomes available, and this way if a large unpredicted

event happens it can be accounted for right away.

The computation process of DFRHC is nearly identical to the classic RHC with the

exception that the intermediate predicted states are calculated recursively through the dynamics

function (3.1), over each individual planning step. If the planning period is specified as p state

update peri ods the calcul ati on of the a future state x (t + p) given a constant input u i s


x(t+ p)=fj, /d.., (x(t),u)a)ui),u) (3.26)


where subscripts 1 through p simply represent the iteration of the recursively calculated state

update function.

It should also be noted that DFRHC is very easily incorporated into HRHC since the only

change to the calculation is that the predicted states must be calculated recursively as in function

(3.26). This requires only a trivial change to the node expansion function.

Conclusions

This chapter has introduced two new and novel RHC advancements. The first is HRHC, in

which the general strategy is to employ heuristic information about the control problem being

represented in order to maximize the performance of the required online optimization problem.

This is done by replacing any usual optimization methods, which are often too slow for electro-

mechanical systems, with an A* search algorithm. This algorithm is designed to take advantage

of heuristic information during the search process for any system defined in a state-space.

The second technique is DFRHC, where the general concept is to optimize a state

traj ectory over a set of extended period planning steps. The steps are planned at a frequency









lower than that of the feedback update frequency, and then the process repeats after a single

feedback iteration.

Both methods are easily combined together, which allows for a combined effect that

further increases optimization performance to an extended time horizon. This combination is

simple to do because the expansion operation in the A* search is simply changed to extrapolate

state traj ectories over a repeated single input command.

One very important item not discussed in this chapter is the ability to use RHC methods to

plan AGV motion through an obstacle riddled environment. As per Remark 1 it should be

possible to use RHC to execute simultaneously planning and control. However, in order to

incorporate motion optimization around obstacles or though some other complex structured

environment, then some non-trivial changes must be made to the setup of the RHC problem.

These changes and their effects on system stability and performance are the focus of the

following chapter.










Table 3-1: The algorithm AStarSearch is used to find an admissible solution sequence to a goal
region from a given start node. It requires the definition of an admissible cost
function, and expansion process, in order to successfully execute.


Line
1:
2:
3:
4:
5:


Action
Algorithm AStarSearch( s, G):


while O + 0Z do



C =C un
if neG then
return n
endif
O =Ov F(n)
endwuhile
return 0 I


Comment


// Let the open set equal the start node
// Let the closed set equal null
// While the open set is not empty
// Find the minimum cost estimate node on open

// Remove the node from open
// Put the node on closed
// If the node is a member of the goal set
// Return the solution node
// End of if statement
// Expand the node and put successors on open
// End of while loop
// Return no solution found










Table 3-2: This table represents the algorithm for a single HRHC iteration. This process is
repeated online at a fixed rate, with feedback state, input and goal information.


Line
1:
2:


3:
4:
5:
6:


Action
Algorithm HeuristicRHC( x, u, 0Z):
sr = n2ode (x, ur,0)




while O + 0Z do



C =Cun
if xnode(n) E n then
endwuhile
endif
O = Ou F(n)
n = 0
endwuhile

if ne 0 Z then
while p (n)+ a do

n2 = p (nI)
endwuhile
return unode(n)
else
return 0 I
endif


Comment

// Initialize start node to current state and control

// Begin to conduct an A* search
// Let the open set equal the start node
// Let the closed set equal null
// While the open set is not empty
// Find the minimum cost estimate node on open

// Remove the node from open
// Put the node on closed
// If the node state is a member of the goal set
// A solution has been found, so end the search
// End of if statement
// Expand the node and put successors on open
// Reset the node to null
// End of while loop
// Now trace back the solution
// If a goal node has been found
// Loop back until the start node is reached
// Set the current node equal to its parent
// End of while loop
// Return the initial optimal control input
// Else no solution has been node found
// Return null to indicate a fault
// End of if statement






























Time
t-1 t t+1 t+T
Horizon


Optimal Input Controls


Optimal State Trajectories


x (t)


Su (t)


f(x(t),u(t))


t t+1 t+T
Horizon


Repeat Optimization Online


x (t)


~u(t)


f(x(t),u(t))


Figure 3-1: Receding horizon control is the optimization of an open-loop sequence of system
inputs, in order to produce a minimal cost state trajectory and then repeating the
process online. This diagram shows a typical piecewise constant input sequence with
the corresponding measured and predicted state traj ectories.











Input Controls


State Trajectories


f(t (x (t, ())'
Optimalma


Time Opti-- Time
t-1 t t+1 t+T It t+T
Horizon HorizonI


Key:
Quantized System: ------
Continuous System:

Figure 3-2: The quantization of the system's input space prevents the optimization problem from
achieving true optimal performance. The true optimal control input lies somewhere in
the control space, but the probability of finding that sequence in the quantized input
space is very low. Hence, the quantized system will always achieve only a suboptimal
state traj ectory.










Optimal Input Controls


Optimal State Trajectories


nl (t) x (t)



T m f( x(t ), u (t))
Time Time
t-1 t t+p t+T t+T
Horizon Horizon


Repeat Optimization online



Uf xtt),ut))


Time 1 Time
t-1 t t+p t+T Itt+T
Horizon Horizon

Figure 3-3: This diagram identifies the basic DFRHC scheme. Notice that there are two distinct
time frequencies, one for state feedback and re-optimization, and the other for the
prediction steps to the horizon. The process optimizes an input sequence, predicted
with some input time period p, and then repeats the optimization after state
information has been updated after a single feedback period.









CHAPTER 4
APPLIED APPROACH AND IMPLEMENTATION

Introduction

The need to implement online planning and real-time control on the CIMAR NaviGator

AGV was the driving motivation behind the work presented in this dissertation. Using the

theoretical concepts and mathematics described in Chapter 3, simultaneous planning and control

was put into operation on the vehicle through the use of Heuristic Receding Horizon Control

(HRHC), combined with Dual-Frequency Receding Horizon Control (DFRHC). Both of which

are the new and novel theoretical concepts presented by this dissertation.

The NaviGator has served, as the basis platform for implementation and testing of these

concepts. In the overall NaviGator control system, the implemented novel planning and control

task is compartmentalized into a software component called the Reactive Driver (RD). Figure 4-

1 shows a block diagram of this control system with the RD component residing within the

Intelligence element. The RD allows the planning and control functionality to be decomposed

into a separate compact module. By breaking the overall system down into smaller components

such as this, the implementation of other tasks and capabilities like environment sensing, and low

level vehicle actuation, becomes less complicated because they are only loosely coupled to the

rest of the system.

The RD is responsible for closing the loop between sensors and actuators. As such

information sensed from the environment is first processed by feedback components called

Smart Sensors. These sensors process information from sensed raw data and normalize it into a

standard form which can be easily fused with similar data from other Smart Sensors. The exact

format of and information represented by this data will be discussed in the second section of this

chapter. After the sensor data is fused together by an Arbiter component, it proceeds to the









Reactive Driver, where the RHC algorithm of this dissertation attempts to find actuator

commands which regulate the vehicle onto a predetermined motion path. This flow of

information is inline with the sense-plan-act scheme mentioned in chapter I, since it is repeated

continuously throughout the systems online operation, and also because the planning step is

inherent to the RHC functionality of the Reactive Driver.

The use of environmental sensors within the system leads to one maj or issue which is not

theoretically addressed in the previous chapter. Namely the issue that comes into play during

implementation is Obstacle Avoidance (OA). The introduction of obstacles into the vehicle's

task and configuration space has severe repercussions on the system's stability and performance.

For RHC to work, it is essential that the OA problem be cast into a form that allows the

optimization procedure to find a valid control solution that will guide the system safely through

the state space. This requires the obstacles and environment to be represented in a way that

elegantly blends the OA problem with the traj ectory or state regulation problem during the online

computation. In turn, the value function must be modified to reflect the inclusion of additional

environmental or state-environment interaction costs.

An essential section of this chapter addresses in detail the issues of OA. It is a vital

discussion because OA capability for AGVs is what allows them to operate and execute different

missions through their often cluttered and unpredictable environments. Since knowledge of the

environment structure is usually incomplete prior to task execution, the robotic vehicle must

have some OA functionality. This also means that the system must also have the ability to sense

any obstacles or other undesired states, and a way to represent what is sensed so that it can be

used by other processes that plan the vehicle's motion. This ability, on the NaviGator vehicle, is

implemented as mentioned, within the Smart Sensor components, and is not the focus of this









dissertation. However, the output of those sensors is consumed by the Reactive Driver

component of the system and therefore needs to and will be discussed.

Aside from the ability to sense disagreeable state configurations, an AGV can also benefit

from the capacity to sense desirable states, terrain or conditions. This allows the system to

maximize the chances of successful task execution. An example of this would be sensing a road

adj acent to the vehicle's current path and then switching onto driving that road if it were more

conducive than the current path. This ability, like OA, can also be incorporated into the RHC

task, assuming that the desirable state configurations are represented in a way that allows such

information to be combined with state regulation costs, within the optimization routine. The RD

component in conjunction with the NaviGator' s Smart Sensors, allows for this behavior, and is

implemented in unison with the OA behavior. The ability to both avoid obstacles and track

desirable terrain is inherent in the design of the Smart Sensor / Reactive Driver interaction, and

will be addressed in detail later in this chapter.

Obstacle Avoidance

From Remark 1 in the previous chapter, it is suggested that RHC applied to an autonomous

vehicle system will allow for unified motion planning and control. If the optimization problem is

cast correctly, this should inherently include an OA capability. However, it should first be

considered that the regulation of a vehicle onto some desired state motion structure, while at the

same time avoiding any undesired regions in the configuration space (due to obstacles, or other

high risk hazards) is by nature contradictory. For example, if the system is required to drive

along a particular geometric path, avoiding an obstacle in the way of that path also demands that

the vehicle depart from the initial intended traj ectory. This behavior, when viewed from the

classical control sense, is unstable with respect to the goal. Error signals used for path regulation

would inherently increase during the avoidance maneuver. However, the overall behavior, when









viewed from the system user, seems desirable and in a new sense "stable." The implications of

this simple concept are far reaching in their impact on the notions of system stability and

performance. To simply put that the idea of stability requires the continuous minimization of all

error signals for all time is no longer valid. The desired performance of the system, and what

could be considered "stable behavior," now involves the movement around and away from the

original goal structure.

The essence of these concepts is that stability, in the presence of obstacles, requires the

minimization of a properly designed value function, not the minimization of only state error

signals. This therefore suggests that unstable behavior is coupled to the sub-optimality of the cost

function and open-loop input sequence of the RHC process. Meaning that if the value function,

which incorporates a cost component due to environment, and obstacles, is not minimized then

the probability of unstable behavior such as obstacle collisions increases.

A value function designed to provide both stable control (motion regulation) and stable

behavior (obstacle avoidance), must incorporate both classic state regulation costs, and a state

environment cost. The state environment cost adds a new terms) to the value function, which

was not discussed in Chapter 3. This new component describes the cost associated with the

system occupying a given state in it operating environment, which in general can be attributed to

obstacles, terrain quality, etc. Equation (4.1) presents a new cost function form with an additional

term P(x) which describes the added cost due to the system' s state within its environment. It

effectively trades off state error signal value with obstacle avoidance value. Meaning that if the

cost of occupying a given state due to P(x) increases, the overall optimization will allow for a

slight increase in the remaining two terms in order to reduce the cost due to the environment. The

remaining terms are identical to the value functions discussed in the previous chapter. The cost









due to error in motion regulation is expressed within Q(x) and the cost due to input command is

given by R(u) Notice that both P(x) and Q(x) are both functions of the systems state. The

difference in these two functions is that, Q(x) is a mapping of state to error signals (which are

based upon a predetermined motion structure) and P(x) requires a mapping of system state to

environmental cost.


V(x) = P (x) + Q(x") + R(u) (4.1)


The addition of the new term P(x) to the RHC value function has a significant impact on

the Feasibility Theorem for Suboptimal RHC referenced in the second section of Chapter 3. Of

the three conditions of that theorem, only one can be partially satisfied when the state

environmental costP(x) is included.

The first condition states that the RHC value function must be lower bounded by some

class K-fun~ction a(-). Assuming the term P(x) is designed such that it is always positive, thi s

condition can still be satisfied, since it is simply adding a positive number to the remaining

portions of the function which can already be lower bounded by a(-). However, the condition

also states that the value function is equal to zero at its origin. SinceP(x), must be allowed to

have a value greater than zero for cases where obstacles are present at the origin, this condition

cannot be fully satisfied.

The second condition states that the cost function V(x) must be monotonically decreasing

for successive time steps of the RHC solution sequence. This criterion cannot be satisfied when

obstacle avoidance is included in the optimization problem. The reason for this is that in order to









avoid an undesirable state during motion tracking, additional cost may be incurred on by the

value function in order to produce a desirable avoidance maneuver.

Finally the third condition cannot be guaranteed since the uniqueness of the control input

for any given state can no longer be certain.

A simple example that demonstrates all of these cases is depicted in Figure 4-2, which

shows a vehicle attempting to track a straight line and a single obstacle in way of that track. In

this case it is possible to Eind two opposite but equal solutions to the RHC problem. Therefore, it

is not possible to guarantee the uniqueness of a control solution or to ensure the control input is a

well behaved function of the system' s state, when obstacle or environment cost is included in the

RHC value function. Also, since the cost of the value function inherently increases during some

OA maneuvers such as the one depicted in Figure 4-2, it is not possible to satisfy the decreasing

cost constraint which is required to prove feasible stability.

Although it can be shown that cases may exist which disagree with the criteria presented

by the Suboptimal Feasibility Theorem, under nominal conditions they may still be satisfied

whilst including obstacle avoidance as part of the RHC optimization. In addition, for all cases in

which the state environment cost function P(x) is zero, such as when no obstacles are present in

the immediate environment, then the value function simply reduces to the classic RHC form, and

all of the stability criteria may be applied as usual. However, for simplicity in this

implementation, the three criteria are not explicitly verified. Rather, the control solution is

guaranteed to be admissible, by designing a valid A* heuristic function. This topic is discussed

in detail in the next section.

The ability to formulate the environmental cost component P(x) online, allows the RHC

optimization problem to dynamically modify the vehicle's predicted motion, in order to avoid










obstacles or drive on more desirable terrain. This online cost mapping is a functionality that must

be provided by exteroceptive sensors since the required information is originating from the

vehicle's surroundings. Thus information provided by those sensors must be in a form that

effectively represents the cost of occupying a given state in the workspace. For implementation

on the NaviGator, this information is provided in a form known as a traversability Grid. The

traversability grid models the system's workspace as a raster image in which each pixel contains

a value that estimates how desirable the terrain and space contained within that pixel is for the

vehicle to occupy. The traversability value is effectively a gain like parameter that allows for a

tradeoff between input effort or motion error and quality of terrain. The worse the terrain, the

more willing the RHC is to add error cost to the determined path in order to circumvent that poor

area.

Obstacles are represented by a traversability grid in much the same way as they are in an

Occupancy grid. Both positive and negative obstacles (such as pot holes) within the environment

can be mapped equivalently to poor traversability regions. In fact, this is one feature of the

traversability grid that cannot be effectively represented by an Occupancy grid. In an Occupancy

grid, only information about the "occupied" or "free" state of a pixel is given, whereas a

traversability grid can encapsulate these pieces of information and also describe terrain quality.

This means that any type of terrain can be mapped into traversability space without having to

convey anything specific about the given topography. In the traversability sense, positive

obstacles appear the same as negative obstacles or steep slopes. Traversability also allows for the

evaluation and scoring of unoccupied space. For example, pavement can be classified as more

traversable than sand, grass or gravel. Therefore the vehicle is able to select the best possible

path for motion when it is presented with different types of terrain.









The units of measurement for the values contained within the traversability grid must also

be carefully considered. As aforementioned, the values are used to tradeoff occupying a given

space with motion structure error and or input effort. As such, the grid values are essentially

dimensionless, and do not describe an amount of travel energy required or probability of safe

motion, etc. This is because values with these types of physical units would inherently change as

a function of the system's complete state (i.e. speed and orientation), and would require much

more information about the environment to be mapped by sensors. It would also require a more

complex P (x) cost function. Therefore, traversability as discussed in this dissertation is only

considered as a qualitative parameter that can simply and effectively allow the Reactive Driver

component to make decisions about the desired vehicle motion. Figure 4-3 presents the

traversability grid concept. In this image a model of the surrounding local environment is

mapped into the corresponding traversability space. The area outside of the vehicle's

commanded operating space is all mapped to poor (shown in red) traversability values. The

values go from shades of red, which are poor, to shades of green and blue, which are desirable.

In implementation on the NaviGator system, the traversability grid format for all sensors

feeding the Reactive Driver component is a 121 by 121 pixel rasterized image with a resolution

of 0.5m by 0.5m per pixel. Each pixel in the grid contains is a 4-bit integer, which can represent

a traversability value or one of several special case values. The grid is designed such that the

vehicle is always positioned at the center of the image, and as the vehicle moves the values

within the image are shifted so that the vehicle remains in the center. When shifted, new values

around the edge of the image are updated with new data from sensors. The coordinates within the

image are easily mapped to local vehicle coordinates and therefore the traversability grid serves

as the environmental cost function P(x) for implementation in the RHC value function.









However, since the orientation of the vehicle at each pixel within the image is not considered,

only the vehicle's position within the grid is used to determine environmental cost, and not its

full state (position and orientation).

The complete value function used for implementation in the RD component, which

includes traversability, cross track error, and heading error, has been designed as:


V~x(t) [keay* Tray x(rC))2+ khr Her~r x())2 + Xirack x(rz))2. (4.2)


Where the sub function Trav(x(r)) accounts for the environmental cost due to obstacles

and terrain quality, and has a corresponding optimization weight keray. The remaining two sub

functions provide transformations of the system's state into path tracking error coordinates, and

allow for optimization of the vehicles motion tracking of a desired traj ectory. The heading error

function, Herr x (r)) is multiplied by an optimization weight kherr ,Whereas the cross track error


function, X~vrack(x (r)) is not altered. This allows for normalization of cost units, using the

cross track error as the reference base for overall value. Figure 4-4 presents a geometric

representation of the tracking error system measurements, Herr and XTrack.

Thus the implementer is free to modify the remaining weight factors to tradeoff

traversability, and heading error with cross track error as a baseline. Note that input effort /

control value has been neglected here since there is not term in the function penalizing it. It has

been found through extensive testing that desirable results are obtainable without control effort

in the cost function, and that the overall optimization is less constrained to find an appropriate

solution with the value function provided in equation (4.2).









For implementation of HRHC where the A* search is used in place of a classic

optimization routine, the depth cost function GT (n7), must be specified. Since the general value

function provided in (4.2) specifies the cost structure for the underlying problem, a variation of

that function is used as the depth function:


G (n,)= ke,m T~ray(xno~de (n,!

+kherr Herr(xnrode (n )) 2
(4.3)
+Xl~rack j(xnode (n,! )

+GT ( pnode (n ) )


Vpn'ode (n,) 0.

In this form the depth function is defined recursively, and is dependent upon the depth cost

of the parent of node n, For the root node (s) the depth function is simply:


G (s) = 0 (4.4)

Admissible Heuristics for HRHC

The cost function presented in the previous section provides a means for the RHC

implementation to optimize both obstacle avoidance and motion tracking online. In the previous

chapter the new technique, Heuristic Receding Horizon Control (HRHC), offers a means to use

heuristic information and the A* search algorithm to implement the optimization task within the

overall RHC scheme. One essential requirement for HRHC then is to establish a heuristic

function which can estimate a cost-to-go for the value function provided in the second section of

this chapter. As will be shown in this section the heuristic function can take on many different

forms, each with various strengths and weaknesses. Finally the form decided upon for

implementation in the NaviGator' s RD component will be presented.









Cost functions for a typical RHC and a typical A* implementation tend to be very different

in nature. Classically, A* state to state transition or "arc" cost values are relatively constant or

simply depend on the transition distance, whereas RHC state transition costs decrease as the

system approaches the origin or goal. Regardless of this difference, the general method or

technique for HRHC allows for a total cost function f (n) to take on any form, so long as it

satisfies some basic criteria. First, the arc or state transition cost must always be greater than

zero. Since the value function provided in (4.2), is positive definite and provides this cost

measurement, the first condition is satisfied. The second condition requires that the heuristic

function h(x) be an underestimate of the total cost-to-go for the provided value function.

Therefore, careful consideration for the heuristic function must be taken in its design to ensure

that it is upper bounded by the true optimal total to the goal. If this condition is violated then the

algorithm A* is no longer admissible and may determine an invalid solution sequence.

A good approach to heuristic function design is to analyze each term in the RHC value

function, and to establish a heuristic estimator for each of those terms. Then all of the partial

heuristics can be summed to obtain the complete heuristic function.

For implementation within the RD component on the NaviGator, it is desired to Eind a

heuristic estimator that approaches the true minimum cost solution over the time horizon for

equation (4.2). In analyzing that function term by term, it can be seen that the first term provides

the cost due to environment, which is directly related to the mapped traversability value. The

ideal heuristic for this term would provide a cost sum over the remaining time interval with the

true traversability encountered along the optimal state traj ectory. Since that traj ectory is not

known, an estimate or prediction of the encountered traversability must be made. Also, to adhere

to the admissibility constraint of the A* search, the traversability estimate must not exceed the









optimal solutions value, so a conservative approach must be taken. In other words, the predicted

traversability cost must be less than the actual future remaining time traversability cost. One

simple heuristic function that estimates the future incurred traversability cost, at a given time

(r), within the HRHC search is:



her (r, () = ks min Traiv (x) (4.5)


where Ar is the time step period of the search. This heuristic estimates that the total future cost

due to traversability is equal to the minimum traversability value of any possible state, multiplied

by the traversability cost weight, and the number of future time steps. This function is the

heuristic estimate used by the RD component in implementation. It provides a fast method for

calculating an estimate which is guaranteed to be upper bound by the true future traversability

cost. It is fast because the minimum traversability need only be calculated once, and then that

minimum value may be applied for calculating each search node's heuristic cost. Other heuristics

which are more informed about the underlying system dynamics and problem are able to

calculate a more accurate heuristic. However, these functions tend to be much more demanding

since the future minimum traversability is truly a function of the systems state and must be

recalculated for each search node. Thus the time saved in reducing the total number of explored

nodes, by using a better heuristic, is lost since the heuristic itself takes much more computation

time, and so more advanced heuristics are not worth implementation.

Heuristic estimates for the heading error and cross track error cost components are both

calculated directly from the system's state at any given node within the A* search. Unlike the

traversability estimate which must have knowledge of the systems surroundings, and therefore

must perform a separate search to find the future minimum traversability, the system state only









dependent costs of heading and cross track error may be calculated by pure geometric and

kinematic constraints.

For the heading error heuristic design, the total incurred cost may be lower bounded by

knowledge of the vehicle' s minimum turning radius constraint, and a constant speed assumption.

In more detail, since the NaviGator is a front wheel steered vehicle, there is a minimum turning

radius that the platform is able to drive. At a given speed (the one at which the HRHC search is

attempting to optimize motion) there exists a maximum turning rate for the vehicle. By

calculating this maximum turning rate at any given node's state in the search, the future incurred

heading error cost may be estimated with the equation:




v= r+A rm'"(4.6)

rmnHerx r



The above equation assumes that the heading error will decrease linearly at a rate equal to

the maximum vehicle turning rate, where v is the vehicle's desired speed, and rmn is the

minimum turning radius. The estimated future cost is therefore at least the summation of the

minimum possible heading errors, up until the point at which a heading error of zero is possible,

and from thereon it is assumed to remain zero. For all time greater than the time at which the

heading error would be equal to zero, the future incurred cost is assumed to also be zero or


hherr (rZ) = 0
(4.7)
v IHerr x(r))< <-A
r17111


because it is assumed that the heading error will become zero and remain zero before the next

search time at r + Ar and therefore no future cost will exist.









The cross track error heuristic is calculated in much the same way as the heading heuristic.

For this estimate, it is assumed that the vehicle's cross track position will decrease as if it were

headed perpendicularly towards the desired motion path. This clearly will lower bound the true

future cost since the vehicle must approach the path at an angle near parallel with a line tangent

to the path, if it is to converge onto it. To calculate the heuristic then, a summation of the

minimum future possible cross track errors is made. The following equation makes this

calculation, within the RD component, and assumes that the vehicle's desired speed will remain

constant




(4.8)
SX~rack (x (r))l



Since the actual accumulated cost given in the value function (4.2) does not multiply the

cross track cost by a weighting factor, then neither does the heuristic given in (4.8). As in the

heading error heuristic it is also assumed for the cross track error, that once the error reaches

zero, it will remain zero for all future time. Therefore for the heuristic estimate, the summation

of future estimated cross track errors is only defined for those with positive values, and for the

cases in which the future cross track error is zero the heuristic is also zero and is given by:



(4.9)
V XTrack(x(r)) < v* A


The total heuristic function is simply the summation of the partial heuristics given above

and can be expressed as:


h x (r) = h,, (I(r,) + ,,, x () +tac (r) (4.10)









The above heuristic function provides a lower bound estimate of the true future incurred

cost of the optimal state traj ectory, and therefore should allow for the A* search to yield an

admissible solution. The solution obtained should satisfy the basic feasibility criteria, necessary

for stable Receding Horizon Control, especially under obstacle free circumstances. It should be

noted that there seems to be a strong connection between the heuristic criteria of A* and the

second feasibility implies stability criterion. Essentially if the heuristic function is not admissible

then it may not always underestimate the true future cost to goal. In that case, the solution will

not be admissible and will almost certainly violate the second stability criterion. This simple

connection implies that an admissible heuristic function may account for the maj ority of the

HRHC algorithm's stability and control effectiveness.

Reactive Driver Implementation

The Reactive Driver (RD) component of the NaviGator' s overall control system houses the

HRHC implementation of this thesis. Along with the cost functions and heuristics detailed in the

previous two sections, there are a number of important functions of the RD that merit discussion,

and complete the system integration puzzle, which allows for the RD to provide true

functionality in the real-world system.

As shown in Figure 4-1, the RD is one of many components which makeup the complete

autonomous control system. Each of these components is designed as per the Joint Architecture

for Unmanned Systems (JAUS), and each houses a core functionality that is defined by JAUS.

JAUS is a standard which specifies a basic structure and methodology for unmanned and

autonomous systems design and integration. It is intended to aid in the integration of and to

support interoperability amongst many heterogeneous unmanned systems originating from

different developers. In addition to the core component architecture, JAUS primarily offers a

means for common messaging and information exchange among its intended hierarchical









network of systems, subsystems and computing nodes. This messaging system is what allows the

RD to communicate with and control surrounding components in the NaviGator' s control

sy stem.

Like all components implemented on the NaviGator, the RD extends a core JAUS

component template and a corresponding JAUS library, which are implemented in the C

programming language. The software is built upon the Linux and GNU tool-chain, with its

extensive set of libraries and compilation utilities such as the GNU C Compiler (gcc). This base

understructure provides each of the components operating on the NaviGator a means to support

timing processes, inter and intra nodal communication, as well as multithreading capability.

The RD component has been implemented to run on a computing node which is made up

of a Gigabyte motherboard with AMD CPU, 1 GB of RAM, and a 4 GB Compact Flash solid

state hard drive. The computing node runs the Linux Fedora Core 3 operating system, which

allows for advanced software development as well as execution directly on the NaviGator. Also,

the node is connected via a high speed Netgear Ethernet switch to seven other identical

computers onboard the NaviGator. Each one running its own set of tasks and processes for the

vehicle's control system, and all intercommunicating via JAUS base datagram packets which are

routed through the onboard Ethernet switch.

The JAUS messaging communication provides essential data to the RD. Specifically, there

are five data streams originating from other components in the control system, each of which the

RD requires for complete operation. The data included are: the vehicle's global position and

orientation, its velocity state, the state of the surrounding local environment (in the form of a

traversability grid), feedback from low level actuators, and their health status. Each of these data

streams is in a form known as a JAUS service connection, which allows for JAUS message










reports to be sent on a periodic basis without needing to re-query for the report every time it is

desired.

Both the position and velocity JAUS messages originate from the same computing node

which runs multiple components. One component is the Global Position and Orientation Sensor

(GPOS), the other is the Velocity State Sensor (VSS). Both of these tasks process feedback from

low level vehicle state sensors, such as accelerometers, GPS, and odometers, and cast it into the

proper JAUS message for consumption within the rest of the computing network.

The traversability grid data is wrapped into a JAUS message which originates from the

Smart Arbiter (SARB) component, and is a compilation of a number of other grids from lower

level Smart Sensor components. Each of the Smart Sensor components maps data from a

physical environment sensor, such as a camera, to a single traversability grid. Then each grid is

sent to the SARB where it is fused together, to form a composite and more complete estimate of

the local environment.

Lastly, information from the component directly below the RD in control loop, the

Primitive Driver (PD), is fed back up to the RD level. This information includes two data

streams. One stream contains information about the low level vehicle actuators (steering, throttle

and brake), specifically the current position of each actuator, and is in the form of a JAUS report

wrench effort message. (A wrench describes a set of forces and moments, and supports the way

JAUS abstracts low level platform control.) This wrench is needed to keep an updated model of

the vehicle, mainly for determining the current front wheel steering angle, and thus allowing for

accurate state predictions to be made during the HRHC routine. The second stream contains

information about the health status of the PD itself. This data is important to the RD in order for

it to maintain control of the vehicle, and to take evasive action if there is a fault within the PD.









All JAUS components on the NaviGator are implemented as finite state machines. Each

one can assume one of seven possible accepted states; they are enumerated and named: Startup,

Initialize, Standby, Ready, Emergency, Failure, and Shutdown. By monitoring the state of the

PD the RD is able to infer its health status, and therefore able to maintain a more fault tolerant

level of control. In most cases the component executes its main task while it is in the Ready state.

The other states such as Initialize and Standby are included to allow the component to switch its

behavior in order to establish needed data service connections, disconnect from the rest of the

system, or to pause for operator control.

The RD Ready state software is mainly composed of one control loop. Within this loop all

of the necessary procedures and steps are taken in order to execute its primary purpose which is

to command the desired vehicle control wrench to the PD. This wrench is the only output signal /

data stream provided by the RD, and its purpose is to command the vehicle's steering, throttle

and brake actuators such that the intended motion of the Receding Horizon Controller is

executed. The steps in between updating local software variables from the input data streams,

and the output of the command wrench, include fault detection, determination of the vehicle goal

state, traversability grid modification, and finally the execution of the HRHC and a simple PID

loop to control the vehicle's speed.

Table, outlines each of these important steps and will be used for reference within this

section and the rest of the chapter.

In the first step of the RD control loop data is updated from the five incoming service

connections detailed above. The next step in the procedure begins to use that data in order to

detect if any possible faults have occurred. Specifically, in verifying that all critical

communication streams are still active and that the PD component is still in a health state,









waiting to be commanded. The third step will simply switch the RD into the Standby state if it is

so commanded by the operator. This command is determined by checking the state of the PD,

and observing if it is also in the Standby state, if so then the RD follows into Standby.

The fourth step in the procedure requires some special consideration. This is the first step

in the procedure which requires data from the input path file. The path is provided to the RD by

an operator as a flat data file, and specifies an a priori motion plan for the vehicle. The file

contains a data structure which is made up of a list of piecewise continuous path segments. Each

segment is specified with a starting point latitude and longitude, end point latitude and longitude,

desired speed, and segment curvature. At this step the RD determines which segment the vehicle

should attempt to track by analyzing the vehicle's current position with respect to the path

segment ahead of the segment it is currently tracking. If the vehicle is closer to the next segment

than it is to the current segment, then it will switch to tracking the next one in the sequence.

Since the desired speed may vary from segment to segment, it is necessary in the following

step to update the current desired speed of the vehicle. This step requires looking forward in time

on the desired path to check for lower speeds and taking into consideration the vehicles

deceleration capability. Lower speeds on the path might also be attributable to the curvature of

the desired path segment. If the curvature is high enough, it may require the vehicle to slow

down in order to track that segment without risk of rolling the vehicle. This procedure is done by

finding the minimum path segment speed (due to desired or curvature value) over a nominal

deceleration period, and then analyzing if that speed requires the vehicle to begin slowing down

at the present time. If it does, then the current desired vehicle speed is set to a value which

accounts for deceleration time. If it does not, then the current desired speed is simply set to the

desired speed of the current path segment. This functionality is equivalent to the equation,










DesiredSpeed = m~in [speed (s,) +D distTo (s )] (4.11)


Where the functions sp~eed (s), and distfro(sr), determine the desired speed of path

segment s, and the distance from the vehicle to the start of the path segment respectively. The

constant D accounts for a nominal distance based deceleration, measured in meters per second

per meter. The value used on the NaviGator is tuned to: D = 0.25 mps / m .

The fifth step, of the RD control loop calculates the latitude, longitude and size of the

desired RHC goal region. The region is a circle centered at the determined coordinates and its

size is simply determined by a radius value, calculated in units of meters. The center of the area

is determined by using the RHC planning time horizon period, and the a priori path data. The

algorithm proj ects the vehicle' s current location onto a point perpendicular to the path, and then

extrapolates out in time, using the current desired speed, to a point that lies somewhere on the

desired path ahead. The radius of the goal region is scaled linearly with the desired vehicle

speed, to allow the discrete planner enough space to seek out, rather than a Eixed size goal, which

might be too narrow to find.

Two special cases exist in determining the goal point. The first occurs when the goal is

found to lie outside of the locally mapped traversability space. Since the planner requires

knowledge of the traversability value at any given state, points outside of the grid region are

undefined and therefore seeking a goal in that space would require some significant assumptions.

Rather than plan outside of the traversability defined region, the goal point is simply proj ected

onto its boundary, where it meets the desired path. The second special case occurs when the end

of the path is encountered within the time horizon. If so, the goal point is just set to the endpoint

of the last path segment.









With the desired speed and goal point known, there is one last step required in

implementation before executing the HRHC algorithm. The step is called grid dilation and serves

a very practical purpose for obstacle avoidance. Since the vehicle takes up a region of area

within its local environment, it is necessary to account for its size during planning, in order to

ensure that there is enough clearance around the vehicle to completely avoid any obstacles. One

method to do this would be to find the minimum traversability value within a region representing

the vehicle's footprint, in order to calculate the traversability cost at any point in the planning

search. This would thus require a separate minimum traversability value search for every node

expanded during the A* algorithm's execution. Since there are many nodes expanded during a

nominal search, and many pixels to explore for any given footprint configuration, this operation

would be very cumbersome. A more efficient method is to expand any obstacles within the

traversability grid, by the approximate size and shape of the vehicle, and then assume the vehicle

occupies only is a single point in space, during the search routine. This dilation then need only be

done once per iteration, rather than many times during the search itself.

Also, since the traversability value is a general description of environment cost, and not

purely an obstacle representation, it makes sense to dilate the grid by the any minimum

traversability value within the expansion area, and not solely obstacle values. This guarantees

that the search will account for vehicle size and shape, even when seeking out desirable

traversability regions, or avoiding regions of intermediate cost.

The dilation procedure is implemented as a pixel by pixel loop over the entire grid. For

each pixel the dilation value is determined by looping again through an area around that pixel,

and finding the minimum traversability value within that area. The search area is called the

kernel, and it represents the approximate size and shape of the vehicle. Since the orientation of









the vehicle at any given node within the search may vary, the shape of the vehicle, which is

ideally rectangular, cannot be assumed in any one configuration. Therefore, the shape of the

kernel is assumed to be a circle, with a radius slightly larger than the half width of the

NaviGator. Figure 4- is an example of what a traversability grid image looks like before and after

circular dilation. The circular shape guarantees that if an area is avoided in the dilated image,

then the vehicle should at least have enough clearance to pass by it at its side. Since the vehicle

may be approaching the region at a slightly different orientation, the kernel radius is tuned to be

slightly larger than what is probably needed in order to account for its difference in shape.

At this point in the RD control loop, all of the required data and values have been

determined or modified such that the Heuristic Receding Horizon Controller (HRHC) can be

executed. The purpose of this step is to determine a control input that when commanded to the

system will yield the desirable motion to both maintain path tracking and if necessary avoid any

obstacles. The form of this control input is the steering wrench effort portion of the JAUS

wrench message that will be sent to the Primitive Driver for low level vehicle actuation. This

value varies from -100 to 100% effort, and essentially maps directly to the steering system for

turning the front wheels anywhere from 100% left, through 100% right.

As discussed in the fifth section of Chapter 3 of this dissertation, the HRHC algorithm is

implemented as a modified A* search. The first step in the routine creates the root node by using

the current vehicle state feedback (position and orientation), and the current control (steering

effort). All nodes in the search are stored as a C language data structure, with variable members

including: cost-to, cost-to-goal estimate, parent node pointer, generation number, and vehicle

state / control information. A fixed number of theses nodes are allocated in memory prior to

running the routine for the first time. They are stored in a linked list data structure, named in this









implementation "Node Dispenser", which allows nodes to be divvied out as needed, and can be

reset quickly by simply resetting a single pointer that indicates the node to be dispensed next.

This Node Dispenser method has been implemented to optimize the code and increase efficiency,

verses allocating and freeing a single node, every time one is used.

The next step in the algorithm establishes the root node onto a set of nodes called the Open

Set. In this implementation, the Open set has been optimized for searching and sorting according

to the cost-to-goal estimate which represents the A* f (nr) value. The optimization is done by

casting the Open set into a data str-ucture known as a heap stack. A heap stack is a stack of nodes

divided into multiple levels. The first level in the stack contains a single node, the second level

contains two nodes of which the node above is parent to. Each level after can store twice as

many values as the one above it, because the two child per parent relationship continues on as the

stack grows. In this manner, the stack expands exponentially in the horizontal direction as it

grows vertically. The heap stack is design to maintain one special property, that is, the parent

node value is guaranteed to be less than (or greater than, depending upon if the stack is desired to

be ascending or descending) the two child node values. This relationship ensures that the value at

the top of the heap stack will always be the minimum or maximum of all nodes. This is very

desirable for the A* implementation, since Einding the minimum cost-to-goal estimate node on

the Open set is a crucial part of the algorithm. Having the Open set organized in this fashion

allows for that node to be found in a single step, no search need be conducted. The heap stack

however, requires to be reordered when a node is popped from or pushed onto it, but because of

the exponentially growing nature of the heap, this reordering is efficient and can be done in

O(log n) computation time, where n is the number of nodes on the stack.









The ability to quickly find and remove the minimum cost estimate node from the heap

stack is taken advantage of in the next step of the algorithm, where it is removed from the Open

set and then checked for membership in the goal set. This is done by analyzing if the node' s

vehicle state is in the goal region. If it is, then a solution node has been found, if not then the A*

search continues by expanding a new set of child nodes through the expansion function C (n) .

The expansion function for HRHC is implemented by generating a new set of possible

control inputs and then predicting their effect by propagating the current node's state through a

vehicle model function. The manner in which the control inputs are generated is defined by the

artificial input space quantization that has been discussed in fourth section of Chapter 3. The true

input that can be commanded to the PD is a continuous value in the range of -100 to 100% effort.

However, this would require generating far too many nodes to be practical. Therefore, a finite

number of nodes, representing a finite set of quantized input commands are expanded, and the

one sequence yielding the least cost traj ectory is found. The first input command associated with

this sequence is then delivered as the control.

For the RD, the input space quantization resolution is a tunable parameter that can be

increased or decreased in order to improve optimality, or increase speed. This means that as the

quantization resolution is increased, the A* search is able to find a more optimal solution,

whereas if the resolution is low, the solution is less optimal, and there is a chance that may not be

found at all. Also the finer the quantization, the more elegant the vehicle control, because the

input commands will tend to vary only slightly between control iterations. If the quantization is

low, then as the commands change between control iterations, the vehicle will tend to nudge and

jolt as the steering wheels move back and forth between commands.









The input commands for the NaviGator are generated ad hoc to take advantage of one key

vehicle constraint. The steering wheel actuator on the NaviGator has a rate limit which only

allows the wheels to turn up to a maximum speed. This rate limit corresponds to a maximum and

minimum input command at each execution of the node expansion function. Since the steering is

rate limited, and there is a Einite time between commands in the horizon search, then any

command higher than the rate limited maximum would yield the same result as the maximum

itself. Therefore, expanding any nodes with input commands higher than the rate limited

maximum will not add any value to the search and will only waste search effort. This constraint

thus allows the input space to be truncated on an expansion basis, and so resolution is increased

in the truncated space when the number of divisions is held constant. The rate limit on the

NaviGator vehicle was measured to be: 60 effort% / sec .

Also, in an effort to minimize search complexity, the quantization resolution is decreased

as a function of the search depth. This is done because the search resolution as the depth

increases is less and less critical to successful control, because the goal of the search is to Eind

the first input command which leads to a successful state traj ectory. Therefore, higher control

resolution is most important at the root node expansion.

For each control input determined during the quantization procedure, a search node is

generated and then its vehicle state is copied from its parent node. This state is then is

extrapolated through the vehicle model function over the horizon planning time interval, using

the newly determined control input. The vehicle model used is kinematics based, and works by

proj ecting the vehicle' s position and orientation along a straight line, or circular arc, depending

upon the steering curvature of the vehicle state. Since the rate limit of the steering system has a

significant impact on the NaviGator' s maneuverability, it is also taken into account in the vehicle









model. The model function first determines how much the wheels will move in the given time

step, based upon the input command and the rate limit. The effective path curvature is then

calculated by averaging the steering path curvature at the beginning of the time step with the

steering curvature at the end of the time step. It is assumed that there is a linear relationship

between the steering effort and the geometric curvature of the path that the vehicle will drive.

The relationship can be equated as follows:


kpath = K~ro,,t SteeringEffort (4.12)


This is a simple mapping given the steering effort value from -100 to 100%, and the

constant Kerro,,, determines the effective curvature of the path the vehicle will drive. As long as

the front wheel steering angle remains significantly less than 90 degrees, then this assumption

will be valid. On the NaviGator the mapping constant was measured to be:

Kefroyt = 0.0016/ effort *m.

Since the geometric curvature is simply the multiplicative inverse of path radius, the new

vehicle position and orientation may be calculated once the curvature is known. For the model, it

is assumed that the average curvature over the time interval is effectively what the vehicle will

drive, because the change in curvature in each planning step tends to be small, this assumption is

relatively benign. Also, if the average curvature is found to be very small, then it is assumed that

the vehicle is simply driving along a straight line, and so the new position and orientation state is

calculated as such. However, if the average curvature is outside of the straight assumption

threshold, then the new state is extrapolated along a circular arc, with radius equal to the inverse

of curvature. Both the straight line and circular proj sections assume that the vehicle speed is









constant over the time interval AT Here the equation for calculating the new state position along

a straight line of motion is:


TxI LyvxI pvv+" rsin (0)1
pre +v Ar *V ke <' kthresrholdj (4. 13)


The state yaw angle B is measured in global coordinates where true North is equal to zero,

and East is 90 degrees. Therefore equation (4.13), calculates the new x position using the

sin function and the new y position using the cos function.

The new position along a circular arc is calculated using a somewhat more lengthy

equation. This is done when the average curvature exceeds the straight line approximation

threshold and is given by,



Lyr LypverXIpv k 1 cos(0~in~)sin(A8) -sn0)1cos( A8)) kslkh)sor. (.4


For implementation in the NaviGator RD, a curvature threshold: kthreshold = 0.01was found

to work well.

During node expansion the traversability arc cost is calculated by analyzing the vehicle's

state transition through the grid as it moves from its starting position and orientation to its end.

This is done by measuring which values it encounters and then calculating an average over the

interval. The grid values encountered during a state transition from one point to another are

found by assuming the vehicle moves along a straight line from the start point to the end point.

Since the grid resolution is somewhat low, 0.5 m by 0.5 m, this assumption is valid, because the

pixel values touched by the state traj ectory would vary little between a short circular arc path and

a short straight line path, which is mostly the case. Bresenham's line algorithm [BRE63] is used









to determine which pixel values to measure along the state transition line. This algorithm is

highly optimized for calculating the pixel coordinates of a straight line through a rasterized

image space, and so it is very desirable for this implementation, where thousands of small lines

need to be measured during each search.

One option the operator has when executing the RD component, is to plot the image

coordinates in the traversability grid, which are measured during the HRHC algorithm. This

allows for the effective search space to be analyzed at runtime. Figure shows the result of this

plotting within a sample traversability grid on the left. As shown, the HRHC routine creates a

tree like structure of possible state traj ectory paths through the local environment. This structure

corresponds to the quantized control inputs which are generated and extrapolated through the

vehicle model. By analyzing this area searched by the algorithm it is possible to gauge the

optimality of the solution traj ectory. If the area searched both relatively large and dense, then the

solution path should be the minimum of all paths within that area, and therefore has been

weighed against many possibilities. However if the searched space is sparse, then the solution

may be poor, because not enough other possible solutions have been checked to verify than

nothing better exists. This is one of the key methods used in tuning the HRHC algorithm.

Parameters such as the number of quantized input commands, horizon time, and planning time

step, are tuned so that the search will be as broad as possible, while still remaining fast enough

for real-time execution.

Finally, after a solution traj ectory has been found, it is traced back from the goal node to

the root node via the parent node pointers. The node directly before the root node is reached,

contains the control input value that is then used as the steering command for the iteration of the

control loop. At this point the HRHC algorithm is complete.









The next step in the overall process is to execute a simple PID controller to maintain the

desired vehicle speed. This controller produces two mutually exclusive commands. One is for the

throttle and the other for the brake actuator. They are found by executing the PID controller

given the set point speed, and the current vehicle speed feedback, in order to determine a value

called the linear control effort. If the effort is positive, then it is multiplied by a throttle gain

value, which determines throttle command sent to the PD. Also if the linear effort is positive, the

brake command is simply set to zero. Conversely, if the linear effort value is negative, then it is

scaled by a brake gain, and then delivered to the brake, while the throttle value is held at zero.

The general PID controller form is modified slightly with a feed-forward gain kys, and a constant

bias value beo. This linear effort control value Ley, is calculated by:



Leo, ke +j~d kd-+k vdeie +bey, (4.15)


Where kp,k,ke, kdare the PID gains, ev is the instantaneous velocity error, and vde,, sird the

instantaneous desired velocity. The linear effort value requires a constant bias value in order to

maintain a positive brake command when the remaining terms are zero. The throttle and brake

commands are then calculated as


T -k,Leyyo,, if Leio,, >0
ego'" 0 otherwise
(4.16)
Befy -I kbL~efyov if Lthn seso,, < 0


The constant control parameters used for the RD implementation on the NaviGator are:


kp = 15.0, k, = 6.7, kd = 20.0, kfS = 15.0, beyo,,t = -57.5, kt = 0.65, kb = -1.3,









and to prevent integral windup, the velocity error integrator is limited to +4.9. This keeps the

vehicle from large over or undershooting of the desired velocity, if it is greatly disturbed, from

terrain or other unexpected external forces.

After the PID controller is finished determining the steering and throttle commands, the

complete wrench effort structure, containing the steering, throttle and brake commands, is ready

to be sent on to the PD. This step is done by wrapping the values into the JAUS set desired

wrench effort message, and then transmitting the corresponding data packet to the PD. This

functionality is provided through the data structures and API functions linked to the RD

application by the CIMAR JAUS libraries discussed above.

Faults and Failure Modes

The Reactive Driver control loop has several built-in fault detections, for conditions that

may persist and can cause the system to fail. The first condition occurs when an obstacle or

group of obstacles causes the planning search not to be able to find a solution traj ectory. In this

case the vehicle would inevitably have to collide with the obstruction if it were to continue on

course. In order to avoid this possibility, the control loop detects the obstruction by observing

that the HRHC solution passes through an obstacle, and slows the vehicle down. By doing this,

the vehicle is free to make more evasive maneuvers because it is has more mobility at slower

speed. In the case where the vehicle continues to slow until it comes to a complete stop, and still

cannot find an unobstructed solution, then the RD goes into a fault state called "Blocked". This

means that the vehicle is essentially stuck in place and must either wait for the obstruction to

clear out of the way or it must reverse to find a different course.

The Blocked condition tends to occur more than other errors in practice and testing,

especially during navigation in harsh environments, such as off-road terrain. The causes for these

blockages usually are false positive obstacles detected by one or more of the system's Smart









Sensors, while operating on a narrow road or corridor. This forces the system to believe it cannot

find an unobstructed solution, while in reality, there is nothing in the way.To overcome this

problem in practice, a "Nudge" mode was built-in to the control loop, where the system would

move forward slightly after being Blocked for a short period of time. Most of the time this had

the effect of clearing the false positive in the traversability grid, and the NaviGator would

continue on course. Often a light obstacle, such as a high patch of grass, or stick would cause the

blockage and the vehicle would simply push over it unharmed.

Another failure mode may occur when there is some coupling between the vehicle

dynamics and the traversability grid, input path, or goal point. This problem was discovered

during an experimental implementation of the RD component on an Air Force Research

Laboratory (AFRL) autonomous vehicle. In that experiment, the goal point for the HRHC search

was set to be a fixed distance from the vehicle, and explicitly dependant upon its instantaneous

heading. This distance and heading dependency caused the planner to repeatedly obtain the same

traj ectory and control solution. In this case, the initial control action was often opposite the

desired motion. The first control command in the solution sequence would usually be intended

by the planner to make a slight course correction, in order to find a more desirable path. This

made the HRHC solution unpredictable and caused the vehicle to be unstable. The problem was

corrected by removing the explicit dependence on the vehicles heading when calculating the goal

point, thus allowing the algorithm to obtain a unique solution upon the following control loop.

Lastly, this implementation of a Receding Horizon Controller does not make use of a

locally stabilizing control law. They are often used in RHC to drive the system inside of the goal

region, and also in the stability analysis, to determine a terminal state cost penalty. The reason

for this is that the system is not designed to ever reach the goal region. Upon each control loop