Java-based random optimization algorithms, toy problems and experiment harness