skip to main content
10.1145/3205651.3208237acmconferencesArticle/Chapter ViewAbstractPublication PagesgeccoConference Proceedingsconference-collections
research-article

Novelty search for software improvement of a SLAM system

Published:06 July 2018Publication History

ABSTRACT

Genetic Improvement (GI) performs a search at the level of source code to find the best variant of a baseline system that improves non-functional properties while maintaining functionality with noticeable results in several domains. There a many aspects of this general approach that are currently being explored. In particular, this work deals to the way in which the search is guided to efficiently explore the search space of possible software versions in which GI operates. The proposal is to integrate Novelty Search (NS) within the GISMOE GI framework to improve KinectFusion, which is a vision-based Simultaneous Localization and Mapping (SLAM) system that is used for augmented reality, autonomous vehicle navigation, and many other real-world applications. This is one of a small set of works that have successfully combined NS with a GP system, and the first time that it has been used for software improvement. To achieve this, we propose a new behaviour descriptor for SLAM algorithms, based on state-of-the-art benchmarking and present results that show that NS can produce significant improvement gains in a GI setting, when considering execution time and trajectory estimation as the main performance criteria.

References

  1. P. J. Besl and N. D. McKay. 1992. A method for registration of 3-D shapes. IEEE Transactions on Pattern Analysis and Machine Intelligence 14, 2 (Feb 1992), 239--256. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. B. Bodin, L. Nardi, M. Z. Zia, H. Wagstaff, G. S. Shenoy, M. Emani, J. Mawer, C. Kotselidis, A. Nisbet, M. Lujan, B. Franke, P. H. J. Kelly, and M. O'Boyle. 2016. Integrating algorithmic parameters into benchmarking and design space exploration in 3D scene understanding. In 2016 International Conference on Parallel Architecture and Compilation Techniques (PACT). 57--69. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Cesar Cadena, Luca Carlone, Henry Carrillo, Yasir Latif, Davide Scaramuzza, Jose Neira, Ian Reid, and John J. Leonard. 2016. Past, Present, and Future of Simultaneous Localization and Mapping: Toward the Robust-Perception Age. Trans. Rob. 32, 6 (Dec. 2016), 24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Andrew J. Davison, Ian D. Reid, Nicholas D. Molton, and Olivier Stasse. 2007. MonoSLAM: Real-Time Single Camera SLAM. IEEE Trans. Pattern Anal. Mach. Intell. 29, 6 (June 2007), 1052--1067. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Jakob Engel, Thomas Schöps, and Daniel Cremers. 2014. LSD-SLAM: Large-Scale Direct Monocular SLAM. In Computer Vision - ECCV 2014, David Fleet, Tomas Pajdla, Bernt Schiele, and Tinne Tuytelaars (Eds.). Springer International Publishing, Cham, 834--849.Google ScholarGoogle Scholar
  6. Mark Gabel and Zhendong Su. 2010. A Study of the Uniqueness of Source Code. In Proceedings of the Eighteenth ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE '10). ACM, New York, NY, USA, 147--156. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. A. Handa, T. Whelan, J. McDonald, and A. J. Davison. 2014. A benchmark for RGB-D visual odometry, 3D reconstruction and SLAM. In 2014 IEEE International Conference on Robotics and Automation (ICRA). 1524--1531.Google ScholarGoogle Scholar
  8. Saemundur O. Haraldsson, John R. Woodward, Alexander E. I. Brownlee, and Kristin Siggeirsdottir. 2017. Fixing Bugs in Your Sleep: How Genetic Improvement Became an Overnight Success. In Proceedings of the Genetic and Evolutionary Computation Conference Companion (GECCO '17). ACM, New York, NY, USA, 1513--1520. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Mark Harman, S. Afshin Mansouri, and Yuanyuan Zhang. 2012. Search-based Software Engineering: Trends, Techniques and Applications. ACM Comput. Surv. 45, 1, Article 11 (Dec. 2012), 61 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. W. B. Langdon and M. Harman. 2015. Optimizing Existing Software With Genetic Programming. Evolutionary Computation, IEEE Transactions on 19, 1 (Feb 2015), 118--135.Google ScholarGoogle Scholar
  11. W. B. Langdon and S. M. Gustafson. 2010. Genetic Programming and Evolvable Machines: ten years of reviews. Genetic Programming and Evolvable Machines 11, 3/4 (Sept. 2010), 321--338. https://doi.org/ Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. William B. Langdon and Mark Harman. 2014. Genetically Improved CUDA C++ Software. In Revised Selected Papers of the 17th European Conference on Genetic Programming - Volume 8599 (EuroGP 2014). Springer-Verlag New York, Inc., New York, NY, USA, 87--99. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. William B. Langdon, Brian Yee Hong Lam, Justyna Petke, and Mark Harman. 2015. Improving CUDA DNA Analysis Software with Genetic Programming. In Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation (GECCO '15). ACM, New York, NY, USA, 1063--1070. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. William B. Langdon, Marc Modat, Justyna Petke, and Mark Harman. 2014. Improving 3D Medical Image Registration CUDA Software with Genetic Programming. In Proceedings of the 2014 Annual Conference on Genetic and Evolutionary Computation (GECCO '14). ACM, New York, NY, USA, 951--958. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Claire Le Goues, Thanh Vu Nguyen, Stephanie Forrest, and Westley Weimer. 2012. GenProg: A Generic Method for Automatic Software Repair. IEEE Trans. Softw. Eng. 38, 1 (Jan. 2012), 54--72. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Joel Lehman and Kenneth O. Stanley. 2008. Exploiting Open-Endedness to Solve Problems Through the Search for Novelty. In Proc. of the Eleventh Intl. Conf. on Artificial Life (ALIFE XI). MIT Press, Cambridge, MA.Google ScholarGoogle Scholar
  17. Ke Mao, Mark Harman, and Yue Jia. 2016. Sapienz: Multi-objective Automated Testing for Android Applications. In Proceedings of the 25th International Symposium on Software Testing and Analysis (ISSTA 2016). ACM, New York, NY, USA, 94--105. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Yuliana Martínez, Enrique Naredo, Leonardo Trujillo, and Edgar Galván López. 2013. Searching for novel regression functions. In Proceedings of the IEEE Congress on Evolutionary Computation, CEC 2013, Cancun, Mexico, June 20--23, 2013. 16--23.Google ScholarGoogle ScholarCross RefCross Ref
  19. Luigi Nardi, Bruno Bodin, Sajad Saeedi, Emanuele Vespa, Andrew J. Davison, and Paul H. J. Kelly. 2017. Algorithmic Performance-Accuracy Trade-off in 3D Vision Applications Using HyperMapper. CoRR abs/1702.00505 (2017).Google ScholarGoogle Scholar
  20. Luigi Nardi, Bruno Bodin, M. Zeeshan Zia, John Mawer, Andy Nisbet, Paul H. J. Kelly, Andrew J. Davison, Mikel Luján, Michael F. P. O'Boyle, Graham Riley, Nigel Topham, and Steve Furber. 2015. Introducing SLAMBench, a performance and accuracy benchmarking methodology for SLAM. In IEEE Intl. Conf. on Robotics and Automation (ICRA).Google ScholarGoogle ScholarCross RefCross Ref
  21. L. Nardi, B. Bodin, M. Z. Zia, J. Mawer, A. Nisbet, P. H. J. Kelly, A. J. Davison, M. LujÃąn, M. F. P. O'Boyle, G. Riley, N. Topham, and S. Furber. 2015. Introducing SLAMBench, a performance and accuracy benchmarking methodology for SLAM. In 2015 IEEE International Conference on Robotics and Automation (ICRA). 5783--5790.Google ScholarGoogle Scholar
  22. Enrique Naredo, Miguel Aurelio Duarte-Villaseñor, Manuel de Jesús García Ortega, Carlos E. Vázquez López, Leonardo Trujillo, and Oscar S. Siordia. 2016. Novelty Search for the Synthesis of Current Followers. Computación y Sistemas 20, 4 (2016).Google ScholarGoogle Scholar
  23. Enrique Naredo and Leonardo Trujillo. 2013. Searching for Novel Clustering Programs. In Proceedings of the 15th Annual Conference on Genetic and Evolutionary Computation (GECCO '13). ACM, New York, NY, USA, 1093--1100. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Enrique Naredo, Leonardo Trujillo, Pierrick Legrand, Sara Silva, and Luis Muñoz. 2016. Evolving genetic programming classifiers with novelty search. Inf. Sci. 369 (2016), 347--367. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Enrique Naredo, Paulo Urbano, and Leonardo Trujillo. 2017. The training set and generalization in grammatical evolution for autonomous agent navigation. Soft Comput. 21, 15 (2017), 4399--4416. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Richard A. Newcombe, Shahram Izadi, Otmar Hilliges, David Molyneaux, David Kim, Andrew J. Davison, Pushmeet Kohli, Jamie Shotton, Steve Hodges, and Andrew Fitzgibbon. 2011. KinectFusion: Real-time Dense Surface Mapping and Tracking. In Proceedings of the 2011 10th IEEE International Symposium on Mixed and Augmented Reality (ISMAR '11). IEEE Computer Society, Washington, DC. USA, 127--136. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. J. Petke, S. Haraldsson, M. Harman, w. langdon, D. White, and J. Woodward. 2017. Genetic Improvement of Software: a Comprehensive Survey. IEEE Transactions on Evolutionary Computation PP, 99 (2017), 1--1.Google ScholarGoogle Scholar
  28. Justyna Petke, Mark Harman, William B. Langdon, and Westley Weimer. 2014. Using Genetic Improvement and Code Transplants to Specialise a C++ Program to a Problem Class. In Revised Selected Papers of the 17th European Conference on Genetic Programming - Volume 8599 (EuroGP 2014). Springer-Verlag New York. Inc., New York, NY, USA, 137--149. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. O. Tange. 2011. GNU Parallel - The Command-Line Power Tool. ;login: The USENIX Magazine 36, 1 (Feb 2011), 42--47.Google ScholarGoogle Scholar
  30. Paulo Urbano, Enrique Naredo, and Leonardo Trujillo. 2014. Generalization in Maze Navigation Using Grammatical Evolution and Novelty Search. In Theory and Practice of Natural Computing, Adrian-Horia Dediu, Manuel Lozano, and Carlos Martín-Vide (Eds.). Springer International Publishing, Cham, 35--46.Google ScholarGoogle Scholar
  31. M. Z. Zia, L. Nardi, A. Jack, E. Vespa, B. Bodin, P. H. J. Kelly, and A. J. Davison. 2016. Comparative design space exploration of dense and semi-dense SLAM. In 2016 IEEE International Conference on Robotics and Automation (ICRA). 1292--1299.Google ScholarGoogle Scholar

Index Terms

  1. Novelty search for software improvement of a SLAM system

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            GECCO '18: Proceedings of the Genetic and Evolutionary Computation Conference Companion
            July 2018
            1968 pages
            ISBN:9781450357647
            DOI:10.1145/3205651

            Copyright © 2018 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 6 July 2018

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article

            Acceptance Rates

            Overall Acceptance Rate1,669of4,410submissions,38%

            Upcoming Conference

            GECCO '24
            Genetic and Evolutionary Computation Conference
            July 14 - 18, 2024
            Melbourne , VIC , Australia

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader