Watkins algorithm