added more tests and fixed bugs in DEOpt