My research interests lie in robotics and knowledge representations - particularly, service robotics and object affordances -, artificial intelligence, graph theory and deep learning.
I have previous experience in image processing, pattern recognition, data mining, and machine learning techniques.
FOON (Functional Object-Oriented Network)
I am completing my dissertation on an ongoing project of developing a knowledge representation for service robots that would allow them to perform household tasks. This representation is known as FOON, which stands for the functional object-oriented network. In a nutshell, we want to use this knowledge representation to program robots that can perform meaningful tasks and to solve manipulation problems. Specifically, we are looking at representing knowledge in cooking, which we can then extend to other household tasks.
We are currently exploring ways of automatically constructing a FOON as well as making it more "intelligent" to make it practical in real-world systems where everything is not guaranteed. We have investigated how we can use semantic similarity for filling in gaps of missing knowledge and to also learn new ideas and relationships from what we already know. In addition, we have been working at programming robots to use FOON. Because of the complexity of this task, we have tried to simplify this process through human-robot collaboration. We have demonstrated that a robot can rely on the human to perform actions that it cannot do on its own while also reducing the amount of work needed to be done by a human.
Motion Analysis & Taxonomy
As a component to FOON, we have also been interesting in understanding human motions as done in daily activities. My lab mate Yongqiang Huang has been in charge of data collection of humans performing several tasks (you can find more about this work here). My job has been to investigate whether there are any commonalities between different manipulation types. We hope that we can derive some basic rules or principles behind certain motions, which can be used for programming robots to perform those motions. More specifically, we want to develop a taxonomy of motions, where each motion can be represented in a binary-encoded string that describes key characteristics about the motions within each bit. For instance, we can classify motions based on the number of degrees of freedom which typically exist when performing manipulations, or we can also identify a motion as being prismatic (translational), revolute (rotational), or a combination of both.
We are currently working on a publication detailing our findings as they relate to the collected motions.
Other Endeavours and Relevant Experience
Additionally, I have worked on developing a neural network for the purpose of UAV autonomous navigation for a final course project. The UAV is expected to have a camera which will capture images of what is presently in front of it, and the neural network would be trained to detect oncoming obstacles. We focus on the drone self-navigating in a forested environment, and so the network is trained to learn about trees or plants which would hamper with the drone's flight pattern. This project is now being taken further by my project partner and lab mate Troi Williams.
Relevant Courses that I have taken here at USF include:
- Intro to Artificial Intelligence (CAP5625) - Learning the basics in knowledge representation, search and logic; algorithms for knowledge retrieval and searching; .
- Neural Networks & Deep Learning (CIS6930) - Basics of neural networks and various techniques/tricks in improving their performance (auto-encoders, RBM, convolutional layers).
- Algorithm for Robots (CIS6930) - Theory in SLAM (Kalman and Particle filters); path-planning techniques (Wavefront, PRM); principal components analysis (PCA); forward/inverse kinematics; transformation matrices; motion trajectory analysis; basics in ROS.
- Machine Learning (CIS6930) - Survey of classification, clustering, and regression techniques as used in ML (association rules, neural networks, decision trees, Naive Bayes, Bayes’ rule, PCA, LDA, .
- Graph Data Processing (CIS6930) - Basics of graph theory; network centrality; graph-based algorithms and analytical techniques; power laws; random graphs.
- Nonlinear Optimization & Game Theory (EIN6935) - NLP algorithms for solving minimization problem; solving Nash equilibrium problems; network user equilibrium; optimality conditions and set theory.
- Intro to Theory of Algorithms (COT6405), Operating Systems (COP6611) and Principles of Computer Architecture (EEL6764)
University of the Virgin Islands
Studies on Graphene
Primarily, I worked under Dr. Wayne Archibald, aiding in his investigation on the effects of doping graphene with extrinsic elements/compounds. My focus was in performing computations that would simulate the effects of doping which we would then perform band structure calculations to identify the type of semi-conductor it has become. Doping this material would create a band gap within graphene, making it suitable for use in devices as a semi-conductive component. To do this, I used the Vienna Ab-Initio Simulation Package (VASP). Additionally, I have done other projects in computational chemistry with Dr. Archibald and Dr. Daniel Torres-Rangel using GPAW, which also became a publication, found here.
Dr. Archibald has since left UVI and is now pursuing a new venture in renewable energy for the Caribbean islands. Green Solutions International SKN is based in St. Kitts and their objective is to provide consultancy for the development of infrastructure for renewable energy. Please check out his page if you can!
- Studied the benefits of parallelizing the quick sort function by investigating the trade-offs in making the sort parallelized to work across varying processor core sizes with respect to the size of the data needed to be sorted.
- This eventually became a paper done with Dr. Marc Boumedine which you may find in my publications.
- Applied mathematical models and data mining techniques to practical problems such as modelling the effects of coral bleaching, the control of lion fish in the Caribbean waters, and observing the spread of dengue fever.
- Developing a simple mobile application for Android as well as a scheduling program using SQL databases.