A distributed, network-based system and computer program product determines an optimal allocation of available to promise components in a supply chain. An aggregate demand request is generated by a demand entity intelligent agent. The aggregate demand request is propagated via a network throughout the supply chain to a plurality of supply entity intelligent agents. The supply entity intelligent agents respond with an evaluation of available to promise supply capability. Optimal allocation of the available to promise supply is made by calculating a sequence of squared set solutions of unit demand problems using a message-based communications protocol between the demand entity and supply entity intelligent agents.