A resource allocation framework. Take Job in set A, assign to Slot in set B, where all slots are unique combinations of available resources. Repeat.