Emergency services can benefit from assistance from autonomous drones to reach difficult-to-access areas faster and without putting the lives of emergency personnel at risk. Interactions between autonomous drones and humans and fragile environments, however, raise significant concerns. We must use the most modern technology to develop trustworthy drones. In this project, we will use RoboStar technology to support the development of a drone that can search for victims and provide medical assistance. We will use automated techniques to develop simulations and carry out tests using a programming approach widely adopted in robotics.
Autonomous drones can support emergency services in reaching difficult-to-access areas and can help them treat more injured people. We must, however, use the most modern design and verification technology to ensure trustworthiness. In this project, we will use RoboStar (robostar.cs.york.ac.uk) technology to support the development of software for a drone that can search for victims and provide medical assistance. The detailed tasks with schedule are as follows.
* Week 1: Studying the requirements of the application based on an example provided by one of our industry collaborators and the robotics literature.
* Weeks 2 and 3: Defining a design using a diagrammatic notation similar to UML, but tailored for the definition of robotic control software, namely, RoboChart 
* Week 4: Use of an automatic code generator to run animations of the RoboChart model to validate it. The coding language will be C++ or Rust, depending on the interests and expertise of the intern.
* Weeks 5 and 6: Study of ROS (Robotic Operating Systems) , a middleware that is widely used in the robotics community.
* Week 7: Developing an ROS simulation to automatically generate C++ code.
* Week 8: Studying the RoboStar automatic test generators.
* Weeks 9 and 10: Evaluating the simulation using the automatically generated tests.
Weeks 11 and 12: Writing a short report describing the results and the lessons learned, in terms of the use of RoboStar technology and ROS.
Depending on how the project goes and the availability of the intern to work in York, there may be time to run the automatically generated code and tests also in an actual drone and run supervised tests in the lab with our technicians.
The overall result of the project is thoroughly tested code for the application, and to demonstrate the low cost of applying RoboStar technology to a significant application of great societal interest. The project may also lead to improvements of the RoboStar tools .
 A RoboChart tutorial is available (https://robostar.cs.york.ac.uk/notations/robochart-tutorial/), and additional publications and examples can be found at https://robostar.cs.york.ac.uk/notations/.
Some publications are
* A. Miyazawa, A. Cavalcanti, P. Ribeiro, W. Li, J. Woodcock, J. Timmis: RoboChart Reference Manual. University of York (2016).
* A. Miyazawa, P. Ribeiro, W. Li, A. L. C. Cavalcanti, J. Timmis: Automatic Property Checking of Robotic Applications. In: The International Conference on Intelligent Robots and Systems.
 There is extensive documentation about ROS, including teaching material we have at York. A good source is https://wiki.ros.org/ROS/Tutorials.
 The RoboStar tool is available from https://robostar.cs.york.ac.uk/robotool/. A tutorial is available at https://robostar.cs.york.ac.uk/robotool/tutorial/. We also have teaching materials that we can provide to the intern.
Preferred intern working pattern: The most productive and potentially enjoyable working pattern will be in person in the lab every day or most days, at least for a significant amount of the core hours: from 10 to 4. In this way, the intern will have the opportunity to integrate fully with the RoboStar team and take advantage of their expertise. There is, however, plenty of flexibility. We can change the start dates by agreement. It is also possible to work from home, as long as the intern come to the office at least once a week, and attend the meetings in person.
A shorter programme of work can be pursued if the intern is not available for full-time work and for the full term of the internship. We note, however, that completing the programme puts the intern in a strong position to contribute to a research paper that we can publish together. This is potentially a very attractive addition to the intern's CV.
Can the internship be carried out from home (remotely): Yes
Will remote working equipment be provided: Yes