  Multi-agent systems for resource allocation (MRAs) have been introduced as a
concept for modelling competitive resource allocation problems in distributed
computing. An MRA is composed of a set of agents and a set of resources. Each
agent has goals in terms of allocating certain resources. For MRAs it is
typically of importance that they are designed in a way such that there exists
a strategy that guarantees that all agents will achieve their goals. The
corresponding model checking problem is to determine whether such a winning
strategy exists or not, and the synthesis problem is to actually build the
strategy. While winning strategies ensure that all goals will be achieved,
following such strategies does not necessarily involve an optimal use of
resources.
  In this paper, we present a technique that allows to synthesise cost-optimal
solutions to distributed resource allocation problems. We consider a scenario
where system components such as agents and resources involve costs. A
multi-agent system shall be designed that is cost-minimal but still capable of
accomplishing a given set of goals. Our approach synthesises a winning strategy
that minimises the cumulative costs of the components that are required for
achieving the goals. The technique is based on a propositional logic encoding
and a reduction of the synthesis problem to the maximum satisfiability problem
(Max-SAT). Hence, a Max-SAT solver can be used to perform the synthesis. From a
truth assignment that maximises the number of satisfied clauses of the encoding
a cost-optimal winning strategy as well as a cost-optimal system can be
immediately derived.
