Robotic Assembly and Task Planning