1. A method for procedural memory learning to control a robot to perform a task, the method comprising: using a control system to: compute a similarity matrix whose elements comprise values according to at least one function of similarity of a plurality of signals from the robot, the signals related to an action of the task performed by the robot with direct control command via a low-level interface; input into an artificial neural network (ANN) controller of the robot: the direct control command; and the similarity matrix; receive control signals from the ANN controller to control the robot; aggregate the control signals from the ANN controller by an aggregator according to a kinematics model of the robot; and send aggregated control signals from the aggregator to the robot, to perform the task.