Zaslat SMS: A class of algorithms for distributed constraint optimization