Skip to content

Commit

Permalink
report for action+cleanupAction
Browse files Browse the repository at this point in the history
  • Loading branch information
saptadeb committed Apr 29, 2020
1 parent 0867b96 commit 209087e
Show file tree
Hide file tree
Showing 5 changed files with 54 additions and 29 deletions.
28 changes: 15 additions & 13 deletions report/main.aux
Original file line number Diff line number Diff line change
@@ -1,18 +1,20 @@
\relax
\@writefile{toc}{\contentsline {section}{\numberline {I}MAPPING AND SLAM}{1}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Final png showing the particle distribution you obtained at the end of drive square with action only\relax }}{1}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Final png showing the particle distribution you obtained at the end of obstacle slam with action only\relax }}{1}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Final png showing the particle distribution you obtained at the end of straight line calm with action only\relax }}{1}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Final png showing the particle distribution you obtained at the end of drive square with localization only\relax }}{2}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Final png showing the particle distribution you obtained at the end of obstacle slam with localization only\relax }}{2}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces Final png showing the particle distribution you obtained at the end of straight line with localization only\relax }}{2}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Final png showing the particle distribution you obtained at the end of Obstacle Slam with Full SLAM\relax }}{2}\protected@file@percent }
\newlabel{eq:RTR}{{1}{1}}
\newlabel{eq:fullRTR}{{2}{1}}
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Particle distribution obtained at the end of drive square with action only\relax }}{2}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Particle distribution obtained at the end of obstacle slam with action only\relax }}{2}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Particle distribution obtained at the end of straight line calm with action only\relax }}{2}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Particle distribution obtained at the end of drive square with localization only\relax }}{3}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Particle distribution obtained at the end of obstacle slam with localization only\relax }}{3}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces Particle distribution obtained at the end of straight line with localization only\relax }}{3}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Particle distribution obtained at the end of Obstacle Slam with Full SLAM\relax }}{4}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces Particle distribution obtained at the end of Maze LowRes with Full SLAM\relax }}{4}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Particle distribution obtained at the end of Maze HiRes with Full SLAM\relax }}{4}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {10}{\ignorespaces Particle distribution obtained at the end of Maze Hard with Full SLAM\relax }}{5}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {II}PATH PLANNING AND EXPLORATION}{5}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces Obstacle distance grip obtained at the end of Obstacle Slam with Full SLAM\relax }}{5}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces Path obtained at the end of Maze HiRes with A* path planning\relax }}{5}\protected@file@percent }
\citation{*}
\bibstyle{IEEEtran}
\bibdata{references.bib}
\@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces Final png showing the particle distribution you obtained at the end of Maze LowRes with Full SLAM\relax }}{3}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Final png showing the particle distribution you obtained at the end of Maze HiRes with Full SLAM\relax }}{3}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {10}{\ignorespaces Final png showing the particle distribution you obtained at the end of Maze Hard with Full SLAM\relax }}{3}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {II}PATH PLANNING AND EXPLORATION}{3}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces Final png showing the obstacle distance grip obtained at the end of Obstacle Slam\relax }}{3}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces Final png showing the path you obtained at the end of Maze HiRes with A* path planning\relax }}{3}\protected@file@percent }
Binary file modified report/main.pdf
Binary file not shown.
Binary file modified report/main.synctex.gz
Binary file not shown.
44 changes: 31 additions & 13 deletions report/main.tex
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
\documentclass[journal,twocolumn]{IEEEtran}
\documentclass[journal,onecolumn]{IEEEtran}

% include a few useful packages; you will probably want more
\usepackage{graphicx}
Expand Down Expand Up @@ -60,24 +60,42 @@ \subsection*{1.2.1 - MCL - Action Model}
\end{itemize}
\end{itemize}

Out of the two most widely used motion models, odometry motion model is used over the velocity motion model for this project. Odometry information is obtained by integrating the wheel encoder information over periodic time intervals. It is however observed that even though the odometry action model isn't perfect, it provides a better approximation of the robot motion than the velocity model for predicting the robot motion.

In order to predict the robot pose the odometry information (i.e. x, y and $\theta$) is changed to an RTR information given by equation \ref{eq:RTR}, i.e rotation-translate-rotation which is sampled with a Gaussian noise distribution in the form described in equation \ref{eq:fullRTR}. In the initial phases of the project the values of the noise constants were chosen as $k_1 = 0.8$ and $k_2 = 0.3$. On further inspection and to reduce the computation load to calculate the standard deviation for each odometry information, the standard deviations are given as constants, where ${\sigma}^2_{rot1} = 0.05$, ${\sigma}^2_{trans} = 0.005$ and ${\sigma}^2_{rot2} = 0.05$. These noise constants are chosen and tuned in order to achieve a better spread of distribution of the particles and to achieve a more accurate proposal which is used for the sensor model. It is expected to see the tuning parameters differ from one mbot to another, but the difference should be small as the make and model of the mbot is consistent The elements which could factor into a possible drastic difference between the tuning parameters from one mbot to another could be the systematic errors related to the specific mbot.

\begin{equation}\label{eq:RTR}
\begin{split}
\delta_{rot1} &= atan2(y_t - y_{t-1}, x_t - x_{t-1}) - \theta_{t-1} \\
\delta_{trans} &= \sqrt{(x_t - x_{t-1})^2 - (y_t - y_{t-1})^2} \\
\delta_{rot2} &= \theta_t - \theta_{t-1} - \delta_{rot1}
\end{split}
\end{equation}

\begin{equation}\label{eq:fullRTR}
\begin{split}
\hat{\delta}_{rot1} & \sim \mathcal{N}(\delta_{rot1},\,k_1 \cdot \mid\delta_{rot1}\mid) \\
\hat{\delta}_{trans} &\sim \mathcal{N}(\delta_{trans},\,k_2 \cdot \mid\delta_{trans}\mid) \\
\hat{\delta}_{rot2} &\sim \mathcal{N}(\delta_{rot2},\,k_1 \cdot \mid\delta_{rot2}\mid)
\end{split}
\end{equation}

\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/1211.png}
\caption{Final png showing the particle distribution you obtained at the end of drive square with action only}
\caption{Particle distribution obtained at the end of drive square with action only}
\end{figure}

\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/1212.png}
\caption{Final png showing the particle distribution you obtained at the end of obstacle slam with action only}
\caption{Particle distribution obtained at the end of obstacle slam with action only}
\end{figure}

\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/1213.png}
\caption{Final png showing the particle distribution you obtained at the end of straight line calm with action only}
\caption{Particle distribution obtained at the end of straight line calm with action only}
\end{figure}

\subsection*{1.2.2 - MCL - Sensor Model \& Particle Filter}
Expand All @@ -94,20 +112,20 @@ \subsection*{1.2.2 - MCL - Sensor Model \& Particle Filter}
\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/1221.png}
\caption{Final png showing the particle distribution you obtained at the end of drive square with localization only}
\caption{Particle distribution obtained at the end of drive square with localization only}
\end{figure}

\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/1222.png}
\caption{Final png showing the particle distribution you obtained at the end of obstacle slam with localization only}
\caption{Particle distribution obtained at the end of obstacle slam with localization only}
\end{figure}


\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/1223.png}
\caption{Final png showing the particle distribution you obtained at the end of straight line with localization only}
\caption{Particle distribution obtained at the end of straight line with localization only}
\end{figure}

\subsection*{1.3 - Simultaneous Localization and Mapping (SLAM)}
Expand All @@ -122,25 +140,25 @@ \subsection*{1.3 - Simultaneous Localization and Mapping (SLAM)}
\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/131.png}
\caption{Final png showing the particle distribution you obtained at the end of Obstacle Slam with Full SLAM}
\caption{Particle distribution obtained at the end of Obstacle Slam with Full SLAM}
\end{figure}

\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/template-robotics.jpg}
\caption{Final png showing the particle distribution you obtained at the end of Maze LowRes with Full SLAM}
\caption{Particle distribution obtained at the end of Maze LowRes with Full SLAM}
\end{figure}

\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/template-robotics.jpg}
\caption{Final png showing the particle distribution you obtained at the end of Maze HiRes with Full SLAM}
\caption{Particle distribution obtained at the end of Maze HiRes with Full SLAM}
\end{figure}

\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/template-robotics.jpg}
\caption{Final png showing the particle distribution you obtained at the end of Maze Hard with Full SLAM}
\caption{Particle distribution obtained at the end of Maze Hard with Full SLAM}
\end{figure}

\section{PATH PLANNING AND EXPLORATION}
Expand All @@ -152,7 +170,7 @@ \subsection*{2.1 - Obstacle Distances}
\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/21.png}
\caption{Final png showing the obstacle distance grip obtained at the end of Obstacle Slam}
\caption{Obstacle distance grip obtained at the end of Obstacle Slam with Full SLAM}
\end{figure}


Expand All @@ -163,7 +181,7 @@ \subsection*{2.2 - A* Path Planning}
\begin{figure}[H]
\centering
\includegraphics[width=0.3\textwidth]{Media/template-robotics.jpg}
\caption{Final png showing the path you obtained at the end of Maze HiRes with A* path planning}
\caption{Path obtained at the end of Maze HiRes with A* path planning}
\end{figure}

\subsection*{2.3 - Map Exploration}
Expand Down
11 changes: 8 additions & 3 deletions src/slam/action_model.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@


ActionModel::ActionModel(void)
: k1_(0.01f)
, k2_(0.03f)
: k1_(0.8f)
, k2_(0.3f)
, alpha1_(0.6f) //0.1
, alpha2_(0.07f) //0.0001
, alpha3_(0.8f) //0.03
Expand Down Expand Up @@ -49,13 +49,18 @@ bool ActionModel::updateAction(const pose_xyt_t& odometry)
trans_ *= dir;
rot2_ = angle_diff(deltaTheta, rot1_);
// if(fabs(trans_) < 0.0005f || fabs(rot2_) < 0.0001f){
if((fabs(trans_) + fabs(rot2_)) < 0.00001f){ //0.0001
if((fabs(trans_) + fabs(rot2_)) < 0.00001f){ //0.0001 -- tolerance can be changed for slow or fast motion
moved_ = false;
} else{
moved_ = true;
}


// rot1Std_ = k1_ * rot1_;
// transStd_ = k2_ * trans_;
// rot2Std_ = k1_ * rot2_;

// hard coding decreases extra computation needed to calculate standard deviations
rot1Std_ = 0.05;
transStd_ = 0.005;
rot2Std_ = 0.05;
Expand Down

0 comments on commit 209087e

Please sign in to comment.