Automated probabilistic programming and learning methods for robotic behaviours in an uncertain and changing world

   School of Physics, Engineering and Technology

  ,  Applications accepted all year round  Self-Funded PhD Students Only

About the Project

Nearly all programmable computing systems are based by design on exact logic, under the assumption of a "perfect" mathematical world. By extension, logic used in robotics and other autonomous systems is also exact. However, all cyber-physical systems must interact with a world using sensors and actuators that by the very nature of this interaction, are not fundamentally exact or deterministic. Machine learning methods based on neural-inspired models have done much to allow machines to cope with inexact interactions with the world, but at the cost of explainability and adherence to desired models that we believe are considered "known" and need not be learned.

This research project seeks to achieve a middle ground between exact computation and pure machine learning by applying a probabilistic programming paradigm to the design of robots and autonomous systems. "Programs" are created as semantic hierarchies such as a Bayesian network of random variable tensors, and tensor arithmetic is used to operate on "data" within these tensors to achieve desired behaviours. The programming model is therefore functional rather than procedural. Additional benefits of using tensor arithmetic to achieve behaviours include that operation is continuous rather than having a defined "start" and "end", and no segmentation faults or program errors are possible since all operations have a closed domain and range.

A variety of programming methods can be implemented together for such a system. Expert knowledge can be encoded by a programmer writing a program as a hierarchy of functions or elements in SysML or AADL, abstract models of behaviour can be encoded by creating a structure of elements and data that reflects a real system, and "learning" programs is possible by creating structures from desired or historic data. In this project, methods of probabilistic programming such as these will be implemented with the goal of allowing robots and autonomous systems to be created with greater simplicity and efficiency for the challenges of dealing appropriately with harsh environments, uncertainty and variability.

For more details about this project, please contact Dr Mark Post, email: .

Entry requirements:

Candidates should have (or expect to obtain) a minimum of a UK upper second class honours degree (2.1) or equivalent in Electronic and Electrical Engineering, Physics, Computer Science, Mathematics or a closely related subject.

How to apply:

Applicants should apply via the University’s online application system at Please read the application guidance first so that you understand the various steps in the application process.

Engineering (12)

Funding Notes

This is a self-funded project and you will need to have sufficient funds in place (eg from scholarships, personal funds and/or other sources) to cover the tuition fees and living expenses for the duration of the research degree programme. Please check the School of Physics, Engineering and Technology website View Website for details about funding opportunities at York.

Register your interest for this project

Where will I study?

Search Suggestions
Search suggestions

Based on your current searches we recommend the following search filters.