Skip to content
Snippets Groups Projects
Commit 729d3a18 authored by W. Spencer Smith's avatar W. Spencer Smith
Browse files

Additions for Lecture on maze tracing robot

parent 4f181097
No related branches found
No related tags found
No related merge requests found
File added
No preview for this file type
......@@ -44,8 +44,13 @@
\begin{itemize}
\item Administrative details
\item Solar water heating tank example
\item Dr.\ v.\ Mohrenschildt's maze tracing robot (\href{https://gitlab.cas.mcmaster.ca/smiths/se2aa4_cs2me3/blob/master/ReferenceMaterial/ExampleMaze_FormalSpec.pdf}{see GitLab})
\item Dr.\ v.\ Mohrenschildt's maze tracing robot
\bi
\item
\href{https://gitlab.cas.mcmaster.ca/smiths/se2aa4_cs2me3/blob/master/ReferenceMaterial/vMohrenshildtAndPeters1998.pdf}
{see GitLab}
\item Content section on Avenue
\ei
\item MIS for maze\_storage
\end{itemize}
......@@ -61,25 +66,18 @@ TBD
\else
{
\begin{itemize}
\item Assignment 2
\begin{itemize}
\item {Files due by 11:59 pm Feb 19}
\item {File automatically sent to partners on Feb 20}
\item Lab report due by 11:59 pm Feb 27
\item {When returning an object, you can either create a new object or
return a reference}
\item \structure{Remember: Deque is an Abstract Object, not an ADT}
\item Part 1: February 20, 2018
\item Partner Files: February 26, 2018
\item Part 2: March 2, 2018
\end{itemize}
\item Midterm exam
\begin{itemize}
\item March 1, 7:00 pm, TSH/120
\item Wednesday, February 28, 7:00 pm
\item 90 minute duration
\item Multiple choice - 30--40 questions?
\item Open book (any paper)
\end{itemize}
\end{itemize}
}
\fi
......@@ -98,15 +96,29 @@ TBD
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Likely Changes?}
\begin{itemize}
\item \structure<1>{What is the first step in the design process?}
\item \uncover<2->{\structure<2>{What are some potential likely changes?}}
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Maze Tracing Robot Expected Changes}
\begin{itemize}
\item Changes to the geometry of the robot such that the mapping from a position
to the robot inputs is different
\item Changes to the interface to the robot
\item Changes to the format of the maze
\item Changes to the hardware interface to the robot
\item Changes to the input format of the maze
\item Changes to any constant values
\item Changes to the data structure to store the maze
\item Changes to the path finding algorithm
\end{itemize}
\end{frame}
......@@ -194,18 +206,36 @@ TBD
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{Understanding Maze Storage}
\begin{center}
\includegraphics[scale=0.5]{../Figures/Maze2.pdf}
\end{center}
\structure{Path length is measured by the number of grid blocks. What length
are these paths?}\\
\medskip
C$_1$, C$_2$, C$_{10}$, C$_{11}$ \\ %12
C$_1$, C$_2$, C$_4$, C$_8$, C$_{10}$, C$_{11}$ \\ %12
%C$_1$, C$_7$, C$_8$, C$_{10}$, C$_{11}$ \\ %12
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{maze\_storage MIS}
\textbf{Module}\\
~\newline
maze\_storage\\
~\newline
\medskip
\textbf{Uses}\\
~\newline
types\_constants \#\textit{provides NUM\_X\_CELLS, NUM\_Y\_CELLS}\\
~\newline
\medskip
\textbf{Exported Access Programs}\\
~\newline
......@@ -215,12 +245,15 @@ types\_constants \#\textit{provides NUM\_X\_CELLS, NUM\_Y\_CELLS}\\
\hline
... & ... & ... & ...\\
\hline
%any thoughts from the class on the design of the interface?
\end{tabular}
~\newline
\structure{What are some potential access programs?}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}
\frametitle{maze\_storage Exported Access Programs}
......@@ -238,7 +271,7 @@ ms\_get\_maze\_start & ~ & cell & ms\_not\_initialized\\
\hline
ms\_get\_maze\_end & ~ & cell & ms\_not\_initialized\\
\hline
ms\_set\_wall & cell, cell & ~ & ms\_not\_initialized, ms\_not\_valid\_wall\\
ms\_set\_wall & cell, cell & ~ & ms\_not\_initialized, ms\_not\_valid\_wall, etc.\\
\hline
ms\_is\_connected & cell, cell & boolean & ms\_not\_initialized, ms\_cell\_out\_of\_range\\
\hline
......@@ -252,7 +285,7 @@ cell = tuple of (x: integer, y: integer)
\begin{frame}
\frametitle{maze\_storage Semantics}
\textbf{State Variables}\\
\textbf{State Variables} \uncover<1>{\structure<1>{-- Ideas?}}\\
~\newline
\uncover<2->{\structure<2>{$\mathit{maze}$: set of tuple of ( cell, cell )}}\\
\uncover<2->{\structure<2>{$\mathit{start}: \mbox{cell} $}}\\
......@@ -322,8 +355,8 @@ the corresponding set routines have been called.
\noindent ms\_set\_wall(c1, c2):
\begin{itemize}
\item transition: \uncover<2->{\structure<2>{$\mathit{maze} := \mathit{maze} \cup \{ < c1, c2 > \}$}}
\item exception: \uncover<3->{\structure<3>{$exc := (\neg \mathit{is\_init} \Rightarrow \mbox{ms\_not\_initialized } |
\item transition: \uncover<-1>{\structure<-1>{?}}\uncover<2->{\structure<2>{$\mathit{maze} := \mathit{maze} \cup \{ < c1, c2 > \}$}}
\item exception: \uncover<-2>{\structure<-2>{?}}\uncover<3->{\structure<3>{$exc := (\neg \mathit{is\_init} \Rightarrow \mbox{ms\_not\_initialized } |
\mbox{ wall\_is\_point}(c1, c2) \vee \mbox{wall\_is\_diagonal}(c1, c2) \vee \mbox{wall\_is\_out\_of\_range}(c1, c2)
\Rightarrow \mbox{ms\_not\_valid\_wall})$}}
\end{itemize}
......@@ -345,8 +378,9 @@ the corresponding set routines have been called.
\mbox{ } \neg \mbox{cell\_in\_range}(c2) \Rightarrow \mbox{ms\_cell\_out\_of\_range} )$}}
\end{itemize}
\# \textit{Assumes that all intermediate points are in the input. Could
rephrase to be more intelligent about it.}
\# \textit{Assume that all intermediate segments are in the set of maze walls.
Could rephrase to allow to cover a portion of a segment. The more general
case is covered on 2017 Midterm}
\end{frame}
......@@ -413,6 +447,10 @@ How would you specify the length of a path?\\
\begin{frame}
\frametitle{Midterm Questions}
The
\href{https://gitlab.cas.mcmaster.ca/smiths/se2aa4_cs2me3/blob/master/MidtermExam/PreviousYears/2017/midterm1-ver1-ANS.pdf}
{Midterm 2017} has several questions related to mazes
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment