Computer Science
Computer Science-2021.gz:143189
Computer Science
d5cb5afe0e2008a9a8732e3e1255509418c787b9
Spatial Language Understanding for Object Search in Partially Observed City-scale Environments

Humans use spatial language to naturally describe object locations and their relations. Interpreting spatial language not only adds a perceptual modality for robots, but also reduces the barrier of interfacing with humans. Previous work primarily considers spatial language as goal specification for instruction following tasks in fully observable domains, often paired with reference paths for reward-based learning. However, spatial language is inherently subjective and potentially ambiguous or misleading. Hence, in this paper, we consider spatial language as a form of stochastic observation. We propose SLOOP (Spatial Language Object-Oriented POMDP), a new framework for partially observable decision making with a probabilistic observation model for spatial language. We apply SLOOP to object search in city-scale environments. To interpret ambiguous, context-dependent prepositions (e.g. front), we design a simple convolutional neural network that predicts the language provider's latent frame of reference (FoR) given the environment context. Search strategies are computed via an online POMDP planner based on Monte Carlo Tree Search. Evaluation based on crowdsourced language data, collected over areas of five cities in OpenStreetMap, shows that our approach achieves faster search and higher success rate compared to baselines, with a wider margin as the spatial language becomes more complex. Finally, we demonstrate the proposed method in AirSim, a realistic simulator where a drone is tasked to find cars in a neighborhood environment.


I. INTRODUCTION
Consider the scenario in which a tourist is looking for an ice cream truck in an amusement park. She asks a passer-by and gets the reply the ice cream truck is behind the ticket booth. The tourist looks at the amusement park map and locates the ticket booth. Then, she is able to infer a region corresponding to that statement and find the ice cream truck, even though the spatial preposition behind is inherently ambiguous and subjective to the passer-by. Robots capable of understanding spatial language can leverage prior knowledge possessed by humans to search for objects more efficiently, and interface with humans more naturally. Such capabilities can be useful for applications such as autonomous delivery and search-and-rescue, where the customer or people at the scene communicate with the robot via natural language.
This problem is challenging because humans produce diverse spatial language phrases based on their observation of the environment and knowledge of target locations, yet none of these factors are available to the robot. In addition, the robot may operate in a different area than where it was trained. The robot must generalize its ability to understand spatial language across environments.
Project website: https://h2r.github.io/sloop/ Fig. 1: Given a spatial language description, a drone with limited field of view must find target objects in a city-scale environment. Top row: example trial from OpenStreetMap [16]. Bottom row: example trial from AirSim [17]. Left side: belief over target location after incorporating spatial language using the proposed approach. Right side: Screenshot of simulation with search path.
Prior works on spatial language understanding assume referenced objects already exist in the robot's world model [1,2,3] or within the robot's field of view [4]. Works that consider partial observability do not handle ambiguous spatial prepositions [5,6] or assume a robot-centric frame of reference [7,8], limiting the ability to understand diverse spatial relations that provide critical disambiguating information, such as behind the ticket booth. For downstream tasks, existing works primarily consider spatial language as goal or trajectory specification [9,10]. They require large datasets of spatial language paired with reference paths to learn a policy by end-to-end reward-based learning [11,12] or imitation learning [13], which is expensive to acquire for realistic environments (such as urban areas), and generalization to such environments is an ongoing challenge [4,14,15].
Partially Observable Markov Decision Process (POMDP) [18] is a principled decision making framework widely Fig. 2: We consider a spatial language description as an observation oR, which is a set of (f, r, γ) tuples, obtained through parsing the input language. We propose an observation model that incorporates the spatial information in oR into the robot's belief about target locations, which benefits subsequent object search performance. used in the object search literature [19,20,21], due to its ability to capture uncertainty in object locations and the robot's perception. Wandzel et al. [6] proposed Object-Oriented POMDP (OO-POMDP), which factors the state and observation spaces by objects and is designed to model tasks in human environments. In this paper, we introduce SLOOP (Spatial Language Object-Oriented POMDP), which extends OO-POMDP by considering spatial language as an additional perceptual modality. We derive a probabilistic model to capture the uncertainty of the language through referenced objects and landmarks. This enables the robot to incorporate into its belief state spatial information about the referenced object via belief update.
We apply SLOOP to object search in city-scale environments given a spatial language description of target locations. We collected a dataset of five city maps from OpenStreetMap [16] as well as spatial language descriptions through Amazon Mechanical Turk (AMT). To understand ambiguous, contextdependent prepositions (e.g. behind), we develop a simple convolutional neural network that infers the latent frame of reference (FoR) given an egocentric synthetic image of the referenced landmark and surrounding context. This FoR prediction model is integrated into the spatial language observation model in SLOOP. We apply POMCP [22], an online planning algorithm based on Monte-Carlo Tree Search (MCTS) to plan search behavior, after the initial belief update upon receiving the spatial language. Note that in general, because SLOOP regards spatial language as an observation, the language can be received during task execution.
We evaluate both the FoR prediction model and the object search performance under SLOOP using the collected dataset. Results show that our method leads to search strategies that find objects faster with higher success rate by exploiting spatial information from language compared to a keyword-based baseline used in prior work [6]. We also report results for varying language complexity and spatial prepositions to discuss advantages and limitations of our approach. Finally, we demonstrate SLOOP for object search in AirSim [17], a realistic drone simulator shown in Fig. 1, where the drone is tasked to find cars in a neighborhood environment.

II. RELATED WORK
Spatial language is a way of communicating spatial information of objects and their relations using spatial prepositions (e.g. on, between, front) [23]. Understanding spatial language for decision making requires the robot to map symbols of the given language description to concepts and structures in the world, a problem referred to as language grounding. Most prior works on spatial language grounding assume a fully observable domain [1,2,4,9,10], where the referenced objects have known locations or are within the field of view, and the concern is synthesizing navigation behavior faithful to a given instruction (e.g. Go to the right side of the rock [4]). Recent works aim to map such instructions directly to low-level controls or navigation trajectories leveraging deep reinforcement learning [9,11,24] or imitation learning [4,12,13], requiring large datasets of instructions paired with demonstrations. In this work, the referenced target objects have unknown locations, and the robot has a limited field of view. We regard the spatial language description as observation and obtain policy through online planning.
Spatial language understanding in partially observable environments is an emerging area of study [5,6,8,25]. Thomason et al. [25] propose a domain where the robot, tasked to reach a goal room, has access to a dialogue with an oracle discussing the location of the goal during execution. Hemachandra et al. [5] and Patki et al. [8] infer a distribution over semantic maps for instruction following then plan actions through behavior inference. These instructions are typically FoR-independent or involve only the robot's own FoR. In contrast, we consider language descriptions with FoRs relative to referenced landmarks. Wandzel et al. [6] propose the Object-Oriented POMDP framework for object search and a proof-of-concept keyword-based model for language understanding in indoor space. Our work handles diverse spatial language using a novel spatial language observation model and focuses on search in cityscale environments. We evaluate our system against a keyword-based baseline similar to the one in [6].
Cognitive scientists have grouped FoRs into three categories: absolute, intrinsic, and relative [26,27]. Absolute FoRs (e.g. for north) are fixed and depend on the agreement between speakers of the same language. Intrinsic FoRs (e.g. for at the door of the house) depend only on properties of the referenced object. Relative FoRs (e.g. for behind the ticket booth) depend on both properties of the referenced object and the perspective of the observer. In this paper, spatial descriptions are provided by human observers who may impose relative FoRs or absolute FoRs.

III. PRELIMINARIES: POMDP AND OO-POMDP
POMDP [18] is a framework to describe sequentialdecision making problems where the agent does not fully observe the environment state. Formally, a POMDP is defined as a tuple S, A, Ω, T, O, R, δ . Given an action a ∈ A, the environment state transitions from s ∈ S to s ∈ S following the transition function T (s, a, s ) = Pr(s |s, a). The agent receives an observation o ∈ Ω according to the observation model O(s , a, o) = Pr(o|s , a), and an expected reward r = R(s, a, s ). The agent maintains a belief state b t (s) = Pr(s|h t ) which is a sufficient statistic for the history h t = (ao) 1:t−1 . The agent updates its belief given the action and observation by b t+1 (s ) = ηO(s , a, o) s T (s, a, s )b t (s) where η = s s Pr(o|s , a) Pr(s |s, a)b t (s) is the normalizing constant. The task of the agent is to find a policy π(b t ) ∈ A which maximizes the expectation of future discounted re- An Object-Oriented POMDP (OO-POMDP) [6] (generalization of OO-MDP [28]) is a POMDP that considers the state and observation spaces to be factored by a set of n objects, S = S 1 × · · · × S n , Ω = Ω 1 × · · · × Ω n , where each object belongs to a class with a set of attributes. A simplifying assumption is made for the 2D MOS domain [6] that objects are independent so that the belief space scales linearly rather than exponentially in the number of objects:

IV. PROBLEM FORMULATION
We are interested in the problem setting similar to the opening scenario in the Introduction. A robot is tasked to search for N targets in an urban or suburban area represented as a discrete 2D map of landmarks M. The robot is equipped with the map and can detect the targets within the field of view. However, the robot has no knowledge of object locations a priori, and the map size is substantially larger than the sensor's field of view, making brute-force search infeasible. A human with access to the same map and prior knowledge of object locations provides the robot with a natural language description. For example, given the map in Fig. 1, one could say the red car is behind Jeffrey's House, around Rene's House. The language is assumed to mention some of the target objects and their spatial relationships to some of the known landmarks, yet there is no assumption about how such information is described. To be successful, the robot must incorporate information from spatial language to efficiently search for the target object.
This problem can be formulated as the multi-object search (MOS) task [6], modeled as an OO-POMDP. The state The robot state s r = (x, y, θ, F) consists of the robot's pose (x, y, θ) and a set of found targets F ⊆ {1, · · · , N }. There are three types of actions: MOVE changes the robot pose (possibly stochastically); LOOK processes sensory information within the current field-of-view; FIND(i) marks object i as found. In our implementation of MOS, a LOOK action is automatically taken following every MOVE. Upon taking FIND, the robot receives reward R max 0 if an unfound object is within the field of view, and R min 0 otherwise. Other actions receive R step < 0. The desired policy accounts for the belief over target locations while efficiently exploring the map.
Note that in our evaluation, we use a synthetic detector that returns observations conditioned on the ground truth object locations for belief update during execution. Our POMDP-based framework can easily make use of a realistic observation model instead, for example, based on processing visual data [20,29]. Training vision-based object detectors is outside the scope of this paper. Our focus is on spatial language understanding for planning object search strategies.

V. TECHNICAL APPROACH
In this section, we introduce SLOOP, with a particular focus on the observation space and observation model. Then, to apply SLOOP to our problem setting, we describe our implementation of the spatial language observation model on 2D city maps, which includes a convolutional network model for FoR prediction.

A. Spatial Language Object-Oriented POMDP (SLOOP)
SLOOP augments an OO-POMDP defined over a given map M with a spatial language observation space and a spatial language observation model. The map M consists of a discrete set of locations and contains landmark information (e.g. landmark's name, location and geometry), such that N objects exist on the map at possibly unknown locations. Thus, the state space can be factored into a set of N objects plus the given map M and robot state s = (s 1 , · · · , s N , s r , M). SLOOP does not augment the action space, thus the action space of the underlying OO-POMDP is left unchanged. Because the transition and reward functions are, by definition, independent of observations, they are also kept unchanged in SLOOP. Next, we introduce spatial language observations. According to Landau and Jackendoff [30], the standard linguistic representation of an object's place requires three elements: the object to be located (figure), the reference object (ground), and their relationship (spatial relation). We follow this convention and represent spatial information from a given natural language description in terms of atomic propositions, each represented as a tuple of the form (f, r, γ), where f is the figure, r is the spatial relation and γ is the ground. In our case, f refers to a target object, γ refers to a landmark on the map, and r is a predicate that is true if the locations of f and γ satisfy the semantics of the spatial relation. As an example, given spatial language the red Honda is behind Belmont, near Hi-Lo, two tuples of this form can be extracted (parentheses indicate role): We define a spatial language observation as a set of (f, r, γ) tuples extracted from a given spatial language. We define the spatial language observation space to be the space of all possible tuples of such form for a given map, objects, and a set of spatial relations.
We denote a spatial language observation as o R . Our goal now is to derive Pr(o R |s , a), the observation model for spatial language. We can split o R into subsets, is the set of tuples where the figure is target object i. Since the human describes the target objects with respect to landmarks on the map, the spatial language is conditionally independent from the robot state and action given map M and the target locations s 1 , · · · , s N . Therefore, We make a simplifying assumption that o Ri is conditionally independent of all other o Rj and s j (j = i) given s i and map M. We make this assumption because the human observer is capable of producing a language o Ri to describe target i given just the target location s i and the map M. Thus, where Pr(o Ri |s i , M) models the spatial information in the language description for object i. For each spatial relation r j in o Ri whose interpretation depends on the FoR imposed by the human observer (e.g. behind), we introduce a corresponding random variable Ψ j denoting the FoR vector that distributes according to the indicator function where ψ * j is the one imposed by the human, unknown to the robot. Then, our model for Pr(o Ri |s i , M) becomes: The step-by-step derivation can be found in the supplementary material. It is straightforward to extend this model as a mixture model where multiple interpretations of the spatial language are used to form separate distributions then combined into a weighted-sum. This effectively smooths the distribution under individual interpretations, which improves object search performance in our evaluation (Figure 7), However, to proceed modeling Pr(r j |γ j , ψ * j , f i , s i , M) in Eq. (3), we notice that it depends on the unknown FoR ψ * j . Therefore, we consider two subproblems instead: The approximation of ψ * j by a predicted valueψ and the modeling of Pr(r j |γ j ,ψ j , f i , s i , M). Next, we describe our approach to these two subproblems for object search in city-scale environments.

B. Learning to Predict Latent Frame of Reference
Here we describe our approach to predict ψ * j corresponding to a given (f i , r j , γ j ) tuple, which is critical for correct resolution of spatial relations. Taking inspiration from the ice cream truck example where the tourist can infer a potential FoR by looking at the 2D map of the park, we train a model that predicts the human observer's imposed FoR based on the environment context embedded in the map.
We define an FoR in a 2D map as a single vector ψ j = (x, y, θ) located at (x, y) at an angle θ with respect to the +x axis of the map. We use the center-of-mass of the ground as the origin (x, y). We make this approximation since our data collection shows that when looking at a 2D map, human observers tend to consider the landmark as a whole without decomposing it into parts. Therefore, the FoR prediction problem becomes a regression problem of predicting the angle θ given a representation of the environment context.
We design a convolutional neural network, which takes as input a grayscale image representation of the environment context where the ground in the spatial relation is highlighted. Surrounding landmarks are also highlighted with different brightness for streets and buildings (Figure 3). The image is shifted to be egocentric with respect to the referenced landmark, and cropped into a 28×28 pixel image. The intuition is to have the model focus on immediate surroundings, as landmarks that are far away tend not to contribute to inferring the referenced landmark's properties. The model consists of two standard convolution modules followed by three fully connected layers. These convolution modules extract an 800-dimension feature vector, feeding into the fully connected layers, which eventually output a single value for the FoR angle. We name this model EGO-CTX for egocentric shift of the contextual representation.
Regarding the loss function, a direct comparison with the labeled FoR angle is not desirable. For example, suppose the labeled angle is 0 (in radians). Then, a predicted angle of 0.5 is qualitatively the same as another predicted angle of −0.5 or 2π − 0.5. For this reason, we apply the following treatment to the difference between predicted angle θ and the labeled angle θ * . Here, both θ and θ * have been reduced to be between 0 to 2π: This ensures that the angular deviation used to compute the loss ranges between 0 to π. The learning objective is to reduce such deviation to zero. To this end, we minimize the mean-squared error loss L(θ, θ * ) = 1 where θ, θ * are predicted and annotated angles in the training set of size N . This objective gives greater penalty to angular deviations farther away from zero.
In our experiments, we combine the data by antonyms and train two models for each baseline: a front model used to predict FoRs for front and behind, and a left model used for left and right 1 . We augment the training data by random rotations for front but not for left. 2 We use the Adam optimizer [31] to update the network weights with a fixed learning rate of 1 × 10 −5 . Early stopping based on validation set loss is used with a patience of 20 epochs [32].

C. Modeling Spatial Relations
We model Pr(r j |γ j ,ψ j , f i , s i , M) as a Gaussian following prior work and evidence from animal behavior [33,34]: 1 We do not train a single model for all four prepositions since left and right often also suggest an absolute FoR used by the language provider when looking at 2D maps, while front and behind typically suggest a relative FoR. 2 Again, because left and right may imply either absolute or relative FoR. Fig. 3: Frame of Reference Prediction Model Design. In this example taken from our dataset, the model is predicting the frame of reference for the preposition front. The grayscale image is rendered with color ranging from blue (black), green (gray) to yellow (white). Green highlights the referenced landmark, dark blue the streets, blue the surrounding buildings, and yellow the background.
where σ controls the steepness of the distribution based on the spatial relation's semantics and landmark size, and dist(s i , γ j , M) is the distance between s i to the closest position within the ground γ j in map M, and u(s i , γ j , M) • v(f i , r j , γ j ,ψ j ) is the dot product between u(s i , γ j , M), the unit vector from s i to the closest position within the ground γ j in map M, and v(f i , r j , γ j ,ψ j ), a unit vector in in the direction that satisfies the semantics of the proposition (f i , r j , γ j ) by rotatingψ j . The dot product is skipped for prepositions that do not require FoRs (e.g. near). We refer to Landau and Jackendoff [30] for a list of prepositions meaningful in 2D that require FoRs: above, below, down, top, under, north, east, south, west, northwest, northeast, southwest, southeast, front, behind, left, right.

VI. DATA COLLECTION
In this section, we describe our data collection process as well as a pipeline for spatial information extraction from natural language. We use maps from OpenStreetMap (OSM), a free and open-source database of the world map with voluntary landmark contributions [16]. We scrape landmarks in 40,000m 2 grid-regions with a resolution of 5m by 5m grid cells in five different cities leading to a dimension of 41×41 per grid map 3 : Austin, TX; Cleveland, OH; Denver, CO; Honolulu, HI, and Washington, DC. Geographic coordinates of OSM landmarks are translated into grid map coordinates.
To collect a variety of spatial language descriptions from each city, we randomly generate 30 environment configurations for each city, each with two target objects. We prompt Amazon Mechanical Turk (AMT) workers to describe the location of the target objects and specify that the robot knows the map but does not know target locations. Each configuration is used to obtain language descriptions from up to eleven different workers. The descriptions are parsed using our pipeline described next in Sec. VI-A. Examples are shown in Fig. 4. Screenshots of the survey and statistics of the dataset are provided in the supplementary material.
The authors annotated FoRs for front, behind, left and right through a custom annotation tool which displays the AMT worker's language alongside the map without targets. We manually infer the FoR used by the AMT worker, similar to what the robot is tasked to do. This set of annotations are used as data to train and evaluate our FoR prediction model. 3 Because of the curvature of the earth, the grid cells and overall region is not perfectly square, which is why the grid is not perfectly 40x40 Prepositions such as north, northeast have absolute FoRs with known direction. Others are either difficult to annotate (e.g. across) or have too little samples (e.g. above, below).

A. Spatial Information Extraction from Natural Language
We designed a pipeline to extract spatial relation triplets from the natural language using the spaCy library [35] for noun phrase (NP) identification and dependency parsing, as it achieves good performance on these tasks. Extracted NPs are matched against synonyms of target and landmark symbols using cosine similarity. All paths from targets to landmarks in the dependency parse tree are extracted to form the (f, r, γ) tuples used as spatial language observations (Sec. V-A).
Our spatial language understanding models assume as input language that has been parsed into (f, r, γ) tuples, but is not dependent on this exact pipeline for doing so. Future work could explore alternative methods for parsing and entity linking, including approaches optimized for the task of spatial language resolution. In our end-to-end experiments, we report the task performance both when using this parsing pipeline and when using manually annotated (f, r, γ) tuples to indicate the influence of parsing on search performance.

A. Frame of Reference Prediction
We test the generalizability of our FoR prediction model (EGO-CTX) by cross-validation. The model is trained on maps from four cities and tested on the remaining heldout city for all possible splits. We evaluate the model by the angular deviation between predicted and annotated FoR angles, in comparison with three baselines and human performance: The first is a variation (CTX) that uses a synthetic image with the same kind of contextual representation yet without egocentric shift. The second is another variation (EGO) that performs egocentric shift and also crops a 28×28 window, but only highlights the referenced landmark at the center without contextual information. The random baseline (Random) predicts the angle at random uniformly between [0, 2π]. The Human performance is obtained by first computing the differences between pairs of annotated FoR angles for the same landmarks (Eq. 4), then averaging over all such differences for landmarks per city. Each pair of FoRs may be annotated by the same or different annotators. Taking the average gives a sense of the disagreement among the annotators' interpretation of spatial relations.
The results are shown in Figure 5. Each boxplot summarizes the means of baseline performance in the five crossvalidation splits. The results demonstrate that EGO-CTX shows generalizable behavior close to the human annotators, especially for front. We observe that our model is able to predict front FoRs roughly perpendicular to streets against other buildings, while the baselines often fail to do so ( Figure 6). The competitive performance of the neural network baselines in left indicates that for left and right, the FoR annotations are often absolute, i.e. independent of the context. Our model as well as baselines are limited in determining, for example, whether the speaker refers to the left side of the map (absolute FoR), or the left side of the street relative to a perceived forward direction (relative FoR).

B. End-to-End Evaluation
We randomly select 20 spatial descriptions per city. We task the robot to search for each target object mentioned in every description separately, resulting in a total of 40 search trials per city, 200 in total. Cross-validation is employed such that for each city, the robot uses the FoR prediction model trained on the other four cities. For each step, the robot can either move or mark an object as detected. The robot can move by rotating clockwise or counterclockwise for 45 degrees, or move forward by 3 grid cells (15m). The robot receives observation through an on-board fan-shaped sensor after every move. The sensor has a field of view with an angle of 45 degrees and a varying depth of 3, 4, 5 (15m, 20m, 25m). As the field of view becomes smaller, the search task is expected to be more difficult. The robot receives R step = −10 step cost for moving and R max = +1000 for correctly detecting the target, and R min = −1000 if the detection is incorrect. The rest of the domain setup follows [6].
Baselines. SLOOP uses the spatial language observation model without mixture, that is, for each object, it computes the observation distribution in Eq. (3) by multiplying the distributions for each spatial relation; With the same observation distribution, SLOOP (m=2) mixes in one distribution computed by treating all prepositions as near with weight 0.2; Also with the same observation distribution, SLOOP (m=4) mixes in three additional distributions: one ignores FoR-dependent prepositions, one treating all prepositions as near, one treating all prepositions as at, with weights 0.25, 0.1, 0.05, respectively. The baseline MOS (keyword) uses a keyword-based model [6] that assigns a uniform probability over referenced landmarks in a spatial language but does not  incorporate information from spatial prepositions. Finally, informed and uniform are upper and lower bounds: for the informed, the agent has an initial belief that has a small Gaussian noise over the groundtruth location 4 ; uniform uses a uniform prior. We also report the performance with annotated spatial relations and landmarks to show search performance if the languages are parsed correctly.
For all baselines, we use an online POMDP solver, POMCP [22] but with a histogram belief representation to avoid particle depletion. The number of simulations per planning step is 1000 for all baselines. The discount factor is set to 0.95. The robot is allowed to search for 200 steps per search task, since search beyond this point will earn very little discounted reward and is not efficient.
Results. We evaluate the effectiveness and efficiency of the search by the amount of search tasks the robot completed (i.e. successfully found the target) under a given limit of search steps (ranging from 1 to 200). Results are shown in Figure 7. The results show that using spatial language with SLOOP outperforms the keyword-based approach in MOS. The gain in the discounted reward is statistically significant over all sensor ranges comparing SLOOP with MOS (keyword), and for sensor range 3 comparing the annotated versions. We observe that using mixture models for spatial language improves search efficiency and success rate over SLOOP. We observe improvement when the system is given annotated spatial relations. This suggests the important role of language parsing for spatial language understanding. Figure 8 shows a trial comparing SLOOP and MOS (keyword).
We analyze the performance with respect to different spa-   8: Example object search trial for description "the green toyota is behind velvet dog" from AMT. The green region shows the distribution over the object location after interpreting the description. Our method enables probabilistic interpretation of the spatial language leading to more efficient search strategy. tial prepositions. We report results for annotated languages as they reflect the performance obtained if the prepositions are correctly identified. Results for the smallest sensor range of 3 is shown in Table I. SLOOP outperforms the baseline for the majority of prepositions. For prepositions front, behind, left, and right, our investigation shows the performance of SLOOP polarizes where trials with "good" FoR (i.e. ones in the correct direction towards the true target location) leads to a much greater performance than the counterpart ("bad" FoR). Yet, MOS (keyword) is not subject to such polarization and the target often appears close to the landmark for these prepositions. We observe that SLOOP (m=4) using mixture is able to consistently improve the reward for most of the prepositions, indicating the benefit of modeling multiple interpretations of the spatial language. Finally, we analyze the relationship between the performance and varying complexity of the language description, indicated by the number of spatial relations used to describe the target location. Again, we used annotated languages for this experiment for the smallest sensor range of 3. Results in Table II indicate that understanding spatial language can benefit search performance, with a wider gain as the number of spatial relations increases. Again, using mixture model in SLOOP (m=4) improves the performance even more.

C. Demonstration on AirSim
We implemented SLOOP (m=4) on AirSim [17], a realistic drone simulator built on top of Unreal Engine [36]. Similar to our evaluation in OpenStreetMap, we discretize the map into 41×41 grid cells. We use the same fanshaped model of on-board sensor as in OpenStreetMap. As mentioned in Sec. IV, sensor observations are synthetic, based on the ground-truth state. Additionally, although the underlying localization and control is continuous, the drone plans discrete navigation actions (move forward, rotate left 90 • , rotate right 90 • ). We annotated landmarks (houses and streets) in the scene on the 2D grid map. Houses with heights greater than flight height are subject to collision and results in a large penalty reward (-1000). Checking for collision in the POMDP model for this domain helped prevent such behavior during planning. We found that the FoR prediction model trained on OpenStreetMap generalizes to this domain, consistently producing reasonable FoR predictions for front and behind. This shows the benefit of using synthetic images of top-down street maps. The drone is able to plan actions to search back and forth to find the object, despite given inexact spatial language description. Please refer to the video demo on our project for the examples shown in Fig. 1 and 9.

VIII. CONCLUSIONS
This paper first presents a formalism for integrating spatial language into the POMDP belief state as an observation, then a convolutional neural network for FoR prediction shown Fig. 9: Example trial from AirSim demonstration. Given spatial language description: The red car is by the side of Main street in front of Zoey's House (red), while the green car is within Annie's House on the right side of East street (green). Left: belief over two target objects (red and green car). Right: screenshot from AirSim. Refer to the supplementary video for more details.
to generalize well to new cities. Simulation experiments show that our system significantly improves object search efficiency and effectiveness in city-scale domains through understanding spatial language. For future work, we plan to investigate compositionality in spatial language for partially observable domains.

A. Derivation of Spatial Language Observation Model
Here we provide the derivation for Eq. (3). Using the definition of o Ri , Pr(o Ri |s i , M) = Pr(f i , r 1 , γ 1 , · · · , r L , γ L |s i , M) (6) = Pr(r 1 , · · · , r L |γ 1 , · · · , γ L , f i , s i , M) × Pr(γ 1 , · · · , γ L , f i |s i , M) The first term in (7) is factored by individual spatial relations, because each r j is a predicate that, by definition, involves only the figure f i and the ground γ j , therefore it is conditionally independent of all other relations and grounds given f i , its location s i , and the landmark γ j and its features contained in M. Because the robot has no prior knowledge regarding the human observer's language use, 5 the second term in (7) is uniform with probability 1/Z where Z is the constant size of the support for γ 1 , · · · , γ L , f i . This constant can be canceled out during POMDP belief update upon receiving the spatial language observation, using the belief update formula in Section III. We omit this constant in Eq. (3). For predicates such as behind, its truth value depends on the relative FoR imposed by the human observer who knows the target location. Denote the FoR vector corresponding to r j as a random variable Ψ j that distributes according to the indicator function Pr(Ψ j = ψ j ) = 1(ψ j = ψ * j ), where ψ * j is the one imposed by the human. Then regarding Pr(r j |γ j , f i , s i , M), we can sum out Ψ j : Since the distribution for Ψ j is an indicator function, By the law of total probability, Using the fact that s i , M is independent of ψ * j , Canceling out Pr(s i , M), Similar to (7)-(8), Pr(γ j , f i |s i , M, ψ * j ) and Pr(γ j , f i |s i , M) are uniform with the same support. Canceling them out, B. Data Collection Details 1) Amazon Mechanical Turk Questionnaire: As described in Section VI, we collect a variety of spatial language descriptions from five cities. We randomly generate 10 unique configurations of two object locations for every pair of object symbols from {RedBike, RedCar, RedCar}. Each configuration is used to obtain language descriptions from up to eleven different workers. By showing a picture of the objects placed on the map screenshot, we prompt AMT workers to describe the location of the target objects. We first show an example task as shown in Fig 10 (top). Then we prompt them with the actual task and a text box to submit their response, as shown in Fig 10 (bottom). Note that we specify that the robot does not know where the target objects are, but that it knows the buildings, streets and other landmarks available on the map. We encourage them to use the information available on the map in their description. 2) Distribution of Collected Predicates: Each description is parsed using our pipeline described in Section VI-A. 1,521 out of 1,650 gathered descriptions were successfully parsed; meaning at least one spatial relation was extracted from the sentence. The distribution of all spatial predicates are shown in Fig 11. Note that we include the word "is" on the list since it often appears in "is in" or "is at", yet the parser sometimes skip the word after it due to an artifact. We excluded language descriptions parsed with such artifact from the ones used in the end-to-end object search evaluation.  3) FoR Annotation: To collect the FoR annotation, we create our custom annotation tool. The FoR consists of a front (purple) and right (green) vector that show how the speaker considers the direction of the ground according to their given spatial description. The interface (Fig 12) works as follows: (1) The annotator first clicks the "Annotate" button. (2) The interface prompts the annotator the language phrase corresponding to a spatial relation to be annotated (e.g. "RedBike is in front of EmpireApartments"), which is composed using the parsed (f, r, γ) tuple. (3) to annotate an FoR, the annotator clicks on the map as the origin of the FoR, and then clicks on another point on the map as the end point of the front vector. The vector for right is automatically computed to be 90 degrees clockwise with respect to the front vector. (4) After annotating one FoR, the annotator clicks "Next" to move on, and the process starts over again from step (2). In total we have 273 FoR annotations. Table III shows the amount of annotation per spatial relation. You can download the dataset by visiting the website linked in the footnote on the first page. Fig. 12: The FoR annotator GUI interface. The FoR consists of a front (purple) and right (green) vector. The target objects are not shown, and the annotator only has access to the spatial language description, and the map image. This mimics the situation faced by the robot in our task.