Research and Projects
Research Interests
My research interests are diverse, but there's substantial holistic coherence and overlap: software and hardware systems engineering, especially aviation-related; modeling, simulation, visualization, and analysis; artificial intelligence (knowledge representation, reasoning, machine learning, and natural language processing); and STEM education. This presentation at Graduate Colloquium provides a colorful overview of recent activities. More info is available in my curriculum vitae.
In particular, I consider these areas collectively as the complementary basis of intelligent systems:
Software and Hardware Systems Engineering
I'm a systems engineer at heart (and by MSE degree). Computer science is my primary discipline (by Ph.D. degree), but I'm equally at home with electrical and mechanical engineering; i.e., using computers to control electrical systems that interact with mechanical systems. As the projects below show, I'm definitely a field engineer, down and dirty — even bloody — with every aspect of analysis, design, fabrication, testing, deployment, maintenance, etc.
Although I work on diverse systems-engineering projects, my passion is aviation. As an avid airplane and helicopter pilot, I enjoy both the thrill of flight and the underlying science, engineering, and technology. Washington state, being Boeing Country, is a natural fit.
Modeling, Simulation, Visualization, and Analysis
After modeling and simulating hundreds of weapon systems on Department of Defense projects over a decade at White Sands Missile Range, Aberdeen Proving Ground, and elsewhere, I have a strong background in using these tools and techniques in almost all my work. I view them as a complementary bundle:
  • Modeling is the representation of data (what something is) and control (what it can do);
  • Simulation is the manipulation of behavior (what is actually done with it) in operational contexts of interest, typically employing stochastic (Monte Carlo) approaches and the scientific method;
  • Visualization is the intuitive visual representation of the results of a simulation;
  • Analysis is the understanding of results and drawing of meaningful conclusions, which iteratively contribute to refining the previous three stages.
At varying degrees of complexity and difficulty, I teach my undergraduate (CSCD 350) and graduate (CSCD 524) Software Engineering courses based on this framework. The undergraduate course primarily addresses analysis, design, and implementation, whereas the graduate course focuses more on Software Quality Assurance. I also have a new undergrad/graduate course on modeling and simulation (CSCD 439/539) scheduled for Winter 2017.
Artificial Intelligence / Intelligent Systems
Modeling, simulation, visualization, and analysis for engineering are typically a quantitative effort. I'm also fascinated by the qualitative aspects:
  • Knowledge representation is similar to modeling above, except that it applies to fuzzy entities without clear definitions;
  • Reasoning is the generally tenuous process of understanding available information, inferring unstated information, and making connections to draw conclusions that can be acted upon;
  • Machine learning involves developing adaptive frameworks to tease out ill-defined data, control, and behavior, as well as the countless interrelationships among them, from simulated or actual experiments;
  • Natural language processing is applying everything to human language, which is, after all, a skill that every human uses effortlessly to understand and communicate about everything in the world. There's nothing more complicated and interrelated than natural language. As a double-major with computer science, my undergraduate work was in language and linguistics (primarily Russian and German, although later Arabic).
STEM Education
Simply put, I love to share what I have learned and experienced. This passion is evidenced by the 35+ periodicals I voraciously read and pepper my courses with as endless case studies and current events. Over my academic career, students have continually expressed how radically different my courses are from what they're used to. Some appreciate it at the time, others not, but many have contacted me after graduation thanking me for the unique preparation. Furthermore, in my first year of eligibility as a professor, I was already awarded the highest teaching honor. In addition, I have over two decades of consistent, substantial contribution to STEM-related recruitment, retention, and outreach activities at all age levels.
My research philosophy evolved by having unreasonable workload demands, but few or no resources, throughout most of my academic career. I've learned to develop an idea as a research project first, then apply it the classroom environment for teaching purposes (or vice versa), often resulting in simultaneous parallel publication streams in both venues, and hitting three birds with one stone.
Current Work
There is actually a more current project for adaptive electromechanical stability control (as of spring 2017), but this project below is still ongoing.
In addition to a number of research projects below that are still in progress, my current focus is on machine learning of helicopter flight dynamics. Helicopters are extremely unstable machines: an input to any control induces numerous direct and indirect inputs into every other control, which in turn affect the entire system in an endless battle to maintain stability. Learning to fly such an unruly beast takes long, hard hours of expensive, supervised practice. A textbook definition of cause-and-effect relationships is helpful for overall understanding, but nothing replaces practical trial-and-error experience.
The objectives of this work are threefold:
  1. To develop a reasonable software helicopter flight-dynamics model based on the nature of the real-world data to be collected. It needs to be understandable and accessible, in the sense that its internal workings can be observed, interpreted, and manipulated.
  2. To build a non-invasive data-acquisition platform for an actual helicopter (a Robinson R22), to be piloted by me throughout hours of mundane flight maneuvers. A key aspect is that for safety, the acquisition process must not directly interact in any way with the helicopter controls or instrumentation. The tentative approach may involve synchronized, multi-perspective video recording and real-time image post-processing. Additional hardware (some used in the UAV project) like gyroscopes, accelerometers, altimeters, compasses, GPS, etc. will augment the visual data.
  3. To develop a software modeling-and-simulation platform for machine learning, probably using genetic algorithms, to allow the virtual aircraft to learn to fly by endless trial and error. The goal is to tease out the many and varied known and unknown interrelationships among all the available parameters.
The goal of this work is to develop not only a software system that can fly a virtual helicopter, but also one that can articulate how it learned to do so. It has practical applications to autonomous flight and to human flight training. Follow-on work could be extended to comparable model helicopters for real-world experimentation.
There are several aviation-related grant opportunities I plan to pursue to help offset the cost of this work, especially through the Joint Center for Aerospace Technology Innovation (JCATI), in addition to the EWU seed grant I was awarded for 2014-15. Acquisition of real-world data must be repeated many times to mitigate a variety of experimental errors, which entails hours of costly rental time.
Recent Projects
This list showcases some of my research and projects that I have photodocumented recently. A lot needs updating, and there are entire projects missing. There are many more projects from before this time without pictures. I also have a ton of software projects, but there's nothing very interesting to look at, at least compared to the colorful hardware projects.
A Genetic-Algorithm Approach for Automated Test Generation and Execution in Software Engineering Classroom Projects (tentative), 3rd International Conference on Artificial Intelligence and Pattern Recognition, Lodz, Poland [in preparation]
Model-Driven Design Thinking, Doing, and Cross-Checking for Software Systems Engineering Education, 4th Workshop on Model-Driven Approaches in System Development, Gdansk, Poland [in review]
Modeling and Simulation for Grounding a Mechatronic Test Environment on Inertial Measurement Units (with Josh Czoski), WorldComp 13th International Conference on Modeling, Simulation and Visualization Methods, Las Vegas, NV
Image Processing for Data Acquisition and Machine Learning of Helicopter Flight Dynamics (with Matt Hempleman), WorldComp 20th International Conference on Image Processing, Computer Vision, and Pattern Recognition, Las Vegas, NV
Image Processing for Data Acquisition and Machine Learning of Helicopter Flight Dynamics (with Matt Hempleman), EWU Faculty Creative Works Symposium
A Data Analytics Approach to a Computer Science Senior Capstone Project Management Tool with poster, WorldComp 12th International Conference on Frontiers in Education: Computer Science and Computer Engineering, Las Vegas, NV
A Meta-Case Study of Modeling, Simulation, Visualization, and Analysis for Real-World Software Systems Engineering Education with extended abstract, Alabama Modeling and Simulation Council International Conference and Exposition, Huntsville, AL
A Holistic Multidisciplinary Approach to Teaching Software Engineering Through Air Traffic Control, 16th Annual Consortium for Computing Sciences in Colleges Northwestern Regional Conference, Spokane, WA
Toward Introspective Human Versus Machine Learning of Simulated Airplane Flight Dynamics (with Matt Hempleman), 25th Modern Artificial Intelligence and Cognitive Science Conference, Spokane, WA
Student-Friendly Java-Based Multiagent Event Handling with poster, Association for the Advancement of Artificial Intelligence, Bellevue, WA
Modeling and Simulation as a Quantitative Pedagogical Approach to Teaching E-Commerce to Diverse Audiences (with Tiffany Blount), WorldComp International Conference on e-Learning, e-Business, Enterprise Information Systems, and e-Government, Las Vegas, NV
Pragmatic Scenario Inference on Static Spatial Configurations, International Joint Conference on Artificial Intelligence, Workshop on Spatial and Temporal Reasoning, Pasadena, CA
A Hybrid Systems-Engineering Framework for Holistic, Agent-Based Simulation, Huntsville Simulation Conference, Huntsville, AL
Pedagogy-Oriented Software Modeling and Simulation of Component-Based Physical Systems, 21st Annual Conference on Software Engineering and Knowledge Engineering, Boston, MA
A Pedagogy-Oriented Modeling-and-Simulation Environment for AI Scenarios, WorldComp International Conference on Artificial Intelligence, Las Vegas, NV
ShelbySim: A Holistic Pedagogy-Oriented Simulator for Computer-Based Systems, 39th IEEE Frontiers in Education Conference, San Antonio, TX
A Transparent, Pedagogy-Oriented Compiler for Computer-Based Systems, regional conference of American Society for Engineering Education, Cheney, WA
Augmentation of Explicit Spatial Configurations by Knowledge-Based Inference on Geometric Fields, 2nd International Conference on Knowledge Generation, Communication and Management, Orlando, FL
Monte Carlo Simulation for Plausible Interpretation of Natural-Language Spatial Descriptions, WorldComp International Conference on Artificial Intelligence, Las Vegas, NV
ShelbySim: A Transparent, Pedagogy-Oriented Simulator for Computer-Based Systems, International Journal of Engineering Education, Vol. 25, No. 4, pp. 755-762
A Pedagogical Framework for Modeling and Simulating Intelligent Agents and Control Systems with poster, Association for the Advancement of Artificial Intelligence, Chicago, IL
Knowledge-Based Spatial Reasoning for Scene Generation from Text Descriptions with poster, Association for the Advancement of Artificial Intelligence, Chicago, IL
The AMSAA SURVIVE Model (with Joyce Engle), U.S. Army 16th Annual Ground Vehicle Survivability Symposium, Monterey, CA
Knowledge-Based Spatial Constraint Satisfaction, Florida Artificial Intelligence Research Society International Conference, Special Track on Spatio-Temporal Reasoning, Miami Beach, FL
Text-Based Scene Generation, Graduate Research and Arts Symposium, Las Cruces, NM
A Framework for Scene Generation from Spatial Descriptions with poster, 3rd Conference of the New Mexico Alliance for Graduate Education and the Professoriate, Socorro, NM
Simulated Effects of Communication Deficiencies on Pilot Situational Awareness in a Non-Towered Airport Environment, Graduate Research and Arts Symposium, Las Cruces, NM
Toward Automated Scene Generation from Textual Descriptions, 5th Conference of High Desert Linguistics Society, Albuquerque, NM
Simulated Effects of Language-Related Communication Errors on Fault Tolerance in Air Traffic Control, Graduate Research and Arts Symposium, Las Cruces, NM
A Knowledge-Driven, Constraint-Based Inference Mechanism for Semantic Analysis of Sentence Structures, 4th Conference of High Desert Linguistics Society, Albuquerque, NM
Knowledge Representation for Natural Language Processing, technical report, Computing Research Laboratory, New Mexico State University
Analysis of Common Errors from Machine Translation Software, Graduate Research and Arts Symposium, Las Cruces, NM
A Simplicity-Based Interactive Machine Translation System for Conversational Domains, 3rd Conference of High Desert Linguistics Society, Albuquerque, NM
Pseudo-Parallel Execution of Machine Translation Software as a Means of Improving Output Quality and Fault Tolerance, Graduate Research and Arts Symposium, Las Cruces, NM
Using Multiple Machine Translation Packages to Produce ‘Averaged’ Results, 2nd Conference of High Desert Linguistics Society, Albuquerque, NM
Ontological Representation of Implicit World Knowledge in Natural Language Processing, regional conference of the Association for Computing Machinery, El Paso, TX
Toward a Machine Translation Method for German Compound Technical Nouns, regional conference of the Association for Computing Machinery, Las Cruces, NM
A Connectionist Approach to Grammaticality Determination in Natural Language Learning, regional conference of the Association for Computing Machinery, Albuquerque, NM
A Brute-Force Machine Translation Method for a Restricted Class of Russian Sentences, regional conference of the Association for Computing Machinery, Albuquerque, NM
A Russian-to-English Translation System for Scientific Abstracts (with font issues), Master's thesis, University of Arkansas, Fayetteville
Program Design in File Structures (Susan Mengel as first author), American Society for Engineering Education Frontiers in Education, Atlanta, GA
Many more resources still need to be made available for download; see my curriculum vitae for details.
Graduate Students
Adam Bortfeld to be determined to be determined: something with orthogonal video transcoding in Hadoop in a Raspberry Pi cluster
Kevin Chumbley to be determined to be determined
Josh Coats to be determined to be determined
Victor Colton COTS SSVEP-Based PWC Control Using the Emotiv EPOC A proof-of-concept embedded system for reliably detecting certain brainwave patterns to control a user interface
Evan Daley to be determined to be determined
Isaac Pfleegor to be determined to be determined: something with digital signal processing for optimal coffee roasting
Shawn Cowles The Dynamic World Engine A dynamical econometric system for evolving interactions within a virtual game world
Josh Czoski A Violin Practice Tool Using 9-Axis Sensor Fusion An embedded system to monitor proper posture and bow usage while practicing violin
Ken Farr kForth – A Simple Tiny Portable Interpreted Language A Forth-based language environment for rapid configuration of embedded systems
Matt Hempleman Image Processing for Machine Learning of Helicopter Flight Dynamics An image-processing system for acquiring real-time helicopter flight data from video captures of instruments and controls
Ed Hogan Wireless, Electronic Scoring of Kendo Competition Matches Using an Embedded System An embedded system for determining whether valid strikes occur during a Kendo match and for keeping score
Oksana Kelly Automated Amphibian Digital Identification System (Ph.D. Dissertation) An image-processing system for non-invasive tracking of frogs under longitudinal study in the field
Rich Lundeen Simplified Single Packet Authentication and Concerns with Time-Space Based Wireless Security A framework for securely enabling remote services while accounting for human factors