Research
My research lies at the intersection of complex networks,
modeling, high performance simulation,
data/metadata/paradata management, and analysis and
visualization. I have applied these interests to problems in
computational neuroscience, artificial
intelligence, cybersecurity, and nonlinear dynamics.
The Intelligent Networks Laboratory develops
graph-based simulations of biological neural networks and emergency services communications
systems (ESCS; 911 in North America), employing recent advances like Graph Neural Networks
(GNNs), Spike-Timing-Dependent-Plasticity (STDP), and GPU simulations.
Teaching
As a founding faculty member here at UWB, and a
near-founding-faculty member at HKUST, I have been involved
in the development and teaching of a broad cross-section of
the computer science core, as well as a range of upper-level
undergraduate and graduate electives. Subjects I have taught
include: introductory, medium-level, and advanced
programming, programming tools, object-oriented design, data
structures and algorithms, discrete mathematics, calculus,
technical writing for software professionals, computer
graphics, computer vision, visualization, multimedia,
computer architecture, artificial intelligence, neural
networks, generative AI, complex systems, signal processing, and
computational thinking.
Back to Top
Research.
So what is this mind of ours: what are
these atoms with consciousness? Last week's potatoes!
They now can remember what was going on in my mind
a year ago — a mind which has long ago been
replaced.
— Richard P. Feynman
My research group, the Intelligent Networks Laboratory (INL), develops and maintains
a high-performance simulation framework, called Graphitti,
to enable researchers to develop large-scale and
long-duration simulations of graph-based systems. This
simulator has been applied to biological nervous systems
and next-generation 911 communications.
We also build and maintain Workbench, a system that
allows investigators to track simulation code, experiment
configurations, and data produced over many iterations of
coding and simulation. Once fully developed, this will
allow them to be confident that their results are valid
and easily identify when changing assumptions alter the
results.
We eat our own dog food: we use this framework in our
own research in computational neuroscience and critical
infrastructure security. Recent projects involve integrating Graph Neural Networks (GNNs) and
Spike-Timing-Dependent-Plasticity (STDP) into Graphitti, spatiotemporal bursting in simulated cortical
cultures, and migrating complex simulation domains to the GPU for Emergency Services Communication
Systems (ESCS).
Back to Top
Teaching.
Artificial Neural Networks & Generative AI
A "nuts and
bolts" coverage of the mathematical and
algorithmic fundamentals of ANNs, as well as modern
Generative AI models taught as a special topics
class (CSS 590). Topics include
basic neurobiology, linear algebra, optimization,
supervised and unsupervised learning,
backpropagation in multi-layer perceptrons,
competitive and recurrent networks, radial basis
functions, learning in deep neural
networks, and generative AI architectures.
Signal Computing
How computers can
process information from the physical world as digital
signals. Topics include physical properties of
source information, devices
for information capture,
digitization, compression, digital media
representation, mathematics and algorithms relating to
digital signal
processing, and network communication. See the Fall 2016
CSS 457 syllabus and schedule.
Programming Issues With Object-Oriented Languages
This class works as
a combination of laboratory and tutorial, to help
students investigate and understand some of the deeper
and more obscure aspects of software development
in C++. Covers language and development/execution
environment differences, including data types,
control structures, arrays, and I/O; addressing
and memory management issues including pointers,
references, functions, and their passing
conventions; object-oriented design specifics
related to structured data and classes.
Computational Neuroscience
Everything we are and
do, from
the simplest physical act to the most complex and
subtle thought, is
contained within the three
pounds of grey matter we carry within our heads. After
millennia of pondering and
decades of scientific research, we've only just begun
to unlock the nature of how nervous systems accomplish
their myriad tasks. This course provides an
overview of what we've learned about nervous system
function and an understanding of
how much we still don't know. Students evaluate the
biophysical properties of nervous systems from the
point of view of computation, and apply
computational tools to simulate and analyze nervous
system operation.
Discovery Core: Thinking about Thinking
In this first-year Discovery Core
(B CORE)
course, students explore the similarities and differences between computer processing and human
cognition.
By combining perspectives from computer science and neuroscience, the course delves into how
brains
give rise to minds and how this knowledge influences the development of artificial intelligence.
Topics include
sensory systems, learning and memory, and the definition of intelligence.
Back to Top
About Me.
I grew up in Philadelphia, reading
science fiction and dreaming of someday having a robot
army to call my own. I've always been interested in
the intersection of engineering and biology. As an
undergrad at Washington University in St. Louis, I
double-majored in Computer Science and Electrical
Engineering. Between undergrad and graduate studies, I
worked for Philips and Texas Instruments. In grad
school, I had the opportunity to take neuroscience
classes in the UCLA Medical School. I was fascinated with
the idea of building simulations of living systems and
how that could allow researchers to answer questions
that could be posed in rigorously mathematical terms
— questions that couldn't easily be answered by
experiments on living organisms, but could be verified
that way.
I have a lot of fun following my nose when it comes
to research and working with students in both
classroom and research settings. I have served in a
number of leadership and administrative roles to support
our faculty, staff, and students. I served as Associate
Dean of the School of STEM from 2013 to 2019, where I
helped build our graduate programs. More recently, I
served as Director of Cybersecurity Initiatives (2022-2023)
and as Chair of the Computing & Software Systems
Division (2023-2025). Throughout, I've cultivated a keen sense
of humor and social justice, formed during a childhood
listening to George
Carlin albums and watching Billy
Jack movies.
Back to Top