{"id":1220,"date":"2018-02-05T08:40:38","date_gmt":"2018-02-04T22:40:38","guid":{"rendered":"https:\/\/www.cognav.net\/?p=1220"},"modified":"2018-02-05T10:22:58","modified_gmt":"2018-02-05T00:22:58","slug":"how-to-build-cognitive-map-experience-map-for-autonomous-navigation-in-ratslam","status":"publish","type":"post","link":"https:\/\/braininspirednavigation.com\/?p=1220","title":{"rendered":"How to build cognitive map (experience map) for autonomous navigation in RatSLAM?"},"content":{"rendered":"<p>The excerpt note is about how to build Experience Map in RatSLAM from Michael et al 2008.<\/p>\n<p style=\"text-align: justify;\">An experience map is a fine-grained topological map composed of many individual experiences, e, connected by transitions, t. Each experience <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE1.png\" alt=\"\" \/> is defined by its associated union of pose code <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE2.png\" alt=\"\" \/> and local view code <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE3.png\" alt=\"\" \/>, where code refers to the pattern of activity in a cell group. The experience is positioned at position <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE4.png\" alt=\"\" \/> in experience space\u2014a space that is a useful manifold to the real world. An experience can then be defined as a 3-tuple<\/p>\n<p style=\"text-align: center;\"><img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE5.png\" alt=\"\" \/><\/p>\n<p style=\"text-align: justify;\">The first experience is created at an arbitrary starting point and subsequent experiences build out from the first experience over transitions.<\/p>\n<p style=\"text-align: justify;\"><strong>1) Experience Creation <\/strong><\/p>\n<p style=\"text-align: justify;\">When the pose code or local view code is sufficiently different from a stored experience, a new experience is created. The pose and local view codes of existing experiences are compared to the current pose and local view code through a score metric S:<\/p>\n<p style=\"text-align: center;\"><img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE6.png\" alt=\"\" \/><\/p>\n<p style=\"text-align: justify;\">Where <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE7.png\" alt=\"\" \/> and <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE8.png\" alt=\"\" \/> weight the respective contributions of pose and local view codes to the matching score. When the score for all current experiences exceeds a threshold <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE9.png\" alt=\"\" \/>, a new experience is created, with an associated transition. The transition <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE10.png\" alt=\"\" \/> stores the change in position as measured form odometry<\/p>\n<p style=\"text-align: center;\"><img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE11.png\" alt=\"\" \/><\/p>\n<p style=\"text-align: justify;\">Where <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE12.png\" alt=\"\" \/> is the change in the vehicle&#8217;s pose according to odometry. <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE13.png\" alt=\"\" \/> forms the link between previous experience <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE14.png\" alt=\"\" \/> and new experience <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE15.png\" alt=\"\" \/> such that<\/p>\n<p style=\"text-align: center;\"><img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE16.png\" alt=\"\" \/><\/p>\n<p style=\"text-align: justify;\">Note that this equation holds only at experience creation; <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE17.png\" alt=\"\" \/> is likely to change under loop closure.<\/p>\n<p><strong>2) Loop Closure <\/strong><\/p>\n<p style=\"text-align: justify;\">There is no explicit loop detection; rather, loop closure occurs when the pose code and local view code after a change in experience sufficiently match a stored experience. When this occurs, it is highly unlikely that the summed change in position of the transitions leading to the experience at closure will match up to the same position. To move toward a match, the positions of all experiences are updated using<\/p>\n<p style=\"text-align: center;\"><img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE18.png\" alt=\"\" \/><\/p>\n<p style=\"text-align: justify;\">Where is <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE19.png\" alt=\"\" \/> correction rate constant, <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE20.png\" alt=\"\" \/> is the number of links from experience <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE21.png\" alt=\"\" \/> to other experiences, and <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE22.png\" alt=\"\" \/> is the number of links from other experiences to experience <img decoding=\"async\" src=\"https:\/\/www.braininspirednavigation.com\/wp-content\/uploads\/2018\/02\/020418_2242_HowtobuildE23.png\" alt=\"\" \/>. In these experiments, is set to 0.5 (larger values can lead to map instability). The map update process occurs can lead to map instability). The map update process occurs continually, but is most apparent during loop closures.<\/p>\n<p><strong>3) Reading the Experience Map <\/strong><\/p>\n<p style=\"text-align: justify;\">A visual readout of the experience map can be obtained by plotting the positions of the experiences joined by their respective transitions. In other work, we have stored behavioral and temporal data in the transition tuple to aid path planning and frequency of use data in both the experience and transition tuples to aid map maintenance.<\/p>\n<p>Milford, Michael J., and Gordon F. Wyeth. &#8220;<a href=\"http:\/\/ieeexplore.ieee.org\/abstract\/document\/4627450\/?reload=true\"><strong>Mapping a suburb with a single camera using a biologically inspired SLAM system<\/strong><\/a>.&#8221; IEEE Transactions on Robotics 24, no. 5 (2008): 1038-1053.<\/p>\n<p>Michael Milford.\u00a0<a href=\"http:\/\/www.springer.com\/gp\/book\/9783540775195\"><strong>Robot Navigation from Nature: Simultaneous Localisation, Mapping, and Path Planning Based on Hippocampal Models<\/strong><\/a>. Springer-Verlag Berlin Heidelberg Press, pp. 129-143, 2008.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The excerpt note is about how to build Experience Map in RatSLAM from Michael et al 2008. An experience map is a fine-grained topological map composed of many individual experiences, e, connected by transitions, t. Each experience is defined by its associated union of pose code and local view code , where code refers to [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[126,114,96],"tags":[287,147,303,304,115],"_links":{"self":[{"href":"https:\/\/braininspirednavigation.com\/index.php?rest_route=\/wp\/v2\/posts\/1220"}],"collection":[{"href":"https:\/\/braininspirednavigation.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/braininspirednavigation.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/braininspirednavigation.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/braininspirednavigation.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1220"}],"version-history":[{"count":5,"href":"https:\/\/braininspirednavigation.com\/index.php?rest_route=\/wp\/v2\/posts\/1220\/revisions"}],"predecessor-version":[{"id":1225,"href":"https:\/\/braininspirednavigation.com\/index.php?rest_route=\/wp\/v2\/posts\/1220\/revisions\/1225"}],"wp:attachment":[{"href":"https:\/\/braininspirednavigation.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1220"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/braininspirednavigation.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1220"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/braininspirednavigation.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1220"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}