Curriculum vitae of Pouya Mohammadi

This is a work-in-progress list! Get a condense pdf
List of publications as HTML (with abstract) or pdf

Currently I'm mostly focused on Model based design (MBD) and Domain specific languages (DSL). These are fantastic tools that study systems and processes in terms of models and leverage on this notion to derived high level DSLs. Currently I am working on a new language for quadratic programming optimization problems using Jetbrains' meta programming system.

I am a roboticist by education and still very much in touch with robotics field. I'm familiar with many robotic toolboxes and I am actively involved in robot programming projects. Robot motion planning and control are among my other experiences in this domain. I have hands-on experience with many modern robotic platforms and robotic toolboxes

I had theoretical experiences in machine learning and neural networks and have made some publications in this field as well. I am keeping myself up-to-date in these fields and currently supervise students who do their master's thesis in machine learning.


PhD

2015 - 2019

Context Aware Body Regulation of Redundant Robots, I conducted my PhD at the Institut für Robotik und Prozessinformatik at Technische Universität Braunschweig and partly at the Cor-Lab of Universität Bielefeld. It focuses on the control of redundant robots by abstracting tasks and creating novel body regulation schemes. The results are scalable and composable solutions that can be reused in different robotic applications.

Master of Science

2010 - 2013

Artificial Intelligence and Robotics from the Robotics Lab at Sapienza University of Rome. LabRob is directed by Alessandro De Luca and is one of the top robotics groups in the world. My master's program had a strong focus on both the AI (several course on machine learning, neural networks, etc.) and robotics. My thesis focused on the random motion planning for humanoid robots. I was graduated with the average score of 110 out of 110.

Bachelor of Science

2005 - 2008

Computer Science, from Shahid Bahonar University of Kerman, Iran. I ranked 45th among more than 10,000 applicants in the university entrance exam.

Associate Degree

2003 - 2005

Computer Software, from Shahid Chamran university of Ahvaz, Iran. This is a two year degree on software development which I later continued as a B.Sc. degree in computer science (see above).


CMCI

Oct 2019 - now

Composable Models for Compliant Interaction Control (CMCI) is an integrated technical project of the EU project RobMoSys. The idea of the CMCI project is to tackle the composition challenges of robot control components by providing composable domain-specific (meta-)models.

My role in the project is to first analyze and derive (meta-)models for quadratic programming optimization problems, and then synthesis and transform them in a language bench eventually configuring a stack of task for robot control.

Our Github repositories and organizationCMCI contribution to RobMoSys CMCI in RobMoSys portal

CogIMon

Feb 2015 - May 2019

Compliant Interaction in Motion, CogIMon, was an EU-funded research project in the Horizon 2020 Work Programme. The CogIMon project aimed at a step-change in human-robot interaction toward the systemic integration of robust, dependable interaction capabilities for teams of humans and compliant robots. The project was coordinated by TU-Braunschweig.

Alongside my colleagues it was our responsibility to ensure a smooth and functional collaboration and coordination among consortium members. We also conducted several workshops and dissemination activities.

More on the technical side I was heavily involved with our work-packages target towards our experiments and demonstrations as well as being one of the CogIMon's software architecture developers.

CogIMon homepageCogIMon codebase and organization at GithubCogIMon promotional videoCogIMon at CORDIS


Scientific Assistant

2014 - 2015

Upon finishing my master's study I started to work as a scientific assistance in the LabRob of Sapienza University of Rome. In this short period I work on two publications while searching for a suitable PhD program.

Research and Development

2008 - 2010

After graduation I started to work in Eastcool Co., a major producer of household and industrial electric appliances in Iran. Initially I started as a PLC programmer (which I had received training for) but soon after I transitioned to the R&D department.

My responsibilities were mostly aligned with automation of industrial processes and prototyping new machinery for the production. During my employment, I was able to gather some practical knowledge about different types of sensors, drives and pneumatic systems.

References and letters of recommendation from this employer can be made available.

Software Developer

2008 - 2009
(part time)

This was a small part time job at Takran Co, in Iran before I got full time job at Eastcool. Our products were utilities and occasional consulting for small-sized industries.


I have mentored/supervised and led students, or teams of students, for their theses or other projects. Furthermore I have been involved in teacher and torturing of robotics and machine learning courses.

  • Open Robotics Lab is a practical course in the TU-Braunschweig where I lead a team of 3~5 master's degree students of robotics and help them to conduct a full featured large scale robotics experiment.

  • Identification of Unmodeled Dynamics by Independent Joint Learning and Transfer Learning Among Multiple Robots is a master's thesis of one of my students. She tries to use machine learning techniques to identify the errors in the dynamic model of Panda robots. The outcome of the thesis are very valuable for dynamic control of any robot particularly since we learn dynamic phenomenon that are very difficult to model otherwise.

  • Evaluating Dynamical Movement Primitives for Generalization of Forward Dynamics Control Signals is another master's thesis from a former student. This work leverages on extreme learning machines, dynamic movement primitives and other machine learning assets and tries to encapsulate the kinematics of the task in the control. An interesting by-product of this work is the ability to create controllers that are adaptable to changes in the kinematics and dynamics of the task.

  • Teaching and Tutoring of Robotics I and II in Technische Universität Braunschweig and Universität Bielefeld to master degree students. I have also experienced in teaching how to write optimized code for AI applications at Sapienza Universty of Rome.


Robotics

Real-time robot control, robot programming in C/C++ and python, motion planning, several simulators and physics engines. I am experienced in working (and developing) with (in) several robotic frameworks, most notably,

  • OROCOS (for real- and non real-time control, KDL, OCL, OROCOS-Deployer)
  • ROS (+ some familiarity with ROS2)
  • RSB (For inter-operating system robot control)
I have worked extensively with several industrial and research robot platforms. My work in robotics has also made me familiar with many high-end libraries software solutions in optimization, linear algebra, vision and perception, and control.

Programming

I carry many years of experience in programming C/C++ as well as other C-like languages including Java. Recently I have been working a lot with Python as an alternative to Matlab which I am also very comfortable with. I program in Linux, MacOS and Windows (in order of preference).

Machine Learning

My work in machine learning has been generally conducted in Matlab. Recently I have started to do my machine learning work in Python and as result I have familiarized myself with TensorFlow and PyTorch (although currently at a surface level).

Miscellaneous

I design domain specific languages in Jetbrains meta programming system. Additionally: certificates for PLC programming, general industrial knowledge gathered during time in industry, familiar with micro-controllers and their programming (C).


English
Fluent in language in all skills.
Italian
I am also fluent in speaking and comprehension of Italian although my writing skills are not as good.
German
I have a B1 certificate in German language from the Universität Bielefeld and still learning.
Persian
Is my mother tongue.

  • Prof. Dr. Jochen Steil, The chair of robotics at the Institut für Robotik und Prozessinformatik at Technische Universität Braunschweig. Home page and contact information: Prof. Dr. Jochen Steil.

  • Former affiliates, Letters of recommendation and/or references can be made available from the former employers or from the Sapienza University of Rome.


TODO: Add some libraries and packages as examples • Leadership