1. A method, comprising: storing in a memory a data structure representing a plurality of characteristics of a plurality of potential contacts and a weighting of importance of the respective characteristics; processing the data structure using at least one automated processor, to determine a priority of a plurality of respective associations of potential contacts based on, for each respective association of potential contacts, an optimization of at least: (i) a utility function of at least the plurality of characteristics of the respective association of potential contacts and the weighting of importance of the represented characteristics, and (ii) a cost function of the respective association of potential contacts; selecting a respective association of potential contacts based on the determined priority of the plurality of respective associations; and communicating at least an identification of the selected respective association of potential contacts through a communication port.