Wednesday, 3 April 2013

Flying Robots

This video actually dates back to January and we've done more since, but I've been meaning to post it anyway.  The video shows three different runs of the same controller, flying a Parrot AR.Drone through a virtual array of obstacles (i.e. the computer thinks they're there, but they're not).  The controller uses Model Predictive Control (MPC), solving a constrained optimization every 20ms to decide what to do next.  The clever bits are converting the global problem into a convex local optimization that we can solve quickly and deploying the solver in Simulink so the whole thing can be controlled by a dSpace MicroAutobox.  THe control is a little wobbly here but we've fixed that now, with disturbance estimation, better terminal constraints, and some careful tuning.

This work was carried out in our indoor flying arena.  (Much of the purpose of this post is to provide an excuse to post the photo of this arena below.)  This is an empty space 15m x 12m x 4m high, enclosed by curtains and instrumented with a Vicon motion capture system, now up to ten cameras.  We don't currently build our own aircraft - we just buy them off the shelf, so we can concentrate on developing the controllers for them.  The end goal is to make micro air vehicles (MAVs) that are more autonomous, able to say fly into a damaged building, explore and then come back out, without needing a highly skilled pilot to fly it and keep track of where it is.

Flying Arena

One way you can get involved in research like this is our joint Robotics MSc, run by the University of Bristol and the University of the West of England.  The degree is based at the Bristol Robotics Lab and includes the opportunity to do research projects using our flying robots.  More details can be found at http://www.bristol.ac.uk/engineering/interdisciplinary/robotics/ 

Thursday, 7 March 2013

Visiting

Use the map below to help find me! Visitor parking at the University can be found at the yellow "P" markers. Spaces must be pre-booked. Zoom out for the airport.
View Visiting Arthur Richards in a larger map

Wednesday, 23 January 2013

AMPL Toolbox

Only ten years after writing the thing, I've finally got around to making the AMPL toolbox for Matlab available on the Mathworks File Exchange: http://www.mathworks.co.uk/matlabcentral/fileexchange/39795-ampl-data-file-toolbox

AMPL (see http://www.ampl.com/) stands for "A Mathematical Programming Language" and allows optimization problems to be written in a language close to how you'd write in in equations.  It also takes care of a great deal of "housekeeping" tasks like enumerating variables and constraints over sets of indices.  To solve an optimization, the AMPL executable typically combines a model file, containing the structure of the problem in terms of symbolic variables and parameters, with a data file, containing parameter values, to create a binary "NL" file encoding the whole problem.  Then an external solver (e.g. CPLEX, Gurobi or IPOPT) is invoked to solve the problem in the NL file and report results back to AMPL.

The AMPL-Matlab toolbox contains a series of utilities for writing the AMPL data file from Matlab.  Since MATLAB can also read data back from AMPL easily (just redirect an AMPL "printf" command to a file and use "load" in Matlab), this means you can do the whole process of optimization and data analysis in Matlab scripts.  OK, all that file writing and reading isn't the fastest way of doing business, and if you know exactly what you want to deploy in anger, you'd do it differently.  But, if your business is in tinkering with the structure of the optimization and the algorithm, as ours is, this makes an excellent rapid prototyping tool.

We've used this approach in our work on robot navigation and flight routing, among many other things.

Saturday, 8 December 2012

Journal Paper: Cooperative distributed MPC

I'm pleased to learn that our latest paper is now available on the Automatica website:

Paul Trodden, Arthur Richards, Cooperative distributed MPC of linear systems with coupled constraints
Automatica, Available online 4 December 2012, http://dx.doi.org/10.1016/j.automatica.2012.11.007

Thanks to Paul Trodden for all his hard work on this paper, which reports on his PhD findings on how inter-agent cooperation can improve performance, e.g. by breaking deadlocks between greedy agents.  Congratulations as well to Paul on his recent move to the University of Sheffield's Automatic Control and Systems Engineering department.

Tuesday, 21 August 2012

GNC

Pillsbury A Mill and Stone Arch Bridge, 4th of July

I'm just back from the AIAA Guidance Navigation and Control (GNC) Conference in Minneapolis.  There were many interesting things to see and I can't do justice to it all here, but if only for my own memory, here are a few of the most relevant papers.  (Note on referencing: there doesn't seem to be an easy way to link into the AIAA database.  Instead, I'll just provide paper numbers, AIAA-2012-XXXX.  You can search by number in the AIAA Electronic Library.)

Starting with the Air Traffic Management domain, it was interesting to see nonlinear trajectory optimization applied (AIAA-2012-4755) and EADS' work on modeling noise in trajectory optimizers (4482).  Meanwhile UCSC presented some work on formation flight for civil airliners (4524) and our own Tom Kent did a good job of presenting his recent PhD work in this area (4769).  Finally, MITRE's work on flow contingency management (4976) nicely complements our own work on the ONBOARD SESAR project.

Heading into space, Iowa State made a very elegant job of rendezvous optimization by using conic programming (4924), solving many of the challenges we encountered in the ORCSAT project while still having a convex optimization at the core. In the very next paper, a consortium including ESA and the University of Exeter proposed methods for verification and validation of spacecraft rendezvous controllers based on both numerical and analytical methods for finding worst case behaviour.  Louis Breger presented an elegant approach to fault detection (4611) which I'm sure should be in an optimizer somehow...

There was an enormous range of work in the UAV area.  Starting at the practical end, it was interesting to see indoor flight testing using the same fixed-wing Night Vapor aircraft as in our experiments (4464), including gust response work.  Adaptive control seems to work nicely for MIT's quadrotors (4551) and others from Seoul with attached manipulator arms (4835).  There were whole sessions on vision-based control (5048 to 5051) including Steve Waslander's dampening experiences of chasing icebergs (5049): it was also interesting to see latency handled by simple linear approximations in these works.  Moving to higher level control of teams and tasking, there were developments in optimization from Toronto (4680) and planning based on data-driven learning from MIT (4682).

And let's not forget the discovery of the bizarre love of lawn green bowls in Minneapolis - quite surreal.

Friday, 20 July 2012

Optimal Transatlantic Routes for Formation Flight


View Larger Map

The map above illustrates the results of Tom Kent's work on formation flight for airliners. These are the optimized routes for 210 eastbound transatlantic flights, allowed to fly in pairs in formation in order to save fuel.  The optimization does not consider the timing of the flights - it is assumed that they coordinate to achieve their rendezvous.  However, it does determine which pairs should be formed and where each pair should join and then break apart.  Interestingly, many formations share the same departure point: zoom in on Atlanta or Heathrow, for example, or observe the LAX-Dublin teaming with the SFO-Dublin flight.  There are also some curiosities like the Newark-Lisbon flight joining up with the flight from Boston to Lajes in the Azores.

Tom's methods and initial results will be presented at the AIAA Guidance Navigation and Control conference this August.

Thursday, 10 May 2012

Bristol Robotics Lab now officially open

The Bristol Robotics Lab (BRL) was officially opened this morning by the Universities and Science Minister, David Willetts.  BRL is a joint venture between UWE and the University of Bristol, located at UWE's Frenchay Campus.  Aerospace colleague Tom Richardson and I are particularly excited about our newly-equipped flying arena, one of the biggest in Europe at about 15m x 12m x 4m high.  Thanks to funding from DSTL and support from Vicon and dSpace, it is now instrumented for real-time flight control and enclosed with protective nets and curtains.

Coverage of the BRL opening can be found at:
http://www.itv.com/news/west/2012-05-10/robotics-lab-opens-in-bristol/
http://www.bbc.co.uk/news/uk-england-bristol-17994891
http://www.thisisbristol.co.uk/UK-s-biggest-robot-laboratory-opens-Bristol/story-16039940-detail/story.html
http://info.uwe.ac.uk/news/UWENews/news.aspx?id=2272

The introductory video also includes some of our flight demonstrations: http://www.youtube.com/watch?v=pgYM-Dgc9yE

More about our Unmanned Air Systems project can be found at https://wikis.bris.ac.uk/display/agc/Optimization-based+Exploration+for+Small+UAS

Special thanks to postdoc Colin Greatwood for his hard work in getting the flight demonstrations ready for the opening.