From 00f5de20825ce5d6a57f4a37c89cf18c953864dc Mon Sep 17 00:00:00 2001 From: retinfai Date: Fri, 25 Aug 2023 20:04:54 +1200 Subject: [PATCH 1/9] modify helperScripts --- helperScripts/1manual.sh | 2 ++ helperScripts/2train.sh | 2 ++ helperScripts/3test.sh | 2 ++ 3 files changed, 6 insertions(+) diff --git a/helperScripts/1manual.sh b/helperScripts/1manual.sh index 907feac5..62948fe9 100755 --- a/helperScripts/1manual.sh +++ b/helperScripts/1manual.sh @@ -18,4 +18,6 @@ export ROS_DOMAIN_ID=50 colcon build ros2 launch reinforcement_learning sanity_check.launch.py & +gz sim -g & + wait diff --git a/helperScripts/2train.sh b/helperScripts/2train.sh index 67655622..4567c0de 100755 --- a/helperScripts/2train.sh +++ b/helperScripts/2train.sh @@ -18,4 +18,6 @@ export ROS_DOMAIN_ID=100 colcon build ros2 launch reinforcement_learning train.launch.py & +gz sim -g & + wait diff --git a/helperScripts/3test.sh b/helperScripts/3test.sh index 52de2112..6ec86930 100755 --- a/helperScripts/3test.sh +++ b/helperScripts/3test.sh @@ -18,4 +18,6 @@ export ROS_DOMAIN_ID=150 colcon build ros2 launch reinforcement_learning test.launch.py & +gz sim -g & + wait From e22eb3659d0ad350fa93e8fbe5a6639549acff4b Mon Sep 17 00:00:00 2001 From: retinfai Date: Sat, 26 Aug 2023 10:41:49 +1200 Subject: [PATCH 2/9] feat: add track meshes --- src/environments/environments/waypoints.py | 15 ++++++++++++++- src/environments/meshes/austin_track.stl | Bin 132484 -> 127684 bytes src/environments/meshes/budapest_track.stl | Bin 130884 -> 112084 bytes src/environments/meshes/hockenheim_track.stl | Bin 120084 -> 107084 bytes src/environments/meshes/melbourne_track.stl | Bin 0 -> 110884 bytes src/environments/meshes/saopaolo_track.stl | Bin 0 -> 136684 bytes src/environments/meshes/shanghai_track.stl | Bin 0 -> 130484 bytes src/environments/worlds/austin_track.sdf | 4 ++-- .../config/sanity_check.yaml | 2 +- src/reinforcement_learning/config/test.yaml | 4 ++-- 10 files changed, 19 insertions(+), 6 deletions(-) create mode 100644 src/environments/meshes/melbourne_track.stl create mode 100644 src/environments/meshes/saopaolo_track.stl create mode 100644 src/environments/meshes/shanghai_track.stl diff --git a/src/environments/environments/waypoints.py b/src/environments/environments/waypoints.py index 10419ccf..c6a2f292 100644 --- a/src/environments/environments/waypoints.py +++ b/src/environments/environments/waypoints.py @@ -2,7 +2,7 @@ Waypoint = namedtuple('Waypoint', ['x', 'y', 'Y']) -# Waypoint(), + waypoints = { 'track_1': [ Waypoint(-14.11, 3.71, -1.81), @@ -50,6 +50,19 @@ Waypoint(-29.03, 23.69, -0.79), Waypoint(-20.17, 16.62, -0.75), Waypoint(-7.26, 5.93, -0.75), + ], + 'austin': [ + Waypoint(0, 0, -0.66), + Waypoint(8.76, -6.8, -0.66), + Waypoint(21.59, -16.75, -0.66), + Waypoint(32.13, -24.94, -0.66), + Waypoint(38.69, -28.53, -0.02), + Waypoint(39.99, -24.59, 1.91), + Waypoint(37.01, -13.32, 1.43), + Waypoint(45.58, -4, 0.54), + Waypoint(53.58, 2.01, 0.95), + Waypoint(), + ] } \ No newline at end of file diff --git a/src/environments/meshes/austin_track.stl b/src/environments/meshes/austin_track.stl index 133022df4cacdc4e1bbf157d9c0a6806c7ef89bf..7800fc52a917698d6d627599e8254104faa4720a 100644 GIT binary patch literal 127684 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 literal 132484 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 diff --git a/src/environments/meshes/budapest_track.stl b/src/environments/meshes/budapest_track.stl index f77613c8d1830d12c2ac18d0ec705504ed932b74..ff907b9ac891e5dbb561434f1b6614c0c493a445 100644 GIT binary patch literal 112084 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

-gh5q20PI5^X}8HG>^!`B}8P@LTw;@ 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 Xp(4?$G?P$~Xib|Hp{vzy?!^B9WXGC3 literal 130884 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 Y5>!a&{GT#{E}i*f2`VIXGLR?!AM-dSjQ{`u diff --git a/src/environments/meshes/hockenheim_track.stl b/src/environments/meshes/hockenheim_track.stl index efe220eb0ff57a618a72f718a7cb5c9077e2ec44..a42af334d1faa97e0c51cdcc6c9234daea614e9d 100644 GIT binary patch literal 107084 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 literal 120084 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 G^#1`oD!MrU diff --git a/src/environments/meshes/melbourne_track.stl b/src/environments/meshes/melbourne_track.stl new file mode 100644 index 0000000000000000000000000000000000000000..fcaf931ac00114d2c920d9475786e59e6e9ce21f GIT binary patch literal 110884 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 UtEWeadks(3yp-z+fBD1z14n3w%m4rY literal 0 HcmV?d00001 diff --git a/src/environments/meshes/saopaolo_track.stl b/src/environments/meshes/saopaolo_track.stl new file mode 100644 index 0000000000000000000000000000000000000000..e5f4d26025e1d33d9944fd5ada92211fa256c21a GIT binary patch literal 136684 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

q9-13S<{+={#%&N9nq=o*}YmW;<< zTo-$!>0ou8vjZ)}j@fU7vxR(yuE8m2$*A`3C$Xe${S<>8Xd#>o3&I10&(JkE1uYqE z=6@4=cHlFL!49q++lG?Ox}k;ax?XOQqwl8Q6gqqV@wL!>b?g8M+3ipe5tAHwlbmzo0&+W(Qh`2E~Vl7auC=9S1dtZkwEfmW&76k8$c| ze4 z+a{-=CF9!i(N1*kFvVa8T8Pm3IpK2k{MVw?Ai8aG3R*InjUDNH`uGcq!49+#7p}Y# z?s>a_cUe(`=(fozXvx@;Fx1)g>N|?T4z&CI;HB5Yx6AqO4X8nM_xnLgK}*K?8P7ON z3x1;*>_EHk&zCL>7yid~X#SXL(ODeApx4Z4XAEXA+ zZIe^bk}hAumkPBF1hP} zVe>>5?>eUj(QT7c(2{YfL|v!A+KP(74z&CE)tl$T7yiD>V^D+Ww#g}I$+-JkHRrLs zH5G#$X!pC+YT2x9`Ox9ccIblI{;$9q;?YV^D+Ww#g}I$v85qy0c_X4aHywT8JLK zN?UpEzveNhL3G>X6trXvSz6EeHg5&RU+`3tdJJk1-8MM|Eg9GMKk9ro zrKn=C1MQx_JFBX-`xpQB2Gk(BZE^})G7i-5;tbfW&UKEm1MQyU)$9?gMzLSKZM{>_7`~=7EORt&{)r7}OxTZE^})GWwpK=kY(FvWNs=hyG2ipCP{+kAtQS6|{&^0&(Eg2injdOAs#X|0J(BE>u)u+GP z>#h1$P4jb)p=)poS~3PbJ=&@A?kL4z2U>`QM?%&QtNq_D=^C7ZmW;c?gPiI)H!21@ z&_Y~qTgU3UBgs1sU4v85lF{gcu8#BP4aHyw+C7fs>el-^9FL)Ea0*&7R*!nzSuj7p zA>4oLK)bIQo~&ZM-zCvw=o*}YmW{V2Uf7&$+^vA=o*}YmW+1A zsyUNR*Hp*B4zv)xx0kU>8CyJtuE8m2$!Kak=;Y31DF!>xLQFeY(%QIelgH3CI0Y>k zi_d3rW|VtEG1!52&xf;%TKVtU;4yR!PC-k?gEO|qy7!KM&&dw7`&+Vh`K?}$edsZC z4NgHz#!vO^SeAs*>Nwbe7GiGaT-Mhs*Lw_IgHzCwQGR%d*hibjDF!>x?r)+OWwCy& z<}-8+PC-k?B6~*SH@)MZk+B2qo-;8%gVp`k2i|e$8k~Zbj6(em*K2n+&R_@HeU9q% zXZWpr{&DCUoPw5&dKWJzG_Ep1T~_QsyT7|T_FK5)V~MW8DQL-f zd-h#Mw>=#dgB@u1HAAJh!f(I4)w`^84NgHz#`&)c7^jXjR}6Nbg{YrvPWZPE{O1o{ zgHzCw(RRtb#@Ej^Qw(;Xg~+yZZ1}kbAA854Yj6r$GA_EWN`{wjs~GG+yVv=g-r)il zc6tn5gHzCwF|haT(1GJ!6oVaT_cNKi9mDtj>Hlt9*WeViWMq18Z|H^Q@z0Riffl0r zBcX7kzRBKk=o*}YmW<2=r-sJ1jep+G4zzo2ZS@-AmYaNruE8m2$$01fbfFVh$2H!ivLecnCIU=bPY~HOGfFd_c^-~nyBMo2U>`83s#tyXZiPYU4v85 zlCgHmBhJsyR8|ajpxxJS>E1BU?%UzrKXeUFK}$xVAswBG_hnWLcA$kQb6~ES?pw7eJJ9a+QRXA_-200?1~rIoo1B7{j59xvb?$FjQ!&_q7Gl+F2hA>J z{8=y5Ai8aG3R*JKZyM*ccvj68iLwLj&Y8&ki&^--nci_wgXp%&DQL;~qRlv`Qet^^ z9PB^~acJ)iv-)O#_6{|OZkwEfmW-A!+fIg^Efs?uX!kXB(Tw5FMJ9X4K@FnYCa0h! zBl(e0&dHyqDh4~y?v3F>_VDra<2(j6h;Eylf|iW(jfOd=$1he4cA$k=`%!^#|JlPm z1~rIoo1B7{j334icJfVJs~GG+yRR9_KNP;wrk}^42GQN$<4_7(GMcRF@0_ZzOEK7i z7Gm6#8sU!*bn_V0Ai8aG3R*I9WbNwQYH?FB*nt+}-D!=(le>5D7}OxTZE^})GCJmI z;X6trY~_H8w%YK8cB6YM|>@j=p%aE{NLdJJk1 z-8MM|Eg5g0yU$tBsEH#Vuh@YWV$`DN!lUho$Djt$ZIe^blF@%cR%cPO_KLv{v=ANJ zy&7IxsG-N82GMPkQ_zy}`FP=E>eodv*nt+J=~wTBhyRq|F{nXw+vF6qWX$h&GuACr zSH)ll+MQoAXk)lxtw%ftHHdDToPw5&8H+B*@(=2+80o>2^TpoJ(>`A~TEh$@#!?PC-k?roTQ&$Z~g_!49+#4<4>&JyqDhUFjN}f|iWWx)u%f`#nBqf*oif za%FqOnswG^=o*}YmW-*%FNNmMQoq%wzh#?93GtAqXKme6&b!Wa4NgHz#=8T*4ZS(N zx4eJQ-?B}lgfPd4tVX~4_j6r?Q_zx;<4P7I;|ld0MSsgSkrJX{nFiMSmHy+EuE8m2 z$q+{i85b5dRmZ^&v=Dz2m8k~Zbj3XaBXxv&JRt$Ea-QQp>Zelg5Uemii zbPY~HOGfvKm5lxGt8)$LZ`meNLe#nOxRqSGp2yHNI0Y>kXOj|)d|#DQ$H5M?5FaPC zxALuOiA40fP}n9{I|mFLMO9z)mQ6traYKhf0qcw8aHUI~P<8cA(ukmtT&sjt});x9b|5f|iU16k zrwg?=mr|D%JJ9ZD06(9$KFXEZW9S;3f|iUC8QsqkPd=g;>_EG7idOt$ zEjV_EGp?~eG(T3#iWcYWv@oPw5&=lbsp&3;JDtf9YUn@G9eM;#N97H$0VEOiY|K}*Jn ze5*n|9#yk<=x^C3QtodWVi_VYb@YFCr)zKuS~3#nuM2(GM7@uqzh#?9xic<8cSnwh zeBNcHYj6r$GVCg`(DQ2ssOy6rXd%{T${P7(qtDPaI0Y>kMxzfxXUoQqgB@rg-pQIR zlD}Yn?>KY~PC-k?#(8r?BOZ*u7G(!oh*ni{M2>9t8M+3ipe196s1lk|GX9#H9ccGG zXQSMala_xTvaZ1?Xvrwke@?>OC*to7*nxJ>Z=aSg^2B7Hp=)poS~5OuH?`id>v0A< z(C&Ev(+fmCdC_O+8k~ZbjGvMUCf+`%7*Tehg?On;;YhE(K7$%Ww@pq#OGef;I}__2 zj=y(i2ikosX?}lX;U)h%rv}m8M+QnkOGdGA_rxwX7%%T1QFfr+@96iGj?ACo-#@59 zboabIN}9^S5bDL-QVL(sSr8*k$>(vHHdDToPw5&rFqQQ;70M!GT4C@ zV)TQRBY#x!8Pp)UZE^})GRB@C5bJnrw7RU=fp+hM9jZm%9^gMFQiJHW$th^b81dFS zv7hP=RSb5Z-Pa{EYDV5^>p!+rgXp%&DQI!J8(Wb8l-k@S15$n~}UbJQg? zh;Eylf|d+p=wGqyo1aw2!49+#rPe$W>Aunb{W&#=ZkwEfmWqb`Y@So4AL3H;xCSN06trXv zYdprudv_njUk6Z4ODu5FL+UBeEvJ0m575!t!)l*iCD zI0Y>k_Z%MOT&fpU$H5M?5SJR1jcjRux5v;mI0Y>kkKY*O+#E4MG1!3?qU*-{Bd6c^ zAt`=Y=^C7ZmW+-kMmeKCov0Y>K)dfhP85#R-oHON&d@bD1uYpZM~rsPY#yl?>_7|g zM$>yE`CiSvJI>HGI0Y>kkK8rJ8QOP%Vz2}4zVk>#~n=PXFCsG1!3?V&3R`A|H0F?=f@@PC-jXp7A4` z?ltBp20PI1EQ=iZBiWv9?J;x>PC-k?>2kxJ&4*r740fR1=kr(cMoQiHw8zjjI0Y>k z4elA~JXU;`Vz2`(M7O_kN1h%#&SU5roPw5&j`xjn3ha1RG1!3?BHS@|q`;NQ9z)mQ z6trX%+c?7M^1*DyUG3xhOWUWXvxSuZ=jQR`4+`s2ipDa?!laqo}bV5 z7`g_hpe3VQkEfma3C9(K9cUp+-<2cM=BareL)YLGv}9CX)79CZ=?}$V2ipBSu};>= z;DK*?3|)g$(2^1Tu!Hl-V|N?!v4|aL_p_zuSt32VF7+6?2B)AUW68Rf&Wdm2^Ap*D zc7L1IE_0;wU&}p)uE8m2$>?3)bY2=0pIO5WwEH`jEg2)}A6e}&bPY~HOUAe!wVbCH zS5=o4JJ9ZTMd1vQ(KXh23|)g$(2`L;M@47O*1C$p4zxRyV{E#}?q@&r7`g_hpe19{ zk0qSwDpN7ofp$Mb{`HoX`KOH@L)YLGv}7Erb*~ftI(`m4JJ9ZVGDH5b{<^f)W9S;3 zf|iW4yR$mK7HhALgB@rgc7(55-$r5{L)YLGv}BY?xER}>r-x#&1MPn9Q}8!y*1bDD zhOWUWXvwH_dQYs%==eGG>_EG}cmDf~wJDtBF?0=1K}*J!T+3qZqeInkumdeb=VyMj zViR|J3|)g$(2{ZH?Gdq2&y7|LcA(waB6GjBk}K`;7`g_hpe5t4NgHzM#jC%5~h@k zGuVN4XD(meW}U3&Gjt73K}$wrs}iA{TjJL_JJ9aA6x}yi7fblJD_w(A(2~*rt!|-} zyT+*7E<4cfzDpa{T0_3~?;pAbr=TU{!zpt^8B4~0OU4eg5I^o*Zar1rzn|+GoPw5& z`Ik0@ru`iMEg3t|?!Ex)7hBnff9%~qbPY~HONR5%SD}5i`l!o_9cXtxb?1dvuB?v7 z&^0&(Eg2J*pAL1N^^{_;11-dpr{`Pq_HOqWx(279B_p}$-=R*^;=eIr2U>_1OTT2j z`|K8vp=)poS~6<5vz9V6enK4wJJ9a$4OYys?%Cx(*XkOaf|iUub|z!O&^Ut~X!kp> zO3zz)8*K27L)YLGv}Am3q%&^*(ODe_JJ3QL$TH0udfR_pqHAypS~5m1|0%R*fBZUU z2il#_F#TDpb;xJv8k~ZbjHRdF59PlWpR2|Wv=A*`n`*WBdA)a8=^C7ZmW-aOYJ_@T z9IGxXcA(wI#KbAqnjJnv*WeViWK4Rt_x2I){<89QJ3G+sO!99hS`wD<;=i?I2U>`By@yzt8~FD@U4v85l5uV5!%nkkLv?+y1MQweUweSnIooFM zICKq8K}*K$u9cmaXFj4B>_7`KbX8yL)dv3Km9D`lXvwJkc`avJ<@kFXcA$lrU8Ixs zcw_(hL)YLGv}CN@P|x}Nukz|R*nxKUQLNt78qmjo&7f;=3R*HMeqYad_duM%4zzo& zTG__d$TvUrt`A*|>tjkIE7!04J%+BqDQL-XDi(9{H-1!I zR_s6vk#1Ll^>&3XJ%+BqDQL-P_TiP-0}sV#-LnHNMDnzn)@u(Q^ccDZr=TUHNT*j~ zgEtOW$H5M?5G4jyw2F2A%46snoPw5&N-KX%yf`@ix}6)6h0Y}QRktg4pxyW9uip+g-1CKZyV5l{1uYr9+guFI&KCa+fE{S}WQrfI zg=;VV++*k(oPw5&A(`_S2d}nL$H5M?`?*i?GvUZD{^OOd!6|6TNVoi9V{V)Ha}+z! z?)lW89}iFIu+KXVU4v85l2OX4ZA|#6iaHK)Eg9dhZfDFKkxen!fp*WKU$r@$;k88XICKq8K}$x< zN$rfxTjLCNpxwvz9qYr>TW|9ix(279C8J2jPDbk)8P##H1MTkHH}3s#!9@RciLSvZ zXvvsaucz_HzF*bn)a*dJGwA9p50~BIzyHuRI0Y>kKP>5Ml>Y29#b5_oi01p3ga1_%&7I{>x#h+v=D7a zy&PWC1?PRYsJk`oud`5#ur zjeT{tC!hOt)xR)!Rh)|d_msEY_^R09Mwc90lb7_^sAa_e7N@da_%ONb>0K!sQF-L- zd@*Bf@{4Qt(UJdutK!D6ddrfxuRoHKp)OrM4o>ySHamG^DLJ>6t`D^;cD@)sF1hek zc}AOmEBSv{MU5lJ$|UF7FZb;u#y?iYsYdmWCpmfKCH7n!|IxX(uaxCYsI zxX59%`4zcSXj*Sq+~`*@TR8LeNJ_>(R>i48v#N#fZqX!VLtR$vMDI024?9@1YIJ~1#+yAgCZalgwqcwMy+(SCG zRdH%Vy}Z`u%5rCGYN%DQbMR1EtH{rCAMdnYgWULJO)aZTohMT={&87xD*KWqR-Me< zQa048*jd-Kvt{(^{vTGwjo}@7TWhoSNXhuesyMami(yue#es%e6+5$fPqlWA>G>a4 z#f>cqv#mK}`kBAbxPkrFQ(G0M zuzPxH4Nl>=YrzIP+`#VXsWmu--{1us>~I6Sr>EB76n;w>Y_P)(?4F)lgH!lTWU#>w zH?VtpY7I`|x1GTTJKVr8PJ<10xPkrFQ)_SvyQh1NJNH5Cd2XBdov>~Gqv1Xt%70OV z9d6(kz`<2l#hw*;CI{n`|9ATxPf0`r@RytBdQMEJ#y@; zZkzb6zHRbqQ?7~~Zs1q=!BugCQ}|7N@Up^A?C$R%?@V#9O@Kf!)(nYj6sCp$8l6U^jDj?&O^b zG{FWt+`vBNsWmu--CTkVcDR9k%BkT#0!0mOa0~I4+n^QxriW{85 z9%a-}40gDIoz1DC7~J3#_FAKcVz9#v>}*aA#oz{~uxA`K6oVaZU}y8x8l1vD<@^VsL{~*!7PZiop&yuunNP6oVU_!tRB^20Prqo{GT+JKVrd zkJM1d!45aD7dkc6ad3lE*s(I$V22ynM>E)9ha1@4GuU8<8`yJ{8tTZ|;RbeSPp!cz z?6)3lV3%~;#BR;Dsc*2u4eY}lWN?F1*wHoEV22ynhnX7cI_Czburn<+)TPS~H?R*g zH57vzoWc&f)KCm|xPg6tgAI1Lft{OEYj6ttFnbO6805dG!PgpJ|JV^c$Y6&XZThYb zFEizy-a!U8IE9_fgA8`Kk$KO`@PhgO#^460utR&0!45aDZ+x)94mUFW^j>()d$g+f zh3j6r+~8EsFWw9Pv633mcqM9JH*4F(uG6;pk8AJ_gB@=0ttaKXZN7i-;|kw5Q@*d| z*X{gj8FMFtmlZqQzz&J2H8|Dl&OVC420PfX&^DQ!@;KPx2KFKhGPuDhO!W*l*x?5D zB22BpDeNp5Y_Nm90d14nDUX~TZeRjxkiiZ&uuouW4NhU#ztkF>!tB>zgB@;Q*T2*n zoWcy-V1pfQV6two!45Yt?>E?BhZ~q~omzuam|Gldu)_^Zw@$6WDa>CEHrU|?rdy}h z;1uRa2OI2g1JkX84L(}FbTOYi*kFen*y%B~2B%U^WA`4W-TxOg*x?3tdJHnS!70p( z4>s802Bz3kBPv(L4mYqjBsJ7=aD!8r#!n5!V22yn8Lov9)DeO=ZY_P)(?3+RjwJLVFfgLNUp;pBWPGSF-V1pfQUHZyL(bYF}T4g>`_Jy#bAdU*xi#F ziop#|VXrl6C%u-hi@8AlCu9K0%SU|%|FsN-OV8`ya>wFalK zk7lsJ4tB!i{q=$kUKKa6$7N~_PGQH&V1pg(IjLEdx^#I}+`!I)K?XbA!2Xk|H8_PG z5`ztPxPg5egAI1LfgLMTYj6ttPkIgaa+3d|26mI|h>pT35vlOgc_&Rh+`y;^3;-!Q|nzu8JEeCl9NuLj6z5GXXip zvwu@wgY00&Z(3Ky4NUJ%?Xuz&X7L6uD|RqVH?6DU2Il0Zwkl3x>TPgU>|kzfT35vl zOr%Y1Rh)|73;yjlKkRS=6KVgQ5&v79!hG3agB?tW^^g4jTNO7j`!&em0jySH%rXSq(CHRh+`i)L?@hOg&BOstG`J!oE6*n+BG|1pp zaSC%lgAH~t$uq61;s$1P1{u66PGRC^u)z*yW~Oyj+`u%mFCL;zL z>|nNGT35vlOf3vDcvYOj48mZ89ZV5S>#Dec`G7$NuZmNc_Lo|NQ<%vTY_P)(O#4f% z!70p^2{zc_2B!U`*5DLo_ode06sGC~8|-icv-?tOa0=6bf(>@Kf!TejH8_Pye8C3h z=h-IaExBhd-@KfoW#J20Prqj5V(jjla){8tiZbliz|2cDRB0fI$W~ zIE4vzK?XbAzru)z+dK>5GU{Qp+P4a|26GI&*-!nCGfgB{FUO6#h)fk{e12Cs@!n2Qu_u!G4) zX)|+x}5VQ5G!jT6j8+nX>90xAl;JhVX6|TXQlb_PID%?tfv#E5e z!Ywg4F^gA)TYJjcU1?ht?oq+%V!Bn~UK^Zw#;d|3L(1uEXwH}KvtxGHwIfp?Zc1~)i`_l7|RJKVrKuONdPoWi@wV1pfQ;C*6n zRqSvB?+sIHa0>4egR5c&r|{k|$Y6&XcxM@8aD!8LHyLcO!wtMQ46ceDZs46|kiiX3 z;ayme!45a@&N8(Ir|`})*kA|mCWEu?4^gAIO6#Aki(<*4TP$@gl(20PrqXN##dIEBwLgAI1@xoBEf z#SMH88)Wcta0;LM1{>_)Gvu_ciW~UMI>_KvaSET22OI3*^Y*l^iW~TRKgi%!aSGoj z1RLz&yNR@}iW~SYB*@@ZaSGqP1RLz&dz`eciW~UeD9GSdaSGp41sm+(JFm2^iW~Tj zEy&_)yVSIqK11lMICmyfr(($Pz-Kx3NyW^p&0CN0~5ih zp%~oY6ee_0LowLl1}1`~*5DM*Xbm=S-m4He*Hs98gB@;QZdj1P4Nmd#soRx%Imv%f zhgXHkUny6Z@|MUe;RYs+(W;`7!3|Dfz85vrs@UNMrhui^;1te7riNM-GdP9$Uer*l zVuu?z?>V&wr*NLN*Kk)P|3w{kFkMUtW~aP9*x?4w_@-4wC4(EB!g=A;P^)5x8#u!} zwFaj!n=E+b>|i#T5X`=Fe6M0 z8<=cH4Yew6a0=7Rf(>@Kf!So#P^)5x8<-(R4Yew6a0=7Rf(>@KfyrjU20PrqY%*%7 z<6wsym_gB@;Q&PcGq4mU70gc|BT$PPC! z-GdtHIJm(n%ozzb*x?3djszR*a063AsG*L79d2Oe2sPAkaD!8rGZJjD!wpOgp@v!& zJKVs`5o)Maaf4HsAVCeqV22x+Ig(m~Q~NO1h-SJiXCoX&Pb5K4mU8RB((;oFlQv#V22x+Qj%JOQYH57v# zZeW54H57vzoWcwcYA6Of+`!BcYA6ObIE4u!Uc>$S@?X^92B$CsB*2Bwq*8QkC$CX)mi>~I4UM1l-%a0;_bf(>@Kfw?BZ20PrqWRl=< zu)__^>IgEp!70o#2{zc_2IiUsSH%uDFv}#^V22x+WfE+#!wt+e2{zc_1}2jP8|-ic zb4^lfa0+uqf(>@Kfw?BBH8_R2Ce(26>rn@DN`%1t5+VMz;XVLG9d@|Et5uJpcOFal z9X-D%$0TrCm13~N4NL|18h04n;1ni-2N~>e15?3+3~q1=lfZ)vcDR8V-$4d9IEC5a z!3I0rz$EbCs@UNMrh*3<+~5=@fd?7va064pgA8tP3RAj+40gDIIpV1`IE6Xl!3H~+ z1TF-#Q{LLy;Ra@I2N~>e19QYvYj6s4#DfiXFgsibW~Y4Z!wxqv@7H78xes!KQr4&zT8uiF{wxHhLJRS)4fROP4mU76oEZOTaEgyFp{h3VEQSD3QF*C6JT3&FRA zlnr*cf%)XY<6wsym{p!ygHxDK9&E6~4a_P}t-&cw8xJQdja=v-W2Cp{dHOObTV4py@erJF8;Bm0S4eUjj zT7y&A?=aY42YV`}byeKJzKuZ!9|xzfH)OEE4)&i+>#DecJuZU`UKOXXk7lsJ4)*Fy z>#Dec{Xl~ZUKOXX=V-9O4)!%o>#Decy;Fk>UKOXXKdaY>x?J~P)ZqrF;=dpKw=*-@ z;Rg1Z4X%nCoWfqV!Bw$?{c`ivJK;s*BQO>I@2!oI)3Rk4G;h10q!Zeai7)Kdjoy&YT?JJ{blt*hb& z_7G2PRh+^;<-t|4gT2txx+-p9zxC8s#VPFR9$XbW*f&0{tKtUsrcZ5EoEkE;j44*v z$Jy#p^>F1rUa?c`>gYym_9mzlKgOhdK4*s;H{L$EtLfO>iTPt8^h`?OWwZz zh-&K_ocdzM+T<74?n48sA}8yG50lHD-t`|=#f>gGwk9v>u@MY;aPGg9w<}KVtFt}% z+^4Jlp9ZJmm({=hMv)zEl$^XRIdSouT1NbDaq4p4&B@Dh&rjKi%Hv??M4^qz`v$(G zQq2Ch>m$zK#_=+1lgnm)E+vC5t9XM`*?TTeZq|8J%7$7MJChpCPwq0g&3{-GH-4Bq zIr-}LN+}utSQV#u=E$(-jna>HmVG-u=2nC|9mLGAduAi4S8Y0B9$H;8Ipu$s6HorV zVVm55mW|;HM>!AYoGckpcA$mm{z9Sfu6BzRFGYh^Vw;?TmW+A3M>59P)v=GX6tragP;Z#i zblGCXU$hq3Kq++lGEyVaAGg-s)C3*~M5ZyL81uYph zk5q8p{I#xPumkNLN9DV%O%KI91~rK89tWkMC1b#mg3kKF&Ev;$CzZ1C`Cr+r8!tE> zgBnD)O-?~eMu|KpW3z|$QVe#Wg*a0okM-GCJ3Iz81X8xiDQL-Pxq4}A&*`Cx!49+# zC!Wl2#X5cLF{nXw+vF6qWNaBQDAwc5XvJU$T8K5FLe`#3K7$%Ww@pq#OGbxS(OBZ8 zaf-nXwEJr5U~wz+^E_@%OA2{Sm86ML3G>X z6trYqZ~kJ!g6@hze=B8Uf0I(y?b$v<*WeViWRyxjBlJX%k@7eMJJ9a$qbirNratB~ zbPY~HOU9aJw?Zo`KdBh(Knv0Fr?S@Q&;9FM*WeViWJEVVWX!qVNHN%fcBhM7EN^YN z?B73h4NgHzM&Wt2jNbjLDh4~yLKMkR+4{MQe?QkXI0Y>k`*J53RbDHv804*AT@7%l0W9S;3f|iVT_Ad#Y$~H_f*nxI0tE$7TIlJES7`g_h zpe3Vq&9k70O*q_@eFv#b5_oh#xae zvKB1#8M+3ipe5sShobfV{44(0&JMKuSkiy0mGH99&^0&(Eg7#?-kSLOMRgoecA(w& zABCT@Uf$v}s6ll1{RgF>C1ce`En+KItLr1m4zv)Hhdyt8+Sk9%sX=tx&MLgV&o{yJuHhzYYD!yFREv zblc<1NPK)cgI zuWz-kuJvCtP=n~U$th^bICwjIY{%^Jiop)F5EDi@)_sp}_V0se5ZyL81uYq`KKWAO z_0I9v)a*dJuM=-1TS>`2gBnD)O-?~eMxV8->xD1HA9vY-7UG$|_gi%q`V3uzQ_zwz zJ9Z$U_lo%Q2RqP0tZjDCdcL&J&^0&(Eg2=+lnhl~rrzVw-*R^{qrW@wrEjc)BmL`K z*WeViWDHC{I5hB>daowffp&lMGvKIIH2X&HI@dKg1uYprf3YmIud8~`Nq@^Wk#au+ zeCUMrd13!PsB3TvT3sKvz6n)t_l&&l(%-U8q})lz$9}f*-|}DY&ek+I1uYq&<>`$B z539#^`dhY%ln^(!|7Nu*>^~;z8k~Zbj9PQ^8uL%IRL8*%v=I9qy=)yn=RdaV8k~Zb zjFTlFFxviNDF!>x?ws6B*R6xk`Oi_h2B)AU!|q_7`KvcqjF+v+#H+pey`DQI1Qy-gKX0umkPh-o6)+ z=z`Zh#z{?sQ_zx8W??(y=v?(#AN?)&wo8AvQ~L~&<~Qeh3|)g$(2`N>WH;lLx30?1 zMFl(1LR_4eDN-Re!(-?goPw5&gL8TtizDAE20PI1^SOOj_EHogeqi?gxgK^7`g_hpe3VV!4XEOALc3sJJ3RGJD)kSd))+&p=)poS~5l! z8D+e)`&q?c2U>{wbMB6mY%#)P=o*}YR@X<}kw(qDGZlj!XdzZt&l-8peA2%@G!0Hc zOU5Tnha258zNQ%LKns!nn{1KD&__LnuE8m2$(ZuY2&3SRIf}s!v=Bd($`Pr&s+Pyl zH8=$=8OsWcF&eb%uNdq=yZ7^(IU?z|mGKz52B)AUV!%J}ZkM8#kS+Wl;4Qo%@zMYEFRW17CfDQL;KabuLRsow;} zU2)$Ivx61uYrZbB{K< zULB_x>_7{#`DCrgua95$7`g_hpe5t)1*45tqlPO6JJ3RWU#xZ{U)8G~L)YLGv}AnL z)i&&CTg6}pT8PlN+L5AfUiTQf2B)AUV`te3#?-g3Cd%uR9ccGl=k>KC1B>7E7`g_h zpe3W+`H4oO0!}^2Uk=i5GN6f0WHkk!LD!HU5Sv=HrkR*6i{p2cJ68k~ZbjEza7Lo3^iRt$Ea-S<%^Dn_oq?=y4_PC-jX z=24N*yZ4S&40fP}I9k4ZB&lXr?>KY~PC-jX{YdptS20d8*nt+J{AZ;iRd4$YU4v85 zl5y*LfzY?r#w!Lp&_a|PP%QH4Q`x=a&^0&(EgARRPEN?Me}ZDL1MU9q@Sf0p3`+SD3!6|6Tm|7uMtk$^rbsY zhOWUWXvugv`K8$0StHc-!49}Q-GXSGkzTGKnoEm zkR>vzsL#+fI0Y>krE+P$CukuH*Vg#SFKYj6r$GGc`@Ik{Iq zp&0By3sLDl5pi1i&*!=Zr=TU{+0_M|NS)@2!49+#KXv=tdL-h%F3~kO1uYq~6N@;l zDm_7`~{>eYB;>G>fSGoqLpe5tSpNct4H#JracA$mmFz=dmX|exWRM+4Xv}9bI zQ^~2=qK;y)11-d7hb~)>9re%I)-^ZP2hOgZ_I1U4v85 zk}>z$$DA@viYNv<(C&MmR=--k>)i0(f9M*Vf|iUdd0IM?67wkrJJ3QL|NAFv-P(&D zL)YLGv}D}g-`bh6HHz_|qOk*WeViWPJTnb7xMif{MWowEKC9Imvo#Z9|WtYj6r$GMW^B%$fap z{65GIwEIi%%pat=7T8KscyIV)c+~+ZL4NgHz#*Qk93Dg0 z;1slEjQ@UDEW@<^iop)F5Ou0q*8cNZJ%+BqDQL;~c||n#$lg(k!49;0+g%j0_FcQ% zW9S;3f|iVzx8;o0i^ks@umdebwXrp=w-03Y7`g_hpe18}`2ECf1>^5=*nxI`H_^YU z^~)Hap=)poS~5h2UWwygi!<1P7UEp1Qr3ZQ@A8gA*WeViWbFQE>Grx;;tY16-S0UI z7qN0I@)^1Yr=TUHTI=2ky_6ZTg0@nh$vlU4v85l5uadtj6O5+N`{bwlAF+n4hgx(279 zCF94{_ZfADH&G0BpoQpMrcn6Il&T&>*WeViWW4!PRpYOs@#k}Ppxw`Xe*D$UUaYRi z&^0&(Eg9#}J!;(Bxu`l0cA$m$CAP|3+dJ$rbPY~HOGd0-XTzM7UNP8#cF%S0Jjr~y zLvxRzYj6r$GDTfU%^n^@*WeViWMqDPh;j9|m5RX*v=CplnBM4}Ed4!(uE8m2$#`Vg2;=0aIf}s! zv=II4c5kqB)fkVVYj6r$9mlpY#?iXn6@wjU_jUWiYdgCynB*Uaroky_$uPegYb+gK zOEK7i79!kc(yp~nPxBbM2B)AUwUZ7vTjU*wuE8m2$ymL3oDtetQXL07&_Zk)JUHp&lPf%iuE8m2 z$q=tkFqV!vq`v252iiTKde!qu=O0_|F?0=1K}*KwA0`?@^8c;AuVn{Xh)-9~OnSfD zW{;t3a0*&7F5Q@Dd@+3RcKO{MJJ3S3JvJjL-`CqbhOWUWXvui$@rlObujZ@ow%LJp zzgJr|Eopae$7ARkoPw5&oa4qCGi)O!kAod(_dREekx9u@;3j2xeR zs2J=(yT37cA)J(X-Y4F1=o*}YmW*xZI~wC#-sQ;SU$bsE+;$C?(4)-4H}K@^rgqp zH8=$=8Iv|;HNGp|UL6NJ(C&Tk*F0wS)(1U?uE8m2$rzJ(E@c1RLowKac0a!=I@vs1 z>1&UnYj6r$GS>dMC-m@`eu}{kwEJB9!CPkioQFJyuE8m2$@u#0d!dWthbRU+&_WCx zyxSak*k|Y(oPw5&Q;$9sTKeJ`#b5_oh~M*N4*&T5H{NmR8k~Zb45RhHgc~o#&!J}r zT8JgDlnvik{IJK+H8=$=8Lt+*khsfG=g>#lfp$OBzuqD|ajt(H)F8TTatc~9UduE( z_C~k(Z;{!7c0YUF(IedFZ~ywB2GMPkQ_zx8wdZ@WdGpnE9%TpGy$`-IF5LP%|F%mF zqT42?pe5sx4u@ld8>sW!qwGMt^F>?E2-olUm3MtmgXp%&DQL-&K}$x? zas`|x+O$v%cA$m0(spfl(iH!3ml{O3O-?~e#?7LIo%(&6Dh4~yLKG~#H7v&Y&mYtv zx@~d_S~3>?RlvElEk1LA9cUpQ8nrikV)Y*HvZ4mjZIe^bk})muF6Z{Dj_Nqrfp%Yu zjyV#JblUA-=V%b!HaP_?8BO{hh}~Kk|D6{*&_W!{`%Czl9!Va98br5EPC-k?3wvkB z=C6&K}*J=uIWNYF0139zm>Ale!|^W zt;s$^*WeViWYo$xDHPr|O5UynJJ9ZL^$%yY#((KEbPY~HOU9;{6Z+uE0gAy6w0o|a zozt2()4yHm8k~ZbjFGRTH!4<+|K^7sXm=*Z^xW36(*AdMx(279B_rX%hm7$fOm!UW zKnrnocRs886#qV`Yj6r$GG2c@ViajoTrt>z7UI2=1+61__j>n1U4v85lJUUAZpI^d zuBq4U>_EG>-4}{jt$TmwF?0=1K}*JtK0}OtomVObJJ3QTv@K?R+Sz}-t7~uyS~8|K zw2jA>wpR>xpxtvn67IL|ALYN^)ipQ;Eg7d8Of=^H__}(p#tyXmUD1vEtwv%0^_8x{ zDQL+k8+Jd>e}18Q@5~Ogdmh>J`>pTGed}Exx(279C1ZczvBs*C^+WQ0&JMJD+kK{( z^=_f>J%+BqDQL;)^TTlClg9HEgB@rglJ?$beYEqq$Ivx61uYrFp6O@&QfaSZumkOW zo>;E1Rp_e|9z)mQ6trYKU#zoH<)ip#mh3>ga}6%sV=d@;+GFS%oPw5&wj~-Hlb76Y z$m@e0Xd%`&%wuI}b=G6(8k~ZbjMop=FuK>Qt{Ch<3sLBF7Hiwxzj+K@gHzCwG4-8F z#+G{Vb8*;#cAr;%O>Z@C?Vn$wYj6r$GG5A3#dzwM+Uhviffge7f}g@!v-#)A=o*}Y zmW-^wR5MBztEm|5K)de^_Qt}^zx2;3(ls~*Eg8#?)-l@Otf(05K)b&y3NH_rDBz!e zrE72sS~A}J+cb7gD4`haK)dfhwoVV1c-}wfPS@ZRw7RT5|G&!41zgVYT*H4GO4xKe z#IA%?S{jN}NTNvAg#7a(4v9kuAtjBZjXKsQ86ty7>rj!a&PtunIcQpmL)IW!R7;AG z(mE8$mWWWa(K_z$`{ti{?s@sYy>_l%z23|7-0S)NSu?ZNntA7a4=P^iRe;DkoM=z0YNU8;S?`L`TZI`^5cgzKQ9I!SICGrT-~-iCRTuF<{}u(t(Rk2^myWyZ7!^uUr1d9b4oXMFd@{ea5^o6HCv%aYo3XqB==_ z(DS48y&J!oXA}{1srDIvI`NFsf|2Ki3@WPK?>@)AnLfO7^-?f7b4QXP~0m z_2LYBBYk&ieMdwwL6>Tu@$n&JOJgp0Gh|Rv?Pjsg{ye??ipG@YB7!c}KI6L|3@bf% zV7HpT4l1hM^X^mYmJc1>C%>(V2)b1JjI;jZ`=tSY?;A3xs7{jW_usPo^LxLSXA}{1 zsrDH+EZD5{+RE^{5586>`3L)js2{w?1rJ_{k5#bx={AB!~Xu zfb#A)^v$oMh@eZg&*-`9^KD&g^_d)0R42)8r%o;p`h4d+qllnOwa>V0-vwJn?mJ_~RAjQ`YX6Uq=x^mujD} z^uF)4y}Qd<;rl^Fb&_25&h_O#?A*vGBIr`>Gj7=Hyg_?Ss=uaBMYY>HeZ?K+o3lnn z5kZ$~pRxV+%NP83Z2dKTDyrQ)vLo&<@3CGZ0|e6DJTkac`;2|hy0g8{jQZ>CR8%L) za}ysg&pW<8VZMbxdL^Yxwa@5v@>;b^HXY@^A5|)<-DesmEGgeKwQ=7Cf%HmBmujE! zY`0#uBR&l8-Bqcmb~ApjdZB#&XN|`o2&B6izi_Gc8OL7GuhzHPKU@bD)vm{D&}-!p zs~XQGAdp^3=~C@8CR{MMHgn##A%lwQB$@Nbvhs=vjSLV-ucUOT_8Ak$rM3S3whkFo zRJ(bvy;hZ9JH7F|3j*nG-YZH7OPR8%L)s-XvDZ5uTi~iDN=lb%pRr>6()Q0M*54nbqT0O{ zKJ1w6p>rF5tARjzC8bNX&nPXM(|-KG`Yb&vs@?nN)*IBdvIpsxul4oOSR9~a;K!!^{S&o z1{KwA#>FWm&oo?w~da_G+ZpYWEq;k1FnLpm1z4Bh;wWT70F4aC` z;s!gGj=gPQxDG0+ljPxGY0OsM`^2D`-BWCs*_~(#xt|)Z|I&s zUlkE_srDINHr%JQ`-9&M8B|oedB``<$ws`?c#W)xpi8ySC{G?TuanpOp zlrBD@J`<3NYWJG{ZEt3;b{(2$6cKc(_8H6HA76U*&KJV#K2%h@xgU?N$gbUOzdWOe zpi8yS_|~&0m(HFwGh|Rv?cR@C=dG;IC;R6aMFd@{ea6|NCYAa=QlH&MMYZdVI^nJC zgclFUGl~ehRQrrkGtMqOa_9@;wLU7U-Os4GZ)N9gH7w64BIr`>Ggkd`O6kzwOb@-z zR8%L)ely?7?p)l+C?e=m?K2+u;H=WHi?(d@KR>9bPLi7sc`KX#&hY#?iU_(?`;1rC zoLZW;|BWGoifVUTty!6UUO6bwC?e=m?K8f<_PA2N1%C?}R8+g);eNI5WcyVQ&ab10pi8ySXnSV+(u~IjmHhXEifZ?_+PQCL z53GAgo>4^5rP^mqdtt-U(vuGj8B|oeS!m0aXWcJrWE2r}srDINr+m`(li!XG8B|oe z8K&DT%dXq_(EK`z2)b1JjFpvF+s-{?T*#oJ+V!^&|64XM8Iflc5p=2c8Bg4Kf7{`| zJTYWYQJo}zUiFvkfDI1IGl~ehRQrq`o88v7`L?Hq3@WPKYh;@|lZ{(&c%D&2(52dE ze5KEvwq-}xXKYbXog}v&wjdihYE+(4M9`($XZ(4qS#6US)HA54PLe0a&C7N?@u)nb zh@eZg&lrB>6>Zb+J1yK+R8%L)L(}GFmwfH$Jfn!9OSR9K`ogHTr`D;23@WPKT;6+T zWj&@hGKvVgRQrtAAOB>~YwMjIGN`Cdl7ZXblYMkwBcq6*OSR8<>bs8(T=KT-D{}v+ zsCNDBhu@y9?r3Bb5p=2c8MjQHzu@A3)~|z#>Lj^h_D$K>E^TBK5p=2c83&ZMX_QtdN_t?b*rPmlU-MMbrn#oBFZHfF(*`QxLA zpi8yS_|E0qv`@RSou2hIdbaxWBl3(Qf-coQqvs|=+lPEue+*Jlog}|ndqS3u zZDbS?bgA|kV{SR8{h&MQvlFPOPLeIIIVPL**vR}kiU_(?`;0E*uWKK0P5txdR8%L) zpEfuw`@!3d=k_9kF4aC`(D>i9Fa5_!;l4{nwRVWm&GbZj-d+oH{LIxGpZZ7BGqsn)@-q-?OM9`($ zXZ)_qz*_J29YY2c)oxzK_#x$=_ABMrQAE(C+GqUroPBEZwyXD~Qc>+*r@n5-ayEHT zo>4^5rP^n_aoLF4*l%qRu7iqdH@{@W7Uh@zvPYg#M9`($XFRsw=-P|#d>Z~9q@vpO z!)>;9dFHU)@{A&aF4aEc*(-lod-}(3g$ydH-MrUpA4+Fm(=X2`BIr`>GY+|CLT!h) zo(vgORJ-@+*Ib@HxwP@Va}hz8YM(LfcPG_Oeqe6MprYFCUE2J-bYR+ePq>JnOSR8f zf6LQqt9H32WKdDTuv3!>^YFBP_e#oGr+U=}9eTVc%(;Dvy z7ZG%+_8DWBO{|^y>yttT71c>{&!@Kx892Mq4_8FcrP^m4^wmkVuikS)$e^Oyy(heM z{YATO)p#wuh@eZg&zQAKrMAIuM}`b4s$Fl?gR2+yc>2@4FT9ALOSR8PXHKe(|K6C8 zK}EHDE&QdeI@)e(^w1X(bgA|kdwn>uw&8Inh72mI-RD1+^y^sC|E2soiU_(?`;33j zom5*gzdp-?ifT9OWz5iy_4aLij-`m8OSRAV!**xZ=5LXO>!6}KNyhXT(ec??jnDiP z5p=2c8Rd;8*Iu}|d&r=o+Rd#!?zoO!dOwukRz(C|s(r?}-KW&v8+3Q*<)orINw!~f zLdUdOv-6B1f-coQWBL12YQ3JnIlL}PMYZdp-~XhJ%eTBO&nP13QtdNNUNoh)>y>@{ z>$_Dds@)8T+VLIVn0IZS0RrijlrGgiwk?y-_@vN82{xy{r0_l~MF4aEczn?w5cHzsRf453Swfo%N$0O2L zj-HywhmM+*T_Psy*SqhWl4_ z|0_|^JTjgTgojEzF9}T=ixG5bZWxGgs=MdCo<2Ww8@JV_l4{x;uL(pr6|aMY=D5WO zx_C{^+bU%6>+*z}d1o`IkT~|j&C3f9`*pa!)(jGKX?CB@ph7|u1ua2^#F{ftF0VYX z=VSg>52te93;(ZLB0-lXBU*wA3C(M?1QimRB54UKBsAMHC+e5su7e5*ZB>pDbZJL2 zPF3}{RhKo-lpj3o#&9cY>$K~$wYP5bR8&Z4pR_#{3A%W~=65ihYRjWvDPR4B-(^@y zwVS+>^0ck@L@Fe-b=;nc1YO!8Zf~oeH!Lgfc8=fTSV_n3v$Fi~oH?Q9XzdH+S49dveLcBATb7^7`mav-VMs z{69`bVpiMc+3(-0)2+8IuY;~0U3SV=9Q|e2L50K{&u*2ibHSs!j^>q}w$3iR z{r@89D*b(j?04_uwrXZjA@S7E-r48Vzbu0UT}LecZZ>i8m)%xWNF2P=cG=YZOosa| zR!h8c-Ya>lH@_c&;G^^S?MG&xkF7sT@X_2P+|{=}!;#=~S0LQi_y1a-clpezNyqk4 zONE5?#^bppWRRds6Ps-Y6%yJTZ!<{HrODGag9-`ljgJv@X$!nP6*K74%x#-Ng@m@i z+YAzPX?D2Hph7}h;B5v8x-6uaE$}vj1YMftZZoKm&=&X@L6>&A+fy-vE={qw z8B|DUr+bW`OB>o_1YO#3X$dMMw4psl(4}3SmY_mH8`@(8UD|7E2`VJCp*=>>rG4u; zQT5M={yC9~Hl|lnX16}?QX!!ou=Z3`NN9U{jG#-q&@Dkl+srE|vsTY`!=(o+ACxUDkQY+$P!dYXa|!esF2WRC`(Wwp?z*SQU8{^ z?>Py&wBgDUR7hxlSd5@c+rTWLean?pJ15;_#O4lZOHd)9ZIUs9F71Z2gf=w0*QuKu zPb(=;+xomqg@ksF+6)qOX@jUG_;qv+nU|1(dIT< z5aHQ}3JL9DjuCWet8$E>OZ##yL4}02D#r-Av?JLP+HCATQPtdRTuF-wDkQX9*k+KR zi`UnB-{n0{yJb6jZzsXWV`~N71Uy3~bcGpLZzP7|9!f-ZH_*$gTq zw9_O;(4`F}_EgNEOMQekg9-_4D2WktY2OHls((aL(Z&!r`K{SC2_ifOsgTevkeqN| z-~X$YNYJGTs5XNN3GD)j5p-#it0kzA&@PY|L6D?AE^xsF2W% zXL~9tB(xDDM$o1G7BPY@O}DlL6%yKS5hLi*wu%@*m*#p~f(i+3tB4VFwQi`Wf4}|z zyS~2WwhQ-LadRt0C1rN&_nZm|%|N%OqC!HOBw_?zn&oZ@DkQW?B1X`qy%3h5qRkGK zl-aGf6%`WN*z` zmY_mHv#MhRU79?d6YeqY|5Z!Opi7^}vKdrJX!5kpAVHTtS7tM)kkI65n?ZsueLl`+ zP$8ko(>8+yUHY7#&7eX;lc#M43A*%oMVmo|geFhN2)Z;!+7g=n>|Q->ezLTZ786uR z=(C+Rg9Kf?zShT}=0#UheZIDm^0ci46%zX7tUVP8x_C{^jH-V`@l={N-Fm`6IJf^- zE%78I^tohvDk>y2c{)bWr8&|$Q4NQ3r(ykTsalZ_^qVOZoP6UBs9Gj z8DF>#x-^RyL^u@{P1Eh{sYqx}E;7DwD!MfF7DPA|70s>f?5Rj-B5j`GzP|rgE%DZ+ zOLN04L4|~-nOTAg3C&ou1QimR{FW2-%W&60g@oqOS%L})P06za6%v}=X9+4KG`%-Q z(4`rKmY_mHlMyXJg@oocT7n7*O$d$=bZPFSC8&_lG)zlSA)y(amY_mHQ;1^(U79Hz zBk0m}QcF-Fp_#%lf-X&2wFDIsnkgJ3=+cB>OHk2_U$@z#IaAgWR7hxgZ;YTzvv@5* zMbmUUdnyu|lWQ_+`s}=$_Jz3y`dqr7=#W2I`RCml6%y*piV<|FpUD#H-f=Uj+wV?i zk1uEb48;T$66&n786@aZCzmDEy^|#B5V8|Ccw6y0NT`R&W{{vueNvWCzfY2=L&(k+ z;i-5XB-F!XGf2?IYijwMv&OH>6RN++W>6uaUZb3-)~}^nBSDw?i);oJ66!Uw86@aZ zw~)=CLPFh1HiHCR>NSdG(53z&n?Z$yI)`iq3A)sgWC;2ab}(4~$fOHd)9{vu0IA))T17(tghk}N@m zg!+ptL4}0+fMNt)>PWH#6%y)BvIG?p>Mybc6%y)BiV<|FzsM3)NT{nPM$n~>Buh{s zq3$G0P$8j?Buh{sq5dLEP$8i{pcp}yI+83wg@ihXVgz0490K8fcdype_2RZ!Z#%Gj z(&&xCBw+qbY<(7`LPFg_$Z${C)fx%9_%pGY5l*FUk=8x;JZ+N*8C29KlO*cPv8N(I zmwJCdgj1;Tnj%`_}Co;YNc0e(*Zf z!(z9~7ZK{LX}uL%ubf|(CsaQRuERxDYg9<6wQn(y z_4i$MizJCUQtUi^KBD-wNT`1X8R79kf-YWP>tj&eBCVU)dD>Qjih5Y=u6SMt33b-A z-U_W5>Mv>CtIpH55>(W~VmH6%r>gqz2MKl7wB8D>8T`6Dq54_u_k#)vb*jV&y3_$< z2`VJi&teHGB-D2jBj{2Gj3ua$P&bSvsE|;1iY2I!P&Z7Bpi8|iF@i4jvsi)(3H7$b z2)fkIVhJiF)Y}px=u$t6C8&^4Z%d4zOZ_aCph7~ODlvjCb--AH3JLYISb_=(b*jV& zy3_$<2`VJi&teHGB-D2jBj{2Gj3ua$P&bSvsE|-UizTR#P!~yzpi3PvmY_mH-7uD* zLP8xdmY_mH{VbNCLPDJpF@i32z*vF`33bC*f(i+Bz*vF`33b3&f(i+B!&rg}33b3& zf(i+Bz*vF`33bC*f(i+Bz*vF`3H4}Lf(i+B!^8->)D2?^D(Zl-d#d?698X0;-7q$T z1YPQeu>=)$z;yOhB-9OKGk7Yx)N5i1DkRhm6C>zSH;g5yr~}6C^yc@2ry`+V6PrPW zgt}p31YPQeu>=)$z}UUvybhj0ud245im&79Q=e{!%7s0$ zL&iV(CGUArA)!yW+EY;>p--HG2)7mcVKjlLv%NSZH01~x?nbWG*o#9K`-@s{EA|d) zZd7OcmPlw$l|2>vmgv$XEfC?hqM|J^ojnx^ZE!(GxUG09y0rfVL^u@{?SJX)sYqzE z3o^cND!R1U1w=R%6?VGu`kLSKkfD7n?$x2@CXyr}-AYg)p^Y&(RmdPg7rXbG8R0s3 zD(!!1JzDkQYUAV$!o%>|aA zLPA>%Vgy~lbZK*eC8&_lyzm%7mo^tzf(i-EDvuF#Y1e@zsF2X!14~dLq0I%B zph7~E`C|lK+I3(FDkQY`z!FqQXxD)ysF2XE14~dLF{!x`!4gzRXxD)ysF3)$xe>t< zR7hxFK#ZVEyACWtg@pDVSb_=(?K-do6%yKYU$N zSb_=(?LDvr6%yKxU!ZNi$RQ_OIr*qK}DMjl7!i`$ch`J_z5Ame|5vS1A)yJ{HiHTY&EJj@ zbZIiTC3q^$B=79~iiBpM+YH{X=+eyf7(th2xm$t?2~C2J5p-!re2mbn`_A50Bs6E= zX7IM6OB*pPK}D1OJ9{b;+I3+wsF2WBffzxTwisA~iZ*Q|3A0|qHi+8&Z5%x=B!@^3)xs7ez4O%;f0{Rc?3#@CRvfw;4;+>y}M zP+89BX_WoLe3JLA~wFDIs+Tv>oDkQYgH%8EXcF_ z7K|vUpn%r^21HPjAnEM>fyg-X4 z=c^@cp0r45{JUdM=s*p@4mY4>WB0rs)(6}2NCy2~$3{wscaBv}8dP$D;+Y$qf|iWw zclNS=ZJk>&*nt+}j^b64`mIjU3{!(s(2_B+c~5K6vRf5{9cUqnuC9=@ZRIGS6WGew(__*?|^fQgdmWQ-f2`lF|6{-qxGRIn+4V zffk}c&jQx3{!(s(2{XvcrWY2_haK=2U>`hQ(jFS|JEqYFf}*@Eg3gP z_O$FSv2m~iEyVFbMZL`p=4yti!6|6T*#Buy>)y9wk1KYdgEy8fmN$3)qncrAa0*&7 zMqKM@d1GP>cA$m0d0#g#^7P}HVQO#+S~7mU+}YYNv4DD9u>&o{(xbz?5kEbp8KwrO zpe5s@?n%}Ut4k{eJJ3R$pEt@ovg&EgFf}*@Eg9`gH?p>WQ(H0Effiz6?g`%a%bw8; zQ-f2`l5z5`%GUCREfj+tXd%A%VU{=lr)M?8)Zi4fWF+6b$NGC%f?}`(EyUWz^S$Dg zmTHEn!6|6TXtyo5RV;Y?%GV-xpoQol7JEx;F4GKCgHzCw(Yey0NW)Dd6@wjUA%<3Z z#(VakIK$N76trZlNm?1{etv>tumdf`es8&#bL?_G4pW0u(2`MS#(j|-KRJrQ4zv)r z+_u*1dOFT9H8=$=8UOsbzIk$`WW`_yT8Q_)+~gIw`*}SMQ-f2`lCgT|k=^hA5@WCf z9Xtm=-|CId9cP#toPw5&T3hajzB*;58V5VjLfp3hU9ZbK@!QJO;1slEJSUv!krq=G zgB@rgcI|V$uZG7NrUs{=CF7I(Hb%ER|FB}P11&`K*HrJL#551(tK80#nK6DQL+U z>m<2@C&b>P*nt+}g*_*{oZrUZqf8A>K}*Jk)V}WTt#47|U?AH9iJpV0S*slh2|$vE6|s$1^qsfxi4ba0h(PVB844jAsSUV<&`?INHeHGbjRitv}F7=cbeNH z`vXzQUACZj?F1($*7+^)~)i*HpO5EI(S??^IvbbwLmkdL3GFF z6trZld}FXXXybXsU zr*-_h0X2y3*qnlvjO~qExKj#LRt$Eag?PXF*IwfLbM!c(t2VrlS>u9q8cm zRoVBvb$#LtQ-f2`k}>+pyjF`f-4ufzXdxEuh+ZE4FJ4|T*nt*e-`<_xjl%KQD^r70(30_Kw@%g+?=Hn) z2U>`&1-5%5cgJ6MO$|;#OGa|h_ST2Bizo&=&_X;ieXE!6+{7K77qPe>VOeWomE=S~4CxUdgIIqJ?6x108%$6q~(uT^H(cm>QgdmW&p| z?zVb<-%&Bxffi!T*8g~){T64K8k~ZbjA;jNM%ujJUoqH$7GiaQ4c;pi{oxmJ0{_r@8f2B)AUV{5M~dj=MtCC8D%4s>u0Y1Rs_&iXim z8blASE>Q|vGCs()CHm!i;}nA(Xd#MKSmu4zGtQs}(H)yp(2_B^RW7&R&R&Ya4zv(; zvpnl{JsN-PQiJG@%_(Tf=zXxJd!dMW-A!Q!T8M0SKjpn#DbAn<(H)yp(30`)tVFl} zrZQ?A>_7|g$)+c~$vfk(CDb6gV{-~xGS0l$-K}uqHpO5ET8KvnF7aMF7Jp5o2GJdx zQ_zyJeBc20fsNPIXKHq!gZGcAi@kZ1;tXmK-LW|ZEg2_z3~;aeF$O!(!Doqu^Sq5$ zhuu`S z6+6&EoVmT8_qa7sGpIpy$L18YWMr?{&po|9HV$^6gV)5Shg07w(n2$+L3GFF6trY4 z`=y`zRo^V?wqgfb2!GVE{hKG0)C_76-LW|ZEg4h4?d#Sndy8VQ106ii@2g_pzBsRD zP=n~f^PE!9l99i5KljqJvD=CrXd&|F{n<|XB!^~DgXoUUDQL+!adC*d@z@!4pR)rk z#D8DBGvSr&w`c}6i0;^&f|iU^rANDG{8YtY2U>{6rAj2sUXevJs6lkc<`lGK{8eg_ zJ81ngiop)F5Vs$wnsB+~b$y+a8bo(&PC-jXoqaRi2kPfk40fP}_-l5Zgu6bwq#4v8 zx?^(+S~5k>+|$>BW_Mh-d5~D2XjAGUb5>K`c5-U4NgHz#?`s)+&Nc^ zCkTbJ8z{wrk_gB@rgKKr|+-C@jOJq}ZYQ_zy})Qm*; zmeNoa3c)-;RQ-f2`l5u@~ z4R=hnri#H1bnyM7^7;MQv+dRlQ-f2`l96Q94|3E5m(o#Y^bEI_Y%Jc8&ahMvMf|iUwX1)?lC^%k?gB@rg)_GQH znHS&I3{!(s(29|(ZPdFQy9UV)bZ~yRXy??$)zcV;2B)AUqiw-Od$K(gyFSPcv=G-5 zr>2fSxf}b>)pThM~bJXvtXHxn$&@-)5-$gB@rg zs!d;+>V6cztxOG0K}*Jrne!rk(iFvD2U>^)Uu{XM!rapC6_Mr=TTcSCPY!S|WCho*n35ZdBV3QvY7LOOM0U;1slE4F1o} zNQsa8t8uUc9lTyO`#QDC&wDh()Zi4fWSsiAuyyJF_KLv{v=G+QCsQ9th`%P98k~Zb zjB17JT92J+pcw2x2XhC%JCmAy;XXYMQ-f2`lCimbXRFQXI~9W+=wM#oFPBnF-yMJd zFf}*@Eg8o;4z?!c|4V&lUPV~4>z~CKX(`7>N{FwV zqF#wfKWm1m!6|6TnACBkb;s_{6@wku4NgHz#_FuYtSbI@iop)F z5bFn5_Lj7}qQ_xsa0*&7?!U9AmHKsTt{OYgLhMed;}!0IQ!`8rPC-k?f$5et{+G(? zam5aF@E+Bvnb%@`e14*-!6|6T=zP4YwRTr?#b5_Im>cy(EAN4CZ<%bZ~B|Oh50zgE=+B)Zi4f zWK^y4YNT&MY<>wl(7{}sjl;ZWcIMIyQ-f2`l2JSQP^4*=X=)toKnHU&*ClZfbA}S~A)@(dfmO9#Z3A2U>`Mj|Jym&&SV~m>QgdmW%~ig*)WU*!wv<&_Yzo zyV5I>Fa8`fH8=$=86OTT;okOZ8#NAgpoKWnc8&M_n)vILslh2|$>>qOfxGYfx{ARL zv=E&?UhfUAIa_ z?;q?y2lEqiZ}BDwRu3C%DyI0Y>kzik=ej+=Qzy`QrKEkwI-_IlmzPc*~S;1slE z9KCg-oe{a*D3@y}PL2B)AUW5;v%yF=!mQVe#Wh4{PA0WZrt@$cuR z2B)AUBPmZGw{+PY>aoiXbil~|iI-evyS}ZA4N9RQ8TEf`?ap~E_WWQ6T8PnS4|~rI z*{m6+2B)AUqxktc?t29qs&TLbEyVN>zx6J>`Lbr18k~ZbjCT)|cE7Ecq!{c#3o-fH zf4#fsuGS1wgHzCwQRR-?-DPXKD+W8zLJY5P#vA<6^O|95a0*&74t;t$TD;Z$iop)F z5X~E1^oG`cPBTmmPC-jXzPa0@;|Gpa40fP{>rvZocNj}l3C%DyI0Y>kuXL;topW#OJOew>LOii4r{7&Xt{J8Vr=TU{sk`6Z z^Xs|T=Mr|HgKI1w<@Wc#utYOV4NgHz#xtvD?5=+$_W6n(Xd#;B&Ffc~9%q;uoPw5& z3AxuaFIYduU%93+|DXQx+sf476trZlTYFpNpQmG=McIKC;y}+r{$oSp_qnOT zDQL-fbV_2RWBKXoam5a_5dRz~<|memKXy$GPC-k?q2)^==WmHUcG-az;;rP;ezRlG z==z4$k{5 zDDQt>aJgof8k~ZbjP9>oi)=qXKrz^X7Gl(>ihi*sD>TE@;1slE9A0so)#PmKb(bAz zA(p>e*{^%=i<)6-a0*&7O3%w{&D_{cje{L%Arj_Q_mB5js~M&Sr=TUH^@t+Yd*|CJ z20PF~B$uh}UvoEThN;0RXvsLcs)m)VZtS`NJJ7+orPFo&ug=8Z&rJ4pp4!yl6trX% zY}CtYdPi=>U_7`qcy=?t0+i?Rb9%y0jtg}=J}5zR0)I0Y>kvnLI-avu6yG1!3?V%39P{lDJJ zqra<}8k~Zbj807kT76%>su=7*3(=}>PrpZU0nIQqI0Y>kxBooATJ*s+#b5_Ict6kG z$A4>HAkjXv*d4XGDfW5Nz}aJ{x%KYv-CVwz!Ua0*&7%DA1aKT>0BM%jTD zV%mlNew}qCG{e;36trZ#_hq7$Clb4s$_{ieA8zp=|Lr5CHN({46trZNy?n2A%g%D@ z`N0l!utu@xP=9`zeB2h8efez+=v>WXY*k4UEObt#!OGfj( z#jJ#?_bCQD&_bO3ZLBXItEm~L2B)AUqj#4wR&e=UG1!3))>NMx?~k}qTQf`zPC-jX z?ukXL3qQx+YuSMo;)6yL{qO#&qZy_Kr=TSx`&nVVS2=bbjveUWJLgN2{Hy!xYKE!7 zDQL;KQ7al*yCrr$ksW9uHg%os-+6mI%`i1M1uYp@vki}o7#2HE%?@-hpZcxIe%rEf zhN;0RXvuiAUhU>D?~8r^Uw`i5&v1|0~KnLq_ewgeJ zC=+Lx8k~ZbjLF}99&MHsyI#uiNMAv=Bcp zn&KbZ8Gl@v8k~YwkFZSyZ`LnCz$~j&$|69TSx!CIMvcP19gnWXo{F*P^^Eg9P@jEh9RovIk@ zKnL@8kMv8t_}&7|Ff}*@Eg5~XKNN}F78?gU(7}1pbqf7+OKnMF}G+3ATu=TcPm>QgdmW(d* zhD0X)C&pk0T8KVfUr8KM;9boyH8=$=8P)4`irl^-c3ZInEyVXtHYINAv_~^c4NgHz zMw{I;BlWVy9#`x@2cH@Gzn)m^>3y1EYH$i#GIp(>6zQ`d#$X3ph#b4$Osse+RWnQt zPC-jX%?Im6KD{wrJwMoi4(3zO+m^VYny(qA2B)AUV_4tEnim}rTPwp3v=Bd)eJ9bc z{DEee8k~ZbjL(am-_xQ|Y^@AC(7|`kCw3*i@u;U6)F67WrkYaFl5x7<`ly#QUfxzI z>_7`~d3`i7scZZ`rv}j-n^Vw|aeVFhXzw=%D+W8z!TQ>KdlR#^b@e!?LG)mKEv29( zxLM)lRFY)#Z@#i@;i0;^&f|iUW_%%X*2+Yrdix)F8TJa|&8APM+@RPFj*%je{NN z;5*J|Ug9f%tkDc=5IvaRPAO=~IJ~)sTW(4o#b5_oh_=xW5=$0Xsu|QEx?^(+S~3EPaStdL@`106iiHyup8_vOblgBnB+)=f|fS~5C(+TL9pDXbXmKnLfq+JBUI)SIIj z)F67Wu8305lHn}t>^^d%fMT!%9b7l)d^mAR`6`-04Wc_Xr=TUn|FE-r?5!As9q8b7 z_k&zXtJY@o%_(TfSX;w#BQ2_^aj*j|MC&R=ldf!eKr^U8bjRitv}8msR&$r{Zl)OQKnpRV zQt_n!{xe!Ls6lkc<`lGK{MEIfyS;&0!<)hmv=DQiESVI&GC?z_L3GFF6trX1}O$R&_YyvyF$|Yt>N^g; z*93EM(*E7taBOZs%SMxn)7(jw`$y&L1ioPf=d6Y}e%q_Db5{6wbHlN@0WBNta!+)3 zzOh0wQrLkO;_yAe_rY56b7a(@BXMj_K}$yaaTDA{BUdQ~JJ7**oQ~7{Ya8O{`lvy4 z$L18YWb_ZZ=I`~{tXsZ9hu1fm5Gc|}Fd@i9Bv}9bIKi=JOcAa9d11-dr zxs&`{#mi_0HHhxmoPw5&?|vKazWMkX#b5_In16NGIKRNYe40TGqB}OHpe3X6KjYn2 z)nW{Gpo4Q6rSA7nk35_l&hCRh=+6vksq~HZ zT?hDEJHD?O)F8TJa|&8AK700FcSm)#Cr1i9&_aBdzpsDmiuk$-Y6zqpn^Vw|QM`Lg zx5OtE)$1-h(7|4MRXX~2RgKRnq6X0&n^Vw|acA=KC~h?B`qDOW#)1 zAi8673R*J$oM5{J%av2(UC*umc_JBiyls|9r}7&7cO+9h+0olCkTP``uU9{-mDg>_7{VCs%R*Q0c{*K@Fli zHm9H^V^aC??(FifCkQ+rNybL?HN80=VWO z(?8`+jWJ9OPC-k?^dTeNox@}6ir9e`V#D1f{kf0y*9=pGQ_zyJbWm?MZ^PJ{YIdN5 z{TXJI_8)w8iDsA@oPw5&J49>u&5uf1@^)YcT8M9}-Q#b4YL#Y~8k~Zbj1o>A*IN*q zTgwi#5M_>)^?Sbfs%DrPoPw5&B`@Z8J1vP_k75T}h}5g){nv-Qtr?~Ur=TUH;`1k? zRoe|yw-r0k!QAu475(oU?$!)bgHzCwQK#jT(c9KcQVe#WgYOAnR`$Q?w@))n4NgHz z#?ek9I`-O3#b5_In3I~fs=s^L`>T#GFoPw5&#ZwkWrhPYA-B#>C3-R&ab^Y3x zcW8#G!6|6T_~q*M$kx`exz6lB2Vdf*Ht?GcdR;S24NgHzM#{%mBl~I$RO4U=I@nij za3eqa!B;fH)Zi4fWK7;r)asliHlKkVXdzDA-`H=mezj(p8k~ZbjAjR#So!kRRO4U= zT8KaEHTADmeM&P-4NgHzM)wLmtS$++DF!>x!FT7Mn)<7DJ)#+=2B)AUBl(q))|p0! z)O!>=(7}11@0$4sr;gDKQ-f2`l5wW=H0y=`j8Y7Cpo4SB4>tGr}mt)Wmw4VQO#+S~5Rx`io zmK4n}H8=$=8GG&>YhAu;hhne;EkvC&P5o~=l+g@RgHzCwv7+DzYeT-T6@wk<;5yD5 zP5hTTW^W~LPjiD)(2~(_;!vySU%x5_JJ3ShJG!yIv2J-g#xONF1uYp>caE@jb~>UM z>_7{##cky0**se_Obt#!OUCv_ldU@|EmjP6po8C57~06cT6mLYm>QgdmW&BUlC9Ry z-YLI-(BE=wq=YEZzmY#_+g{BuH8=$=8LJn}ur`;j6p;*epo96;GaC6j=YFjjrUs{= zC1XkQMC--qGR0sAT8JGlH}VfY_p@f08k~ZbjLqK;vo5zht{Ch<3z5A>V}Ekp90_u) z<_4#rC1b~T-K=G`^Q!j`cA$m$?eWI`QgdmW(Y6UyGDE8rvg<9q8ct$K5Uc!CSj)hN;0RXvxS^t6Sumhhy{l z*nt*e=Vz__d{6e(3{!(s(2^1T?~3MK?AT{&cA$gviB%H()CUJ>hN;0RXvvsb{kuJN zCeKojU3Q>@-^9z&+P^rcw`Q0coPw5&IjQTSzb%gKg~SeYupTE*TmOvHK{HGZPC-k? zPnXX|zZpJ6je{NN;Iru8ZT;jI6E(xs;1slEY+qBtUAZH+{+u1?V6U(m?frMMSJezt zgHzCwv9eMN_jLKnY8>o92kX^RJNW%d=hX~TgHzCwQR~Yt?!~(K6@wjUA?!Ch`bWB* z*RQ*#2B)AUol+x$nObt#!OGdd|Gu*Pz*HsL5 zpo43W4Z8ZrZgkrpdyg_TI0Y>k^B+rgA1E?WeQsw5I(RL4xU1i^&uPstH8=$=8GF2B zcW14t@^eWFJJ7*8uO40f!~Ke<#>PPnq6a$yQ3_fzb_Kux@#)<;qLRT5bnuz_S{Hxf zV@aAp4Wc_Xr=TUH#P(_K=9dR620PHfyl|(B|JA*tG=myMcWh2UOUBRNKkTM#*q|8f zKnpRiZ)bn`%qKL18bo(&PC-k?1ApA_b}Ah^r_T;_@Ef2Bo%~AwjekF<2GO11a|=?? zlF_4AFSoCL;{h~?9$f#R6trY?tY5*s zxviCAumc^;b$+Lf|HFevHG>*NcWh2UOGaweJZ{S?Jrsi-=wNN1pWuIg=y%Pa2GJdx zQ_zwz_QtX3hGD}MgB@rg%5`bwpE`Y2GpIpy$L18YWZY42eKgu(ykf8e9n2BF67g4M z&+5fqOQ=C~$L18YWbAt2!RW=hY94Y5JJ3S3__nD(`p@_rFKQ6ou{i}T89BFiHkn%cU9AAi867 z3R*I*l&ju+bZTt=E<4b{Ysvj}{J*}=sTrmQr=TTc?<;pi&Q6&rZ!7v+!K)Ab-Aj>L z{@yk5+sf476trY4s4y_{=hv~h=j=cWQL14zziO^q^f*inPC-jXlOp{ir7y)8>_7*5 zaxBR0f4ubr{roUBI0Y>kMe-#@-Y+p--B#>C2j?t%o%h;beN8h=4NgHz#-dU^A`N@S z=0>pt9lVx2|EV{-c>LU}slh2|$+)noM`Ulu7=shf2pKya6ZeUfCZp07)gB@;QzE_yR4NhV8VVJ=VH?Sr$++c?r zm?4%~gHu@B8E&w{4a^YBtidU)Q4KfP;Ra@iW!B&n*4l;}>~I4sfWr-TxPf)a;RZY0 zz-sAmgB@;Q-dbi2PGQw|xWNuLuogYsV22x6As=qA!wsz44>#E126ht&H`w6@=HF%3 z;1qU62shZ_2Ik*o*5K4Wnpv0r^@<&y>Bel;NPG2RhZ~sbmf2Bp3VTk38|-icGu<+4 za0+{8gd6N|13P+z8|-ic`;3Ge>~I6SpM)Fia07d?gd6N|12gtAYj6sC%Y+;3a05Hu zgd6N|1N-oV8|-icy90$A>~I5n7KIz^a05Fjg&XW}1N%FL8|-icvl}yOa0>fWg&XW} z1G{I18|-icdwS_cO6-ZAVzI*w>@*f;u)__^xePP7!71#R7G|)+4a~U=Gq}Mi?EDsH zu)__^xePP7!71!u7iO@-4a~XBtidVFpv99<;1uRVX4c>ozP*GS z>~I6~Av0@m3bPx-4R$a;F<5nx_FXO9V22y{rWbCo!wt+;%&fsF%sdP?*umUE$7Xi= z_j7i*fmwlJ1~)i`Iey^=JD8>SZ;y%__^uviu)__^*vqWJDa^kMH`u`pI>%;q+N~SB zlBQVfa07GW!VGS33Nzip4a`sDb27m%T&2yq3pd!oS)5>9a@tv(%o?2HqfHxm@D`F{ zVMZIDBXev%+Vl-}aE^@6eua;U8#v>Y{#Hn1sQZKeE*~Mz`-K_oa09dHsG%6#;1teZ zh8yf~17}sKp>ADvxPke1)KEvo4Nl?gFf|l|9d2O$9W@k#8=S&fZfYn7JKVthJ8CEf zH#mi}_0&)dcDRB0chpb}Zg2`$9l{NExPfaS;RZY0z!e&5sBy5v4b1VQh8hPqIE5=s z;RZY0!1XU`sH0+s8<-VH4Ruu9;1sUog&XW}16LPyBl!FBzZ8odZeSi^n86KB;VNmE z!45YtkB}JZsJOu?Tu`e|Zs1ya_^8<724)_H8QkC$<^+Tr z>~I4!6~afw4mU7YG0flwr!eCp++c?rmI;RfdZ=!SZ%%SSsmIE7g@ z;RZY0z}%m31G6z58#A_oJwVcCn1&nda07F(GHY-OGpoW4%-?iu%(-)HKH9WT0O~o& z4mU8HF3jKtr!Y4z+~B{^_Y{l2JM%YI>`5OUIXm3Il_uRtV{n60*jqo`V22yn z@ju*Pha31Eg77%l;Rdc|g&Ex76n;-3++c?r_yxG|QE`J)_&v991J}|V8^84D*vw1+ zC}D>i_zk}>gBzT}FY<*O{CD{X@q35i20PqHzt4nx*@-`Pxxp#?Zlh+THQ3<>eoZob zRP1mAd-sJI+~5>`6*Jsmha32<&hSyO!wu~A7iMsSQ~1r%FoPX#to-4n#PZjcB?^&Q zgHr`NFG@@(D1WOl+~B{9T?8GQ+vy*>>~I771BMyg;MB|azn8dbSep!viXCoXf50$< z8=S&!f8ho@*sm{`75J}?iW}I8FU;V-#VPEo7jCeFo$>zdQE>x%-h~-_RGh*NcDj-F ztYrs#(EZz^;s$n?%j~E)g}vg!N5u|yd;7OX#SQG^mf2Bp>bV9N63dJ!m+-&OD0aAk zecZwfZg2{_vV|M$U|%)I=D(EwS<4PLuwz=7!3|Df|Fdv|9qeHCZ;y%_*qbcO;G^PH z-YWT$ewpV6vvW=F-TqN^(;ZCg1igORht4eSCIW^jX3*wZUKa(1vQmt*r^Nk zgB@->RjO!0{mrLT+uY#P-n{t}T95lNgT|zS*%GrJxmz7o<5DFOX0OPiG#_nx20Pri z{Xo@(%O$U8z~Ba_{+eAU;jYgvWzd-M(US@5%2!uMQun?p_U()FD$Pfm{;1gDM*h4% z+ex3u-_8u*AKc*7e_y;a;g#(27jMIjmQ!9$9skxS|2B&yTX^h}iF2&-%%SU+T_Ilpq*1!xH>~Q1wprYR926NLl6oVU_>b+*N zx4X)W3>xfkqtL>6-o~r5(>H`12RqzI*PWz=AY8=q`?!kfHvL3)N72Rq!jd0#g#^7P~B8)_Wf;8eD|pYmR=v@nAPJKU(7 zCHSS-qoIa6Dt5TB^yn~e#7|FUz~Ba_id9(Vebw`k^bN&eha2bTjq;AHdOCeWjhq{t zYBFnuS7&`j40gD&F!u!S`(@9hXQ-p%2B*IGVU{=lr)SeQ)KPJRQ{{85@{aG#=&0D? z#@fa6z2cRYre~<5;s&QWh{fL0n#(e1ursvMGv2fR#8Uj1(!VmW!;LJ5U-BN@mC-oZ z;l_S%xtDY7^7KcgZYyqZ>XzHqdR&-K0<9!v3GGBdal{WaD5=y*o= zIsYwAtuC;^d!=GVBWH&jHRl}kcJ#=I!3|D5+xQc&|DlW?yX2=@?T0n za(1|Jtk+Sm#-h-3P~GR;;MAI}|M5QiEu&XBcDV7vo)ccqZ$qy>iop#|9W3#^*MEHI zHBmL#ss8wn-o&dVQWyxx67?;q-@xWTEBdro-` z?^}}oS^GZ?PCfSFYu@>@8NI8q!;SvuPkB$5UYr4g8=PuX<&; z3%xt5aj?UUe4qa4of?|a^Mf0ls{YJ>z1>zuBj*OEwiej#jodvigK@CKjgebVc+F1# zUky%mt$NJc(>nBtOpTlwoZ7c{r+1@pMh$kj@qYKOy~OwDWH1hHaO&;FyS-oSj2i54 z8tic6xd9(~hyF~-;QrtSr{+F=z^n92Mh$ifjq<%8e~YE~FR9n7 zl;A-X{Fh?!w;%p?$KRIHH~3rJqgiSvv^#W8eWT-Ved%8l+2IC%$4%eh@2^EyUb5>K z`c5(U8*=&vJKPvt-nCzx5j!_vZg7gv2c&QCcYVI(T~e|aZ%b%C!_ zrEjpq4Zg;fzQI@Atfx<=K9C@PjnuLE3SIgJJKVr;x`)3Bv%`(N-3P3G}4ZW8=R`PZL4Q@ zJBvoz$l2k>(j{fQuiC_(!Ra3*+~CwLxwm+ei(brt!45YfH#d68_g_OJZ5-@yWBuUD z-ja4#&`28xH#pV#&#qeq%qjx#`%rIyk~Y&L&W||vADsh z89T;!kJQTzMp}cN70J`Q`H#g?{Fl<-=j?Ff(UK|Nif1!oaD!8eTQBh1w#lf$Yj}Be zE`A{~{3^;0H}HF)nKd|tUwRBT*x?3#4>Yp|r|^rF;RZY0!0&-(*5DL=c{AK#ha31k z&``t0yR#6OIl^nhG`{+hWjFaNB!wq~U3OCr{20qn=Da=UMNc$WV?CF&DX(`-bhyN}<6NQh88=S&tl>cF*eL@O$c~AQkCImhc z{SSj0oWduZa07Gsf?vL9bkQ4H`?=sfoOhE5H~6v34b0xltidVF-U~OdGK_yCAiO6> z>~Smqe~QcFzzVnUFCv&4Sa%oxod#}T)mHkQ{rPCqzh1F}^=kZk0hx^)E9%0(h`>jM z^+W0Rh3BJ9e^l&XomY70dS-9~E78LH>2m`soYL=H&PSX6sMx{ks_@?G%-{yrd4+d; z4;m@4R*K6-8(23*_h8UUaoOPpR##CYII#2$PGO~$ZloO*GdP9S zRbd7@+`vk!FoPSM!dj^?gB@;QZB}LtPGO~0_^6n{DXgvvGuYteSA`ku za04r?!VGS33ahKa40gDIl~!Q}H#mirPhkc-+`!tb%o?1++N^Mc9jvYj?-4Jb7{UJq z|E0KmRNTN?sW5{bZeVRzW(`hZrIl`^sDlcQiW!{3TB$ID9d2N4R+zyJPGO~0W(-bY zbyb+b4mYsUD$L*pr?9#z%wUHbSZNhzaD!7=D-~|A!wsy>%B;aDthCCk!6~ej3OCr{ z2G(X}*5DLYT4mPY6xM%)8|-icYqK(Ia0+X)!VPw?x+=V%e(c#K|9^_hN5u`SX$dp9 z!6~eW2{-ufVg;87?KaIv#ebI@SmzaHFdb{K{_V)Qf%QLO29KOmSS1v0u)__kH_EKR zDXicMH`u`nuJG?0@U6>7#SN_B3NzT@23AyM*5DM@V^JeTJ`&l%ny>J0DDXJ=sJMak zU&IKCDK0lSg_UU3P)CK`57Pf~5`PXhf2PLH3*p~(;&Jfb!j2Bm~R_&uurn zb<3Yp-=otv*x?3tqoMme7*2}I4NhUlo6H)V!VWv(20Prq&OMnmIE9^p!VPw~fgOl4 zYj6rX9)%n1a05FjW!B&nc5c#*l-Oe{#bt*Z*c~d|V22ynfhyc!ha1=zD?AQ%xPjfX z!VGS33cGcM8|-icJA#E9>~I6Sj)fcSa05G=g&XW}1G}e%8|-icJG6xx>~I77#_5KB z0ZMV%;Rbe>3p2REDePt!Zm`1*?3fpBu)_`P$`@|1!wu~G7jCe_4eUp#8)>%{JKVso zg<%FaIE8%`!whz~f!!A~Yj6s?J%$_XVCP67n62Io(q2p0;Rbf93^TaFDeR@G8)*!7 zxPcuv!whb43Ojs;8SHQayNHGx>~I4+m4+Maa09!ch8yf~1ADZF8|-icJGtsc+GCd+ zoWjnrVFo+g!0xo+20Prq4!Ge4JKVs&yy0=M!wu}-8)k5WQ`lcP%wUHb*o8RE;0C9# zPjZ;S4mYrya+tvlPT^{An86M=aCJGe2B&a!Io#mCi~XsC-@HFI&7W7lc5uZ#++c?r z*c&_CV22yne_J=wUQ2l7eC)Vt9cHk@4P5gMGq}MiT(u4}*x?4Qd50O?;1sS}hZ*c} z1J}I63~q1=SHr^${-n>>)%aUR`fn3_{fw^(^A)=E4ZhaM*90+#DLf8#xPkdh;c;+- zQ<#wyX0XEz%zz3rxWOsRXUeR>Da>ICH`w6@<}+p1;1uRCg&XW}1M`_OYj6s4n8FQq zxPkdhnKd|tSx?~xJKVq=Cf!JTEn$Znn9meuaD!8r!xUz)!wt+F3NyIDDa?8bGuYt< zW~I6Kp27`wxPe(u;c>9T4a|+AMsS~`pZkHCvj28Q3O6uIml(nORZ6<~KAghd zGSpB<#SYI9;<+v9U*UN64$r^AeksIIN5u{|us=&?jdZCx*;5}mF6Sg?*1(=D!EYiR zyfd*_&ZJ;Rhj1gELw^@Dr88@A3Ok{M8|-icGqA%AcDRAL+?h2vg;n3-20NHNE(EjF z-{d~II#y$95!@pbF9mX71_ZnudhmVT?7N;;fKHOkuZ`ulSA^0z) z9|t?!z*_V$gBzT}T7b+NoWiPtaDyFgVC_L>4NhULL%6{X*0>A7?DV%4JKVsk3(ZJT zcX{yY!wpVhZASR0*x?3Nd1Th$6jsQG8|+|}x)97(BTpL#JKVt9_b`JUZeWGHZlp1| z!6~ek&y2w-tdI{k*x?3N%ZHDO8=S&=_b`JUZeV?VW(`hZwS4%fn87KmUJo% zXV%~p*4Kv{>|lj_@Y~I6?-NOuaxPkTcnKd|t)$-w^Vg{$MLO#r3hZ|Te zA7*faQ&=G%X0XEztbGqNxWOr`sSh{U;RaU7hmVRKZeS&Qn86KBVNHFw!45aDzCPSw zhZ|TSA07ug+`vlqFoPSM!kYSUgB@;QeLXdT*Toc<9d2NSe0Ut}a0Bbosi7F$;1t%> zha2p01MBO<4R*MJHTB^JJKVqud1?rGTd~6ptV^ec8aX#Og*Elz20Prq`ucE#9d2Mv zeYn96H?TsU8fxV1a04sZsi8*B4NhTAeYn96H?Y1w++c?rSRqdhH4b*Tfz|TVP~+eR zr?93z++c?rSRqdhbyVzd1FPk!p^l0hoWh!VYA6Of+`tO?aDyFgVC{Qm4NhTAeYn96 zH?TrJ++c?rSo@w?gHu>jA8xS24Xlt4H`w6@R?BDB;1pKKha2p01FPjTYj6r{>cb6o zxPcY&;RZY0!20^k8l1v<_i%$9ZeV?VW(`hZjk|6H&nEd_ii?%-!Tg)Fwev#!Pa{?c z8tiZbtMJ1NZg7gnm;PH3_7@cbySEC#=Qz@TgJg#r*k3k$TXBO^>CV-pTd#(lBZJw0 zGxjGQANRUC*TYAf{;1gD26hgmqe_wY2RAr{ol3*EE_SCB0=rWR!AF~R>na92+`#^s zbX4k5!VOMgzs_)j|1KXP_O=W+*x?5Dpv=3ORDeA@zZe4b;+w{LZDsEtR>&%Xd zQ`k*Ad{pdUXYPM{RNTN$;F%p2r?B&Q_^8;yF6RICsJOxJq7yp&aI;Hv?QF-A_sROA zi)}y0fc;VjYq;+%xnzOT_;-Rt(1F)b>!CBuhee)cH*XXbJhFn zpo`lR&-9+7H2$3%@<`a>2DEGxyLUqL`&Xx`aj*j|#2+7QOUzbpw!V&IYH$i#GQJtL zAbM-|DT=`kv=ArXcr&rq(V3cIYH$i#jlApB=-$4uaj*j&TnovyC2{DYiJCFo(BKrb zWHc%|BsyiwG&K%(poJ*ci#IvKl;nX7=s;XA%5-peB!lP9pm?h zp}{F=$tb?QM>Joj*khL+Xd%wzeE@bYYH$i#GQQ|HCc5`>?EYW}T8M5-5);oA zI&8~FtGU4`Xvw&L!LaDAhhn!CJJ3R$*!^Kbg@yC)jWJ9OPC-k?{uVu=*!V9k%#0ya6%l*zS=ujFQ)PD=7wW)16nrje7KnV z?eO~)gB@rgX7yX+b^A;14=3*rQ-f2`l9A`ZhVHs$brgdg=-@i%<#k>SwQHSZm>Qgd zmWjf>Bjp}+l3{9a3R*HIZSCw%K3YIA*nt+Jz=4fkzC^iq zn`D?8oPw5&g_GO5r#BT>40fP}c=*vR-n?nanqg{i3R*JmoY&C(VMgr!UzB`ZI;T=CcT{BD#PC-jX$)(xcXRh~A40fP} zsQLCgUdM)UhN;0RXvr8SK8iN^_(8>B2U>_*f7#QQm>QgdmW<{(7e(7|oU9n^ zKnu|~`+MHE8>VT7slh2|$w)0!E_&zI8H&LUv=9|qrFx%qj5ACPPC-k?&)19WdG%1T zVz2`poIBZnz$?@w&M-AN1uYp_7|gOqP@0o~-fL5>tay(30^) zyK+|1F1BK@11&`Mh2MMUr_a*Q4^x9v(30_5o~Bm*12q(b9cUrGnS0uM`Wd+!rhIKT zH8=$=854$fwCWZts2J=(2P+)QpYhsNkH1Hm8k~Yw_s5n#)>nnID+W8zLcH1FtT!`9 z{QbO_ zK5wiT>_7`~_ngaK-;Wn*hN;0RXvyeUE7_{~+uG*x7}N|+11-drvX{Ip&7RZ@Q-f2`lF{PS1gpW4m5RX*v=H@D z|MK1{BzG8><1jTi1uYqG)fjGd{q-BgU2+3ud0wcrAvmX!6|6T=<{bEYyE$+ zxw6j=bnvxLfri9XRqzca#wjd4pW0u(2}vb zQw!^XE0q+39q3>c_PL+DPbbN}?j^(2;1slE)LB{EdSpN&#b5_oh!-k;=gmAOcl?(O zQ-f2`lJQNh($*iJCMgCx(811MQ@{24E_+@xObt#!OU6&H=eB-3)Kf9offnM~(_eUn zF0RlFQ-f2`l9A_!laWSEhA9R+&_Y!C_G7Qs)|HxJYH$i#GKy|~D^mZRv5LVCv=F04 zdEU!IU(gIwgHzCw@&4dhkr)1+q8RKz3sI`#9xr+=&M-AN1uYr(4K5t%T4APQumdf` zXm`7J$GtD=ahMvMf|iUW*IG5-wmn%f*ntkt`@Ha~cV%##VQO#+S~5lyduq>peH9~x z9cUqn4qEMfUn9<-2GN7xBBK8+kjb%inyF3~CVFu{i}T8HaxA>AwDCZpB~+T8KV9a(jo5$=`gD3~CVF zu{i}T8S|g&>8`!&R>fckT8KIezT5xq9S>**HHhxmoPw5&t4n*ig{I|F40fP}xIAJ* z!fkIi(hO=4-LW|ZEg9c#>*)?V9=omBffiz8q;TTC(d9rIv}!49+#x9s^K@kXKXnn4YsJ2t1FCF6(hdb*>Q$L@1> zpo3k3Q%)wX-Bd+0s6lkc<`lGK9B=2!J-l>`zOF_MqB}OHpe5sG ztDf%fkH?

_7`KduHjROFw7#Vvj3o5Z$pk1uYqg-FmwDC&n1;KnJ@(?WmTN<3eZ6 zpa#($n^Vw|v1(RNw{)EtgB|GLJLgMvk}iBSSu?0X^x&6UDFrPVEuZhyxGhZ{PLG<9- z9i^ZpV{(^%?y`Pa)i~IJ7NXFF21#QN%iqYA_7+SOHVaQ`uh8)HG>*N zcWh2UOUB@v$!?>!AKxV(SL{Fwap>npNtfPOsu|QEx?^(+S~Bh$Fx^c$(=s9-GweVI z*Cw_%N*W&g!lTTX8=Qicj9=zI>`vXiQ8Czo4zAsGX_R#R>I%&;H8=$=8B0$LcH3V+ zrx@%&3-Qt?4U-!D{DNkf8k~ZbjE{?VaGyF-$db1MJJ3S3Y}7DmV#+GbFf}*@Eg2Jo ztFOuWdM!K9LVUlhK~nRBFKLFU!6|6T=x{E-d%bHHH4b*5g;?9Xe$t*zYc#{u;1slE z{QmcrXz8Wn6oVb;VE@E7>n7DYxK=Yv4NgHz#j9ek!fT_>sCt?M+y z)Zi4fWDF?$RObt#!OUB24j*SdF8Jj1=4s>vh<+GYe z?VH6JrUs{=C1Y={k0PT#j9uGi2U>`Q{c9xs_V;RiTbUZ1f|iWP>`Rehg9fSFiXCVn zUf)qY>7`b2hN;0RXvxSqEQgi<``(Jd4zv(c$5u-^za{=0G&MK{Eg6gV=dq?ZvFn`d zKnpSKa^<87Q&#HR%GBT#v}6=5o7_7`qcWLRQQ5B!m3{!(s(30`v)~k_u4F)O(JJ7-V%7$V|FT5E4%wTG83R*Jk zpKi6f=IN;z>_7*@9FyH6m-AT91pQ9P3 z2B)AUV_}=xR)N(d2ZG==^rEd3~65E5x+wU!-2VQaV+>&*R_C4aepNv}{zrr+;*fp3BJ& zv=H-a&-e1YxJ>cP4NgI;quSIXdaz?`9PB^`-=j``=>6LGux2zdG<<8F!rR9{r|w zjKL0ca6P)$S?{*j&ufOM!6|6Tcz8fUv|`=ZTpV_wgXj6d?0%na+4SSe)Zi4fWZdKS zjn>H>8wWekLd@u1$$#_pdo;t;;1slE+*^E9v_a+AoK$w8gZ-(eSMy(ezJg|$8k~Zb zjDokejlO+3HV$^6g}C0frl0+ICCxB3I0Y>k+j3sp^F{ty>a~O&=wLqFopt;J&8ldI zslh2|$?)!)ziaZ%*yk&Dpo4R-k2UZIb&NAi4NgHTM)ykNvGgB|GLT;JNJewQrq z+sZREI0Y>kzYgdbDVP|$KiGj5;>AWS{Wt5B)wh+Y!6|6T=>5mK$g%mcd1UNB2jdu? z;GcZ7gl3o;oPw5&KMx#^Wc_-Cy3g5x7Q)Tj#$SHCpk|mFoPw5&hCg4AyxKnYxr7~P zA-3JP&;PDsKFu&SI0Y>k{p~xfs+GE_aj*j|MB7#!{BF12su`vRr=TU{ed``;OSVMC zU_7+C2hVl)yKVnkGfWLmK}$xDZ#!F6UWmP)vjZ(ei7P$)tY<#b3{!(s(30`+ zg#p$pFI-dS0N8;RV&|4#{u67qX@;r6DQL;)RQe%n=AU~NgB|GLylBln{?NSf_j6N& zQ_zyp(4S;AZuW#?umdf`tC#xtV|UKh<1jTi1uYr>yfxiwb-0OQumc^;joQ=KAKRsc zW|$hBf|iW@iOE)<$}5`7&r$3^3(+t~KY!%xY?@(ea0*&7Zu66^k?&U7BN^;K2Ww>x z_Vp*fQbVoBGB-E{Eg2P0&ak>JFBO#xcA$gz+OmE9qFdh5YfMZHPC-k?_2W~m_i~R@ z40fP{>uS&R@uyW9tJlhy8k~ZbjHK=3t(T9iRSb5ZgU^XQdi#fSp4ALfgHzCwVJ{qE zU9J43Vz2`p{0iT#z5LPn%O%L$)7;<`v}9~t)Xyq)Gm9(x>_7|AepL^@`uet-VQO#+ zS~3RD>0q_HFE&?=9q8cvRpIV_^Pfj)hN;0RXvt`M!LsbZmDM=dfewCGCfe1%uR&~` zpSi&)Xvx@Iva0p+@Q7lt107tWZ_?SH*XCJ04pW0u(2{ZcKet*d{^_9@>_7{#>%|U! zt&i7ehN;0RXvx^}t`|A;`zXa=2Ris(JL5jTWuMKOVQO#+S~6}e)Hm{A0Y@>|ffge9 za+2SC-kX|XYH$i#GCJRUvw8jOvH4f*KnK6nR6o)G!hK6KObt#!OU4JAtL_=;#pYkJ z10DR%&+V=J*ZaiBK@FliHm9H^W6_n`(HDx&khfI|JJ3QL{=@QL=^xtWAm@rfezM;KGV#9-PxdTD{2tku{i}T8E5PJ(X(Hu$5jeD(7`$V(~bSn z53kY;Y7pJAIRz~lgJ)K{7HzK> z>_7|A;`e&K_wYPD4r&nHu{i}T8H;Aub8jrHuNdq=2lIE=)%BY{6klIU4Wc_Xr=TU{ zp2Xkl=)s%`NACZj?F1($;e&RaTj&%tr+Y; z2cJcc*7QsNbXvckQ-kQiHF`=xOUBSP$?hh9x%_;U!VYvWuWx@%-}~i#&7cO+gL!?F zf|iW0<|Vs@Z#wF8B0JDRtof;?zvE!CW|$hBf|iV?<)*ot#*K;uk*~&cZK6dF<#b5_I_#Wlf@@HKdsTrmQr=TTc?E@p-J-t6y40fP{ z@3k9i`>WbK{=OWmxxp!D$=H!H)OFtfRWaCs7Gk?!$1i!N^Zppa)Zi4fWE849%jG1!3?!kJUgf9Lj}HN({46trY4JUPX! zeK}b%*ntkNv3yj|KXNjAYV5W$H8=$=8TCJ#>0VxvT`|~!4(69!t>;g=wYX-O8k~Zb zj0@+I-K~$jF4z2|umc^eAN;GHzcR75W>ACZj?F1($$0qH>2B`DO{0>*4s>u1z^~`8 zs1^UtNe!YqHm9H^qwVwK-SRWmDF!>x!Tgd}>iK^rChBoegXqEh5=uc!MwOF;+!x!Tk2!b^Q%ndTRzXh#t&urxdhgWce|lTjlnyiop(aux{dky8iYF z{WXIcM0adXK}*K6cYcWGZS#O)umdeb_owRk({tRf8Pp)UV{-~xGPaACqrc7>uNdq= z2W$0b*Yd~I7^@l7Ai8673R*H6=Up5f+HA67umc@jcRpUjch^tW3~CVFu{i}T8TGvT zqw^L{Qw(;XgY)g3tNY`+%+L&K5IvadOetu|NSJtZ&%!0M6oVb;;5YB9RP(2{ouwJn zAi8673R*Iz_-{0SAW!Uj6g$vDc#W(2cU_NG|}RQCt{EyqSmh#h;X z_x#i``?`)!zJm>QgdmW)v=T3HWu ztDqR{KnLqT_E+?;z1CSXObt#!OUB=k9@gekY92EEtzg9n{oPx#RPaY7SI`VogHzCw z@n)rAR{pBr$@dSz4s`IHvtv2`$^RVJpG!;)PC-k?meS*`o-JQd40fP}7+j{TpO8FI zGfWLmK}$yD9>;2OQGNfQzvb9S1=l$T-s2Bx+HtQOtGU4`XvwJGA=%3J-cogbmmTQf zw#svlKlR2EJH{|II0Y>kSL!5N3s0_5-#^%a4(7dfzQ;e4^&ibJH8=$=8AU&zW?fu8 zFd~nU9cUp6H!SNv(K3<{8;7aEDQL;q)p3%wY}nI^!47ord3Q}&|I0<)G{e;36trYi z89v5pviM!aUIoPw5&?sIKxWBziA!49+#HI`a_;Xy4EV~;CSgHzCw(JSR%>s&&4#b5_oh;yHI z_mA1nX@;r6DQL;K(XpkK^>A$75>0bx$qsaI zez)}f{^_neG{e;36trYiDA?Y5v0?0S#SV0EFN_}UXRF|9hN;0RXvyeOae&oh%nkJ% zWCvP^+y6V#&$i3g3{!(s(30`z(b3k;w)+%=9q3>U@7_`Vg=3#-hN;0RXvsL3ZG!dW zmDP&D4zv(u3(fW?R;;GiV3``6f|iWFZ6;Wid%dI>>_7*vC2eN=h5A+33{!(s(2_Ct z{8TGv>KMgf2U>_RlVkg%gHZZFZbg<6s9mn4kE4iofp5dYWNsa0*&79v;}sDsV`xgQUOZ*hmG} zyf>uy^&YRU8KwrOpe3Wx2kos=tqZ&I{$K|>*srf)ieD?*Kr>7YPC-k?gp^j+!SS)r z)a*b9bI*^@^1D70U(ac3a0*&7Zmg(fW$D&fje{NNU>EaqGyGg5o9J%{C5(YX@;r6 zDQL-PaCvZK{2S`~IsGliMoNf$C#U#xH^&*K2B)AUqigZy&9+^LeRpODIygsm+ho7S z_Bg}T;1slEoJ*}2ee3FUd0VBh10Af}t~k-JJRr`X2GN6c+mwQqj8PL_jrMKyuwt+S z9jtvFJ>EaKH-4W}gXqE9S4u%kMyrmOqNT>fuHCT%9nAe$J=RZX6o2eegXoUUDQL+! z@Jc~qhxMlx(OU zyXVj#dT>pcQqYny>_ka-$)47V!47nAjphGUcHVJQlvf)bjo2Gv#DFD6!4e5Z6i}4a zu)dqvH3ktx4aQ#3m{?XZt0=ZuVnIwSSismLvBk){QF&*r5o?q$HcSK?HUt$l-}5{> zyZ1GRopE{p@OR`s*WBlsZL>Rb&TMdG?W^}2?};GbUM@0AvG;V zuxxZ_ZKqj{&nOUZcRi!XQtUlOkL^?4W%RJ%K}B&C{o}DQwJVn1BH33U;9f2=OR@L( z`RfC!4{kCrcu-O7dg2BjSUY)KI`5{9!aArZcD?%N?N>YFl|G3F2)MgmePk*29{u|MwEFSY z>jw`iirsGu{}^7|Y}5}D4-jy7+hSHT_8#xOx=%IUdez{etTfSmjeTm5?7Lp#0Rryj zBC`~GkG20ay86OqQShLm*!6}#vsbO>alH}`5RtN6Z#c3Pdyn^5KCt@aPK*4pPlbwN zcYVn!yVo|H(IfEy0rzr|S&F^KmuDVWeP(j~{5ciH?(=-$cD3_vn3H@r00DRR>5MGJ z-s8FB52zl0#MfaRR1~}46CWK=o44Tc!~+D}-MkEBDfS)@P8eCeX}@ma@t~qOihi); zk83?TA5J_#z`a~#mSXR*!@Ijx*X|XL;VM)VN70Z?``6a!@lfIc0`BD^vlM%ee?B&( z`pnn;!aArZj-ppr=~sJp!u^Q{2)LJv%u?(67@TpTKj-Ss~2Zd%)~G%fJ} z0e5%353&?{kK!t;Rfq4kPgn;P#qPL$-3@EYt#eD_0RrysC>&Xey+?H12c0kfb4>7{ zqS*b0y#DuVD=(Uocz}Sr`$ZU8ioM4n$KKXi*rtA5LPc>D{pZQvwaIgCNIXEmyX$J>527gyr?LSq8V4M zS$p`y>kzi_46aZ?)}AmHwf!jYxedkm;e-F|rA`Y|;X#Zh$N+RN8A8PwQU zSp>5bdyh9eb{M+Hufs7lwpA`F%l))8Xqnp6( z;*mu#OR@Jj`NBy4e*#xr`dyjw2JiIXNofm=!6~%5A(x}Jd zSHAjBvW_f*S&F^KCBqLb?0szgcQ`7F-FN4+9*!^R)0lsiMKDXT_t;|an8KE~*B=im zie1m>?CJ5~rM^nmkwq{|vG-VR?0$t8)(5bdykv`H>hy>*FO#(R1`aQx4A4eOwy zIEs$EXi7X}_DYFI7QrmV-sAic-3o`DQ@>_{ielHdUA#6vtM{sjM;5^>#optct6v*B z&ioM7FBX=Hp`=|BZ3@VDF=qJma6W{z^ z!y}7emSXSml{`-F;;)J1ri+`5MVOvIu4=_8y;pIDY!8C)JNdsVH{$ zn;3t5{LD9vb%20-xyUTV-s9PqHtf9bul3`0DvG1%yeWsoe;MEK00H-Mky(np$G~&X z>l}Gy{aQ6DirtK@M~25=oYHt+fq=W4v4t$f-lMZn?cDX`aGY47qS*C$EwxL$#x9N5 z2MD;Ai_B8&Jq{Z>w=?SdEC1ZBP*EI3|NZ-p@fzzkUgsd-UM@0Aaqt+~tvby8*5Ey; zD2}4ZZw!t%e{|*Kd3BfwxV!ng$WrV*wm7GEb^h>Of(I4F?%ek3o5icnTOsiP0rzr| zS&F^KNxKcKuJz!6;6X)k6m5M$@A$~VvWW)>xR;B}QtUm>{>!e_QuTYmgNouPy8q_x z@yqiYpS2+1UM@0AvG>@v=l<2-{bT9iK}E5fWifTdc$KB2WE~*jUM@0AvG*9i)uGi1 zUxs6!3Khk!AE(dK@gp4zlj9N)aCiMU$WrV*KG^$+>fN{3=iE_I?D{{JTF~|U=noSQ z5O8<>AIMVdJ)Xbxi0T8EJR5$8qoUaLQ~dGeuJ0{+E%5*Wch_lwEXCeq(Tj&wPwewb z@SvjD&C|blX4l7e%}P8#z`a~#mSXR5N&myEKb!Ke;6X)k6dmy9V_ipH_)_8l0`BD^ zvlM%eiQSK>&fNCl;6X*P`#fLik*>E!J(qZZfP1;fEXCgAk@es8lUf(I4FQMCEo zhq_)l;F-h&1l-F-W-0a_=U%aI^}to@b2+IfcGsR?|3KIHzdoIKfPlNZ_8eJ?y~lC4 zZC9PYT>UpoDvI4Ki<9o_s;txS00DP5e-~Mby~q5I)~|MdE8Ih&LPfFbmFaVL*EcIQ zzN>+Nd%4Ig#olA}5equ+IjVkskcwj0n{n2kyFUN-6Un{;0e3h16IqJA$A}jn?0jWJ zIEJfGQS82Ru5)$Qj46%Z!a=~@UAc@b#optJGmh-sd&~ND;Zzj6&yQZ?y9V}qELjH# zxVz5}WGVI@qjvb=^l3?7Diy_UX8+a4c3rzl!vh4|-OPSuDfS+Z%~*cuv-gbi@9o%D znz-X{zwFv_r-nxs!7RnzDui-4Ua5>S&F^KX&d$^Trh60unsDUqiF6$yLP=ex$(TpBABJv zdz|}Zzru)xLxKkt#qNGAJ$CFme}3cjkwq{|vG-V^$F_w#p6wqzs3>;V$xIpCwbB}m z*LfDfEXCfVW1C`O>m$Q?PHd}ORF>;kdvleppPkTnZ_gr_rPzD)zpkTj>Y4T5$fziG z$L(*QHe<^9jnCRFf?0~a$Ee$f6`t!J`iihEcchQ)t~2}YM}K!s<9DAdf?0~aNB3Xs zTvbRY+AZ%S?^F$X^ytz3UVIS&MDC&M<7Z`oYJ;_S$e>;*mu#OR@LZZOrk78z{Y)` zpNirrn)IF1W*qTy^828~J$8N8|LrgQ!?#F(S}) z!sk}}Ix5kg!%8WShF|mF4dGro4We8O9u1;dZBkX(PoXMLG-_|sPHFx-h)SAp9+n7x zsH(odxPO}4b=zwGdp41HutM&udPQ!3X^w2UsQJ6@{P4sv!`8cSg6r**hhIgdK!t=R z>n23gg9Nj5H+xG^A@SNnPwv$BoU`5Z3rkQTvCoAa9Ut|4!S&r)f(nWEyIV_ubibXxebOsEO8` zjclvpbC-l>Rp$}R;`7+QUp4+J1#XuWYOc5Sph7~Ej`Ij+X+F6nsF1MlK3WF}W@*m4 z^`JsR6Xx>>W@%o$C0M(rH1oa7609Uew0KYSt9PFWP)KNE^I{$#n5Fs4mY|{u%E@O5 z-*=M-BwZB=%|^B!TnDo>>DUrfG^@DXsz_)GvGrh8%+gF@OHk2N;C8Dbp?Sa7gHsk+1#jHYe{;nmcXwq%FRgusPTkFB9n5BudmY|}Uvh7wyLepZc z2diS1X1`j3il(==TNMe-WwjoxidmYnnny58eXy3GLPAqk^9W|CpVtypNNCDx9>Fa2 zC0l|D2~AneBbcTBYD-Wdp((3*1hdp9ZV4(RG-Wl9V3ua4f~fe6KF=(on#p1bDkL;oAuyxmxSigS%L})P06za6%v|rm`5;6)BY?$g@k4hT7n7*O-8f?zZGe| zPrKjlNN948_29QVW@!$OC8%hUPP2wXD*CKJ$;@#rDkQ!=qtWNNB=}^&r8lX#?lQ1QinMoV5fM66)u*1QimRu#!hGOMS_fph803(w3k?LNi(N2xe(A zi6y9z&`g#*f?1ldk`T>zYIJ@7d7J`k6@N27Jvv^A?XU6@6=%(+?Hlpw7U)x+|y|f?nTXKX!j8$p~(w& z<$TPU#aBVPDt;QMo4j1)=Sq_Zk02EiFKza0y!kz+wD?q`LPDM8b{!;`r9N>>sJpvd z96#gnxaYR@O0o$mBuZC39S=IF)jCKpi`Az06}QU@b$zN`2Ne?PEYBmDr9N>>P*JCM zxk&HyI;fCP54ZIo!7N?2T*Qz4;l>Ab3# zrQT;-6%})d_!7O#CSb_=(_03p<3JG;3!N7sjJm`P$8jSTT4(Op$=e6@KNLAuRd{0 zP$8iX`8URfG@$b}p%=ygc^DX^~;=3q6OZa{q2)BLzS1ItQkH zmQ+Zn$0%7xC0IBQ63iOa?cw;}H^ZYzP$9A6JJaLetc72rngkUR{qKJu-eVAcBWn^= zNX#F5U;OHvRsU_c@=oViokYLuer%a1GPr$E(&8n!7IR5-QI=l^$y>IWgibJB-CAH*Fl0=4^EmIk2?atAvdd{LSn6jH^x8uDSka~5>!a2AInxn zf?22Ue|@~qr>#7wkWfFC^&r8lS=}bbPi*Bo!|dLrLc(@!MgGsNzEa@%nu``KjQ`eg zVc0IuG^StYR7h+*aAAD(ltJJuh8?sz|)K z;YaZgqs!ACe(|ZQn6=i|AH-wdGDN6~%Kv80jd#9j;u2Iv;^vS38$a{gE5D^GW?jAU z8}YbVlhQ<}ipqW`|2rOaC)k{zniS;+09(OLP)7j5NW*uFKO@8&Pct9@@6B=T72+3Wog<=I z6_qU~yfNd!)ec#Lsz@w6{N|ljzTe-KB=7aXtXqbz-SNnrbwxC*qH^&adv;WATy6=f zA~EIe<2r6S+|QKFtBP5>>~m?yakVE!G^?U=)~Gu>io^Uob$68o_ImasNa8!wAM5z0 z=db0_@)2a#-j&xoZn$+b5zVTo%-MIT((x0I4IP>7RYl^Aao;a3nAI z%g*0RM6)U?YhAZxY5r3uhOG9gBJpjjUZ@s<+ zLFKS%14>&wal;Z+MPlTfElazucw-9>R>iD~_Wf~b=I3?4^!pW+@iY6EcH3@Asv>dD z=pU8d`(pC9RK={j?(0{&?kBAXDkqQKy!7#%OY#VkU?+2PANV1;6a6izT<)j9weBh@6?u{LPFo$ zL4>NPkkIb|AVO6nn5EwzEJ1~Ye&etN6%zU#1w>c}6%zV=21Hl~31;c{AWKjoq2HV= zL4|~V*Rli^68h~7L|8c$68cRJL|8cqX6ZLT5W#~A37zfDBbcT0(Fx%y@_&`8&RVAD zchj%=Iu8UDoqe?v#>3{re=1cHIwx%Bp8Jj0sY+Gn?$VQ)S#7#1Dmn*gXGhn!@Bf=# zxz3E*iPk>V=X*lG>858Ov)Xi3RCGqsPHC=hzwSXo=RED~XkSj9s#Nu>b9$mNt4&u$ zMZZnknalO<`~Rj_uJfGfy^!|cc3Gj$724-66%snrm`5;6=L#)Bg@n#D<`K-&nLkTV zA)zykc?7d`rZJCTmd+Jgf(i+pY0M*-rE`!8QK>&uDpfv$I=h&DR%Sm-Na$>)t%?c> zosYBx6%sn9lSeR1XD}^6g@n!(S%L})ops71n58qAmY_mH=L#)Bg@n#c<`K-&nZ`VV zSvpr}2`VIXZZeNxmd;IDf{M;ma!#@(xOa61(@rt3zc&1TD^)(`By!a&%%~-F#ZLOunV((h*SW4+O5c@&pW11Himr{a_s!tmC86uD?A<&_=o+u| zeMPvX?5cDfS^CH+5S6-5rK&6F()W_#F;UusimuYLce~*_blsy{NAucBdk-EGJRT&W zYZdKdPJ&rHMoq7rRq0yJbcIdA?XOCem5|VNq_!$5By_DRh~PnjS?X^9;dWW2N`-`a z4=h22gnAwF2xh6*A&+2|IteU6g@k$?@(5Wb*}T|5^f>VPAt=-O&~pV1^ec#u%{fW3<=3H1V`x2wJYyK)lD zQXhgPxN==dp56=T_baZJgsx(@9weBhP6A6%(RK6fRz*Tx1=fQK30Z-I43yvz>(cf2;=yX7Tl(ekQ6L zD1F~(`lSgf>MOE$w&ptcX`sG4H*>k!sh6yyQl~0aDkRkNXID;zgt`x{2MK1WchP#J zlxB~jy&t_>LvtM@)HxYN>e{p(R7j||Gml`F`bX``>A@`Zt6C2#B-96MJxDN1eYe(w z3JLY|S`QM;QfIOCph7}D%6SB{)cb4+D(b0@B6>HE;rx@ON`-{_xvd8k66zCAh~_hq z1hdqaZat`wP`|tNAi*s4*IR-L3H9*Xs;H3AoB-=Vf?2vo$9hm9p$Q3j1hX`G!B#~@ z6CK>s!Oxlv*8$~ukkB-VJc3!8Qems2qUjgyRz*USH}a}tmL_`Gs;FpENV`>$(3FzA zs+gteC$=gonyS)nRf`efe00mI5`}~&#pDsp(qtMC760x-MN@8)b$n}8Bs5hA9&ST! z+JAF`auhL3Q+yJ_RpdWC9dYzwwPpHNJKX#I1@Yz)wPpTZ3;&)zE}=p~GgDDj z@F2k~R-5*qLPE1&;o&Mzubf$$FKY?b&b^?Ssg|HZLK9c>2xe(!swJq9(8Sd|f?1lG zY6&VNG^sR?V3ww=T7n7*OL4|~7o8}SB(v($8P$8j-tCpZbLQ_^P zL4|~7rdomu2~AwhBbcQLsFt8YLK9c>2xe*GY97HXO+d8-6%v}bnny586Ib&HW@%=s zC8&_l#ML~4S(=$@2`VHsaTP@P|G&2=M@Ss9M6IVe5 z4-(AMlvPVmA)%S6AVO7CNND0Jh)@*?W@%kP zmZrs8f(i*ur_CdnrRlVmprTo|?*5}wx2k>8(b45zcDg1tyau@!`FiADZ$9P~{~d?l zWpvjKw=sO{YZAeO3JKlW!&XItS-N`&h)@+3-Jzu2sz~TADDYTp9n8|5RzQTRs1%y_ zd1<#Q61rmyJQk~pS-L9?h)@+3-T9{7sz~VWI`CMmDrV^pJ|IF>RCJf1cB>+xI}yQS zv8tG*yB&cDRZ-C$mD;U}gznk|kHxBDmhKD%B2-01cb{svDiXTG6+9NJidnjgRvy7D zbrmc|G!T&8=uVIB%7M#QEq!{* z7}sNB2`VIX*T+19S-R_^C8+35kL^}PLU(<%9$W{rbPvZof?2w6qa~=2&|M$%2xjSi zke1-9R`()w4;$Vw%uxmu66)Zw9^4kQ)c<1%Zddm;j3UzMs<QoI$T?NBm}e6YikKAB-E*! zM=(p>xt5?pLOr~eU{&f~P9DK;-B%>kIc+_--u7cB>+xNe|Y8RWVBw zBrHKilPTJ*iiD F|9{12@ --> model://src/environments/meshes/austin_track.stl - 0.1 0.1 0.1 + 0.001 0.001 0.001 @@ -101,7 +101,7 @@ model://src/environments/meshes/austin_track.stl - 0.1 0.1 0.1 + 0.001 0.001 0.001 diff --git a/src/reinforcement_learning/config/sanity_check.yaml b/src/reinforcement_learning/config/sanity_check.yaml index ec589079..d2706c7e 100644 --- a/src/reinforcement_learning/config/sanity_check.yaml +++ b/src/reinforcement_learning/config/sanity_check.yaml @@ -1,7 +1,7 @@ sanity_check: ros__parameters: environment: 'CarTrack' # CarGoal, CarWall, CarBlock, CarTrack - track: 'budapest_track' # track_1, track_2, track_3 -> only applies for CarTrack + track: 'austin_track' # track_1, track_2, track_3 -> only applies for CarTrack max_steps_exploration: 5000 max_steps_training: 1000000 reward_range: 1.0 diff --git a/src/reinforcement_learning/config/test.yaml b/src/reinforcement_learning/config/test.yaml index 673c49c6..b8b4a5a3 100644 --- a/src/reinforcement_learning/config/test.yaml +++ b/src/reinforcement_learning/config/test.yaml @@ -3,8 +3,8 @@ test: environment: 'CarTrack' track: 'track_1' max_steps_evaluation: 1000000 - actor_path: rl_logs/23_08_18_11:10:14/models/actor_checkpoint.pht - critic_path: rl_logs/23_08_18_11:10:14/models/critic_checkpoint.pht + actor_path: rl_logs/23_08_24_11:27:31/models/actor_checkpoint.pht + critic_path: rl_logs/23_08_24_11:27:31/models/critic_checkpoint.pht max_steps: 300 step_length: 0.25 reward_range: 3.0 From 041d90fc173c0f1101e97003afd76697673381bf Mon Sep 17 00:00:00 2001 From: retinfai Date: Sat, 26 Aug 2023 11:31:01 +1200 Subject: [PATCH 3/9] feat: add tracks sdf --- src/environments/environments/track_reset.py | 39 ++- src/environments/launch/cartrack.launch.py | 2 +- src/environments/worlds/all_track.sdf | 252 +++++++++++++++++++ src/environments/worlds/austin_track.sdf | 9 +- src/environments/worlds/budapest_track.sdf | 13 +- src/environments/worlds/hockenheim_track.sdf | 112 +++++++++ src/reinforcement_learning/config/train.yaml | 2 +- 7 files changed, 416 insertions(+), 13 deletions(-) create mode 100644 src/environments/worlds/all_track.sdf create mode 100644 src/environments/worlds/hockenheim_track.sdf diff --git a/src/environments/environments/track_reset.py b/src/environments/environments/track_reset.py index f39dd9b7..f1edf5cb 100644 --- a/src/environments/environments/track_reset.py +++ b/src/environments/environments/track_reset.py @@ -87,7 +87,7 @@ 'yaw': 3.14 * 1.5 } }, - 'budapest_track': { + 'austin_track': { 'goals': [ [-7.6, -3.0], [-7.0, -6.5], @@ -160,5 +160,42 @@ 'y': 0.0, 'yaw': 3.14 * 1.5 } + }, + 'hockenheim_track': { + 'goals': [ + [-7.6, -3.0], + [-7.0, -6.5], + [-4.0, -7.2], + [-1.0, -7.3], # Right + [3.0, -7.1], + [6.0, -6.0], + [7.2, -3.0], + [7.4, 0.0], # Top + [7.3, 4.0], + [6.0, 7.7], + [3.6, 6.0], + [2.8, 3.0], + [0.5, 2.0], + [-2.0, 0.0], + [-3.0, -3.0], + [-4.0, -4.6], + [-5.3, -3.0], + [-4.9, 0.0], + [-3.6, 3.0], + [-2.0, 4.0], + [0.0, 4.6], + [0.4, 7.0], # Left + [-2.0, 8.0], + [-5.0, 8.0], + [-7.1, 7.5], + [-7.5, 6.0], + [-7.6, 3.0], + [-7.6, 0.0] # Bottom + ], + 'reset': { + 'x': 0.0, + 'y': 0.0, + 'yaw': 3.14 * 1.5 + } } } \ No newline at end of file diff --git a/src/environments/launch/cartrack.launch.py b/src/environments/launch/cartrack.launch.py index 645ea5c4..be709d9c 100644 --- a/src/environments/launch/cartrack.launch.py +++ b/src/environments/launch/cartrack.launch.py @@ -66,8 +66,8 @@ def generate_launch_description(): return LaunchDescription([ track_arg, - f1tenth, OpaqueFunction(function=launch), service_bridge, reset, + f1tenth, ]) \ No newline at end of file diff --git a/src/environments/worlds/all_track.sdf b/src/environments/worlds/all_track.sdf new file mode 100644 index 00000000..7f5e5512 --- /dev/null +++ b/src/environments/worlds/all_track.sdf @@ -0,0 +1,252 @@ + + + + + + 0.001 + 10.0 + + + + + + ogre2 + + + + + + + + true + 0 0 10 0 0 0 + 1 1 1 1 + 0.5 0.5 0.5 1 + + 1000 + 0.9 + 0.01 + 0.001 + + -0.5 0.1 -0.9 + + + + 100 0 0 0 0 0 + true + + + + + 0 0 1 + 250 250 + + + + + + 50 + + + 1 + 0.1 + + + + + + + + 0 0 1 + 250 250 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + true + + + + + + + + model://src/environments/meshes/austin_track.stl + 0.001 0.001 0.001 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + + model://src/environments/meshes/austin_track.stl + 0.001 0.001 0.001 + + + + + + + + 100 0 30 0 0 0 + true + + + + + 0 0 1 + 250 250 + + + + + + 50 + + + 1 + 0.1 + + + + + + + + 0 0 1 + 250 250 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + 100 0 30 0 0 0 + true + + + + + + + + model://src/environments/meshes/budapest_track.stl + 0.001 0.001 0.001 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + + model://src/environments/meshes/budapest_track.stl + 0.001 0.001 0.001 + + + + + + + + 150 0 60 0 0 0 + true + + + + + 0 0 1 + 150 150 + + + + + + 50 + + + 1 + 0.1 + + + + + + + + 0 0 1 + 150 150 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + true + 100 0 60 0 0 0 + + + + + + + + model://src/environments/meshes/hockenheim_track.stl + 0.001 0.001 0.001 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + + model://src/environments/meshes/hockenheim_track.stl + 0.001 0.001 0.001 + + + + + + + diff --git a/src/environments/worlds/austin_track.sdf b/src/environments/worlds/austin_track.sdf index bbfd4dd1..6e11f381 100644 --- a/src/environments/worlds/austin_track.sdf +++ b/src/environments/worlds/austin_track.sdf @@ -40,14 +40,15 @@ -0.5 0.1 -0.9 - + + 100 0 0 0 0 0 true 0 0 1 - 5000 5000 + 250 250 @@ -66,7 +67,7 @@ 0 0 1 - 5000 5000 + 250 250 @@ -77,7 +78,7 @@ - + true diff --git a/src/environments/worlds/budapest_track.sdf b/src/environments/worlds/budapest_track.sdf index a76abe83..77aab034 100644 --- a/src/environments/worlds/budapest_track.sdf +++ b/src/environments/worlds/budapest_track.sdf @@ -40,14 +40,15 @@ -0.5 0.1 -0.9 - + + 0 0 0 0 0 0 true 0 0 1 - 5000 5000 + 250 250 @@ -66,7 +67,7 @@ 0 0 1 - 100 100 + 250 250 @@ -77,7 +78,7 @@ - + true @@ -87,7 +88,7 @@ model://src/environments/meshes/budapest_track.stl - 0.007 0.007 0.007 + 0.001 0.001 0.001 @@ -101,7 +102,7 @@ model://src/environments/meshes/budapest_track.stl - 0.007 0.007 0.007 + 0.001 0.001 0.001 diff --git a/src/environments/worlds/hockenheim_track.sdf b/src/environments/worlds/hockenheim_track.sdf new file mode 100644 index 00000000..38ceaf1b --- /dev/null +++ b/src/environments/worlds/hockenheim_track.sdf @@ -0,0 +1,112 @@ + + + + + + 0.001 + 10.0 + + + + + + ogre2 + + + + + + + + true + 0 0 10 0 0 0 + 1 1 1 1 + 0.5 0.5 0.5 1 + + 1000 + 0.9 + 0.01 + 0.001 + + -0.5 0.1 -0.9 + + + + 0 0 0 0 0 0 + true + + + + + 0 0 1 + 250 250 + + + + + + 50 + + + 1 + 0.1 + + + + + + + + 0 0 1 + 250 250 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + true + + + + + + + + model://src/environments/meshes/hockenheim_track.stl + 0.001 0.001 0.001 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + + model://src/environments/meshes/hockenheim_track.stl + 0.001 0.001 0.001 + + + + + + + diff --git a/src/reinforcement_learning/config/train.yaml b/src/reinforcement_learning/config/train.yaml index 88227834..8f4a0bea 100644 --- a/src/reinforcement_learning/config/train.yaml +++ b/src/reinforcement_learning/config/train.yaml @@ -1,7 +1,7 @@ train: ros__parameters: environment: 'CarTrack' # CarGoal, CarWall, CarBlock, CarTrack, CarBeat - track: 'track_2' # track_1, track_2, track_3 -> only applies for CarTrack + track: 'hockenheim_track' # track_1, track_2, track_3 -> only applies for CarTrack algorithm: 'TD3' max_steps_exploration: 1000 max_steps_training: 1000000 From a5ed7a07ff38166b5b7c26735ff593da4218be80 Mon Sep 17 00:00:00 2001 From: retinfai Date: Sat, 26 Aug 2023 12:39:18 +1200 Subject: [PATCH 4/9] feat: add waypoints to austin budapest hockenheim --- src/environments/environments/waypoints.py | 81 +++++++++++----------- 1 file changed, 42 insertions(+), 39 deletions(-) diff --git a/src/environments/environments/waypoints.py b/src/environments/environments/waypoints.py index c6a2f292..7803e733 100644 --- a/src/environments/environments/waypoints.py +++ b/src/environments/environments/waypoints.py @@ -24,45 +24,48 @@ Waypoint(-10.84, 13.99, -1.93), Waypoint(12.81, 8.14, -1.93), ], - 'budapest': [ - Waypoint(0, 0, -0.66), - Waypoint(7.27, -5.88, -0.66), - Waypoint(14.19, -7.85, 0.74), - Waypoint(13.44, -0.49, 2.45), - Waypoint(7.74, 4.32, 2.04), - Waypoint(15.5, 4.11, -0.9), - Waypoint(21.58, -0.55, 0.76), - Waypoint(31.42, 9.76, 0.76), - Waypoint(38.02, 17.33, 1.26), - Waypoint(34.74, 26.22, 2.16), - Waypoint(34.83, 39.9, 1.7), - Waypoint(25.33, 46.92, 1.7), - Waypoint(58.7, 58.7, 2.17), - Waypoint(14.53, 68.36, 2.59), - Waypoint(7.71, 64.15, -1.48), - Waypoint(7.8, 50.07, -2.17), - Waypoint(-3.65, 30.22, -1.95), - Waypoint(-2.49, 22.02, -1.2), - Waypoint(-1.34, 17.12, -2.05), - Waypoint(-9.16, 18.16, 2.49), - Waypoint(-19.28, 26.05, 2.82), - Waypoint(-28.16, 27.8, 3.11), - Waypoint(-29.03, 23.69, -0.79), - Waypoint(-20.17, 16.62, -0.75), - Waypoint(-7.26, 5.93, -0.75), + # Waypoint(), + 'austin_track': [ + Waypoint(0, 0, -0.64), + Waypoint(7.29, -5.57, -0.64), + Waypoint(20.05, -15.31, -0.64), + Waypoint(30.38, -23.2, -0.64), + Waypoint(37.88, -28.45, -0.39), + Waypoint(40.65, -26.31, 1.94), + Waypoint(40.24, -7.39, 0.66), + Waypoint(70.28, 22.93, 0.08), + Waypoint(106.15, 25.015, 0.08), + Waypoint(124.86, 41.54, 0.83), + Waypoint(130.48, 48.79, 0.83), + Waypoint(117.07, 47.39, -2.87), + Waypoint(80, 38.14, -2.87), + Waypoint(44.39, 33.27, -3.04), + Waypoint(44.23, 28.37, -0.85), + Waypoint(38.34, 15.79, -1.07), + Waypoint(14.71, 14.25, 2.3), ], - 'austin': [ - Waypoint(0, 0, -0.66), - Waypoint(8.76, -6.8, -0.66), - Waypoint(21.59, -16.75, -0.66), - Waypoint(32.13, -24.94, -0.66), - Waypoint(38.69, -28.53, -0.02), - Waypoint(39.99, -24.59, 1.91), - Waypoint(37.01, -13.32, 1.43), - Waypoint(45.58, -4, 0.54), - Waypoint(53.58, 2.01, 0.95), - Waypoint(), - - ] + 'budapest_track': [ + Waypoint(0, 0, 2.45), + Waypoint(-11.7, 9.66, 2.45), + Waypoint(-26.62, 21.92, 2.45), + Waypoint(-43.45, 36.17, 2.45), + Waypoint(0.6, 53.88, 1), + Waypoint(29.87, 88.89, -0.77), + Waypoint(49.35, 38.16, -1.01), + Waypoint(12.95, 11.73, -2.94), + ], + 'hockenheim_track': [ + Waypoint(0, 0, 1.99), + Waypoint(-7.37, 14.80), + Waypoint(26.5, 40.58, -0.53), + Waypoint(63.19, 29.06, -0.02), + Waypoint(93.67, 37.96, 0.36), + Waypoint(80.3, 23.3, -2.53), + Waypoint(39.86, -2.53, -2.53), + Waypoint(9.98, 8.54, -2.53), + Waypoint(4.92, -10.3, 2.03), + ], + + } \ No newline at end of file From 868738e102218bf3e9ce1ee986123daea30fb151 Mon Sep 17 00:00:00 2001 From: retinfai Date: Sat, 26 Aug 2023 13:24:18 +1200 Subject: [PATCH 5/9] feat: add index to waypoints & add goal positions --- .../environments/goal_positions.py | 11 +++ src/environments/environments/waypoints.py | 71 +++++++++---------- 2 files changed, 46 insertions(+), 36 deletions(-) create mode 100644 src/environments/environments/goal_positions.py diff --git a/src/environments/environments/goal_positions.py b/src/environments/environments/goal_positions.py new file mode 100644 index 00000000..8b086959 --- /dev/null +++ b/src/environments/environments/goal_positions.py @@ -0,0 +1,11 @@ + +from collections import namedtuple + +GoalPosition = namedtuple('GoalPosition', ['x', 'y']) + + +goal_positions = { + 'austin_track': [[0.0,0.0],[0.9114490385,-0.6963720732],[1.8229057219,-1.3927312266],[2.7344172186,-2.0890257812],[3.6459790949,-2.7852613177],[4.5575846996,-3.4814460161],[5.4692271523,-4.1775880563],[6.3808998022,-4.8736957712],[7.2925959217,-5.5697771878],[8.2043087069,-6.2658407156],[9.1160315069,-6.9618943815],[10.0277574412,-7.6579465949],[10.939479859,-8.3540053829],[11.8511919562,-9.0500790018],[12.7628886108,-9.7461737969],[13.6745704345,-10.4422885451],[14.5862391855,-11.1384205705],[15.4978966985,-11.8345671976],[16.4095448849,-12.5307257506],[17.3211856559,-13.226893401],[18.2328207696,-13.9230675495],[19.1444520609,-14.619245444],[20.056081441,-15.3154244087],[20.9677108211,-16.0116016151],[21.8793419595,-16.707774464],[22.790976691,-17.4039402796],[23.7026170033,-18.1000962334],[24.6142646545,-18.7962396496],[25.5259214796,-19.4923678527],[26.4375893132,-20.1884780904],[27.349270143,-20.884567687],[28.2609657274,-21.5806339669],[29.172677901,-22.2766741015],[30.0844085752,-22.9726854915],[30.9961595846,-23.6686653848],[31.907932764,-24.3646110292],[32.8197297953,-25.0605201313],[33.7313677376,-25.7567069703],[34.6421293528,-26.454402364],[35.5514030542,-27.1546756716],[36.512490143,-27.7714414925],[37.5402965136,-28.2843584561],[38.570018985,-28.7880299887],[39.6451845578,-29.1722285378],[40.7651490018,-29.1042980852],[41.2025543619,-28.1549487957],[40.8944422314,-27.0386865147],[40.5356253672,-25.9541353811],[40.1602347355,-24.8687439274],[39.7773730383,-23.7867037391],[39.3899258941,-22.7069171708],[39.0006675363,-21.628191476],[38.6123718922,-20.5493339843],[38.2278130422,-19.4691520254],[37.8463405639,-18.3874385771],[37.4525045568,-17.3083028135],[37.091473902,-16.2199616777],[36.8675654733,-15.0991491923],[36.8288629736,-13.9543584605],[36.9667581688,-12.8128802346],[37.2447904826,-11.703076308],[37.6503087876,-10.633767365],[38.1743112935,-9.6112722418],[38.8260821908,-8.6669552398],[39.6367891556,-7.8650886828],[40.5500618689,-7.1715436686],[41.4995068716,-6.52818224],[42.4672628536,-5.9121211199],[43.43985144,-5.3037916775],[44.4106437966,-4.6934037875],[45.3818974423,-4.0838531596],[46.3562629936,-3.4786125354],[47.3334274709,-2.8771489935],[48.3108068445,-2.2758610534],[49.2857592896,-1.6710689515],[50.2556430578,-1.0590931534],[51.2178163244,-0.4362538954],[52.1568390506,0.2165509655],[52.9831330644,1.0066042686],[53.6359221004,1.9628066152],[54.1352413534,2.9863995364],[54.5465235563,4.0433677321],[54.9473654409,5.1218466517],[55.4110233086,6.1914687271],[55.9993049422,7.1730721764],[56.7719037932,7.9798094856],[57.7416950589,8.574057911],[58.8199118372,9.0250602936],[59.9048261004,9.4180427552],[60.9079986801,9.9099180819],[61.7978483911,10.6546701718],[62.5445233857,11.5302740432],[62.9804087237,12.5631958006],[63.2057285414,13.68992875],[63.3360646026,14.8422433731],[63.4710913801,15.983130577],[63.7006419245,17.094895556],[64.1054545351,18.1595298369],[64.6885011403,19.1538093359],[65.4127644675,20.0518278562],[66.243973497,20.8335667924],[67.1620441836,21.5062755862],[68.1509818559,22.0850624144],[69.1957726744,22.5744904773],[70.2850892144,22.9394845955],[71.4084324451,23.1357619239],[72.5492515335,23.1358089396],[73.6783142457,22.9472506751],[74.7651240451,22.5826465197],[75.8067047984,22.0973377984],[76.8430892062,21.6063113538],[77.8864753632,21.1324985493],[78.9353419476,20.6672036171],[79.9880158881,20.2118835095],[81.046281947,19.7736768181],[82.153577604,19.5272558103],[83.2422025925,19.8764641139],[84.2255984492,20.4610961809],[85.129424443,21.1615512827],[85.9891974718,21.9193615874],[86.8158991081,22.7153123436],[87.5899779985,23.5599602242],[88.2802299246,24.4746156584],[88.9095228738,25.4369958706],[89.6849629267,26.2715335366],[90.6728456885,26.8357827984],[91.7866312732,27.0868848901],[92.9399874283,27.0993442088],[94.052378672,26.8543415467],[95.0524141182,26.3090868651],[95.8783663316,25.5153730632],[96.479816495,24.5399370061],[97.2265333832,23.6965958567],[98.3116734748,23.3590757375],[99.4454306492,23.4578702137],[100.5578323663,23.7445507443],[101.675814964,24.0033511059],[102.7954105449,24.2496134835],[103.9134280795,24.5036077682],[105.0313550229,24.7605252076],[106.1504562125,25.0157422069],[107.2700195322,25.2688535135],[108.3885598205,25.5211022536],[109.5053114472,25.7739554707],[110.6232198901,26.0300130957],[111.7463030436,26.2924572903],[112.7815618262,26.7426992415],[113.5869703106,27.5562532948],[114.2985254034,28.4555204457],[115.0105070778,29.3549508901],[115.7300988007,30.2481392524],[116.452375083,31.1391547239],[117.1744523704,32.0303756121],[117.8961778425,32.9219191122],[118.6175893414,33.8137444008],[119.3387247853,34.7058108075],[120.0596220163,35.5980775087],[120.7803187234,36.4905038341],[121.5008528248,37.3830490366],[122.221262239,38.2756723693],[122.9415846551,39.1683330852],[123.6618580677,40.0609905139],[124.382120166,40.9536037554],[125.1023921261,41.8461540035],[125.8225692139,42.7387865864],[126.5424893589,43.6317218283],[127.2619900318,44.5251802825],[127.9809090095,45.4193825024],[128.6990820044,46.3145502647],[129.407495224,47.216512907],[130.0707696829,48.148334889],[130.6908843226,49.1172461581],[131.0626638413,50.169562091],[130.5645695197,51.1726079959],[129.4545704971,51.3118433301],[128.3359123255,51.1085340555],[127.2439259807,50.7571868806],[126.1587943749,50.3703498705],[125.070159754,50.0063591366],[123.9796000114,49.6551451347],[122.8893426219,49.3029224737],[121.7999903806,48.9452915523],[120.710935829,48.5848463388],[119.6215424585,48.2243477643],[118.5311739896,47.8665568366],[117.43919399,47.5142344105],[116.345076113,47.169669731],[115.2489244812,46.8324532646],[114.1510665228,46.5012172742],[113.0518302011,46.1745931054],[111.9515434029,45.851211951],[110.8505338623,45.5297061505],[109.7490348995,45.209211379],[108.6470382582,44.8901532245],[107.544496158,44.5731643733],[106.4411568547,44.2594648641],[105.3363370531,43.9515164859],[104.229314393,43.6518808693],[103.1199199237,43.36109751],[102.0086659253,43.0772165171],[100.8961068776,42.7981344914],[99.7827971073,42.5217482629],[98.6692907883,42.2459545089],[97.5561102157,41.9687800217],[96.4432034045,41.6905761579],[95.3300227554,41.4137006601],[94.216004462,41.1405772461],[93.1005846415,40.8736292514],[91.9831994875,40.6152803936],[90.8634456585,40.3672486195],[89.7420120305,40.1264484747],[88.6200426527,39.8877924761],[87.4984532994,39.6472488154],[86.3768913147,39.4066423142],[85.2545696629,39.1698038745],[84.1309033616,38.9396032135],[83.0059165683,38.7160069233],[81.8797480369,38.4984368253],[80.752536368,38.2863147406],[79.6244203155,38.0790625671],[78.4955374098,37.8761072482],[77.3659681511,37.6771291534],[76.2357120806,37.4821697942],[75.104762318,37.2912984327],[73.9731122123,37.1045844075],[72.8407549596,36.922096828],[71.7076840618,36.7439113015],[70.5738976841,36.5701832475],[69.4393972026,36.4011250394],[68.3041840698,36.2369499681],[67.1682596618,36.0778714773],[66.0316255075,35.9241027813],[64.894304618,35.7756578703],[63.7564358997,35.631481375],[62.6181968658,35.4901616007],[61.4797651821,35.3502865468],[60.3413183616,35.2104442893],[59.203033688,35.0692248152],[58.0650052692,34.9258889457],[56.9271264598,34.781313696],[55.7892608759,34.6366148293],[54.6512721338,34.4929081854],[53.513024079,34.3513096041],[52.3743846852,34.212898765],[51.2353557107,34.0776432541],[50.0960946391,33.94421654],[48.956767822,33.8112192362],[47.8175415344,33.6772518796],[46.6785820514,33.5409148542],[45.5399259154,33.4019810321],[44.3994949551,33.2793428586],[43.2600729598,33.1544686479],[42.1990724207,32.7950644312],[41.830802874,31.7578549167],[42.3325714549,30.7771310053],[43.0342779393,29.8617925818],[43.750636892,28.9656467397],[44.4713018729,28.0756037673],[45.1867864861,27.1800191323],[45.8907628741,26.2740535792],[46.577853662,25.3549103226],[47.2446878607,24.4211911225],[47.8931915095,23.4751909578],[48.5261513025,22.5197972815],[49.1456538205,21.5560720375],[49.7522615701,20.5811021622],[50.3346213636,19.5882058427],[50.5050295727,18.4824831865],[50.011841246,17.4726954567],[48.9909440456,17.0546191383],[47.8360574716,17.1196736813],[46.6907686789,17.1925794674],[45.551624191,17.2255627149],[44.4054715323,17.3664645462],[43.3631902829,17.8149063687],[42.7157631795,18.7161412229],[42.3213222368,19.8230793312],[41.913438009,20.8775764877],[41.4095181723,21.9103893062],[40.7215807957,22.8218077654],[39.9137200784,23.6368720554],[39.1413089846,24.4888499542],[38.3015200831,25.265711946],[37.2990518218,25.7907428348],[36.1644092993,26.0203821357],[35.0404172516,26.1637342123],[33.8720959547,26.1750925986],[33.1148642874,25.471418105],[33.29782814,24.374866572],[33.8533907315,23.3639907532],[34.430801872,22.3669383971],[35.0138918234,21.3778681634],[35.600624614,20.3938069769],[36.1889638897,19.4117815328],[36.7768734493,18.4288188322],[37.3628795986,17.442538045],[37.9500071683,16.455296914],[38.5434395078,15.4717264493],[39.1425738986,14.4931109063],[39.7094755349,13.4990976003],[40.1914189246,12.4607633016],[40.5205983787,11.3608843552],[40.5849229167,10.2237029074],[40.3959581764,9.0902491564],[40.0680534981,7.9912687072],[39.6919830115,6.9113152523],[39.2717092624,5.8421483503],[38.7307243726,4.8297927213],[37.9714705707,3.9836696174],[37.0162997413,3.3634996291],[35.959277573,2.9087304081],[34.9088329422,2.4494713006],[33.8830542105,1.9367640346],[32.850334659,1.4345395159],[31.7718720229,1.0701617241],[30.6377110484,0.9694179686],[29.4821047898,1.0425590625],[28.3493453424,1.1709281083],[27.2437700021,1.4615390002],[26.1482535794,1.8199350928],[25.06959019,2.2002856919],[24.0516223366,2.7206193663],[23.1244674484,3.3953564106],[22.313050355,4.2024970611],[21.6191059748,5.1112019105],[20.9808359282,6.066444372],[20.3258408229,7.0092408168],[19.6225037722,7.9136786265],[18.9247447734,8.8232231079],[18.2389772296,9.7429440081],[17.5492166369,10.6597777608],[16.8528124554,11.5714204429],[16.1480372588,12.4763126615],[15.4331633913,13.3728951765],[14.7064633503,14.259608595],[13.9635430387,15.1327926476],[13.1686609536,15.9635320551],[12.2008875414,16.5436873082],[11.0633720144,16.6883432874],[9.9302255092,16.5273167404],[8.8496847782,16.1531596788],[7.7958261946,15.6998192006],[6.7530064432,15.2219679368],[5.7137239559,14.7366193859],[4.6715454531,14.2582236572],[3.6261088756,13.7871335597],[2.5792653431,13.3185632755],[1.5325185942,12.8487711177],[0.486246513,12.3773908989],[-0.5593983097,11.9047316996],[-1.6042633596,11.4311029062],[-2.6481959692,10.9568138286],[-3.6910795549,10.4822025213],[-4.7348033076,10.0092245325],[-5.784285454,9.5422769405],[-6.841800714,9.0823025059],[-7.8041965981,8.4970525071],[-8.515083609,7.5841511797],[-8.475644912,6.541707707],[-7.5922221352,5.8069724883],[-6.6818267075,5.1090492786],[-5.775155307,4.4074775726],[-4.8645085173,3.7102385754],[-3.9519419571,3.0150870761],[-3.0393786843,2.3199280849],[-2.1272389352,1.6243051289],[-1.2154232505,0.9283282935],[-0.3038314829,0.2321081996]], + 'budapest_track': [[0.0,0.0],[-1.0643405697,0.8778526864],[-2.128912562,1.7554090122],[-3.1935918032,2.6328241482],[-4.2582543961,3.5102530813],[-5.3227759831,4.3878508903],[-6.3870326668,5.2657728378],[-7.4509160024,6.144154503],[-8.5144611264,7.0229537589],[-9.5777799788,7.9020340146],[-10.6409850515,8.7812576676],[-11.7041888365,9.6604869314],[-12.7675038258,10.5395842034],[-13.8310425111,11.4184118812],[-14.8949175685,12.2968323621],[-15.9592413978,13.1747078596],[-17.0241213401,14.0519073018],[-18.0895634661,14.9284223184],[-19.1554823261,15.8043561115],[-20.2217891591,16.679815746],[-21.288395388,17.554908379],[-22.3552122518,18.4297410757],[-23.4221508976,19.3044209931],[-24.4891227482,20.1790551042],[-25.5560389508,21.0537507503],[-26.6228104683,21.9286154561],[-27.6893356625,22.803774039],[-28.755500018,23.6793691605],[-29.8211880994,24.5555445859],[-30.8862847473,25.4324439883],[-31.9506745265,26.310210857],[-33.0142422777,27.1889889574],[-34.0768725654,28.0689219626],[-35.1384502304,28.9501535459],[-36.1988670119,29.8328185505],[-37.2587007301,30.7162190296],[-38.3197722274,31.5981468119],[-39.3840335102,32.476234784],[-40.4534364925,33.3481157403],[-41.5249222772,34.2167715909],[-42.5507530801,35.1328796266],[-43.4507813009,36.1738021918],[-43.9168959678,37.4544841442],[-43.5093528945,38.714958757],[-42.3044547203,39.3562534311],[-40.947221138,39.5789546088],[-39.5747067738,39.6337550094],[-38.193485369,39.6063912333],[-36.8144624777,39.5163398364],[-35.4432539581,39.371865986],[-34.080869938,39.171708264],[-32.728167858,38.9142890241],[-31.3860048826,38.5980304358],[-30.0578090262,38.2180766744],[-28.7566374466,37.7572907952],[-27.4968463395,37.1981003267],[-26.2846334306,36.5437613721],[-25.1217842419,35.808163143],[-24.0033614538,35.0071481453],[-22.9175620602,34.1584779618],[-21.852270322,33.2800017408],[-20.7953706839,32.3895685387],[-19.7366675877,31.5022017763],[-18.6746861291,30.6200904932],[-17.6104265021,29.7417815845],[-16.5448888085,28.865821669],[-15.4790734264,27.9907572739],[-14.4139805496,27.1151352022],[-13.3506102802,26.2375017969],[-12.2899629961,25.3564039529],[-11.2330388912,24.4703880135],[-10.1783949784,23.5808131716],[-9.1039785169,22.7127623676],[-7.9754463562,21.9113745737],[-6.7139326418,21.4131019326],[-5.3430676686,21.4577954442],[-4.0487133941,21.9265553729],[-2.919949535,22.6923019902],[-2.1938566439,23.8592521214],[-1.7800196335,25.1682939047],[-1.6680154785,26.5440958293],[-1.9626025845,27.8836947614],[-2.5493408818,29.129474415],[-3.1929977944,30.3504881845],[-3.8471894885,31.5653713739],[-4.4919547639,32.7841467104],[-5.1334649479,34.0057309418],[-5.7796787293,35.226993794],[-6.4003648457,36.4529731209],[-6.8610035564,37.7594446983],[-6.8596759125,39.1136680407],[-6.359812288,40.4015153517],[-5.7536681676,41.644436625],[-5.1184078621,42.8671111911],[-4.4814093126,44.0891556],[-3.8473609398,45.3138580561],[-3.2148009925,46.5400810388],[-2.5822679033,47.7666872115],[-1.9483244801,48.9925576336],[-1.3122977946,50.2171527487],[-0.67440722,51.4406094234],[-0.0349227185,52.6631029722],[0.6058858397,53.8848085257],[1.2477484922,55.1059013982],[1.890395277,56.3265567204],[2.5335563237,57.5469498067],[3.1769615781,58.7672558796],[3.8203388706,59.9876512655],[4.4631057816,61.2084618504],[5.1040650035,62.4303096974],[5.741946748,63.6538520978],[6.3754811348,64.8797461589],[7.005518798,66.1074319965],[7.6540677756,67.3242076809],[8.3544554798,68.5108520855],[9.1146782191,69.6619888688],[9.9132615333,70.7883475346],[10.7394832768,71.8931716768],[11.612107894,72.9597601535],[12.5534362885,73.967504039],[13.5517399582,74.9185384724],[14.310619417,76.0597099242],[14.5600448317,77.4048415643],[14.3733988342,78.7694118645],[14.0343339105,80.1068982847],[13.7053960196,81.4468566759],[13.3735623125,82.7859299405],[13.0366495442,84.1236948771],[12.6990842676,85.4613292936],[12.3652931274,86.800010814],[12.0388958248,88.140708359],[11.7105387896,89.481036787],[11.3611565259,90.8160682526],[11.0231009022,92.1520082077],[10.8127301458,93.5132681363],[10.8764451867,94.8887319413],[11.3886984679,96.1516356623],[12.2409878009,97.2281512985],[13.3079985592,98.0938897174],[14.5326947606,98.7364419464],[15.8569322441,99.1156121275],[17.219377891,99.1536539905],[18.5482192652,98.8113005866],[19.7709531586,98.1820131149],[20.9384138725,97.4465829339],[22.0734242068,96.6622348614],[23.1715123545,95.8282617527],[24.2281541718,94.943845259],[25.2389241178,94.0082508254],[26.2056534285,93.0260570481],[27.1400639834,92.0102417979],[28.0547510152,90.9745246747],[28.9623099404,89.9326255544],[29.8741086063,88.8968370545],[30.7922527183,87.8686850364],[31.7146207504,86.844781773],[32.6390697451,85.8217141508],[33.5634327382,84.7960483606],[34.4690788408,83.7499715863],[35.1667713377,82.6009938571],[35.0072807809,81.2468313136],[34.1832483529,80.1448603088],[33.3385602732,79.0803481958],[33.3830302726,77.7395102888],[33.7382121712,76.3986613442],[34.069641165,75.0579566247],[34.3865706576,73.7172154811],[34.7137843775,72.3782202158],[35.0484448237,71.0398583269],[35.3821546534,69.7004347093],[35.7065165235,68.3582542576],[36.0175109863,67.012938105],[36.3955365644,65.6899678344],[37.0096172983,64.469159273],[37.9581288036,63.4597019781],[39.1262297005,62.7616723734],[40.4757556082,62.5339917493],[41.8604760363,62.3712621977],[43.221875591,62.1877732405],[44.5822616147,62.0416903784],[45.9553745867,61.8338161518],[47.2902786595,61.447612052],[48.439022115,60.7463797846],[49.2695365798,59.6619594519],[49.7251959361,58.3477955607],[49.7868526415,56.9829090322],[49.5943337008,55.6195927916],[49.3490388462,54.2559486412],[49.1318959471,52.8921948503],[48.9179997691,51.5305715074],[48.6914157344,50.1717687409],[48.4584765037,48.8136081811],[48.2277975053,47.4536174888],[48.0079939835,46.0893244173],[47.811651697,44.718717357],[47.7067514578,43.3462120988],[47.8007606757,41.9811357229],[48.1393246746,40.6430400251],[48.6754745338,39.3663938011],[49.3500239554,38.1681969448],[50.0890252722,37.0077031879],[50.8246412534,35.8395652229],[51.5509357654,34.6635676319],[52.2869592195,33.4974139583],[53.0309004311,32.3382196074],[53.7621934294,31.1651096464],[54.4091528953,29.9492222159],[54.811768859,28.6487681748],[54.8657982806,27.2585281919],[54.6803808642,25.8966770138],[54.2380695993,24.5978106449],[53.5320435018,23.4123350342],[52.6634893815,22.3446195227],[51.7387125689,21.3205779209],[50.792708447,20.3144317335],[49.8475997535,19.3096377487],[48.9041729201,18.3045150262],[47.9595327743,17.3000611847],[47.0131966034,16.2963707797],[46.0656862119,15.2931620756],[45.1175265313,14.290152417],[44.1692423093,13.2870587803],[43.2213586616,12.2835983262],[42.2744005199,11.279488307],[41.3288928158,10.2744457914],[40.3853604809,9.2681879399],[39.4442187145,8.2604860894],[38.5049621766,7.2515655916],[37.5666262696,6.241878254],[36.6282429009,5.2318777234],[35.6888439775,4.2220175548],[34.7474614985,3.212751487],[33.8031272793,2.2045329831],[32.8548732269,1.1978156899],[31.9017314324,0.1930531624],[30.9296651479,-0.7848207593],[29.7086912978,-1.2935871587],[28.3624965493,-0.9476609633],[27.3373414338,-0.048102486],[26.4231050135,0.9854117086],[25.5252197501,2.033712291],[24.6291590083,3.082813194],[23.7310587869,4.1298199812],[22.8270550848,5.171838032],[21.9126966067,6.2052983262],[20.9702184583,7.2113284344],[19.9686654919,8.1558940762],[18.8999948568,9.0297293383],[17.8251529863,9.8982612913],[16.7892623883,10.8092351698],[15.6588488622,11.5935697212],[14.3369898977,11.8851289271],[12.9521033532,11.739906265],[11.6806097745,11.284637641],[10.6455466313,10.3587851187],[10.0597124086,9.1240643505],[10.0743306563,7.7741164371],[10.5944868862,6.495503214],[11.4701389435,5.4461112852],[12.5379239921,4.571850982],[13.6330060392,3.7233020286],[14.6918659618,2.8421387866],[15.7475288326,1.9573672489],[16.8199825261,1.0871314525],[17.8965704589,0.2218463126],[18.9640068101,-0.6494230666],[20.028421608,-1.5262280052],[21.0899926504,-2.413611876],[21.9412962304,-3.4679818714],[22.4256667825,-4.7563941255],[22.6166224257,-6.1235589145],[22.5088475257,-7.4943315394],[22.0952997014,-8.8023711972],[21.3926642743,-9.981061604],[20.4264158367,-10.9632231881],[19.2507696105,-11.6778856854],[17.9336044936,-12.0551860907],[16.5554083213,-12.0815837975],[15.2079124192,-11.795555276],[13.9505880402,-11.2498310017],[12.7820929157,-10.5200519074],[11.6888861633,-9.6803567032],[10.6351405302,-8.7888881706],[9.5812998815,-7.8973833978],[8.5153335597,-7.0216365088],[7.4463084324,-6.1498911314],[6.37990548,-5.2747732957],[5.3157294631,-4.3967830068],[4.2528641656,-3.517095497],[3.1903933717,-2.636885907],[2.1274904543,-1.7572150457],[1.0639850658,-0.8783042178]], + 'hockenheim_track': [[0.0,0.0],[-0.5104794446,1.0664871332],[-1.01765089,2.1347436778],[-1.5232131853,3.2037011197],[-2.028865416,4.2722907874],[-2.5363095813,5.3394478682],[-3.0473994366,6.4042985242],[-3.5642069605,7.466243055],[-4.0888209057,8.5247028661],[-4.6233301039,9.57909952],[-5.1693618182,10.6289837339],[-5.723745,11.6752477736],[-6.2804626424,12.7195797779],[-6.8334602526,13.7636782023],[-7.3766832585,14.8092417384],[-7.9084995934,15.858143121],[-8.4511084873,16.9131938933],[-9.0170209579,17.9784400444],[-9.2245991882,19.0779939393],[-8.8348176528,20.1963196764],[-8.3376345459,21.2661010271],[-7.8365424793,22.334916242],[-7.3152322019,23.3976389264],[-6.7746012561,24.4491172486],[-6.2324603883,25.4989231824],[-5.6912178505,26.5487551046],[-5.1278508973,27.5871957124],[-4.5201874681,28.6023264433],[-3.8624870562,29.5858618244],[-3.1548683416,30.5314712564],[-2.4046613718,31.4425305443],[-1.6240449862,32.3289436041],[-0.8252879598,33.2007355514],[-0.0206591461,34.0679316597],[0.7793675283,34.9390422404],[1.575490677,35.813148724],[2.3727006891,36.6857104772],[3.1759969315,37.5521793848],[3.9903685332,38.408016546],[4.8183819598,39.2509202611],[5.6570564289,40.0837100275],[6.5026382019,40.9099189979],[7.3513736979,41.7330804824],[8.1995552488,42.5566847922],[9.0453318555,43.3824941723],[9.8893019583,44.209990825],[10.7322319768,45.038500865],[11.5748881728,45.867350407],[12.4177132141,46.696173882],[13.2581432341,47.5274710521],[14.091981354,48.3652979866],[14.9150142356,49.2137262691],[15.7230287771,50.0768274044],[16.5166733481,50.9536466757],[17.3203346871,51.8186870916],[18.1815219789,52.6150997345],[19.3024699383,52.8875259322],[20.3616516736,52.4125248087],[21.0819973452,51.5005518341],[21.6041097169,50.4261240065],[21.8918053177,49.2922261417],[21.9833522763,48.1241158237],[21.9974374778,46.9317855648],[22.0629321609,45.743255272],[22.3228827796,44.6136781637],[22.883056791,43.5922445544],[23.6701856942,42.690034056],[24.5649604593,41.9051054979],[25.5138287489,41.2144748812],[26.5036139292,40.5823283202],[27.5211044791,39.9804888755],[28.551997525,39.3945182979],[29.5839532573,38.8133958824],[30.6162454203,38.2374422304],[31.6521891797,37.6709243893],[32.6951037176,37.1181132651],[33.7483062473,36.5832768502],[34.8119320655,36.0655924172],[35.8764300677,35.5487418945],[36.9317677355,35.0158660233],[37.9822266064,34.4754270761],[39.0406289281,33.9510148948],[40.1154160246,33.4599625921],[41.2073002125,33.0084968139],[42.3156070551,32.5995460511],[43.4362463047,32.2239972995],[44.5641992213,31.8693343438],[45.6975202239,31.5321617694],[46.8364412389,31.2155456478],[47.9812401837,30.9226890013],[49.1321948973,30.6567946943],[50.2894169719,30.4201081972],[51.4519174336,30.2085380809],[52.6182601515,30.0154192841],[53.7870078136,29.834079264],[54.9567231078,29.6578455568],[56.1264559638,29.4835842062],[57.2969953243,29.3207894574],[58.469517988,29.1817714303],[59.6452007537,29.0788404025],[60.8252068747,29.024253021],[62.0089331856,29.0231963198],[63.1922626626,29.0667980411],[64.3712561051,29.1456225316],[65.5457979044,29.2573208402],[66.7172381148,29.4021462348],[67.8860802799,29.576924832],[69.0521343699,29.7756807335],[70.2151900368,29.9923562963],[71.3750370901,30.2208937986],[72.5300492905,30.4633671876],[73.6698911586,30.7745941174],[74.816448647,31.0657959374],[75.9664243094,31.3298799604],[77.0768581786,31.7296248697],[78.1766860535,32.1641664971],[79.2753785534,32.6009943886],[80.3741405918,33.0371598927],[81.4741769245,33.4697141217],[82.57669026,33.8957139368],[83.68232503,34.3136110635],[84.7904374327,34.7250769452],[85.9002022206,35.1322363246],[87.0107941462,35.5372138657],[88.1214141864,35.9420661115],[89.2318038754,36.347447968],[90.3422120714,36.7526986228],[91.4529070052,37.1571064682],[92.5641573017,37.5599598179],[93.676231192,37.9605469852],[94.7893972221,38.3581562839],[95.9039237018,38.7520761062],[97.0200790197,39.1415947657],[98.1381316431,39.5260005759],[99.2573275954,39.9071745407],[100.3718747871,40.2997738409],[101.4749486041,40.7212571994],[102.5699815536,41.1667028994],[103.669841087,41.6102716121],[104.7910939762,41.8178029847],[105.8219984412,41.2272855521],[105.9545449019,40.1585380644],[105.090003462,39.3914515964],[104.0797245945,38.7741336607],[103.0644013925,38.1658407627],[102.0497247486,37.5585962181],[101.0367772736,36.9498433267],[100.0266414207,36.3370255457],[99.0203216782,35.7177662819],[98.0179827176,35.0916295613],[97.0192770041,34.4593617214],[96.0238499152,33.8217257167],[95.0313469069,33.1794848164],[94.0414176882,32.5333674026],[93.0537368537,31.8839097797],[92.0679875033,31.2315815491],[91.0838527369,30.5768524694],[90.101015733,29.9201921419],[89.1191595917,29.2620702466],[88.1379673341,28.6029564634],[87.1571221388,27.9433203935],[86.1763071056,27.2836317957],[85.1952200614,26.6243378268],[84.2140377265,25.9651521425],[83.2335107701,25.3049099146],[82.2544237246,24.6423943379],[81.2775608862,23.976388765],[80.3022071822,23.308192061],[79.3079761076,22.6721028343],[78.2606600919,22.1265824601],[77.1309606022,21.8429816749],[75.9480141774,21.8387228178],[74.7720945242,21.9150688881],[73.6026832147,22.0828354404],[72.4345917973,22.2707960265],[71.2654513176,22.445099116],[70.0961904254,22.6160579013],[68.9276483861,22.7934541531],[67.7596856503,22.9763192943],[66.5919467291,23.1613107533],[65.4240759763,23.3450858009],[64.2557257781,23.5243764444],[63.0869049549,23.699233794],[61.9181127976,23.8742814885],[60.7498845871,24.0544762108],[59.5827556829,24.2447748802],[58.4168545303,24.4455648803],[57.2457418515,24.5834206778],[56.0593307888,24.5237574607],[55.2444644638,23.8301748848],[55.0853045371,22.6365178036],[55.0148764818,21.4652461235],[55.0667090218,20.2866277005],[55.2070785207,19.1106048027],[55.4348976425,17.9520007002],[55.7934999564,16.8314075996],[56.3188155864,15.7736891647],[56.9939388888,14.8065500564],[57.6976676231,13.860002682],[58.1338283234,12.7725512367],[58.199137308,11.5924706158],[57.8962248321,10.4693587736],[57.3480691626,9.4158422577],[56.6542841928,8.4541713299],[55.7689977665,7.6892267727],[54.7859857745,7.0317860866],[53.798711303,6.3815585792],[52.8065064518,5.739837288],[51.8073315308,5.1087751491],[50.8046455079,4.4829337504],[49.8025035074,3.8560992826],[48.8022204599,3.2262753694],[47.8036634311,2.593692992],[46.8066865715,1.9586035285],[45.8111437951,1.3212583568],[44.8168892523,0.6819086974],[43.8237769359,0.0408058497],[42.8316609175,-0.6017988872],[41.8403952687,-1.2456541352],[40.8498377625,-1.890514974],[39.8601896902,-2.5367151568],[38.872266298,-3.1856234021],[37.8869467,-3.8387154533],[36.9051097743,-4.4974673688],[35.9273472673,-5.1628574908],[34.9471011423,-5.8234853698],[33.9503588077,-6.4550459333],[32.9426078958,-7.0717927558],[31.9565044741,-7.735265648],[30.8631200509,-8.1424559771],[29.6883430178,-8.1845976269],[28.5123947774,-8.0334950271],[27.3749532071,-7.7430132413],[26.3602679792,-7.1417037222],[25.4690891325,-6.3654371528],[24.6629136196,-5.5032845915],[23.8962232768,-4.6035833843],[23.1422372889,-3.6936803407],[22.3932123155,-2.7796464129],[21.6443467372,-1.8650902772],[20.8951431531,-0.9505082319],[20.145634088,-0.0360135231],[19.3958519092,0.878280603],[18.6458290627,1.7922608216],[17.8955979946,2.7058139653],[17.1451912296,3.6188265518],[16.3946411351,4.5311855712],[15.6439802357,5.4427775412],[14.8939283296,6.3549982712],[14.1509519428,7.284410438],[13.3264648173,8.1190423832],[12.2945343646,8.6550737099],[11.1198161596,8.8214571319],[9.9864220746,8.5442317562],[9.0351100158,7.8672848607],[8.379395821,6.8866929334],[8.1286370378,5.739876428],[8.2582279956,4.5706253011],[8.5493752401,3.4248389573],[8.897962676,2.2932271204],[9.2317670055,1.1618182287],[9.5658776035,0.0313350727],[9.9566193682,-1.0896991995],[10.4726435409,-2.1541660157],[11.1989228991,-3.0629029709],[12.1762235227,-3.7334201177],[13.2664150828,-4.1889083378],[14.3567917901,-4.627308287],[15.3992330255,-5.1880708159],[16.3371242389,-5.9063830189],[17.1219209652,-6.7815179316],[17.8220152712,-7.7369900917],[18.5121286414,-8.6963201799],[19.189970323,-9.6616440429],[19.8163344021,-10.6704423631],[20.2748639655,-11.7465054866],[20.3486038789,-12.8952956874],[19.9056580198,-14.0134590368],[19.080659003,-14.8215168135],[18.1250058696,-15.5193267454],[17.1762420058,-16.2294016721],[16.2500875941,-16.9579902902],[15.3155124126,-17.6874083298],[14.3356041359,-18.3441507174],[13.272812543,-18.8368425686],[12.1076155166,-19.0128109587],[10.9834025569,-18.7290474708],[9.9559043742,-18.1434829411],[9.0105108816,-17.4472327027],[8.2143522943,-16.5714527282],[7.5321513463,-15.608174698],[6.9514088329,-14.5837058881],[6.438662576,-13.5178993342],[5.9430324686,-12.442456623],[5.4370337268,-11.3743358477],[4.9280510524,-10.3085099994],[4.4235239589,-9.2399671106],[3.9223191187,-8.1692531727],[3.421645858,-7.097988991],[2.9187131877,-6.0277954497],[2.4107517759,-4.9602812262],[1.8968162774,-3.8960167252],[1.3791518475,-2.8337565542],[0.860325188,-1.7720723004],[0.3429030796,-0.7095353932]], +} \ No newline at end of file diff --git a/src/environments/environments/waypoints.py b/src/environments/environments/waypoints.py index 7803e733..5828d8cb 100644 --- a/src/environments/environments/waypoints.py +++ b/src/environments/environments/waypoints.py @@ -1,6 +1,6 @@ from collections import namedtuple -Waypoint = namedtuple('Waypoint', ['x', 'y', 'Y']) +Waypoint = namedtuple('Waypoint', ['x', 'y', 'Y', 'index']) waypoints = { @@ -24,46 +24,45 @@ Waypoint(-10.84, 13.99, -1.93), Waypoint(12.81, 8.14, -1.93), ], - # Waypoint(), 'austin_track': [ - Waypoint(0, 0, -0.64), - Waypoint(7.29, -5.57, -0.64), - Waypoint(20.05, -15.31, -0.64), - Waypoint(30.38, -23.2, -0.64), - Waypoint(37.88, -28.45, -0.39), - Waypoint(40.65, -26.31, 1.94), - Waypoint(40.24, -7.39, 0.66), - Waypoint(70.28, 22.93, 0.08), - Waypoint(106.15, 25.015, 0.08), - Waypoint(124.86, 41.54, 0.83), - Waypoint(130.48, 48.79, 0.83), - Waypoint(117.07, 47.39, -2.87), - Waypoint(80, 38.14, -2.87), - Waypoint(44.39, 33.27, -3.04), - Waypoint(44.23, 28.37, -0.85), - Waypoint(38.34, 15.79, -1.07), - Waypoint(14.71, 14.25, 2.3), + Waypoint(0, 0, -0.64, 0), + Waypoint(7.29, -5.57, -0.64, 8), + Waypoint(20.05, -15.31, -0.64, 22), + Waypoint(30.38, -23.2, -0.64, 34), + Waypoint(37.88, -28.45, -0.39, 41), + Waypoint(40.65, -26.31, 1.94, 43), + Waypoint(40.24, -7.39, 0.66, 64), + Waypoint(70.28, 22.93, 0.08, 104), + Waypoint(106.15, 25.015, 0.08, 140), + Waypoint(124.86, 41.54, 0.83, 162), + Waypoint(130.48, 48.79, 0.83, 171), + Waypoint(117.07, 47.39, -2.87, 187), + Waypoint(80, 38.14, -2.87, 219), + Waypoint(44.39, 33.27, -3.04, 251), + Waypoint(44.23, 28.37, -0.85, 259), + Waypoint(38.34, 15.79, -1.07, 299), + Waypoint(14.71, 14.25, 2.3, 335), ], 'budapest_track': [ - Waypoint(0, 0, 2.45), - Waypoint(-11.7, 9.66, 2.45), - Waypoint(-26.62, 21.92, 2.45), - Waypoint(-43.45, 36.17, 2.45), - Waypoint(0.6, 53.88, 1), - Waypoint(29.87, 88.89, -0.77), - Waypoint(49.35, 38.16, -1.01), - Waypoint(12.95, 11.73, -2.94), + Waypoint(0, 0, 2.45, 0), + Waypoint(-11.7, 9.66, 2.45, 12), + Waypoint(-26.62, 21.92, 2.45, 26), + Waypoint(-43.45, 36.17, 2.45, 42), + Waypoint(0.6, 53.88, 1, 103), + Waypoint(29.87, 88.89, -0.77, 154), + Waypoint(49.35, 38.16, -1.01, 200), + Waypoint(12.95, 11.73, -2.94, 253), ], 'hockenheim_track': [ - Waypoint(0, 0, 1.99), - Waypoint(-7.37, 14.80), - Waypoint(26.5, 40.58, -0.53), - Waypoint(63.19, 29.06, -0.02), - Waypoint(93.67, 37.96, 0.36), - Waypoint(80.3, 23.3, -2.53), - Waypoint(39.86, -2.53, -2.53), - Waypoint(9.98, 8.54, -2.53), - Waypoint(4.92, -10.3, 2.03), + Waypoint(0, 0, 1.99, 0), + Waypoint(-7.37, 14.8, 1.99, 15), + Waypoint(26.5, 40.58, -0.53, 70), + Waypoint(63.19, 29.06, -0.02, 103), + Waypoint(93.67, 37.96, 0.36, 130), + Waypoint(80.3, 23.3, -2.53, 138), + Waypoint(39.86, -2.53, -2.53, 221), + Waypoint(9.98, 8.54, -2.53, 254), + Waypoint(4.92, -10.3, 2.03, 296), ], From 15978986b706cd3a43322a670c240e5947ca22c1 Mon Sep 17 00:00:00 2001 From: retinfai Date: Sat, 26 Aug 2023 14:24:22 +1200 Subject: [PATCH 6/9] feat: update CarTrackEnvironment --- .../environments/CarTrackEnvironment.py | 93 +++++++++++-------- src/environments/environments/waypoints.py | 40 ++++---- src/reinforcement_learning/config/train.yaml | 4 +- 3 files changed, 75 insertions(+), 62 deletions(-) diff --git a/src/environments/environments/CarTrackEnvironment.py b/src/environments/environments/CarTrackEnvironment.py index 2b722c02..6a5dd230 100644 --- a/src/environments/environments/CarTrackEnvironment.py +++ b/src/environments/environments/CarTrackEnvironment.py @@ -10,6 +10,8 @@ from .termination import has_collided, has_flipped_over from .util import process_odom, reduce_lidar from .track_reset import track_info +from .goal_positions import goal_positions +from .waypoints import waypoints, Waypoint class CarTrackEnvironment(F1tenthEnvironment): """ @@ -39,7 +41,7 @@ class CarTrackEnvironment(F1tenthEnvironment): def __init__(self, car_name, - reward_range=1, + reward_range=0.5, max_steps=500, collision_range=0.2, step_length=0.5, @@ -65,10 +67,13 @@ def __init__(self, self.observation_mode = observation_mode # Reset Client ----------------------------------------------- - self.goal_number = 0 - self.all_goals = track_info[track]['goals'] + self.all_goals = goal_positions[track] - self.car_reset_positions = track_info[track]['reset'] + self.goals_reached = 0 + self.start_goal_index = 0 + self.car_waypoints = waypoints[track] + + self.steps_since_last_goal = 0 self.get_logger().info('Environment Setup Complete') @@ -78,15 +83,25 @@ def reset(self): self.set_velocity(0, 0) # TODO: Remove Hard coded-ness of 10x10 - self.goal_number = 0 - self.goal_position = self.generate_goal(self.goal_number) + + # Reset Information + # Generate a random reset position from the waypoints + car_x, car_y, car_yaw, index = self.car_waypoints[np.random.randint(low=0, high=len(self.car_waypoints))] + + self.start_goal_index = index + self.goal_position = self.all_goals[self.start_goal_index] + + self.steps_since_last_goal = 0 + self.goals_reached = 0 + + goal_x, goal_y = self.goal_position while not self.timer_future.done(): rclpy.spin_once(self) self.timer_future = Future() - self.call_reset_service() + self.call_reset_service(car_x=car_x, car_y=car_y, car_Y=car_yaw, goal_x=goal_x, goal_y=goal_y) observation, _ = self.get_observation() @@ -118,26 +133,20 @@ def step(self, action): def is_terminated(self, state): return has_collided(state[8:], self.COLLISION_RANGE) \ or has_flipped_over(state[2:6]) or \ - self.goal_number >= len(self.all_goals) - - - def generate_goal(self, number): - print("Goal", number, "spawned") - return self.all_goals[number % len(self.all_goals)] + self.goals_reached == len(self.all_goals) or \ + self.steps_since_last_goal >= 10 - def call_reset_service(self): + def call_reset_service(self, car_x, car_y, car_Y, goal_x, goal_y): """ Reset the car and goal position """ - x, y = self.goal_position - request = Reset.Request() - request.gx = x - request.gy = y - request.cx = self.car_reset_positions['x'] - request.cy = self.car_reset_positions['y'] - request.cyaw = self.car_reset_positions['yaw'] + request.gx = float(goal_x) + request.gy = float(goal_y) + request.cx = float(car_x) + request.cy = float(car_y) + request.cyaw = float(car_Y) request.flag = "car_and_goal" future = self.reset_client.call_async(request) @@ -145,14 +154,11 @@ def call_reset_service(self): return future.result() - def update_goal_service(self, number): + def update_goal_service(self, x, y): """ Reset the goal position """ - x, y = self.generate_goal(number) - self.goal_position = [x, y] - request = Reset.Request() request.gx = x request.gy = y @@ -187,31 +193,38 @@ def get_observation(self): def compute_reward(self, state, next_state): - # TESTING ONLY - - # if self.goal_number < len(self.all_goals) - 1: - # self.goal_number += 1 - # else: - # self.goal_number = 0 - - # self.update_goal_service(self.goal_number) - # ============================================================== - reward = 0 goal_position = self.goal_position + prev_distance = math.dist(goal_position, state[:2]) current_distance = math.dist(goal_position, next_state[:2]) - reward += 10 * (prev_distance - current_distance) / prev_distance + # reward += 10 * (prev_distance - current_distance) / prev_distance + + self.steps_since_last_goal += 1 + if current_distance < self.REWARD_RANGE: - reward += 50 - self.goal_number += 1 - self.step_counter = 0 - self.update_goal_service(self.goal_number) + print(f'Goal #{self.goals_reached} Reached') + reward += 2 + self.goals_reached += 1 + # Updating Goal Position + new_x, new_y = self.all_goals[(self.start_goal_index + self.goals_reached) % len(self.all_goals)] + self.goal_position = [new_x, new_y] + + self.update_goal_service(new_x, new_y) + + self.steps_since_last_goal = 0 + + if self.steps_since_last_goal >= 10: + reward -= 10 + + if self.goals_reached >= len(self.all_goals): + reward += 100 + if has_collided(next_state[8:], self.COLLISION_RANGE) or has_flipped_over(next_state[2:6]): reward -= 25 # TODO: find optimal value for this diff --git a/src/environments/environments/waypoints.py b/src/environments/environments/waypoints.py index 5828d8cb..63f7f3b3 100644 --- a/src/environments/environments/waypoints.py +++ b/src/environments/environments/waypoints.py @@ -4,26 +4,26 @@ waypoints = { - 'track_1': [ - Waypoint(-14.11, 3.71, -1.81), - Waypoint(-15.75, -1.71, -1.96), - Waypoint(-16.71, -5.48, -1.35), - Waypoint(-7.53, -5.43, -0.27), - Waypoint(-0.22, -8.55, -0.87), - Waypoint(1.9, -12.05, -0.66), - Waypoint(5.5, -12.38, 0.79), - Waypoint(7.32, -7.3, 0.97), - Waypoint(9.62, -1.45, 1.23), - Waypoint(10.76, 4.08, 1.64), - Waypoint(8.48, 9.77, 2.07), - Waypoint(4.93, 13.27, -3.06), - Waypoint(1.5, 9.96, -1.9), - Waypoint(-0.89, 5.67, -2.94), - Waypoint(-5.52, 10.83, 2.02), - Waypoint(-6.67, 15.67, 2.38), - Waypoint(-10.84, 13.99, -1.93), - Waypoint(12.81, 8.14, -1.93), - ], + # 'track_1': [ + # Waypoint(-14.11, 3.71, -1.81), + # Waypoint(-15.75, -1.71, -1.96), + # Waypoint(-16.71, -5.48, -1.35), + # Waypoint(-7.53, -5.43, -0.27), + # Waypoint(-0.22, -8.55, -0.87), + # Waypoint(1.9, -12.05, -0.66), + # Waypoint(5.5, -12.38, 0.79), + # Waypoint(7.32, -7.3, 0.97), + # Waypoint(9.62, -1.45, 1.23), + # Waypoint(10.76, 4.08, 1.64), + # Waypoint(8.48, 9.77, 2.07), + # Waypoint(4.93, 13.27, -3.06), + # Waypoint(1.5, 9.96, -1.9), + # Waypoint(-0.89, 5.67, -2.94), + # Waypoint(-5.52, 10.83, 2.02), + # Waypoint(-6.67, 15.67, 2.38), + # Waypoint(-10.84, 13.99, -1.93), + # Waypoint(12.81, 8.14, -1.93), + # ], 'austin_track': [ Waypoint(0, 0, -0.64, 0), Waypoint(7.29, -5.57, -0.64, 8), diff --git a/src/reinforcement_learning/config/train.yaml b/src/reinforcement_learning/config/train.yaml index 8f4a0bea..5d3ce565 100644 --- a/src/reinforcement_learning/config/train.yaml +++ b/src/reinforcement_learning/config/train.yaml @@ -1,11 +1,11 @@ train: ros__parameters: environment: 'CarTrack' # CarGoal, CarWall, CarBlock, CarTrack, CarBeat - track: 'hockenheim_track' # track_1, track_2, track_3 -> only applies for CarTrack + track: 'austin_track' # track_1, track_2, track_3 -> only applies for CarTrack algorithm: 'TD3' max_steps_exploration: 1000 max_steps_training: 1000000 - reward_range: 3.0 + # reward_range: 3.0 collision_range: 0.2 observation_mode: 'lidar_only' evaluate_every_n_steps: 2000 From 2e88976392773923de7db854090e813b9a2b7502 Mon Sep 17 00:00:00 2001 From: retinfai Date: Mon, 28 Aug 2023 09:05:05 +1200 Subject: [PATCH 7/9] chore: clean up CarTrackEnvironment --- .../environments/CarTrackEnvironment.py | 120 ++++++++---------- src/f1tenth | 2 +- 2 files changed, 57 insertions(+), 65 deletions(-) diff --git a/src/environments/environments/CarTrackEnvironment.py b/src/environments/environments/CarTrackEnvironment.py index 6a5dd230..34b3cd76 100644 --- a/src/environments/environments/CarTrackEnvironment.py +++ b/src/environments/environments/CarTrackEnvironment.py @@ -3,15 +3,13 @@ import numpy as np import rclpy from rclpy import Future -from sensor_msgs.msg import LaserScan - +import random from environment_interfaces.srv import Reset from environments.F1tenthEnvironment import F1tenthEnvironment from .termination import has_collided, has_flipped_over from .util import process_odom, reduce_lidar -from .track_reset import track_info from .goal_positions import goal_positions -from .waypoints import waypoints, Waypoint +from .waypoints import waypoints class CarTrackEnvironment(F1tenthEnvironment): """ @@ -79,28 +77,21 @@ def __init__(self, def reset(self): self.step_counter = 0 + self.steps_since_last_goal = 0 + self.goals_reached = 0 self.set_velocity(0, 0) - - # TODO: Remove Hard coded-ness of 10x10 - # Reset Information - # Generate a random reset position from the waypoints - car_x, car_y, car_yaw, index = self.car_waypoints[np.random.randint(low=0, high=len(self.car_waypoints))] + # New random starting point for car + car_x, car_y, car_yaw, index = random.choice(self.car_waypoints) + # Update goal pointer to reflect starting position self.start_goal_index = index self.goal_position = self.all_goals[self.start_goal_index] - self.steps_since_last_goal = 0 - self.goals_reached = 0 + self.sleep() goal_x, goal_y = self.goal_position - - while not self.timer_future.done(): - rclpy.spin_once(self) - - self.timer_future = Future() - self.call_reset_service(car_x=car_x, car_y=car_y, car_Y=car_yaw, goal_x=goal_x, goal_y=goal_y) observation, _ = self.get_observation() @@ -117,15 +108,13 @@ def step(self, action): lin_vel, ang_vel = action self.set_velocity(lin_vel, ang_vel) - while not self.timer_future.done(): - rclpy.spin_once(self) - - self.timer_future = Future() + self.sleep() next_state, full_next_state = self.get_observation() + reward = self.compute_reward(full_state, full_next_state) terminated = self.is_terminated(full_next_state) - truncated = self.step_counter >= self.MAX_STEPS + truncated = self.steps_since_last_goal >= 10 info = {} return next_state, reward, terminated, truncated, info @@ -133,41 +122,7 @@ def step(self, action): def is_terminated(self, state): return has_collided(state[8:], self.COLLISION_RANGE) \ or has_flipped_over(state[2:6]) or \ - self.goals_reached == len(self.all_goals) or \ - self.steps_since_last_goal >= 10 - - def call_reset_service(self, car_x, car_y, car_Y, goal_x, goal_y): - """ - Reset the car and goal position - """ - - request = Reset.Request() - request.gx = float(goal_x) - request.gy = float(goal_y) - request.cx = float(car_x) - request.cy = float(car_y) - request.cyaw = float(car_Y) - request.flag = "car_and_goal" - - future = self.reset_client.call_async(request) - rclpy.spin_until_future_complete(self, future) - - return future.result() - - def update_goal_service(self, x, y): - """ - Reset the goal position - """ - - request = Reset.Request() - request.gx = x - request.gy = y - request.flag = "goal_only" - - future = self.reset_client.call_async(request) - rclpy.spin_until_future_complete(self, future) - - return future.result() + self.goals_reached == len(self.all_goals) def get_observation(self): @@ -197,12 +152,7 @@ def compute_reward(self, state, next_state): goal_position = self.goal_position - - prev_distance = math.dist(goal_position, state[:2]) current_distance = math.dist(goal_position, next_state[:2]) - - # reward += 10 * (prev_distance - current_distance) / prev_distance - self.steps_since_last_goal += 1 @@ -222,10 +172,52 @@ def compute_reward(self, state, next_state): if self.steps_since_last_goal >= 10: reward -= 10 - if self.goals_reached >= len(self.all_goals): + if self.goals_reached == len(self.all_goals): reward += 100 if has_collided(next_state[8:], self.COLLISION_RANGE) or has_flipped_over(next_state[2:6]): - reward -= 25 # TODO: find optimal value for this + reward -= 25 return reward + + + # Utility Functions -------------------------------------------- + + def call_reset_service(self, car_x, car_y, car_Y, goal_x, goal_y): + """ + Reset the car and goal position + """ + + request = Reset.Request() + request.gx = float(goal_x) + request.gy = float(goal_y) + request.cx = float(car_x) + request.cy = float(car_y) + request.cyaw = float(car_Y) + request.flag = "car_and_goal" + + future = self.reset_client.call_async(request) + rclpy.spin_until_future_complete(self, future) + + return future.result() + + def update_goal_service(self, x, y): + """ + Reset the goal position + """ + + request = Reset.Request() + request.gx = x + request.gy = y + request.flag = "goal_only" + + future = self.reset_client.call_async(request) + rclpy.spin_until_future_complete(self, future) + + return future.result() + + def sleep(self): + while not self.timer_future.done(): + rclpy.spin_once(self) + + self.timer_future = Future() diff --git a/src/f1tenth b/src/f1tenth index 97ca2618..a93572cd 160000 --- a/src/f1tenth +++ b/src/f1tenth @@ -1 +1 @@ -Subproject commit 97ca261835af7eac35b10ede4850b4bcfb62ae10 +Subproject commit a93572cdad03a05baf76479d7f3a9ed3bb14c646 From 68d5939e76e27431798c74d9ad4b9f88fb25019b Mon Sep 17 00:00:00 2001 From: retinfai Date: Mon, 28 Aug 2023 09:10:50 +1200 Subject: [PATCH 8/9] chore: clean upo --- .../environments/CarTrackEnvironment.py | 26 +------------------ src/reinforcement_learning/config/train.yaml | 2 +- 2 files changed, 2 insertions(+), 26 deletions(-) diff --git a/src/environments/environments/CarTrackEnvironment.py b/src/environments/environments/CarTrackEnvironment.py index 34b3cd76..9935ff7f 100644 --- a/src/environments/environments/CarTrackEnvironment.py +++ b/src/environments/environments/CarTrackEnvironment.py @@ -12,30 +12,6 @@ from .waypoints import waypoints class CarTrackEnvironment(F1tenthEnvironment): - """ - CarTrack Reinforcement Learning Environment: - - Task: - Here the agent learns to drive the f1tenth car to a goal position - - Observation: - It's position (x, y), orientation (w, x, y, z), lidar points (approx. ~600 rays) and the goal's position (x, y) - - Action: - It's linear and angular velocity - - Reward: - It's progress toward the goal plus, - 50+ if it reaches the goal plus, - -25 if it collides with the wall - - Termination Conditions: - When the agent is within REWARD_RANGE units or, - When the agent is within COLLISION_RANGE units - - Truncation Condition: - When the number of steps surpasses MAX_STEPS - """ def __init__(self, car_name, @@ -44,7 +20,7 @@ def __init__(self, collision_range=0.2, step_length=0.5, track='track_1', - observation_mode='full', + observation_mode='lidar_only', ): super().__init__('car_track', car_name, max_steps, step_length) diff --git a/src/reinforcement_learning/config/train.yaml b/src/reinforcement_learning/config/train.yaml index 5d3ce565..e8670423 100644 --- a/src/reinforcement_learning/config/train.yaml +++ b/src/reinforcement_learning/config/train.yaml @@ -1,7 +1,7 @@ train: ros__parameters: environment: 'CarTrack' # CarGoal, CarWall, CarBlock, CarTrack, CarBeat - track: 'austin_track' # track_1, track_2, track_3 -> only applies for CarTrack + track: 'hockenheim_track' # track_1, track_2, track_3 -> only applies for CarTrack algorithm: 'TD3' max_steps_exploration: 1000 max_steps_training: 1000000 From c56195d81bf5ba6073d4907b3432a103e7000168 Mon Sep 17 00:00:00 2001 From: retinfai Date: Mon, 28 Aug 2023 10:47:10 +1200 Subject: [PATCH 9/9] feat: add multitrack training --- src/controllers/controllers/ftg_policy.py | 2 +- .../environments/CarTrackEnvironment.py | 48 ++++- src/environments/environments/waypoints.py | 23 +-- src/environments/worlds/multi_track.sdf | 175 ++++++++++++++++++ src/reinforcement_learning/config/train.yaml | 2 +- .../reinforcement_learning/train.py | 1 + 6 files changed, 226 insertions(+), 25 deletions(-) create mode 100644 src/environments/worlds/multi_track.sdf diff --git a/src/controllers/controllers/ftg_policy.py b/src/controllers/controllers/ftg_policy.py index e1e79380..bf4357fa 100644 --- a/src/controllers/controllers/ftg_policy.py +++ b/src/controllers/controllers/ftg_policy.py @@ -214,7 +214,7 @@ def select_action(self,state,goal_pos): dmin = min(border_ranges) alpha = 1 goal_angle = self.constrain_angle(goal_angle) - final_heading_angle = ((alpha/dmin)*gap_centre_angle+goal_angle)/((alpha/dmin)+1) + final_heading_angle = gap_centre_angle #((alpha/dmin)*gap_centre_angle+goal_angle)/((alpha/dmin)+1) # Convert to angular velocity ang = self.angle_to_ang_vel(final_heading_angle, lin) action = np.asarray([lin, ang]) diff --git a/src/environments/environments/CarTrackEnvironment.py b/src/environments/environments/CarTrackEnvironment.py index 9935ff7f..edeb7641 100644 --- a/src/environments/environments/CarTrackEnvironment.py +++ b/src/environments/environments/CarTrackEnvironment.py @@ -39,16 +39,53 @@ def __init__(self, self.REWARD_RANGE = reward_range self.observation_mode = observation_mode + self.track = track # Reset Client ----------------------------------------------- - self.all_goals = goal_positions[track] self.goals_reached = 0 self.start_goal_index = 0 - self.car_waypoints = waypoints[track] - self.steps_since_last_goal = 0 + if track != 'multi_track': + self.all_goals = goal_positions[track] + self.car_waypoints = waypoints[track] + else: + austin_gp = goal_positions['austin_track'] + budapest_gp = goal_positions['budapest_track'] + budapest_gp = [[x + 200, y] for x, y in budapest_gp] + hockenheim_gp = goal_positions['hockenheim_track'] + hockenheim_gp = [[x + 300, y] for x, y in hockenheim_gp] + + self.all_car_goals = { + 'austin_track': austin_gp, + 'budapest_track': budapest_gp, + 'hockenheim_track': hockenheim_gp + } + + austin_wp = waypoints['austin_track'] + + budapest_wp = [] + for x, y, yaw, index in waypoints['budapest_track']: + x += 200 + budapest_wp.append((x, y, yaw, index)) + + hockenheim_wp = [] + for x, y, yaw, index in waypoints['hockenheim_track']: + x += 300 + hockenheim_wp.append((x, y, yaw, index)) + + self.all_car_waypoints = { + 'austin_track': austin_wp, + 'budapest_track': budapest_wp, + 'hockenheim_track': hockenheim_wp + } + + self.current_track = 'austin_track' + + self.all_goals = self.all_car_goals[self.current_track] + self.car_waypoints = self.all_car_waypoints[self.current_track] + self.get_logger().info('Environment Setup Complete') def reset(self): @@ -58,6 +95,11 @@ def reset(self): self.set_velocity(0, 0) + if self.track == 'multi_track': + self.current_track = random.choice(list(self.all_car_goals.keys())) + self.all_goals = self.all_car_goals[self.current_track] + self.car_waypoints = self.all_car_waypoints[self.current_track] + # New random starting point for car car_x, car_y, car_yaw, index = random.choice(self.car_waypoints) diff --git a/src/environments/environments/waypoints.py b/src/environments/environments/waypoints.py index 63f7f3b3..35bd9020 100644 --- a/src/environments/environments/waypoints.py +++ b/src/environments/environments/waypoints.py @@ -4,26 +4,6 @@ waypoints = { - # 'track_1': [ - # Waypoint(-14.11, 3.71, -1.81), - # Waypoint(-15.75, -1.71, -1.96), - # Waypoint(-16.71, -5.48, -1.35), - # Waypoint(-7.53, -5.43, -0.27), - # Waypoint(-0.22, -8.55, -0.87), - # Waypoint(1.9, -12.05, -0.66), - # Waypoint(5.5, -12.38, 0.79), - # Waypoint(7.32, -7.3, 0.97), - # Waypoint(9.62, -1.45, 1.23), - # Waypoint(10.76, 4.08, 1.64), - # Waypoint(8.48, 9.77, 2.07), - # Waypoint(4.93, 13.27, -3.06), - # Waypoint(1.5, 9.96, -1.9), - # Waypoint(-0.89, 5.67, -2.94), - # Waypoint(-5.52, 10.83, 2.02), - # Waypoint(-6.67, 15.67, 2.38), - # Waypoint(-10.84, 13.99, -1.93), - # Waypoint(12.81, 8.14, -1.93), - # ], 'austin_track': [ Waypoint(0, 0, -0.64, 0), Waypoint(7.29, -5.57, -0.64, 8), @@ -64,6 +44,9 @@ Waypoint(9.98, 8.54, -2.53, 254), Waypoint(4.92, -10.3, 2.03, 296), ], + 'multi_track': [ + Waypoint(4.92, -10.3, 2.03, 0), + ] diff --git a/src/environments/worlds/multi_track.sdf b/src/environments/worlds/multi_track.sdf new file mode 100644 index 00000000..7a2b7510 --- /dev/null +++ b/src/environments/worlds/multi_track.sdf @@ -0,0 +1,175 @@ + + + + + + 0.001 + 10.0 + + + + + + ogre2 + + + + + + + + true + 0 0 10 0 0 0 + 1 1 1 1 + 0.5 0.5 0.5 1 + + 1000 + 0.9 + 0.01 + 0.001 + + -0.5 0.1 -0.9 + + + + 100 0 0 0 0 0 + true + + + + + 0 0 1 + 1000 1000 + + + + + + 50 + + + 1 + 0.1 + + + + + + + + 0 0 1 + 1000 1000 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + true + + + + + + + + model://src/environments/meshes/austin_track.stl + 0.001 0.001 0.001 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + + model://src/environments/meshes/austin_track.stl + 0.001 0.001 0.001 + + + + + + + + 200 0 0 0 0 0 + true + + + + + + + + model://src/environments/meshes/budapest_track.stl + 0.001 0.001 0.001 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + + model://src/environments/meshes/budapest_track.stl + 0.001 0.001 0.001 + + + + + + + true + 300 0 0 0 0 0 + + + + + + + + model://src/environments/meshes/hockenheim_track.stl + 0.001 0.001 0.001 + + + + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + 0.8 0.8 0.8 1 + + + + + + + model://src/environments/meshes/hockenheim_track.stl + 0.001 0.001 0.001 + + + + + + + diff --git a/src/reinforcement_learning/config/train.yaml b/src/reinforcement_learning/config/train.yaml index e8670423..579d3c3c 100644 --- a/src/reinforcement_learning/config/train.yaml +++ b/src/reinforcement_learning/config/train.yaml @@ -1,7 +1,7 @@ train: ros__parameters: environment: 'CarTrack' # CarGoal, CarWall, CarBlock, CarTrack, CarBeat - track: 'hockenheim_track' # track_1, track_2, track_3 -> only applies for CarTrack + track: 'multi_track' # track_1, track_2, track_3 -> only applies for CarTrack algorithm: 'TD3' max_steps_exploration: 1000 max_steps_training: 1000000 diff --git a/src/reinforcement_learning/reinforcement_learning/train.py b/src/reinforcement_learning/reinforcement_learning/train.py index 635a72a0..637b5218 100644 --- a/src/reinforcement_learning/reinforcement_learning/train.py +++ b/src/reinforcement_learning/reinforcement_learning/train.py @@ -290,6 +290,7 @@ def evaluate_policy(env, agent, num_episodes): while not truncated and not terminated: action = agent.select_action_from_policy(state) + action = hlp.denormalize(action, env.MAX_ACTIONS, env.MIN_ACTIONS) next_state, reward, terminated, truncated, _ = env.step(action) episode_reward += reward