{'fraction_non_alphanumeric': 0.037936524065982455, 'fraction_numerical': 0.010500287911120143, 'mean_word_length': 4.8324772817068355, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Deep Visual Navigation under Partial Observability

How can a robot navigate successfully in rich and diverse environments, indoors or outdoors, along office corridors or trails on the grassland, on the flat ground or the staircase? To this end, this work aims to address three challenges: (i) complex visual observations, (ii) partial observability of local visual sensing, and (iii) multimodal robot behaviors conditioned on both the local environment and the global navigation objective. We propose to train a neural network (NN) controller for local navigation via imitation learning. To tackle complex visual observations, we extract multi-scale spatial representations through CNNs. To tackle partial observability, we aggregate multi-scale spatial information over time and encode it in LSTMs. To learn multimodal behaviors, we use a separate memory module for each behavior mode. Importantly, we integrate the multiple neural network modules into a unified controller that achieves robust performance for visual navigation in complex, partially observable environments. We implemented the controller on the quadrupedal Spot robot and evaluated it on three challenging tasks: adversarial pedestrian avoidance, blind-spot obstacle avoidance, and elevator riding. The experiments show that the proposed NN architecture significantly improves navigation performance.

Abstract-How can a robot navigate successfully in rich and diverse environments, indoors or outdoors, along office corridors or trails on the grassland, on the flat ground or the staircase? To this end, this work aims to address three challenges: (i) complex visual observations, (ii) partial observability of local visual sensing, and (iii) multimodal robot behaviors conditioned on both the local environment and the global navigation objective. We propose to train a neural network (NN) controller for local navigation via imitation learning. To tackle complex visual observations, we extract multi-scale spatial representations through CNNs. To tackle partial observability, we aggregate multi-scale spatial information over time and encode it in LSTMs. To learn multimodal behaviors, we use a separate memory module for each behavior mode. Importantly, we integrate the multiple neural network modules into a unified controller that achieves robust performance for visual navigation in complex, partially observable environments. We implemented the controller on the quadrupedal Spot robot and evaluated it on three challenging tasks: adversarial pedestrian avoidance, blind-spot obstacle avoidance, and elevator riding. The experiments show that the proposed NN architecture significantly improves navigation performance.

I. INTRODUCTION
How do humans navigate? We not only navigate in a rich, diverse world with almost exclusively visual sensing, but also compose different behaviors to reach a destination: following paths, making turns, climbing staircases, avoiding obstacles, and using tools, e.g., elevators and buses. This is not yet possible for robots. Classic model-based robot controllers are susceptible to sensor noise and modeling errors. The recent data-driven neural network controllers are more robust because of end-to-end learning from data, but existing works are limited to restricted environments, e.g., driving on mostly empty lanes [4], [53]. We seek to scale this approach to more realistic settings where many challenges are present, as illustrated in Figure 1.
The authors are with the School of Computing, National University of Singapore, Singapore 117417, Singapore.
To achieve this, we would like the robot to discover useful visual cues and learn complex navigation skills from data. In this work, our objective is to design a neural network controller with the structural components to (i) extract rich spatial features from visual perception, (ii) capture rich history information to account for the partial observability of local sensing, and (iii) generate multimodal output distributions conditioned on the local environment and the global navigation objective.
Our design is inspired by insights from related tasks. Convolutional neural networks (CNNs) show the effectiveness of progressive subsampling in extracting abstract patterns [16], [29], [32]. Mixture density networks (MDNs) [3], [14], [36] show how independently predicting the modes in a mixture distribution can preserve the distinction of each mode. For partial observations, previous works exploit history for information gathering, implemented by either recurrent structures in the case of learning [15], or explicit belief tracking in Partially Markov Decision Process (POMDP) planning [21], [30], [48]. However, we will show that a straightforward composition of these ideas does not tackle the challenges combined. To this end, we propose our Deep rEcurrent Controller for vISual navIgatiON (DECISION), which has two key structural components: • Multi-scale temporal modeling: We conjecture that both low-level features and abstract patterns in a CNN are informative for generating the control. Thus, we perform temporal reasoning at different levels using memory modules to account for partial observations. • Multimodal memory: We extend the idea of MDN [3] to temporal reasoning and propose to maintain independent memory modules for different modes. The architecture diagram is presented in Figure 2. Our DECISION is able to learn complex policies from data and can be incorporated to different navigation architectures (e.g., [7], [11], [22], [28]). In this work, we integrate it into the Intention-Net framework that performs global path planning on a crude map and generates intention signals to guide local maneuvering [11]. Our DECISION can achieve Fig. 2. The neural network architecture of our DECISION controller. Every 3D volume in the figure denotes a feature map of shape (channel, width, height). The colored volumes denote the latent representation of the history, and blank volumes denote the spatial features at the current time step. Dashed lines between volumes denote operations such as convolutions. Key ideas: As features propagate through the convolutional layers, the representation becomes more abstract (visualized in bottom row), and the memory layers (#1-#3) integrate history information at multiple abstraction levels to enrich the representation. To learn multimodal behaviors, the memory modules for different modes in each memory layer are disentangled (volumes in different colors) and a symbolic signal is used to select the corresponding memory for feature propagation. robust navigation in our university campus and has been in operation for a cumulative total of about 200 hours. 1 To evaluate DECISION, we collect human demonstration data and train the controller with supervised learning. We evaluate the multi-scale temporal representation design on tasks with highly partial observations (Section IV-A), and evaluate the multimodal memory structure on tasks that require switching between different behavior modes (Section IV-B). Across all tasks, our model significantly outperforms alternative designs, including CNNs, LSTMs, or the ablated versions of our model.

II. RELATED WORK
Robot navigation systems often adopt a hierarchical architecture [27]. The classical model-based system design consists of components for mapping and localization [26], [38], [39], [50], planning [18], [23], [31], and control [9], [43]. The premise of this architecture is to tackle the complexity of robot navigation through decomposition. However, these components depend on handcrafted models and may be brittle, because of modeling errors or imperfect perception. Moreover, they require manual intervention in order to adapt to environmental changes, such as repaved roads. These limitations motivate recent works that use end-to-end learning from data to reduce dependency on accurate models and maps [1], [7], [11].
These model-free controllers learn a mapping from raw sensory data to the control end-to-end. It sidesteps the difficulty of hand-crafting models for planning, which is particularly challenging for visually rich and complex domains. The end-to-end learning of control requires supervision either from reinforcement learning (RL) or from imitation learning (IL). While RL in simulation suffers from the simulation-toreality gap [25], [42], [45], IL has been more successful in 1 Estimated value from April 2021 to the time of writing. real-world tasks. It has been used to learn lane following [4], [40], static obstacle avoidance [33], and car racing [53]. Furthermore, imitation control policies have been incorporated into map-lite navigation systems [1], [7], [11]. However, there has been little work targeting the challenge of partial observability in visual navigation. In addition, we address the need for learning multimodal behaviors, which is essential to completing a long-horizon navigation task.

III. NAVIGATION WITH DECISION A. Problem Formulation
Our objective is to achieve goal-directed visual navigation with a local controller that has a pre-defined set of modes M = {go-forward, turn-left, turn-right, take-elevator}. At time step t during navigation, the environment is in some state s t . The controller π receives a raw RGB observation o t and a mode signal m t ∈ M that instructs the behavior of the local controller. Next, it updates its memory c t−1 with a module g conditioned on m t , i.e.
The controller outputs an actionâ t which is a tuple of steering and velocity θ t , v t , i.e.
The intuition is that the memory c t is a latent representation of history that estimates task-relevant aspects of the states s t from the partial observations o t . Instead of hand-crafting representations, we allow the controller to discover useful patterns through learning. In this work, we adopt a supervised paradigm and optimize the L2 loss 2 over a human We parameterize π with a neural network and optimize the objective end-to-end. We will show that the parameterization of π is important: with the same data, our model learns a policy that is significantly better than alternative designs.

B. DECISION Architecture
In this section, we introduce the architecture of our DECISION. We begin with the formulation of our memory module, followed by the multi-scale history integration and the multimodal memory cell designs.
1) Memory Module: We use a modified Convolutional LSTM (ConvLSTM) [47] to aggregate spatio-temporal information over time. ConvLSTM is a variant of peephole LSTM [12] where the input and output are 2D feature maps instead of 1D feature vectors. We additionally incorporate structures that ease optimization and improve generalization.
Normalization layers. We use a GroupNorm [54] layer (G = 32) after each convolution in the cell. There are two practical reasons. First, we need normalization to stabilize the gradient flow, as we observe that the gradients appear statistically unstable when they propagate through deep layers and long time horizons, which makes training much harder. Second, normalization reduces variance in the intermediate features. When batch size is small, i.e., a batch size of one at deployment time, features show more statistical variability than at training time, which destabilizes runtime performance. Among different normalizations [2], [19], [54], we find GroupNorm [54] with a large G the most effective.
Dropout. As the observations in adjacent time steps are highly correlated, we need to prevent the memory module from overfitting to the redundancy in the temporal features. We adapt 1D dropout methods for RNNs [10], [37], [44] to 2D features by applying it channel-wise. We find that jointly using recurrent dropout [44] and Monte Carlo dropout [10] yields the best real-world performance.
Overall structure. Firstly, dropout is applied to the input x t and hidden state h t−1 [10] x Then, we compute the three gates i t , f t , and g t , In addition, dropout is applied to the cell update g t to alleviate overfitting to redundant temporal cues [44] g we update and output the hidden state where d is the dropout operation, W represents model weights, • denotes convolution, * is the Hadamard product, and GN denotes GroupNorm. In this way, history is encoded recursively into c t across time steps, which is used to generate an enriched representation h t from the input x t .
2) Multi-Scale Temporal Modeling: With the memory cell, we propose to aggregate history information at multiple abstraction levels to account for partial observability. This is achieved by inserting multiple memory layers into a CNN.
Motivations from the angle of perception. In the early layers of a CNN, high-resolution feature maps contain lowlevel coarse features, e.g., edges and textures, which are useful for pixel-level prediction tasks (e.g., [41], [46], [47]); in the late layers, the features encode abstract patterns of the visual input, e.g., objects and shapes, which are critical to recognition (e.g., [34], [55]). For navigation tasks, we argue that temporal reasoning jointly on both features yields optimal performance. One example of low-level temporal cues is that, to avoid a moving obstacle, the agent needs to forecast its future positions, and it has been shown that motions can be more accurately captured from high-resolution features maps [47]. Furthermore, high-level temporal understanding is critical to recognizing environment dynamics, e.g., distinguishing door opening from door closing. To have the best of the two worlds, we extract temporal information at multiple spatial scales.
Tightly coupled perception and control. On the other hand, since DECISION is trained end-to-end, the perception and control are tightly coupled. Thus, beyond capturing perceptual cues of varying granularities, different layers may also learn different behavioral abstractions. This is partially supported by our observation that separating memory modules helps learn multimodal behaviors (Section IV-B). This also motivates our multi-scale network design.
Implementation. We insert memory layers into a CNN ( Figure 2). As features propagate through the model, the representation becomes more abstract and the memory layers (#1-#3) fuse information from the past and the current time step to enrich the representation. In Section IV-A, we show that this multi-level integration can better compensate for partial observations and yield significantly more robust controls, compared to memory at a single level.
3) Multimodal Memory Structure: For a single observation, the agent may need to perform different actions in order to follow the high-level navigation objective. Thus, it is important to learn a conditional multimodal policy. The problem here is mode collapse, i.e., it may learn a unimodal policy that is averaged from different behaviors.
Our solution is to disentangle representations for different modes. This is intuitive: For example, the modes go-forward and turn-left require different actions from the controller and lead to distinct dynamics in the observation. One temporal modeling module may not be able to learn the difference from data efficiently. Thus, we enforce such distinction by incorporating explicit structures. Specifically, there are multiple memory cells in one memory layer; for each input, only one cell is activated to propagate features ( Figure 2). The selection is instructed by a mode signal generated by high-level planning. We will show the effectiveness of the design in Section IV-B.

C. Data Collection
We implement the full pipeline from data collection to deployment on a Boston Dynamics Spot robot. The RGB signals come from an Intel RealSense D435i camera that is connected to an NVIDIA AGX Xaiver onboard computer.
We collect expert demonstrations by teleoperation. The dataset has 2 parts. In the first part, we navigate various environments (Figure 3), where there are natural or a small number of manually placed obstacles, e.g., pedestrians and bulky objects. In the second part, we collect data specifically for Task iii. with HG-DAGGER [24], because the task is highly sequential and prone to errors. In total, our dataset contains 410K time steps, or equivalently 7.6 hours of recording, in which 64K steps are from the second part.
Data distribution matters. A crucial step after the collection is to carefully moderate the dataset distribution. The objective is to balance different components in the dataset to prevent the model from only learning the dominant behavior. For example, without proper dataset resampling, the controller may only learn the dominant mode go-forward and never make turns or recover from deviations. Fig. 3. Sample images from the dataset: (from left to right) indoor, semioutdoor, and outdoor environments. Note that sensor noise, e.g., glaring, and environment noise, e.g., shadows, are prevalent in the physical world.

D. Training
We train our DECISION with Truncated Backpropagation Through Time (TBPTT) [51] and we find that AdamW optimizer [35] accelerates convergence by a clear margin. We take every third frame in the dataset to construct model input sequences of length L = 35. The data is then normalized with ImageNet [8] statistics and augmented with strong color jittering. In each training iteration, the model predicts controls for k 1 = 5 observations, and backpropagation is done every k 2 = 10 predictions. In particular, as Task iii. is a long-horizon task, we need to triple the values for L, k 1 , and k 2 for the mode take-elevator.
Analogical to the linear scaling rule [13], [49], we define our learning rate LR as linear in batch size BS and k 2 , i.e., LR = BaseLR * BS * k 2 , where BaseLR and BS are set to 1e-7 and 36 respectively. We use a weight decay rate of 5e-4 and a dropout rate of 0.3. Input images are resized to 112×112 at both training and deployment time for fast computation. We train the model for 200 epochs and decay the learning rate at the 70th and 140th epochs. Training takes 40 hours with 4 × RTX2080Ti.

IV. EXPERIMENTS
In this section, we verify the two hypotheses that form the basis of our architecture design: i. Temporal modeling at multiple spatial abstraction levels can better improve robustness to partial observations, compared to at a single level or no history ii. Separating memory modules for different modes is critical to learning a multimodal policy As the hypotheses focus on orthogonal aspects, we conduct independent testings (Section IV-A, Section IV-B). For consistency, we use the same evaluation metrics across all tasks. Each task is defined to have n steps and success is defined as completing all steps error-free. We repeat each task N times and record the number of successful steps in each trial s i , i ∈ [1, N ]. We compute 2 metrics, success rate (SR) and completion rate (CR): s i n SR is the prime performance indicator that estimates the likelihood of completing a task, whereas CR is a relaxed measure that is more granular to differentiate policies. In each of the following subsections, we first introduce tasks and baselines, then analyze experiment results.

A. Navigation Under Partial Observability
This subsection answers the question: Does integrating memory at different abstraction levels confers advantages? 1) Tasks: We design three challenging tasks (Figure 4) in which observations are highly partial: i. Adversarial pedestrian avoidance. In this task, the robot aims to navigate from one end of a corridor to the other end collision-free, while an adversary constantly blocks the robot. The challenge is to predict the movement of the adversary without observing its intention. The task environment is a corridor 20m long and 2.5m wide. A collision is defined as failing to maintain a safe distance of 20cm. To block the robot, an adversary takes discrete moves to blocking positions, defined as the location 1-1.2m in the heading direction of the robot. The adversary takes the next move if the robot adjusts its direction correctly or if a collision is counted. This task contains n ≈ 15 steps and each step is to avoid the adversary once. In case of collision, the human intervenes and the test continues.
ii. Blind-spot object avoidance. The sensors' limited sensing range unavoidably causes partial observability. One example is that our robot camera can no longer observe a 20cm-tall basket if it is less than 60cm away. We place 5 baskets 5m apart on the same corridor as in Task i.. The agent's objective is to navigate to the other end of the corridor collision-free. Once a collision occurs, the human intervenes and the test resumes at the next basket. The task consists of n = 5 steps corresponding to avoiding the 5 baskets. The difficulty is to reason about the location of the obstacle that is in the camera blind spot. iii. Elevator riding. Humans are able to use tools to accomplish tasks, but to do this, we need to keep track of task progress that is not often observable. We study the scenario in which the robot wants to go from one floor to the other by taking an elevator. Specifically, the objective is to complete the following n = 4 steps: a) wait for the door to open (5-10s) and subsequently enter the door collision-free b) turn around to face the elevator door in 10s c) wait for the door to close without exiting (5-10s) d) when the door opens again, exit the elevator in 10s The biggest challenge is to distinguish between step c) and step d) because, for the same observation, i.e., an open door, the agent needs to act differently. This requires an estimation of the task progress, i.e., the floor level, based on the history. The task is also the most challenging one, because it is highly sequential: a failure in one step takes the agent to an out-of-domain state and the agent will fail all subsequent steps. In this case, one test directly terminates if any failure occurs.
Note that no data is collected specifically for Task i. or Task ii.. For Task iii., data is collected during the day and we test the learned policies at night. Hence, our results also imply the generalizability of the learned policies.
2) Baselines: We categorize architectures in previous work into 3 classes and use one representative model for each class as a baseline. In addition, we vary the designs of our controller as an ablation study. Training hyperparameter search is performed individually for each model.
i. CNN. Following [11], we use ResNet-50 [16] as the backbone, appended with a branched MLP. This represents reactive policies without history [4], [7], [11]. ii. Multi-frame CNN (MF-CNN). A common practice to incorporate history is to concatenate the 1D features of multiple observations [15]. To balance computation cost and performance, we use five frames as input. It represents the policies with short-term memory. iii. CNN-LSTM. The model is often used to capture temporal dependencies in visual observations [15], [17], [56], [57]. It represents the policies with long-term memory of visual semantics. For a fair comparison, we remove the three memory layers in DECISION and insert a three-layer LSTM before the MLP. iv. DECISION variants. To study the effects of the abstrac-  -2). The difference between DECISION w/o L#1-3 and CNN is that the former is a shallow 3-layer CNN, whereas CNN has a pretrained ResNet-50 as the feature extractor. Moreover, we wish to know the gap between the policy learned via imitation and human driving skills. To do this, we manually drive the robot to perform the tasks using the video feed from the onboard camera, i.e., the same visual input as the other controllers.
3) Results: Full results are summarized in Table I. Notably, when evaluating at the task level (SR), none of the alternative models achieves sufficiently good performance, but a high SR is critical for long-horizon navigation. Our DECISION achieves performance close to human operators, showing its capability of learning from demonstrations.
Adversarial pedestrian avoidance. Under our adversarial setup, reactive policies, i.e., CNN and DECISION w/o L#1-3, fail nearly half of the time. This is because they act purely based on the instantaneous position of the pedestrian. MF-CNN can estimate motion with a short sliding window, but the estimate is too uncertain to achieve consistent success. In comparison, LSTM-like structures have a longer history.
The key difference between DECISION and CNN-LSTM is that DECISION explicitly reasons both low-level motions, i.e., pedestrian movement, and high-level semantics, i.e., identification of pedestrians, and thus has a higher chance of avoiding the adversary. Missing information at some levels decreases performance, as indicated by the ablation results.
Blind-spot object avoidance. In this task, reactive agents, i.e., CNN and DECISION w/o L#1-3, have no information on the locations of blind-spot obstacles, but we find that they may succeed by purely mimicking the expert trajectory: Upon seeing the basket, the agent changes its direction to one side of the path and slowly turns back after the obstacle enters the blind spot. The trajectory of turning back may have a curvature small enough to bypass the basket. MF-CNN has more collisions because it corrects its deviation from the path center faster, which is desirable in obstacle-free environments but increases the chance of failure in this task. With high-level memory, DECISION w/o L#1-2 outperforms DECISION w/o L#1-3; with low-level memory, DECISION is significantly better than DECISION w/o L#1-2. This shows Elevator riding. In this task, agents without memory or with only short memory often exit the elevator at step c), i.e., CNN and MF-CNN. A shallow CNN, i.e., DECISION w/o L#1-3 cannot even accurately recognize the elevator door, and thus has a CR lower than 50%. CNN-LSTM extracts temporal information on top-level CNN features, which leads to significantly more success at step c), but we find that it may never exit the elevator door at step d). This indicates that the model may have learned to capture some confounding visual cues, whereas DECISION can handle the task well. This shows that the memory needs to be incorporated at the right spatial levels to capture relevant features. Within the DECISION model class, adding memory improves performance (DECISION w/o L#1-3 vs. DECI-SION), with DECISION achieving the best performance among all policies. This again shows that the multi-scale temporal features confer the most advantages.

B. Navigation with Multimodal Behaviors
This subsection focuses on the question: Is our multimodal memory structure critical to learning a multimodal policy? 1) Task: We study the case where an agent performs loop closure in a building. The agent is required to make n = 4 turns and the objective is to go back to the starting position. The challenge is to learn a policy that shows distinctive behaviors when given different modes.
2) Baselines: To verify our multimodal memory design, it is sufficient to compare our model with a variant whose such a structure is ablated.
3) Results: As shown in Table II, the multimodal memory structure can significantly improve the capability of making turns. Note that a high SR is important to perform navigation in practice, because missing turns is costly and could lead to non-recoverable failures.
To understand why our structure helps, we project the pooled features before the final MLP (depicted in Figure 2) from R 1024 to R 2 with t-SNE [52] (Figure 5). We find that our proposed model learns representations highly separable by modes. As the agent's behaviors are also multimodal, the mapping from the representation space to control space can be more easily learned. In comparison, the baseline features are cluttered and collapse to a unimodal distribution. As illustrated in Figure 6, the baseline model always moves straight forward regardless of mode signals.  In addition, note that the same finding holds true for take-elevator. Here we use turning as a case to reflect the general mode collapse problem under space constraints.

V. CONCLUSION
We have presented DECISION, a neural motion controller for robot navigation. It is robust to visual variations and partial observations, while maintaining multiple modes of behaviors that are essential to long-horizon navigation. We implemented it on our Spot robot and conducted all experiments in the physical world for relevance to real-world tasks. Importantly, DECISION can be adapted to different robot architectures to enable robust local maneuvering, which may simplify robot system design. Our neural network architecture designs may also transfer to other tasks that involve spatio-temporal reasoning or predicting multimodal targets.
Throughout our work, many interesting questions have presented themselves: • How to learn more efficiently? We have shown that structure has a strong influence on the learning outcome, and we need to discover more useful structures to scale up robot learning [20]. • Where to learn? Learning in the real world is constrained by the amount of data available. To remove the bottleneck, privileged learning and reinforcement learning in the simulation are potential directions, but the simulation-to-reality gap becomes a new challenge. • What can be learned? It is unclear whether DECISION has sufficient representation power or information to learn complex, interactive behaviors that require longhorizon reasoning, in tasks such as crowd driving [5].