Source: https://www.ecs.umass.edu/cee/reckhow/courses/697J/Papers/ORP paper Wittbold.pdf