Selection of a suitable call-center agent (
) to handle a call is based on which available suitable agent's handling of the call will tend to optimize call wait times. When a call needing a particular skill becomes available (
), all skills of agents in the agent queue (
) corresponding to the particular skill are determined (
). The agent queues corresponding to the determined skills are checked (
) to determine which ones identify only one agent. For each available agent having the particular skill, the number of agent queues which identify this agent as their only agent is computed (
). The available agent having the lowest computed number is selected (
) to handle the call. This minimizes the number of skills that will be left without an available agent to handle subsequent calls, and thus tends to maximize the probability that a next call will also have a suitable agent already available and not have to wait for one to become available, thereby optimizing call wait times.