Gabriel J. Ferrer: Home Page
Home
Teaching
Current Courses
Teaching History
Research
Research Statement
Publications
Contact Info
Other Personal Pages
Useful Links
Other Interests
Research Statement
My research activity falls into two broad categories:
Robotics and Artificial Intelligence
: The central research question I have explored in robotics is: “How can robots be made easier to program?” To that end, I study varying approaches to machine learning, subsumptive control, and AI planning. I employ inexpensive robots, so studying approaches that are practical on such platforms is an essential aspect of my robotics research. I am also strongly interested in robotics education.
Computer Science Education
: My educational research goals include teaching students how to write reliable software and building software tools to assist student learning:
Pluggable Interrupt OS
: The Pluggable Interrupt OS enables students to quickly and easily build bare-metal kernels using the
Rust
programming language. I employ this tool in my
Operating Systems
course.
Grambler
: Grambler is a parser generator that uses the Earley algorithm. I find most parser generators require excessive effort to explain to students. For student projects, clarity and ease of use are more important than parsing efficiency. Building a parser generator on the Earley algorithm enables it to accept all context-free grammars, greatly easing the teaching of parsing.
Boundalyzer
: Boundalyzer is a software modeling and specification tool I developed when teaching the Black Box concept from
Cleanroom Software Engineering
. It enables students to write specifications of the boundary between a software artifact and its environment. It will automatically check these specifications for completeness and consistency, reporting any problems to the student.