[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ Skip to main content

Advertisement

Log in

Predicting the global structure of indoor environments: A constructive machine learning approach

  • Published:
Autonomous Robots Aims and scope Submit manuscript

Abstract

Consider a mobile robot exploring an initially unknown school building and assume that it has already discovered some corridors, classrooms, offices, and bathrooms. What can the robot infer about the presence and the locations of other classrooms and offices and, more generally, about the structure of the rest of the building? This paper presents a system that makes a step towards providing an answer to the above question. The proposed system is based on a generative model that is able to represent the topological structures and the semantic labeling schemas of buildings and to generate plausible hypotheses for unvisited portions of these environments. We represent the buildings as undirected graphs, whose nodes are rooms and edges are physical connections between them. Given an initial knowledge base of graphs, our approach, relying on constructive machine learning techniques, segments each graph for finding significant subgraphs and clusters them according to their similarity, which is measured using graph kernels. A graph representing a new building or an unvisited part of a building is eventually generated by sampling subgraphs from clusters and connecting them.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
£29.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price includes VAT (United Kingdom)

Instant access to the full article PDF.

\(\blacktriangleleft\)Fig. 6
\(\blacktriangleleft\)Fig. 7
\(\blacktriangleleft\)Fig. 8
\(\blacktriangleleft\)Fig. 9
\(\blacktriangleleft\)Fig. 10
\(\blacktriangleleft\)Fig. 11
\(\blacktriangleleft\)Fig. 12
\(\blacktriangleleft\)Fig. 13
\(\blacktriangleleft\)Fig. 14
\(\blacktriangleleft\)Fig. 15
\(\blacktriangleleft\)Fig. 16
\(\blacktriangleleft\)Fig. 17
\(\blacktriangleleft\)Fig. 18

Similar content being viewed by others

Explore related subjects

Discover the latest articles, news and stories from top researchers in related subjects.

Notes

  1. Code is available at: https://github.com/goldleaf3i/generativeCMLgraphs.

References

  • Amigoni, F., Luperto, M., & Quattrini Li, A. (2014). Towards more realistic indoor environments for the virtual robot competition. In RoboCup2014 CD.

  • Aydemir, A., Jensfelt, P., & Folkesson, J. (2012). What can we learn from 38,000 rooms? Reasoning about unexplored space in indoor environments. In Proceedings IROS (pp. 4675–4682).

  • Aydemir, A., Pronobis, A., Gobelbecker, M., & Jensfelt, P. (2013). Active visual object search in unknown environments using uncertain semantics. IEEE Transactions on Robotics, 29(4), 986–1002.

    Article  Google Scholar 

  • Barabási, A. L., & Albert, R. (1999). Emergence of scaling in random networks. Science, 286(5439), 509–512.

    Article  MathSciNet  MATH  Google Scholar 

  • Costa, F., & De Grave, K. (2010). Fast neighborhood subgraph pairwise distance kernel. In Proceedings ICML (pp. 255–262).

  • Costa, F. (2017). Learning an efficient constructive sampler for graphs. Artificial Intelligence, 244, 217–238.

    Article  MathSciNet  MATH  Google Scholar 

  • De Raedt, L. (2008). Logical and relational learning. Berlin: Springer.

    Book  MATH  Google Scholar 

  • Feragen, A., Kasenburg, N., Petersen, J., de Bruijne, M., & Borgwardt, K. (2013). Scalable kernels for graphs with continuous attributes. In Proceedings NIPS (pp. 216–224).

  • Frey, B. J., & Dueck, D. (2007). Clustering by passing messages between data points. Science, 315(5814), 972–976.

    Article  MathSciNet  MATH  Google Scholar 

  • Galindo, C., Saffiotti, A., Coradeschi, S., Buschka, P., Fernandez-Madrigal, J., & González, J. (2005). Multi-hierarchical semantic maps for mobile robotics. In Proceedings IROS (pp. 2278–2283).

  • Gärtner, T., Lloyd, J. W., & Flach, P. A. (2004). Kernels and distances for structured data. Machine Learning, 57(3), 205–232.

    Article  MATH  Google Scholar 

  • Haussler, D. (1999). Convolution kernels on discrete structures. Technical report, University of California, Santa Cruz, USA.

  • Hemachandra, S., Walter, M., Tellex, S., & Teller, S. (2014). Learning spatial-semantic representations from natural language descriptions and scene classifications. In Proceedings ICRA, (pp. 2623–2630).

  • Kashima, H., Tsuda, K., & Inokuchi, A. (2003). Marginalized kernels between labeled graphs. In Proceedings ICML (pp. 321–328).

  • Koller, D., & Friedman, N. (2009). Probabilistic graphical models: Principles and techniques. Cambridge: MIT press.

    MATH  Google Scholar 

  • Luperto, M., & Amigoni, F. (2014). Exploiting structural properties of buildings towards general semantic mapping systems. In Proceedings IAS-13 (pp. 375–387).

  • Luperto, M., D’Emilio, L., & Amigoni, F. (2015). A generative spectral model for semantic mapping of buildings. In Proceedings IROS (pp. 4451–4458).

  • Luperto, M., Quattrini Li, A., & Amigoni, F .(2013). A system for building semantic maps of indoor environments exploiting the concept of building typology. In Proceedings RoboCup (pp. 504–515).

  • Menchetti, S., Costa, F., & Frasconi, P. (2005). Weighted decomposition Kernels. In Proceedings ICML (pp. 585–592).

  • Mozos, O., Stachniss, C., & Burgard, W. (2005). Supervised learning of places from range data using AdaBoost. In Proceedings ICRA (pp. 1730–1735).

  • Mozos, O., Triebel, R., Jensfelt, P., Rottmann, A., & Burgard, W. (2007). Supervised semantic labeling of places using information extracted from sensor data. Robotics and Autonomous Systems, 55(5), 391–402.

    Article  Google Scholar 

  • Neufert, E., & Neufert, P. (2012). Architects’ data. Hoboken: Wiley-Blackwell.

    Google Scholar 

  • Newman, M. E. (2003). Mixing patterns in networks. Physical Review E, 67(2), 026,126–1 – 026,126–13.

    Article  MathSciNet  Google Scholar 

  • Oßwald, S., Bennewitz, M., Burgard, W., & Stachniss, C. (2016). Speeding-up robot exploration by exploiting background information. IEEE Robotics and Automation Letters, 1(2), 716–723.

    Article  Google Scholar 

  • Perea Strom, D., Nenci, F., & Stachniss, C. (2015). Predictive exploration considering previously mapped environments. In Proceedings ICRA (pp. 2761–2766).

  • Pronobis, A., & Jensfelt, P. (2012). Large-scale semantic mapping and reasoning with heterogeneous modalities. In Proceedings ICRA pp 3515–3522.

  • Pronobis, A., Mozos, O., Caputo, B., & Jensfelt, P. (2010). Multi-modal semantic place classification. International Journal of Robotics Research, 29(2–3), 298–320.

    Article  Google Scholar 

  • Quattrini Li, A., Cipolleschi, R., Giusto, M., & Amigoni, F. (2016). A semantically-informed multirobot system for exploration of relevant areas in search and rescue settings. Autonomous Robots, 40(4), 581–597.

    Article  Google Scholar 

  • Shervashidze, N., Schweitzer, P., Van Leeuwen, E. J., Mehlhorn, K., & Borgwardt, K. M. (2011). Weisfeiler-Lehman graph kernels. The Journal of Machine Learning Research, 12, 2539–2561.

    MathSciNet  MATH  Google Scholar 

  • Shi, J., & Malik, J. (2000). Normalized cuts and image segmentation. IEEE Transactions on Pattern Analysis and Machine Intelligence, 22(8), 888–905.

    Article  Google Scholar 

  • Sjoo, K. (2012). Semantic map segmentation using function-based energy maximization. In Proceedings ICRA (pp. 4066–4073).

  • Solanas, A., & Garcia, M. (2004). Coordinated multi-robot exploration through unsupervised clustering of unknown space. In Proceedings IROS (pp. 717–721).

  • Stachniss, C., Mozos, O., & Burgard, W. (2006). Speeding-up multi-robot exploration by considering semantic place information. In Proceedings ICRA (pp. 1692–1697).

  • The Whole Building Design Guide. (2015). https://www.wbdg.org, Accessed 29 September 2017.

  • van der Maaten, L., & Hinton, G. (2008). Visualizing data using t-SNE. Journal of Machine Learning Research, 9, 2579–2605.

    MATH  Google Scholar 

  • Wurm, K., Stachniss, C., & Burgard, W. (2008). Coordinated multi-robot exploration using a segmentation of the environment. In Proceedings IROS (pp. 1160–1165).

  • Zender, H., Mozos, O., Jensfelt, P., Kruijff, G., & Burgard, W. (2008). Conceptual spatial representations for indoor mobile robots. Robotics and Autonomous Systems, 56(6), 493–502.

    Article  Google Scholar 

Download references

Acknowledgements

Authors gratefully thank Modestino Cucciniello and Mattia Di Vitto for their contributions to the implementation of the system presented in this paper.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Matteo Luperto.

Appendix: graph kernels

Appendix: graph kernels

The task of learning a model of structured data like graphs, as we do in this paper, is often complex and requires ad hoc techniques since standard machine learning techniques cannot be naturally adopted due to the dimensionality of the data (De Raedt 2008). We make a substantial use of graph kernel methods, which use a decompositional approach to measure the similarity between two graphs. In this appendix we provide a general overview on the concept of graph kernel, as introduced by Haussler (1999), and we describe the graph kernels that we use in our method. Graph kernel methods are the equivalent for structured data of kernel methods (Gärtner et al. 2004), which are typically defined in a vectorial space. Among the graph kernel families, the general class of convolutional kernels proposed by Haussler (1999) represents the guiding principle in kernel design for structured objects (Costa and De Grave 2010; Gärtner et al. 2004). Convolutional kernels are based on the idea that the structure of a graph can be captured by a relation R between the graph and its parts. A graph kernel is then defined as a composition of kernels defined on different parts of the graph.

Let \(G=(N,E)\in \mathcal {G}\) be a graph and \(\{g_1, \ldots , g_D\}\) one of its decompositions into (possibly overlapping) parts (subgraphs). Each part \(g_d\) in an element of a countable set \(G_d\), for \(d=1,\ldots ,D\), \(D \ge 1\). Consider a relation R defined on \(G_1 \times \cdots \times G_D \times \mathcal {G}\), where \(R(g_1,\ldots ,g_D,G)\) is true if the set \(\{g_1,g_2,\ldots ,g_D\}\) is one of the possible sets of the parts (subgraphs) of G (i.e., in which G can be decomposed). Given R, we can define the function \(R^{-1}\) as the decomposition function which returns the sets of parts (decompositions) of G: \(R^{-1}(G) = \{ g_1,\ldots ,g_D : R(g_1,\ldots ,g_D,G) \}\). Consider now any positive definite kernel function \(K_d\) over \(G_d \times G_d\), \(d=1,\ldots ,D\). For two graphs \(G, Q \in \mathcal {G}\), we can define a convolutional or decomposition kernel on graphs as the function:

$$\begin{aligned} K(G,Q) = \sum _{\begin{array}{c} g_1,\ldots ,g_D \in R^{-1}(G)\\ q_1, \ldots ,q_D \in R^{-1}(Q) \end{array}} \prod _{d=1}^{D} K_d(g_d,q_d). \end{aligned}$$

Given a generic graph kernel K, the similarity measure between two graphs \(G,Q \in \mathcal {G}\) can be defined as the normalized version of the graph kernel:

$$\begin{aligned} K_{\textit{normalized}}(G,Q) = \frac{K(G,Q)}{\sqrt{K(G,G)K(Q,Q)}}. \end{aligned}$$

In this work we use two instances of convolutional graph kernels: the Weisfeiler-Lehman Subtree Kernel (\(K_{\textit{WL}}\)) (Shervashidze et al. 2011) and the Graph Hopper Kernel (\(K_{\textit{GH}}\)) (Feragen et al. 2013). Several other kernels, such as those by Costa and De Grave (2010), Menchetti et al. (2005), and Kashima et al. (2003) have been empirically tested with less convincing results (numerical results are not reported here).

\(\blacktriangleleft\)Fig. 19
figure 14

An example of a \(d=2\) subtree rooted from node 1

The \(K_{\textit{WL}}\) belongs to the family of Weisfeiler-Lehman graph kernels (Shervashidze et al. 2011), that exploit the Weisfeiler-Lehman test of isomorphism on graphs as a rapid feature extraction scheme. \(K_{\textit{WL}}\) is implemented as an iterative procedure in which, at each iteration, the node labels are augmented by concatenating to the current label of each node the sorted list of labels of its adjacent nodes. The resulting augmented label list is then compressed into a new, shorter label list using an hash function. Each graph G is thus mapped to a sequence of graphs \(\{ G_0,G_1,\ldots ,G_h\} = \{(N,E,L_0),(N,E,L_1), \ldots ,(N,E,L_h)\}\), where \(G_i\) and \(L_i\) are the graph and the label set (one label per node) after i iterations of the algorithm, respectively, and h is the total number of iterations. Given any graph kernel \(K_b\) called base kernel, \(K_{\textit{WL}}\) is then computed as:

$$\begin{aligned} K_{\textit{WL}} (G,Q)= & {} K_b(G_0,Q_0)\\&+\,K_b(G_1,Q_1) + \ldots +K_b(G_h,Q_h). \end{aligned}$$

In our setting we use as base kernel \(K_b(G_i,Q_i)\) a subtree kernel. It computes all the rooted subtrees of \(G=(N,E)\) (a rooted subtree is an acyclic sub-graph of G with a given depth d and rooted on a node \(n \in N\), where nodes \(n'\in N\) can be repeated in different branches of the tree; an example of a rooted subtree is shown in Fig. 14). These rooted subtrees are the outcome of the decomposition \(R^{-1}\). For each iteration i, \(i=1, \ldots , h\), \(K_b\) counts the number of common labels between all the subtrees of \(G_i\) and \(Q_i\) rooted in two nodes with the same label \(l^* \in L_i\). The complexity of \(K_{\textit{WL}}\) when applied to a set of N graphs is \(O(Nhm+N^2hn)\), where N is the total number of graphs, and n and m are the number of nodes and edges of the graphs respectively (assumed equal for all graphs for simplicity).

In \(K_{\textit{GH}}\) (Feragen et al. 2013), the decomposition relation \(R^{-1}\) is based on the shortest path between each pair of nodes:

$$\begin{aligned} K_{\textit{GH}}(G,Q) = \sum _{\pi \in \mathcal {P}, \pi ^{'} \in \mathcal {P}^{'}} k_p(\pi ,\pi ^{'}), \end{aligned}$$

where \(k_p\) is a kernel defined on paths and \(\mathcal {P}\) and \(\mathcal {P}^{'}\) are the sets of shortest paths between all pairs of nodes of G and Q, respectively. The path-kernel \(k_p\) is defined on two paths \(\pi \) and \(\pi '\) as:

$$\begin{aligned} k_{p}(\pi ,\pi ') = {\left\{ \begin{array}{ll} \sum _{j=1}^{|\pi |} k_{n}(\pi (j), \pi '(j)) &{}\quad \text {if } |\pi | = |\pi '|\\ 0 &{}\quad \text {else} \end{array}\right. }, \end{aligned}$$

where \(\pi (i) = n_i\) indicates the i-th node in the path \(\pi = (n_1,\ldots , n_{|\pi |})\). We use a linear node kernel \(k_n(n_i,n_j)\) that returns 1 if \(n_i\) and \(n_j\) have the same label and 0 otherwise. Total complexity of \(K_{\textit{GH}}\) is \(O(N^2(n^2(m+\log n + d + \delta ^2)))\) where N, n, and m are defined as in \(K_{\textit{WL}}\), \(\delta \) is the length of the longest shortest path, and d is a constant.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Luperto, M., Amigoni, F. Predicting the global structure of indoor environments: A constructive machine learning approach. Auton Robot 43, 813–835 (2019). https://doi.org/10.1007/s10514-018-9732-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10514-018-9732-7

Keywords

Navigation