# Mobile Robot Path Planning Using a Laser Range Finder for Environments with Transparent Obstacles
## 4 Environment Map Generation Algorithm in a Transparent Obstacle Environment  
The environment map generation algorithm using LRF requires the three following assumptions. _[Assumptions]_  
1. Transparent obstacles are in the form of a straight line. 2. No opaque obstacle exists adjacent to the transparent obstacle that is on the opposite side of the LRF. 3. All obstacles are fixed in their positions, and they are not known. The proposed environment map generation for a transparent obstacle environment processes the reflection noises that occur by using LRF. This method is used to extract reflection noise that is different from common noise, and the boundaries of the transparent obstacles are found based on the form and characteristics of the extracted reflection noises [27]. In this paper, the occupancy grid map is chosen in the creation of an environment map. Although feature-based maps better represent actual environments, they have the drawback of being weak to noises; however, occupancy grid maps are highly resistant to noise, and their measured data can be applied quickly to environment maps without additional operations [15]. Occupancy grid maps still require a lot of computing time [36]; however, this can be overcome through recent improvements in computing power [5; 9; 10]. The following table explains the terminology required for the algorithm. Based on the terminology in Table 1, the algorithm used to generate an environment map within an environment that includes transparent obstacles is shown below. \begin{table}
\begin{tabular}{c c} \hline \hline
**Terminology** & **Explanation** \\ \hline \(\theta_{n}(t)\) & The angle value of \(n\)th sensor beam measured at time \(t\)\(\theta_{n}(t)=\)\(\theta_{min}\)+ \(\theta_{step}\)*(\(n\)-1), \(n\):1 \(\sim\) 1081, \(\theta_{min}\) = -45(deg), \(\theta_{step}\) = 0.25(deg) \\ \hline \(d_{n}(t)\) & The distance towards the direction \(\theta_{n}(t)\) measured at time \(t\) \\ \hline \(D_{min}\) & The minimum distance that sensor can recognize: 50 cm \\ \hline \(D_{max}\) & The maximum distance that sensor can recognize: 20 m \\ \hline \(P_{R}(t)\) & The position \((x,y)\) of the robot at time \(t\) \\ \hline \(\theta_{R}(t)\) & The direction that robot is heading towards at time \(t\) \\ \hline \(f(d_{n}(t)\), \(\theta_{n}(t)\), \(P_{R}(t)\), \(\theta_{R}(t))\) & The position of the cell located from \(P_{R}(t)\) with the distance \(d_{n}(t)\) and the heading angle \(\theta_{R}(t)+\theta_{n}(t)\) (Represented as cell No.) \\ \hline \(cell_{n}(t)\) & The position of the cell on the grid map calculated using \(f(d_{n}(t)\), \(\theta_{n}(t)\), \(P_{R}(t)\), \(\theta_{R}(t))\) at time \(t\) (Represented as cell No.) \\ \hline \(cell_{R}(t)\) & The position of the robot center point on the grid map at time \(t\) (represented as cell No.) \\ \hline \(WDCMap\)(cell) & The temporary local map representing the number of detected sensor beams in a certain cell (weakly detected counter (WDC) map) \\ \hline \(SDCMap\)(cell) & The global map representing the accumulated number of detected sensor beams in a certain cell to decide obstacle cell (strongly detected counter (SDC) map) \\ \hline \(CELL_{0}(t)\) & The set of cells with \(WDCMap\)(cell) = 0 at time \(t\) \\ \hline \(CELL_{neighbor}(cell_{n-1}(t-1))\) & The set of cells pointed by \(n\)-1-\(t\)th, \(\cdots\), \(n\)-1-1 th, \(n\)-1-1 th, \(n\)-1+1 th, \(\cdots\), \(n\)-1+\(n\)th beams at time \(t\)-1 (default value: r = 1) \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Terminology essential to algorithm explanation.