algorithms which are used to solve problems where multiple agents must coordinate their actions to optimize a global objective while satisfying local constraints applied in sensor networks resource allocation task scheduling