Thibault Barnouin Optimization Method Algorithm