Energy Matching for Cooperative Robot-to-Robot Charging

This project aims to optimize the social welfare of a power transfer network of a multi-robot system. The key concept is to take every robot as a unit of energy storage that can charge or discharge to each other. Thus, I define the utility for each robot based on individual energy and view this scenario as a matching problem. The Hungarian matching algorithm is applied to maximize the sum of all utilities in the multi-robot system. This report illustrates the properties (social welfare, overall energy, worker ratio, and idler ratio) of the robot-to-robot charging method. The experiment compares the traditional scenario (that all robots charge in limited charging stations) with the matching one in the Matlab Mobile Robotics Simulator. The result shows that this approach can get the better social welfare compared to the traditional method. My modification also reduces the waiting robots at charging stations by adding the negative utility of waiting behavior. However, the comparison of overall energy of the whole system between robot-to-robot charging method and the traditional one reveals the fact that this approach may suffer from energy shortage, which urges consumers to choose charging stations, as time goes on. (video)

Robotic System Singularity Monitor

The goal of this project was to develop a computer program that can monitor a robot's pose as it moves through a trajectory passing through user defined way points and determine if it has reached a singular configuration. While the primary focus of this program was to monitor if the robot was at a singularity, additional functionality included the following: Inverse Kinematics, Trajectory Planning (quintic polynomials and spline interpolation), Joint Limit monitoring, and GUI Development