Implemented optimization algorithms and various samplers, added appropriate arguments