Teaching robots to behave

To develop structured methods for specifying safe closed-loop robot behaviours and tools for automatically synthesizing and analysing system behaviour with respect to these specifications.
Description of the Project: 

The development of many commonly used engineering systems has depended crucially on an infrastructure of description languages at varying levels of abstraction, tools for simulation, verification, etc. This has certainly been the case for the majority of electronic devices we rely so heavily on. What will it take for robots to achieve this same level of maturity? We do have standardised middleware (ROS) and description formats for robots (URDFs), but this doesn’t really give us a handle on trustworthiness of the robot behaviours. A crucial impediment is the difficulty of specifying robot behaviour in an open world setting and eliciting from human experts all aspects of the desired system behaviour. 

Motivated in this way, we will focus on developing an interactive design framework that includes: 

  1. Probabilistic programming and simulation methods for representing complex closed-loop behaviours with imprecise sensor/actuators 
  1. Systematic automated methods for edge case finding and iterative elaboration of interesting scenarios [2] 
  1. Applying these ideas in the context of industry-strength design tools   

While there are tools that take on some aspects of the problem, such as in the domain of self-driving vehicle systems [1,3,4], there is still much to be done with robotic systems that entail richer forms of dynamics, forces and 3D geometry.  We are particularly interested in robotic manipulation.  A concrete application motivation would be the use of robotic systems in medical and assistive use cases. 

Resources required: 
While the primary outputs will be software, the work will involve significant degree of experimental validation with physical robots available within the ECR
Project number: 
First Supervisor: 
University of Edinburgh
Second Supervisor(s): 
First supervisor university: 
University of Edinburgh
Essential skills and knowledge: 
Sound knowledge of planning and control in robotics, vision and perception systems, as well as a good background in machine learning and formal analysis methods
Desirable skills and knowledge: 
Exposure to software frameworks for simulation, design and verification

[1] Fremont, D. J., Dreossi, T., Ghosh, S., Yue, X., Sangiovanni-Vincentelli, A. L., & Seshia, S. A. (2019, June). Scenic: a language for scenario specification and scene generation. In Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation (pp. 63-78). 

[2] da Costa, J. R. V. G. (2018). Data Hallucination, Falsification and Validation using Generative Models and Formal Methods (Doctoral dissertation, University of California, Berkeley). 

[3] Eiras, F., Hawasly, M., Albrecht, S. V., & Ramamoorthy, S. (2020). A Two-Stage Optimization Approach to Safe-by-Design Planning for Autonomous Driving. arXiv preprint arXiv:2002.02215. 

[4] P. Koopman, R. Hierons, S. Khastgir, J.A. Clark, M. Fisher, R. Alexander, K. Eder, P. Thomas, G. Barrett, Philip H.S. Torr, A. Blake, S. Ramamoorthy, J. McDermid, Certification of highly automated vehicles for use on UK roads: Creating an industry-wide framework for safety, Whitepaper, 2019.