Colin Price

Swarm Robotics

..

Swarm robotics is about creating a large collection of simple robots. Each robot has limited intelligence and works with local rules. The idea is to obtain collective, decentralised intelligence. Typical application include collective exploration, collaboration to transport a large object, pattern formation.

You will conduct a literature review to identify various applications as well as platforms suitable for simulating a swarm. Then, of course, you will identify various algorithms to obtain collective intelligence.

You will select an application and a simulation platform (may I suggest Webots which is free, powerful, installed in the labs, and I have experience of this). Then you will verify your code, using results from the literature, and finally evaluate the accuracy of your simulations. Of course there will be a number of 'free' parameters in the model. You could investigate the effect of changing these parameters on the results of your simulations.

Topics
Supervisor

Does Story-Writing-(Coding) help youngsters to learn to code in Java?

My research over the past 5 years has shown that Primary School children are able to code in Java (and understand some OOP concepts) using the WeeBee engine. The children code animated stories, and nearly all children succeed. This research has led to a number of highly-rated Journal publications. The concept is called 'Story-Writing-Coding'.

However, there is one unanswered question. What helped the children learn to code in Java? Was it the design of the WeeBee engine? Or was it the context of coding stories? Or something else?

This project, which is original research, aims to address the question. You will create an alternative to coding stories, but still using the WeeBee engine. I propose "Turtle Graphics" proposed ages ago by MIT's Seymour Papert, a computing god. You will research Turtle Graphics, and create a number of Turtle Graphics exercises suitable for Primary School children, which will then be deployed in a school.

The research will take place in a local primary school. A comparative study will be made of children's performance in programming using the Story-Writing-Coding approach and the Turtle Graphics approach.

...        Story-Writing-Coding

...       Turtle Graphics

Supervisor

Forced Diffusion Limited Aggregation - Growing Strange Copper Trees

This project aligns with one of my research interests, and you will be helping forge original research. Copper trees can be grown using electro-deposition of copper from copper wires through a solution of copper sulphate. Easy. Under correct conditions (easy to obtain) you get tree-like structures. This is well-known. Here's an experiment I did last week.

...

But I have an original experiment planned ...

This experiment will use a ring of copper wires, which are driven in turn. My hypothesis is that the copper trees will appear in spiral arcs. Your mission, should you choose to accept it, is to code a simulator of my experiment. You will be provided with a mathematical model and direct guidance on how to convert this to code. You may choose any programming platform of your choice, but bear in mind the output of the program has to be a 2D representation (image) of the growing copper tree. Google 'Diffusion Limited Aggregation'. Of course, if you like, I can provide some kit for you do do your own experiments!

Hopefully we shall establish a correspondence between my experiments and your simulations.

Supervisor

Quadruped, Hexapod, Fish-like or Snake Robots

...

You've probably seen movie-clips of Spot the quadruped robot that can open doors. You may even have been on the Boston Dynamics Website https://www.bostondynamics.com/ with tons of interesting robots.

In this project you will do a literature review of legged (or finned or scaly) robots and choose one to build. You are likely to obtain the gait of the robot using a small number of artificial neurons ('Central Pattern Generator').

This project will make use of the Webots robot simulation platform.

 

Topics
Supervisor

Ethical Robots

Development of software capable of making ethical judgement is important research; the advent of driver-less cars will likely make ethical agents a legal requirement.

In this project, you will work with 'Braitenberg's Vehicles', two-wheeled steerable robots with a small number of sensors. Following a literature review, you will design and code various behaviours of a collection of robots according to a number of ethical principles.

This project will use the Webot robot simulation platform.

Topics
Supervisor

Controlling Robots with Artificial Neural Networks

You will research the literature to discover how ANNs have been used as robot controllers, e.g., to follow lines, to discover targets, obstacle recognition and avoidance, navigation through mazes.

You will then evaluate the feasibility of implementing some of these approaches, and then choose and implement one. You will program in C (preferred by me, haha), C++, Java or Python (maybe) using the Webots robot simulation platform. You will evaluate the performance of your robot against a metric which you identify (almost certainly from the literature)

 

Topics
Supervisor

Robot Navigation and/or Obstacle Avoidance

...

Robot navigation and obstacle avoidance is a complex topic, and still subject of much research. This project will identify one aspect of navigation or object avoidance and investigate it using simulated  robots. Possible aspects are (i) Navigation through rooms connected by doors, (ii) Navigation through a collection of obstacles, (iii) Learning to recognize elements in a maze and move through it. A fair amount of mathematics will be needed. This project will make use of the Webots robot simulation platform.

Topics
Supervisor

Porting UDK Levels to UE4

UDK

 

 

 

 

Over the past years a huge number of UDK levels have been created for use in teaching and research at Worcester. Examples include rehabilitation of stroke victims, footfall planning for architects, virtual labs for learning physics and also mechanical engineering.

We now wish to develop additional levels, and it makes sense to use UE4. This project will analyse levels created in UDK and provide a detailed and well-documented structured approach which we can follow to port existing UDK levels to UE4. This will consider all assets such as textures, materials, static meshes, etc., as well as code.

Topics
Supervisor