To the millions of young men who, at any given moment of the day or
night, are furiously playing computer games, Matthew Roberts' life must
seem like a dream existence. Roberts completed an Honours project in
2001 on synthetic characters using the Half-Life computer game engine
and is following that up with a PhD on cutting-edge computer graphics
rendering, of the type used by game developers worldwide.
 |
|
A
close-up of one of Matthew Roberts' agents capable of planning and
problem solving using a programming technique called embedded
knowledge.
|
The
surprising thing about Roberts, therefore, is that he's not a big
computer gamer - in fact the first time he even played one was during
his Honours project. Rather, it is the virtual worlds that the computer
games bring to life that inspire the Macquarie student.
"I've always had an interest in virtual reality," he confesses. "As a
little kid I remember watching a science program where a guy from a
university was standing in a big darkroom with a headset on, playing
with things he couldn't see - I thought it was the best thing I'd ever
seen."
While the prohibitive cost of virtual reality hardware has kept the
technology out of the hands of consumers and researchers alike, the
'real-time' virtual environments of modern computer games offer Roberts
a ready-made medium for doing real world simulations.
"Simulations of the real world have many uses," Roberts explains. "In
computer games and films they are used to entertain, but they can also
be used to demonstrate possibilities or as vehicles to explore
scenarios. These environments need to appear realistic to the observer
and they must also be populated with intelligent agents."
For his Honours project, Roberts developed a simulation system called
CreatureSpace within the computer game engine Half-Life. This type of
game is known as a 'first-person shooter', where the player moves
through a series of rooms and buildings, blasting away computer
generated enemies.
CreatureSpace, however, had a different purpose. Unlike games like
Half-Life, where the computer-generated character's behaviour follows a
pre-ordained script, Roberts' agents were capable of planning and
problem solving using a programming technique called embedded
knowledge. His agents wandered around five connected rooms, replete
with obstacles like doors, couches and bins, observing their
environment and continually updating their knowledge.
"In my work, each of the characters had their own brains and couldn't
link into the brains of the other characters, which is something people
do a lot as a cheat - to make them look more intelligent than they
are," Roberts says.
The agents' ability to react to their environment, form goals, generate
a plan to achieve that goal and to choose appropriate ways to execute
the plan, were shown through a series of fire evacuation simulations.
Starting with a solo agent and progressing to more complex scenarios,
where obstacles were placed in the agents' way and doors sometimes
refused to open, Roberts started a fire in the building and watched how
his creations reacted.
Although development of this kind of artificial intelligence will
benefit computer gaming, it has more important applications in other
areas where it is difficult or - like the fire evacuation drills -
dangerous to use real humans.
"The ideal situation would be to have agents that can exist in any
environment and always behave as a human would behave," Roberts says.
"Since creating such an agent was well beyond the scope of my Honours
project, I focused on just one domain, fire evacuation. Regardless, the
agents are expected to exist in the environment as a human would,
emulating human desires and displaying human attributes like curiosity,
self preservation and social responsibility, and responding
appropriately to input."
For his PhD research, which Roberts began a year ago, he is tackling a
much bigger virtual reality (and computer gaming) problem - computer
graphics rendering - using a technique called point based rendering.
"It's something that has been done before, but probably hasn't been
done well enough," he explains. "When you're using three-dimensional
virtual realities or virtual environments, it's quite a complex task
for the computer to do. To make it look realistic it takes weeks and
weeks of computer time on very expensive computers. For movies like
Shrek and Toy Story they get huge banks of computers, sit in a corner
for a few weeks and whirr away, and out pops the movie. What I'm
working on is the same kind of thing, but trying to do it in real time
- which means presenting the picture to the user at somewhere near 60
times a second."
Virtual worlds like those in computer games are made up of millions of
tiny polygons. The task of a rendering engine is to use algorithms to
translate these polygons into a two-dimensional picture of the virtual
world as you move around it and interact with it. Unlike movies, games
and virtual reality simulations must refresh the environment in
'real-time'. As the size of virtual gaming worlds have exploded,
computing grunt has struggled to keep up.
"In old computer games there might be a couple of hundred thousand
polygons, but in the newer ones you're getting upwards of 10 million
polygons," Roberts says. "They're just soaking up all of the processing
power. But the screen you're viewing it on hasn't changed much in the
last 10 years. So while models are going through the roof in size, and
memory requirements are becoming a bit of a problem, screen size is
still sitting about the same."
Point based rendering attempts to solve this problem by representing
objects as a cloud of single points rather than as huge numbers of tiny
triangles smaller than a single pixel of the computer screen.
This technique will make complex virtual worlds much more feasible in a
variety of applications, from computer gaming and movies to flight
simulators and scientific visualisation systems used by physicists,
chemists, geoscientists and archaeologists.
"There are also many situations where you want to model a real life
situation where there's a lot more than the current limit of 10 million
polygons," Roberts says. "If you want to do a fire simulation of a
single building, current graphics are just fine for that. If you want
to do it for an entire campus, you'd probably just squeeze it in. But
if you want to do it for the whole city you don't currently have a
chance. My work is to try and make that more possible, to try and
really push the boundaries of just how big the world can be."
Story by Greg Welsh
|