1. A data processing system comprising: a bus; a communications unit connected to the bus; a storage device connected to the bus, wherein the storage device includes program code; and a processor unit connected to the bus, wherein the processor unit runs the program code to receive a request for resources in a network data processing system, wherein the request comprises requested values for a plurality of attributes for the resources in the network data processing system; identify potential resources in the network data processing system in response to receiving the request; and evaluate the request using a function configured to generate identified values for the plurality of attributes from the requested values in the request based on proximity scores for the plurality of attributes in the potential resources relative to an ideal allocation of the potential resources and resource weights for the plurality of attributes in the potential resources.