1. A method for routing callers to agents in a call-center routing, environment, the method comprising: obtaining, by one or more computers, multiple items of agent data associated agents in a set of agents; obtaining, by the one or more computers, multiple items of caller data associated with callers in a set of callers; matching, by the one or more computers, using a multi-element pattern matching algorithm, callers of a first portion of the set of callers with the agents in the set of agents, based at least in part on the data associated with the callers in the first portion of callers and the agents in the set of agents, to increase the chance of an optimal interaction; connecting, by the one or more computers, the callers in the first portion of callers to agents in the set of agents based at least in part on results from the multi-element pattern matching algorithm; matching, by the one or more computers, callers in a second portion of the set of callers to agents in the set of agents randomly by cycling on and off the matching operation of the multi-element pattern matching algorithm; connecting, by the one or more computers, the respective callers in the second portion of the callers to respective of the agents in the set of agents based on results from the random matching step; generating, by the one or more computers, a report or display data for the optimal interaction comparing outcome data from using the multi-element pattern matching algorithm against outcome data from using the random matching; and generating data, by the one or more computers, for a visual computer interface for setting a degree of randomness for the method for routing.