Using Bayesian filtering for simultaneous parameter and state estimation in robot manipulator programming by demonstration