DIMACS
DIMACS REU 2020

General Information

me
Student: Yianni Karabatis
School: University of Maryland, Baltimore County
Major: Computer Science
Minor: Entrepreneurship
E-mail: yianni1 aT umbc dOt edu
Project: Brain-inspired algorithm for controlling a robotic head

Project Goals

Develop a spike-based impedance controller run on neuromorphic chips for a robot using a spiking neural network.


Weekly Log


Week 1:

This week I spent most of my time learning about neuromorphic computing, spiking neural nets, impedance control, and creating my initial presentation. I also read some papers where my mentor, Dr. Michmizos, was an author.

Week 2:

This week I spent my time creating my initial presentation, looking at materials from Dr. Michmizos' brain computing class, reading papers, and studying time series. I also had a really helpful video chat with a PhD student in the Combra lab to clarify some things.

My initial presentation on this work can be downloaded here.


Week 3:

This week I watched a presentation by Dr. Michmimzos and I spent the rest of the week trying to install gazebo in conjunction with ROS kinetic. I had a lot of linux trouble but I was finally able to pull it off thanks to the help of some PhD students in combra.
Week 4:

I spent this week getting familiar with the Robotic Operating System (ROS) kinetic environment and am now in the process of picking a robot to evaluate impedance control on.
Week 5:

I have picked baxter to evaluate impedance control on. This week I spent my time installing the baxter simulator and how to control baxter. I have also been emailing grad students in the combra lab for advice.
Week 6:

This week I figured out how to enable baxter and all its joints. Then I figured out how to move its arms, control/fix limbs, and control/fix indivdual joints. This was important because now I can start my work with impedance control!
Week 7:

I first spent a lot of time learning more about impedance control and PID control. Afterwards, I spent the rest of my week writing code to implement impedance control. I have a successful implementation of impedance control for any amount of joints on one limb at a time (in order to compare it to the other limb).
Week 8:

This week I prepared a presentation I gave to the Combra lab about my work. I received feedback from my mentor and I spent the rest of my week understanding Spiking Neural Networks. I have successfully implemented an SNN to classify hand written digits (MNIST dataset) using pytorch on kaggle's platform.
Week 9:

This week I gave my final presentation to the DIMACS audience. I spent the rest of my week dealing with installation issues regarding default python versions and their compatibility to the Baxter robot. In the end, it was determined that the PyTorch library cannot be used on Baxter, so I will have to use only Numpy to create an SNN.

Additional Information

Acknowledgements

Big thank you to my mentor Dr. Konstantinos Michmizos and to NSF grant CCF-1852215 for funding, and to DIMACS for providing this REU.