How fast is a dinosaur?
Posted: 19 Aug 2013 | 10:40
Is a dinosaur faster if it has longer legs? Is it better for it to be bigger, and hence cover more distance, or to be smaller and lighter? Which species is the fastest? Thanks to high-performance computing, you will soon be able to experiment yourself, and try and find answers to all those questions!
The PRACE Summer of HPC is a placement programme for undergraduate and postgraduate students. This post was written by Antoine Dewilde, one of the students here at EPCC.
Dinosaurs are fascinating creatures. Everybody knows them (be it through movies, video games or visits to museums), a lot of research is done regarding them, and yet we know surprisingly little about them. One particular issue is to understand how such large creatures could move and keep their balance, despite their unusual size and, sometimes, shape.
Scientists do have numerous theories regarding dinosaurs gait, but when trying to support or invalidate their theories, they face a serious problem: they cannot simply observe dinosaurs in the wild (as biologists would do with living animals), nor can they perform experiments. Therefore, finding evidence that supports theories is far from being straightforward. So, could it be possible to make it easier for researchers to test their theories?
Well, if we can’t observe dinosaurs in nature, why not just create some?
Of course, creating dinosaurs in real life is probably not a good idea (as the Jurassic Park movie taught us), but we have another powerful tool at our disposal: computers. By combining the impressive power of modern-days computers, with our knowledge of physics, biology and palaeontology, it has become possible to create “virtual dinosaurs”, which are subject to the same physics rules as the creatures in our real world, but which can be modified and parametrised at will.
The 3D model that is used in our simulations.
This is the purpose of the Animal Simulation project. Its team, based at the University of Manchester, has written a piece of software that is capable of simulating movements of dinosaurs, based on a 3D model of their skeleton, and a description of their muscles and joints. However, as useful as this software may be, it is mostly oriented towards research, and is not really user-friendly. So, since we have a program that can generate dinosaurs at will, why not recycle it into something more entertaining?
Build your own dinosaur
The purpose of our project here at EPCC is exactly this: create a user-friendly interface, that allows users (ie you) to create their own dinosaurs, and then compare the different dinosaurs in a race.
Stand back, dinosaur creation under way.
The purpose of the project is to allow the users to choose between a selection of species of dinosaurs (right now, only the Argentinosaurus is available, but others are expected to become available soon). Then, users will be able to modify various parameters of their new pet, which will then be sent to HECToR (EPCC’s supercomputer) for simulation. Once the supercomputer has finished calculating your pet’s performance, it will race against other user-defined dinosaurs –or it might as well just trip and fall over, if the way you designed it is not good!
Under the hood
GaitSym, the dinosaur simulation software developed by the Animal Simulation Lab, is currently running on HECToR, the supercomputer hosted here at the University of Edinburgh. Whenever a user creates a new dinosaur, its information is sent to GaitSym, which will calculate its movements and return it as a (very) large set of kinematics data.
The reason why we need high-performance computing, is simply that the task of simulating a dinosaur’s movement is very complex. Indeed, a dinosaur has dozens of muscles and joints, and each of those components has several parameters that need to be fine-tuned. Most configurations will simply not work, and only a few will give satisfying results –hence, high-performance computing is used to speed up the process of finding the right configuration. More information about GaitSym can be found on the Animal Simulation Lab website.
The client, on the other hand, is designed to be as light as possible: any recent computer should be able to run it without problem. The client uses the kinematics data returned by GaitSym, and uses it to animate a 3D model of the dinosaur. In other word: the client holds a virtual “puppet” of a dinosaur, and the server (GaitSym) explains how to pull the strings to move that puppet.
HECToR, EPCC’s supercomputer
Currently, a prototype is already working. However, there is only one species of dinosaur available, and both the configuration and the visualisation parts are very simple. Therefore, the purpose of this SoHPC project is to allow the use of multiple species of dinosaurs, allow a more precise configuration of the dinosaurs, and to make the whole race more visually appealing.
In other words, there is a lot of work left to do! Stay tuned for more updates on the project!
This post first appeared on the PRACE Summer of HPC blog. © Copyright PRACE AISBL, 2013.