Handling of multiple constraints and motion alternatives in a robot programming by demonstration framework | IEEE Conference Publication | IEEE Xplore