Capture the Flag
One of my undergrad research projects was with the
Berkeley EECS Hybrid Systems Lab. I worked
under Prof. Claire Tomlin and then-graduate
student (Now PhD) Haomiao Huang to develop a
version of the game "Capture the Flag" that could
be played with the STARMAC quad-rotor UAV robot
drones. Human players use an Android cellphone app
that I developed to communicate with the
quad-rotors and send them reconnaissance commands.
The phones also used the embedded GPS to display a
map of the playing field and draw live visual
overlays of the game state. Players are then given
cues on the map that explain which direction they
should be running in to play optimally. I took
this class alongside a parallel computing course
and used skills from that course to parallelize
the contour data plotting code in native C code.
Publications and Presentations:
2015, March 11th - Department of Electrical
Engineering and Computer Sciences, UC Berkeley
Systems in Human-Centered Automation"
Claire Tomlin (I am cited
for my research work on page 17)
2012, August 20th - Center for Hybrid Software
Student Outreach and Human/Automation Systems
Claire Tomlin, Zhengyuan Zhou, Andrew Sy, Scott
Hoag, Steven Xu, Ayushi Samaddar, Catherine
2012, June - Ph. D. dissertation for project
leader Haomiao Huang
I am cited for my undergraduate
research on page 7/vii: PDF
2011, April 19th - UC Berkeley Undergraduate
Research Poster Session,
Capture-the-Flag: Reachability-based Decision
Aids for Human Agents"
(With Andrew Sy)
The phone displays a map of the playing
field, active players, and UAVs using GPS.
As the player moves, the server recalculates
the reachable set of positions the player can
The player can see the map and reachable sets
directly on their mobile phone.
The STARMAC UAVs will be used for enemy
surveillance and reconnaissance.
We said that it was capture the flag, but we
never said which flag...
Sample data visualized with a contour plot.
Calculating contours using parallelized
native C code on Android.
Viewing the contours with the raw data