A Multi-Agent Evolution Algorithm Used for Input Shaping of a Repetitive Non-Linear Dynamic System