QMIX and monotonic mixing
QMIX is the natural next step after VDN. It keeps the dream of decentralised execution but replaces the rigid 'just add them up' rule with something more expressive: a learned mixing network that combines each agent's value into the team value through any function that is monotonically increasing in every agent's value. So the team value can depend on the agents in rich, nonlinear ways, as long as making any one agent's value go up never makes the team value go down.
Why insist on monotonicity? Because it is exactly the condition that keeps decentralised greedy action correct. If the mix is monotone in each per-agent value, then the joint action that maximises the team value is the one where every agent independently maximises its own value — the same beautiful property VDN had, but now without forcing the combination to be a plain sum. The mixing network's weights are themselves produced from the global state by a small hypernetwork, so context can reshape the mix.
QMIX became a default strong baseline on cooperative benchmarks like the StarCraft Multi-Agent Challenge, clearly beating VDN where agent values interact. Its boundary is still real, though: monotonic mixing cannot represent tasks whose optimal coordination is genuinely non-monotonic, where one agent must sometimes sacrifice its own value for the team. Later methods (QTRAN, weighted QMIX, QPLEX) push past that ceiling at the cost of extra complexity.
Monotonicity in each Qᵢ guarantees that per-agent greedy actions jointly maximise the team value.