Techniques for hybrid behavioral pairing in a contact center system

Information

  • Patent Grant
  • 11425248
  • Patent Number
    11,425,248
  • Date Filed
    Monday, July 6, 2020
    3 years ago
  • Date Issued
    Tuesday, August 23, 2022
    a year ago
  • Inventors
  • Original Assignees
  • Examiners
    • Nguyen; Quynh H
    Agents
    • Wilmer Cutler Pickering Hale and Dorr LLP
Abstract
Techniques for hybrid behavioral pairing in a contact center system are disclosed. In one embodiment, the techniques may be realized as a method for hybrid behavioral pairing in a contact center system comprising: determining a first ordering of a plurality of agents according to a behavioral pairing strategy with a balanced agent utilization; determining a second ordering of the plurality of agents according to a performance-based routing strategy with an unbalanced agent utilization; determining a third ordering of the plurality of agents according to a combination of the first ordering and the second ordering having a skewed agent utilization between the balanced agent utilization and the unbalanced agent utilization; and outputting a hybrid behavioral pairing model based on the third ordering for connecting a contact to an agent of the plurality of agents in the contact center system.
Description
FIELD OF THE DISCLOSURE

This disclosure generally relates to contact centers and, more particularly, to techniques for hybrid behavioral pairing in a contact center system.


BACKGROUND OF THE DISCLOSURE

A typical contact center algorithmically assigns contacts arriving at the contact center to agents available to handle those contacts. At times, the contact center may have agents available and waiting for assignment to inbound or outbound contacts (e.g., telephone calls, Internet chat sessions, email) or outbound contacts. At other times, the contact center may have contacts waiting in one or more queues for an agent to become available for assignment.


In some typical contact centers, contacts are assigned to agents ordered based on time of arrival, and agents receive contacts ordered based on the time when those agents became available. This strategy may be referred to as a “first-in, first-out”, “FIFO”, or “round-robin” strategy. In some contact centers, contacts or agents are assigned into different “skill groups” or “queues” prior to applying a FIFO assignment strategy within each such skill group or queue. These “skill queues” may also incorporate strategies for prioritizing individual contacts or agents within a baseline FIFO ordering. For example, a high-priority contact may be given a queue position ahead of other contacts who arrived at an earlier time, or a high-performing agent may be ordered ahead of other agents who have been waiting longer for their next call. Regardless of such variations in forming one or more queues of callers or one or more orderings of available agents, contact centers typically apply FIFO to the queues or other orderings. Once such a FIFO strategy has been established, assignment of contacts to agents is automatic, with the contact center assigning the first contact in the ordering to the next available agent, or assigning the first agent in the ordering to the next arriving contact. In the contact center industry, the process of contact and agent distribution among skill queues, prioritization and ordering within skill queues, and subsequent FIFO assignment of contacts to agents is managed by a system referred to as an “Automatic Call Distributor” (“ACD”).


Some contact centers may use a “performance based routing” or “PBR” approach to ordering the queue of available agents. For example, when a contact arrives at a contact center with a plurality of available agents, the ordering of agents available for assignment to that contact would be headed by the highest-performing available agent (e.g., the available agent with the highest sales conversion rate, the highest customer satisfaction scores, the shortest average handle time, the highest performing agent for the particular contact profile, the highest customer retention rate, the lowest customer retention cost, the highest rate of first-call resolution). PBR ordering strategies attempt to maximize the expected outcome of each contact-agent interaction but do so typically without regard for utilizing agents in a contact center uniformly. Consequently, higher-performing agents may receive noticeably more contacts and feel overworked, while lower-performing agents may receive fewer contacts and idle longer, potentially reducing their opportunities for training and improvement as well as potentially reducing their compensation.


In view of the foregoing, it may be understood that there is a need for a system that both attempts to utilize agents more evenly than PBR while improving contact center performance beyond what FIFO strategies deliver.


SUMMARY OF THE DISCLOSURE

Techniques for hybrid behavioral pairing in a contact center system are disclosed. In one embodiment, the techniques may be realized as a method for hybrid behavioral pairing in a contact center system comprising: determining, by at least one computer processor communicatively coupled to the contact center system, a first ordering of a plurality of agents according to a behavioral pairing strategy with a balanced agent utilization; determining, by the at least one computer processor, a second ordering of the plurality of agents according to a performance-based routing strategy with an unbalanced agent utilization; determining, by the at least one computer processor, a third ordering of the plurality of agents according to a combination of the first ordering and the second ordering having a skewed agent utilization between the balanced agent utilization and the unbalanced agent utilization; and outputting, by the at least one computer processor, a hybrid behavioral pairing model based on the third ordering for connecting a contact to an agent of the plurality of agents in the contact center system.


In accordance with other aspects of this embodiment, wherein the behavioral pairing strategy may be a diagonal pairing strategy.


In accordance with other aspects of this embodiment, wherein the method may further comprise determining, by the at least one computer processor, a target amount of skew for the skewed agent utilization.


In accordance with other aspects of this embodiment, wherein the combination of the first ordering and the second ordering is a weighted sum according to the target amount of skew.


In accordance with other aspects of this embodiment, wherein the first ordering can be expressed as percentiles or percentile ranges.


In accordance with other aspects of this embodiment, wherein the third ordering can be expressed as percentiles or percentile ranges adjusted according to the combination of the first ordering and the second ordering.


In accordance with other aspects of this embodiment, wherein the hybrid behavioral pairing model preferably pairs a higher-performing agent more frequently than a lower-performing agent.


In accordance with other aspects of this embodiment, wherein the hybrid behavioral pairing model preferably pairs a higher-performing agent with a greater number of contact types than a lower-performing agent.


In accordance with other aspects of this embodiment, wherein the hybrid behavioral pairing model preferably pairs a higher-performing agent with a higher-frequency contact type than a lower-performing agent.


In another embodiment, the techniques may be realized as a system for hybrid behavioral pairing in a contact center system comprising at least one computer processor communicatively coupled to the contact center system, wherein the at least one computer processor is configured to: determine a first ordering of a plurality of agents according to a behavioral pairing strategy with a balanced agent utilization; determine a second ordering of the plurality of agents according to a performance-based routing strategy with an unbalanced agent utilization; determine a third ordering of the plurality of agents according to a combination of the first ordering and the second ordering having a skewed agent utilization between the balanced agent utilization and the unbalanced agent utilization; and output a hybrid behavioral pairing model based on the third ordering for connecting a contact to an agent of the plurality of agents in the contact center system.


In another embodiment, the techniques may be realized as an article of manufacture for hybrid behavioral pairing in a contact center system comprising a non-transitory processor readable medium and instructions stored on the medium, wherein the instructions are configured to be readable from the medium by at least one computer processor communicatively coupled to the contact center system and thereby cause the at least one computer processor to operate so as to: determine a first ordering of a plurality of agents according to a behavioral pairing strategy with a balanced agent utilization; determine a second ordering of the plurality of agents according to a performance-based routing strategy with an unbalanced agent utilization; determine a third ordering of the plurality of agents according to a combination of the first ordering and the second ordering having a skewed agent utilization between the balanced agent utilization and the unbalanced agent utilization; and output a hybrid behavioral pairing model based on the third ordering for connecting a contact to an agent of the plurality of agents in the contact center system.


The present disclosure will now be described in more detail with reference to particular embodiments thereof as shown in the accompanying drawings. While the present disclosure is described below with reference to particular embodiments, it should be understood that the present disclosure is not limited thereto. Those of ordinary skill in the art having access to the teachings herein will recognize additional implementations, modifications, and embodiments, as well as other fields of use, which are within the scope of the present disclosure as described herein, and with respect to which the present disclosure may be of significant utility.





BRIEF DESCRIPTION OF THE DRAWINGS

In order to facilitate a fuller understanding of the present disclosure, reference is now made to the accompanying drawings, in which like elements are referenced with like numerals. These drawings should not be construed as limiting the present disclosure, but are intended to be illustrative only.



FIG. 1 shows a block diagram of a contact center according to embodiments of the present disclosure.



FIG. 2 shows a schematic representation of a queue according to embodiments of the present disclosure.



FIG. 3 shows a schematic representation of a queue according to embodiments of the present disclosure.



FIG. 4 shows a schematic representation of a queue according to embodiments of the present disclosure.



FIG. 5 shows a schematic representation of a queue according to embodiments of the present disclosure.



FIG. 6 shows a schematic representation of a queue according to embodiments of the present disclosure.



FIG. 7 shows a schematic representation of a queue according to embodiments of the present disclosure.



FIG. 8 shows a flow diagram of a hybrid behavioral pairing method according to embodiments of the present disclosure.





DETAILED DESCRIPTION

A typical contact center algorithmically assigns contacts arriving at the contact center to agents available to handle those contacts. At times, the contact center may be in an “L1 state” and have agents available and waiting for assignment to inbound or outbound contacts (e.g., telephone calls, Internet chat sessions, email). At other times, the contact center may be in an “L2 state” and have contacts waiting in one or more queues for an agent to become available for assignment. Such L2 queues could be inbound, outbound, or virtual queues. Contact center systems implement various strategies for assigning contacts to agents in both L1 and L2 states.


The present disclosure generally relates to contact center systems, traditionally referred to as “Automated Call Distribution” (“ACD”) systems. Typically, such an ACD process is subsequent to an initial “Skills-based Routing” (“SBR”) process that serves to allocate contacts and agents among skill queues within the contact center. Such skill queues may distinguish contacts and agents based on language capabilities, customer needs, or agent proficiency at a particular set of tasks.


The most common traditional assignment method within a queue is “First-In, First-Out” or “FIFO” assignment wherein the longest-waiting contact is assigned to the longest-waiting agent. Some contact centers implement “Performance-based Routing” (“PBR”) wherein the longest waiting contact is assigned to the highest performing available agent. Variations of both such assignment methods commonly exist. For example, FIFO may select the least utilized available agent rather than the longest waiting agent. More generally, FIFO may select an agent most lagging in a particular metric or metrics. FIFO may also order queues of contacts where higher priority contact types may be positioned in a queue ahead of lower priority contact types. Similarly, PBR may be modified such that agent performance rankings may be altered depending on the type of contact pending assignment (e.g., Bala et al., U.S. Pat. No. 7,798,876). PBR may also be modified to avoid an extreme unbalancing of agent utilization by setting limits on maximum or minimum agent utilization relative to peers.


Variations of FIFO typically target “fairness” inasmuch as they are designed to balance the allocation of contacts to agents over time. PBR adopts a different approach in which the allocation of contacts to agents is purposefully skewed to increase the utilization of higher-performing agents and reduce the utilization of lower-performing agents. PBR may do so despite potential negative impacts on morale and productivity over time resulting from fatigue in over-utilized agents and inadequate opportunity for training and compensation in under-utilized agents.


The present disclosure refers to optimized strategies for assigning contacts to agents that improve upon traditional assignment methods, such as “Behavioral Pairing” or “BP” strategies. Behavioral Pairing targets balanced utilization of agents within queues (e.g., skill queues) while simultaneously improving overall contact center performance potentially beyond what FIFO or PBR methods will achieve in practice. This is a remarkable achievement inasmuch as BP acts on the same contacts and same agents as FIFO or PBR methods, approximately balancing the utilization of agents as FIFO provides, while improving overall contact center performance beyond what either FIFO or PBR provide in practice.


BP improves performance by assigning agent and contact pairs in a fashion that takes into consideration the assignment of potential subsequent agent and contact pairs such that when the benefits of all assignments are aggregated they may exceed those of FIFO and PBR strategies. In some cases, BP results in instant contact and agent pairings that may be the reverse of what FIFO or PBR would indicate. For example, in an instant case BP might select the shortest-waiting contact or the lowest-performing available agent. BP respects “posterity” inasmuch as the system allocates contacts to agents in a fashion that inherently forgoes what may be the highest-performing selection at the instant moment if such a decision increases the probability of better contact center performance over time.


As explained in detail below, embodiments of the present disclosure relate to techniques for “hybrid behavioral pairing” (“HBP”), which combines strategies of BP with strategies of PBR, in a manner in which a contact center administrator may adjust a balance between the two. For example, a contact center administrator may choose to have BP be the dominant mechanism for assigning agents from within a group with a bias toward performance-based routing. Instead of targeting a balanced agent utilization, HBP may target a skewed agent utilization. In some configurations, this bias or skew may be slight; for example, an HBP strategy may be calibrated to reduce or limit the number of occasions in which any one agent in a queue (e.g., skill queue) receives more than one contact pairing before other agents in the queue.



FIG. 1 shows a block diagram of a contact center system 100 according to embodiments of the present disclosure. The description herein describes network elements, computers, and/or components of a system and method for simulating contact center systems that may include one or more modules. As used herein, the term “module” may be understood to refer to computing software, firmware, hardware, and/or various combinations thereof. Modules, however, are not to be interpreted as software which is not implemented on hardware, firmware, or recorded on a processor readable recordable storage medium (i.e., modules are not software per se). It is noted that the modules are exemplary. The modules may be combined, integrated, separated, and/or duplicated to support various applications. Also, a function described herein as being performed at a particular module may be performed at one or more other modules and/or by one or more other devices instead of or in addition to the function performed at the particular module. Further, the modules may be implemented across multiple devices and/or other components local or remote to one another. Additionally, the modules may be moved from one device and added to another device, and/or may be included in both devices.


As shown in FIG. 1, the contact center system may include a central switch 110. The central switch 110 may receive incoming contacts (e.g., callers) or support outbound connections to contacts via a dialer, a telecommunications network, or other modules (not shown). The central switch 110 may include contact routing hardware and software for helping to route contacts among one or more contact centers, or to one or more PBX/ACDs or other queuing or switching components within a contact center.


The central switch 110 may not be necessary if there is only one contact center, or if there is only one PBX/ACD routing component, in the contact center system 100. If more than one contact center is part of the contact center system 100, each contact center may include at least one contact center switch (e.g., contact center switches 120A and 120B). The contact center switches 120A and 120B may be communicatively coupled to the central switch 110.


Each contact center switch for each contact center may be communicatively coupled to a plurality (or “pool”) of agents. Each contact center switch may support a certain number of agents (or “seats”) to be logged in at one time. At any given time, a logged-in agent may be available and waiting to be connected to a contact, or the logged-in agent may be unavailable for any of a number of reasons, such as being connected to another contact, performing certain post-call functions such as logging information about the call, or taking a break.


In the example of FIG. 1, the central switch 110 routes contacts to one of two contact centers via contact center switch 120A and contact center switch 120B, respectively. Each of the contact center switches 120A and 120B are shown with two agents each. Agents 130A and 130B may be logged into contact center switch 120A, and agents 130C and 130D may be logged into contact center switch 120B.


The contact center system 100 may also be communicatively coupled to an integrated service from, for example, a third party vendor. In the example of FIG. 1, hybrid behavioral pairing module 140 may be communicatively coupled to one or more switches in the switch system of the contact center system 100, such as central switch 110, contact center switch 120A, or contact center switch 120B. In some embodiments, switches of the contact center system 100 may be communicatively coupled to multiple hybrid behavioral pairing modules. In some embodiments, hybrid behavioral pairing module 140 may be embedded within a component of a contact center system (e.g., embedded in or otherwise integrated with a switch).


The hybrid behavioral pairing module 140 may receive information from a switch (e.g., contact center switch 120A) about agents logged into the switch (e.g., agents 130A and 130B) and about incoming contacts via another switch (e.g., central switch 110) or, in some embodiments, from a network (e.g., the Internet or a telecommunications network) (not shown).


The hybrid behavioral pairing module 140 may process this information and to determine which contacts should be paired (e.g., matched, assigned, distributed, routed) with which agents. For example, multiple agents are available and waiting for connection to a contact (L1 state), and a contact arrives at the contact center via a network or central switch. As explained below, without the hybrid behavioral pairing module 140 or similar behavioral pairing module, a contact center switch will typically automatically distribute the new contact to whichever available agent has been waiting the longest amount of time for an agent under a “fair” FIFO strategy, or whichever available agent has been determined to be the highest-performing agent under a PBR strategy.


With the hybrid behavioral pairing module 140 or a similar behavioral pairing module, contacts and agents may be given scores (e.g., percentiles or percentile ranges/bandwidths) according to a pairing model or other artificial intelligence data model, so that a contact may be matched, paired, or otherwise connected to a preferred agent. In some embodiments, the hybrid behavioral pairing module 140 may be configured with an HBP strategy that blends the BP and PBR strategies, targeting biased rather than balanced agent utilization.


In an L2 state, multiple contacts are available and waiting for connection to an agent, and an agent becomes available. These contacts may be queued in a contact center switch such as a PBX or ACD device (“PBX/ACD”). Without the hybrid behavioral pairing module 140 or a similar behavioral pairing module, a contact center switch will typically connect the newly available agent to whichever contact has been waiting on hold in the queue for the longest amount of time as in a “fair” FIFO strategy or a PBR strategy when agent choice is not available. In some contact centers, priority queuing may also be incorporated.


With the hybrid behavioral pairing module 140 or similar behavioral pairing module in an L2 scenario, as in the L1 state described above, contacts and agents may be given percentiles (or percentile ranges/bandwidths, etc.) according to, for example, a model, such as an other artificial intelligence model, so that an agent coming available may be matched, paired, or otherwise connected to a preferred contact.


Under an HBP strategy, a hybridization factor or function may be applied to one or more orderings of agents to achieve the desired balance between a BP strategy, which targets a balanced utilization, and a PBR strategy, which targets a highly skewed utilization during periods of time when a contact center is in an L1 state (i.e., multiple agents available for assignment).


In some embodiments, a hybridization function may combine two (or more) orderings or other types of ranking systems together. For example, a contact center may have four agents: Agent A, Agent B, Agent C, and Agent D (“A”, “B”, “C”, and “D”) available for pairing with a contact. The agents may be ordered according to multiple ordering systems. For example, under a typical FIFO strategy, the agents may be ordered according to how long each agent has been waiting for an assignment relative to the other agents. Under a typical PBR strategy, the agents may be ordered according to how well each agent performs for some metric relative to the other agents. Under a BP strategy, the agents may be ordered according to the quality of each agent's “behavioral fit” relative to the other agents.


One technique for combining two orderings is to determine a sum. For example, if a PBR strategy orders the four agents as A=1, B=2, C=3, and D=4, the PBR strategy would preferably pair highest-performing Agent A with the next contact. And if a BP strategy order the agents as A=4, B=2, C=3, D=1, the BP strategy would preferably pair best-fitting Agent D with the next contact. In this example of an HBP strategy, the sum of the two orderings would be A=S, B=4, C=6, D=5. This HBP strategy would preferably pair Agent B with the next contact, which is the second highest-performing and second best-fitting agent according to the original orderings.


Other embodiments may use other techniques for combining multiple orderings of agents. For example, the HBP ordering may be a product obtained by multiplying two or more orderings. For another example, the HBP ordering may be a weighted sum or product obtained by scaling the one or more of the orderings by a scaling factor. In this way, HBP may be configured to weight an agent's relative performance more or less than the agent's relative behavioral fit.



FIG. 2 shows a queue 200 according to embodiments of the present disclosure operating under BP Strategy 210. Queue 200 represents a simplified hypothetical case in which four types of contacts may be assigned to any of four agents in an environment in which the contact center is seeking to maximize a desired metric (e.g., sales). The four evenly distributed types of contacts are assigned percentile ranges (or “bandwidths”) of 0.00 to 0.25 (“0-25% Contacts”), 0.25 to 0.50 (“25-50% Contacts”), 0.50 to 0.75 (“50-75% Contacts”), and 0.75 to 1.00 (75-100% Contacts). The four agents occupy equally-spaced percentile bandwidths and are assigned percentiles at the midpoints of their respective ranges: 0.00 to 0.25 (“0.125 Agent”), 0.25 to 0.50 (“0.375 Agent”), 0.50 to 0.75 (“0.625 Agent”), and 0.75 to 1.00 (“0.875 Agent”). The four agents may also be ordered by performance according to a desired metric (e.g., sales), such that the lowest-performing agent is assigned the lowest percentile (the 0.125 Agent), and the highest-performing agent is assigned the highest percentile (the 0.875 Agent).


By applying a diagonal strategy, 0-25% Contacts may be preferably assigned to the 0.125 Agent, 25-50% Contacts may be preferably assigned to the 0.375 Agent, 50-75% Contacts may be preferably assigned to the 0.625 Agent, and 75-100% Contacts may be preferably assigned to the 0.875 Agent. BP Strategy 210 targets a balanced utilization, with each agent receiving approximately the same proportion of contacts over time. Accordingly, there is no bias toward a PBR strategy, under which agent utilization would be skewed toward utilizing the highest-performing 0.875 Agent more heavily.


One such technique for generating the performance-biased agent percentiles according to embodiments of the present disclosure is to adjust each agent's “initial” midpoint percentile (“APinitial”) by a hybridization function or factor, such that relatively higher-ordered (e.g., higher-performing) agents occupy relatively larger bandwidths (i.e., disproportionate bandwidths) and, consequently, receive relatively more contacts than lower-ordered (e.g., lower-performing) agents. For example, the hybridization function may raise each agent's percentile to a power, as in Equation 1 below:

APinitial=APinitialκ  (Eqn. 1)

The power parameter (e.g., “κ” or a “Kappa parameter” as in Equation 1 may determine the amount of bias toward PBR, with higher values of Kappa generating greater amounts of bias. A Kappa parameter of 1.0 would generate no bias (APadjusted=APinitial). Thus, this “neutral” value for Kappa results in targeting a balanced agent utilization. In fact, BP Strategy 210 is equivalent to a Kappa-based HBP strategy in which Kappa equals 1.0. As Kappa increases, the degree of agent utilization skew increases as bias toward PBR increases.



FIG. 3 shows a queue 300 that applies this technique using a Kappa value of 2.0. Queue 300 represents the same four types of contacts and the same four agents as in queue 200. However, in queue 300, the agents' percentile midpoints have been squared (APadjusted=APinitial2.0). Applying a diagonal strategy under HBP Strategy 310, the lowest-ordered agent (APadjusted≈0.016) would occupy the smallest bandwidth and receive the fewest contacts, and so on, up to the highest-ordered agent (APadjusted0.766), who would occupy the largest bandwidth and receive the most contacts.


In some embodiments, the bandwidth of each agent may be determined so that each agent's adjusted percentile midpoint is the midpoint of each agent's new, adjusted bandwidth. For example, the bandwidth of the lowest-ordered 0.016 agent may be approximately 0.000 to 0.031 In other embodiments, the bandwidth of each agent may be determined by equally distributing the “distance” between neighboring adjusted percentile midpoints. For example, the bandwidth of the lowest-ordered 0.016 agent may be approximately 0.000 to 0.079.


Another variation of the HBP technique applied to queue 300 in FIG. 3 is to adjust each agent's initial percentile ranges rather than each agent's initial midpoint percentile, as in Equation 2 below:

APadjusted_range=APinitial_rangeκ  (Eqn. 2)

The effect would be the same: relatively higher-ordered (e.g., higher-performing) agents occupy relatively larger bandwidths and, consequently, receive relatively more contacts than lower-ordered (e.g., lower-performing) agents.



FIG. 4 shows a queue 400 that applies this technique using a Kappa value of 2.0. Queue 400 represents the same four contact types and agents as in queue 300. However, in queue 400, the agents' initial percentile ranges have been squared (APadjusted_range=APinitial_range2.0) instead of their initial midpoint percentiles. Applying a diagonal strategy under HBP Strategy 410, the lowest-ordered agent (occupying adjusted percentile range from 0.00 to approximately 0.06 with a midpoint of approximately 0.03) would receive the fewest contacts, and so on, up to the highest-ordered agent (occupying adjusted percentile range from approximately 0.56 to 1.00 with a midpoint of approximately 0.82) would receive the most contacts.


Conceptually, the target skewed utilization would result in the bottom-half of agents receiving approximately one-fourth of the contacts, and the top-half of the agents receiving the other three-fourths. Other techniques for visualizing or implementing these hybridization functions or factors include adjusting the “fitting function” of the diagonal strategy.



FIG. 5 shows a queue 500 with the same agent percentiles and ranges as in queue 100 (FIG. 1), and they have not been adjusted. Unlike queue 100, in which BP Strategy 110 may be visualized by a 45-degree diagonal line (CP=AP), HBP strategy 510 may be visualized by a different, hybridized fitting function (e.g., “bending” or “bowing” the diagonal line). In the example, of FIG. 5, the fitting function is an exponential function, as in Equation 3 below:

CP=APκ  (Eqn. 3)

Conceptually, instead of determining preferred pairings by selecting pairs closest to the diagonal CP=AP as in BP Strategy 110, preferred pairings in HBP Strategy 510 may be determined by selecting pairs closest to the exponential CP=AP2.0 as in queue 500 where Kappa equals 2.0. Notably, the effect of fitting to a curve (e.g., CP=AP2.0) is the continuous mathematical analogue to the discontinuous process of broadening or shrinking percentile ranges (e.g., squaring the percentile ranges and then fitting to CP=AP), as in queue 400 and HBP Strategy 410 (FIG. 4).


Many variations of hybridization functions may be used to vary the target utilization of an agent as a function of the agent's performance or other ordering or metric. For example, a hybridization function may be a piecewise function.



FIG. 6 shows a queue 600 and HBP Strategy 610 that affects the utilization of the bottom-half of the agents differently than that of the top-half of the agents. For example, the contact center may determine that half of the contacts should be distributed to below-average agents in a balanced manner (e.g., Kappa=1.0), but the other half of the contacts should be distributed to above-average agents according to their relative performance (e.g., Kappa>1.0). Thus, contacts ranging from 0% to 50% may be distributed to the lower-performing agents (0.125 Agent and 0.375 Agent) evenly, visualized as a fit along the 45-degree line CP=AP for 0.00≤AP<0.50 (or, e.g., 0.00<AP≤0.50, etc.). Contacts ranging from 50% to 100% may be distributed to the higher-performing agents (0.625 Agent and 0.875 Agent) as a function of their performance, such as an exponential function scaled to this portion of contacts and agents. HBP Strategy 610 may be visualized as a fit along the exponential curve CP=2(AP−0.5)2.0+0.5 for Kappa=2.0 and 0.50≤AP<1.00.


Incidentally, such a strategy would result in some higher-performing agents (here, the 0.625 Agent) receiving fewer contacts over time than its lower-performing peers. FIG. 7 shows a queue 700 and HBP Strategy 710 that also affects the utilization of the bottom-half of the agents differently than that of the top-half of the agents using a piecewise hybridization function. For example, the contact center may determine that a larger portion of contacts should be distributed to above-average agents according to their relative performance (e.g., Kappa>1.0), and the remaining portion of contacts should be distributed to below-average agents in a balanced manner (e.g., Kappa=1.0). Thus, for Kappa=2.0 and AP≥0.50 (or AP>0.50), pairings may be fit along the exponential curve CP=AP2.0. For Kappa=1.0 and AP<0.50, pairings may be fit along a linear function, scaled to this portion of contacts and agents: CP=0.5·AP.


In real-world contact centers, there may be more or fewer agents, and more or fewer contact types in a queue. In these examples, each contact type is evenly distributed within the total range of percentile ranks; however, in some contact centers, the distribution of ranges could vary based on, for example, the frequency at which contacts of a particular type arrive at a contact center relative to the frequency at which contacts of other types arrive. The simplified examples described above, with four agents and four contact types, are used to illustrate the effects of an implicit form of HBP such as those based on a Kappa parameter and exponential scaling or other hybridization functions. However, HBP—including Kappa-based techniques—may also be applied to bigger, more complex, real-world contact centers.


In some embodiments, Kappa may be selected or adjusted to vary the bias toward PBR (or skew in agent utilization). For example, Kappa less than 2.0 (e.g., 1.0, 1.01, 1.1, 1.2, 1.5, etc.) would result in relatively less bias toward PBR than the examples above in which Kappa equals 2.0. For example, if a contact center administrator wanted to avoid occurrences of higher-performing agents receiving multiple calls while a lower-performing agent remains idle, a significantly lower value of Kappa may be more appropriate than 2.0. Conversely, Kappa greater than 2.0 (e.g., 2.01, 2.1, 2.5, 200.0, etc.) would result in relatively more bias toward PBR.


Importantly, the effect on agent utilization is subtle under Kappa-based HBP strategies inasmuch as they controllably affect the degree to which agents wait between contacts. By increasing the power to which agent percentiles are raised, this invention controllably decreases the average time between contacts for higher-ordered agents and increases the average time between contacts for comparatively lower-ordered agents. Similarly, reducing the power to which agent percentiles are raised has the reverse effect. For neutral BP strategies (e.g., Kappa=1.0), each agent has approximately the same expected average waiting time between contacts. As Kappa increases, the relative expected average waiting time progressively (e.g., exponentially) decreases as relative agent performance increases.


In some embodiments, an HBP strategy may target relative agent utilization using potentially more gradual techniques. For example, agents may be assigned relative “utilization adjustments” based on agent ordering. In one example, the highest-ordered agent may be assigned a relative utilization adjustment of 100%, the second-highest agent a relative utilization of 99%, the third 98%, and so on. In this example, the target utilization of the second-highest ordered agent would be 99% of the target utilization of the highest-performing agent. The relative utilization adjustment may be more aggressive in other configurations. For example, the highest-ordered agent may be assigned a relative utilization of 100%, the second-highest agent 90%, the third 80%, and so on. In this example, the target utilization of the second-highest ordered agent would be 90% of the target utilization of the highest-performing agent.



FIG. 8 shows a hybrid behavioral pairing method 800 according to embodiments of the present disclosure. At block 810, hybrid behavioral pairing method 800 may begin.


At block 810, a percentile (or n-tile, quantile, percentile range, bandwidth, or other type of “score” or range of scores, etc.) may be determined for each available contact. For situations in which contacts are waiting on hold in a queue, percentiles may be determined for each of the contacts waiting on hold in the queue. For situations in which contacts are not waiting on hold in a queue, a percentile may be assigned to the next contact to arrive at the contact center. The percentiles may be bounded by a range of percentiles defined for a particular type or group of contacts based on information about the contact. The percentile bounds or ranges may be based on a frequency distribution or other metric for the contact types. The percentile may be randomly assigned within the type's percentile range.


In some embodiments, percentiles may be ordered according to a particular metric or combination of metrics to be optimized in the contact center, and a contact determined to have a relatively high percentile may be considered to be a “higher-value” contact for the contact center inasmuch as these contacts are more likely to contribute to a higher overall performance in the contact center. For example, a relatively high-percentile contact may have a relatively high likelihood of making a purchase.


In some embodiments, a percentile may be determined for a contact at the time the contact arrives at the contact center. In other embodiments, a percentile may be determined for the contact at a later point in time, such as when the contact arrives at a particular skill queue or ACD system, or when a request for a pairing is made.


After a percentile has been determined for each contact available for pairing, behavioral pairing method 800 may proceed to block 820. In some embodiments, block 820 may be performed prior to, or simultaneously with, block 810.


At block 820, a percentile may be determined for each available agent. For situations in which agents are idle, waiting for contacts to arrive, percentiles may be determined for each of the idle agents. For situations in which agents for a queue are all busy, a percentile may be determined to the next agent to become available. The percentiles may be bounded by a range of percentiles (e.g., “bandwidth”) defined based on all of agents assigned to a queue (e.g., a skill queue) or only the available agents assigned to a particular queue. In some embodiments, the bounds or ranges of percentiles may be based on a desired agent utilization (e.g., for fairness, efficiency, or performance).


In some embodiments, agent percentiles may be ordered according to a particular metric or combination of metrics to be optimized in the contact center, and an agent determined to have a relatively high percentile may be considered to be a higher-performing agent for the contact center. For example, a relatively high-percentile agent may have a relatively high likelihood of making a sale.


In some embodiments, an agent's percentile may be determined at the time the agent becomes available within the contact center. In other embodiments, a percentile may be determined at a later point in time, such as when a request for a pairing is made.


After a percentile has been determined for each available agent and contact, behavioral pairing method 800 may proceed to block 830.


At block 830, a hybridization function may be applied to agent percentiles (or agent percentile ranges or bandwidths). For example, a Kappa value may be determined for an exponential hybridization function or fitting curve or line. In some embodiments, the hybridization function may act on a single ordering that implicitly incorporates both behavioral fit and performance information. In other embodiments, the hybridization function may combine (e.g., add, multiply, weight) multiple orderings of agents. After the hybridization function has been applied or otherwise determined or configured, hybrid behavioral pairing method 800 may proceed to block 840.


At block 840, a pair of an available contact and an available agent may be determined based on the percentiles (or percentile ranges) determined for each available contact at block 810 and for each available agent at block 820 based on a hybridization function. In some embodiments, the selection may be determined based on percentiles or percentile ranges for each available agent adjusted at block 830. In some embodiments, the pair may be determined according to a diagonal strategy, in which contacts and agents with more similar percentiles (or the most similar percentiles) may be selected for pairing. For example, a hybrid behavioral pairing module may select a contact-agent pairing with the smallest absolute difference between the contact's score and the agent's score. In some embodiments, the diagonal strategy may be visualized as a 45-degree diagonal line. In other embodiments, the diagonal strategy may be visualized as a hybridization function (e.g., continuously differentiable functions such as an exponential function, a linear function, a logarithmic function, a sigmoidal function, a logistic function, a logit function, or not continuously differentiable functions such as piecewise functions).


In some situations, multiple agents may be idle when a contact arrives (an L1 state). Under HBP, the newly available contact may be paired with a selected one of the available agents that has an adjusted percentile or percentile range more similar to the contact's percentile than other available agents. In other situations, multiple contacts may be waiting in a queue when an agent becomes available (an L2 state). Under HBP, the newly available agent may be paired with a selected one of the contacts waiting in the queue that has a percentile more similar to the agent's adjusted percentile or percentile range than other contacts waiting in the queue.


In some situations, selecting a pairing based on similarity of scores may result in selecting an instant pairing that might not be the highest performing instant pairing, but rather increases the likelihood of better future pairings.


After a pairing has been determined at block 840, hybrid behavioral pairing method 800 may proceed to block 850. At block 850, modules within the contact center system may cause the contact and agent of the contact-agent pair to be connected with one another. For example, a behavioral pairing module may indicate that an ACD system or other routing device may distribute a particular contact to a particular agent.


After connecting the contact and agent at block 850, behavioral pairing method 800 may end. In some embodiments, behavioral pairing method 800 may return to block 840 for determining one or more additional pairings (not shown). In other embodiments, behavioral pairing method 800 may return to block 810 or block 820 to determine (or re-determine) percentiles or percentile ranges for available contacts or agents (not shown), and subsequently apply (or reapply) a hybridization function at block 840.


At this point it should be noted that hybrid behavioral pairing in a contact center system in accordance with the present disclosure as described above may involve the processing of input data and the generation of output data to some extent. This input data processing and output data generation may be implemented in hardware or software. For example, specific electronic components may be employed in a behavioral pairing module or similar or related circuitry for implementing the functions associated with behavioral pairing in a contact center system in accordance with the present disclosure as described above. Alternatively, one or more processors operating in accordance with instructions may implement the functions associated with behavioral pairing in a contact center system in accordance with the present disclosure as described above. If such is the case, it is within the scope of the present disclosure that such instructions may be stored on one or more non-transitory processor readable storage media (e.g., a magnetic disk or other storage medium), or transmitted to one or more processors via one or more signals embodied in one or more carrier waves.


The present disclosure is not to be limited in scope by the specific embodiments described herein. Indeed, other various embodiments of and modifications to the present disclosure, in addition to those described herein, will be apparent to those of ordinary skill in the art from the foregoing description and accompanying drawings. Thus, such other embodiments and modifications are intended to fall within the scope of the present disclosure. Further, although the present disclosure has been described herein in the context of at least one particular implementation in at least one particular environment for at least one particular purpose, those of ordinary skill in the art will recognize that its usefulness is not limited thereto and that the present disclosure may be beneficially implemented in any number of environments for any number of purposes. Accordingly, the claims set forth below should be construed in view of the full breadth and spirit of the present disclosure as described herein.

Claims
  • 1. A method for behavioral pairing in a contact center system comprising: ordering, by at least one computer processor communicatively coupled to and configured to perform behavioral pairing operations in the contact center system, a plurality of contacts available for connection to an agent according to a respective score or range of scores representing how each contact of the plurality of contacts contributes to a higher performance of the contact center system;ordering, by the at least one computer processor, a plurality of agents available for connection to a contact according to at least one performance metric to be optimized in the contact center system;applying, by the at least one computer processor, a hybridization function to the ordering of the plurality of agents to bias a contact-agent pairing strategy toward a skewed agent utilization;selecting, by the at least one computer processor, a contact-agent pairing from the plurality of contacts and the plurality of agents based at least in part on the biased contact-agent pairing strategy; andestablishing, by the at least one computer processor, in a switch of the contact center system, a connection between the contact and the agent in the contact-agent pairing based upon the selecting.
  • 2. The method of claim 1, wherein the ordering of the plurality of contacts comprises determining, by the at least one computer processor, a bandwidth for a contact type of the plurality of contacts proportionate to a frequency at which contacts of the contact type become available for assignment.
  • 3. The method of claim 1, wherein applying the hybridization function comprises controllably targeting, by the at least one computer processor, an unbalanced agent utilization.
  • 4. The method of claim 3, wherein applying the hybridization function comprises determining, by the at least one computer processor, disproportionate bandwidth for each of the one or more agents.
  • 5. The method of claim 1, wherein the selected contact-agent pairing results in a worse expected instant outcome than other non-selected contact-agent pairings.
  • 6. The method of claim 1, wherein each successively higher-ordered agent of the plurality of agents is more likely to be selected than respectively lower-ordered agents.
  • 7. The method of claim 1, wherein each successively higher-ordered agent of the plurality of agents is targeted to have a lower average waiting time than respectively lower-ordered agents.
  • 8. A system for behavioral pairing in a contact center system comprising: at least one computer processor communicatively coupled to and configured to perform behavioral pairing operations in the contact center system, wherein the at least one computer processor is configured to: order a plurality of contacts available for connection to an agent according to a respective score or range of scores representing how each contact of the plurality of contacts contributes to a higher performance of the contact center system;order a plurality of agents available for connection to a contact according to at least one performance metric to be optimized in the contact center system;apply a hybridization function to the ordering of the plurality of agents to bias a contact-agent pairing strategy toward a skewed agent utilization;select a contact-agent pairing from the plurality of contacts and the plurality of agents based at least in part on the biased contact-agent pairing strategy; andestablish, in a switch of the contact center system, a connection between the contact and the agent in the contact-agent pairing based upon the selecting.
  • 9. The system of claim 8, wherein the ordering of the plurality of contacts comprises determining a bandwidth for a contact type of the plurality of contacts proportionate to a frequency at which contacts of the contact type become available for assignment.
  • 10. The system of claim 8, wherein applying the hybridization function comprises controllably targeting an unbalanced agent utilization.
  • 11. The system of claim 10, wherein applying the hybridization function comprises determining disproportionate bandwidth for each of the one or more agents.
  • 12. The system of claim 8, wherein the selected contact-agent pairing results in a worse expected instant outcome than other non-selected contact-agent pairings.
  • 13. The system of claim 8, wherein each successively higher-ordered agent of the plurality of agents is more likely to be selected than respectively lower-ordered agents.
  • 14. The system of claim 8, wherein each successively higher-ordered agent of the plurality of agents is targeted to have a lower average waiting time than respectively lower-ordered agents.
  • 15. An article of manufacture for behavioral pairing in a contact center system comprising: a non-transitory processor readable medium; andinstructions stored on the medium;wherein the instructions are configured to be readable from the medium by at least one computer processor communicatively coupled to and configured to perform behavioral pairing operations in the contact center system and thereby cause the at least one computer processor to operate so as to: order a plurality of contacts available for connection to an agent according to a respective score or range of scores representing how each contact of the plurality of contacts contributes to a higher performance of the contact center system;order a plurality of agents available for connection to a contact according to at least one performance metric to be optimized in the contact center system;apply a hybridization function to the ordering of the plurality of agents to bias a contact-agent pairing strategy toward a skewed agent utilization;select a contact-agent pairing from the plurality of contacts and the plurality of agents based at least in part on the biased contact-agent pairing strategy; andestablish, in a switch of the contact center system, a connection between the contact and the agent in the contact-agent pairing based upon the selecting.
  • 16. The article of manufacture of claim 15, wherein the ordering of the plurality of contacts comprises determining a bandwidth for a contact type of the plurality of contacts proportionate to a frequency at which contacts of the contact type become available for assignment.
  • 17. The article of manufacture of claim 15, wherein applying the hybridization function comprises controllably targeting an unbalanced agent utilization.
  • 18. The article of manufacture of claim 15, wherein the selected contact-agent pairing results in a worse expected instant outcome than other non-selected contact-agent pairings.
  • 19. The article of manufacture of claim 15, wherein each successively higher-ordered agent of the plurality of agents is more likely to be selected than respectively lower-ordered agents.
  • 20. The article of manufacture of claim 15, wherein each successively higher-ordered agent of the plurality of agents is targeted to have a lower average waiting time than respectively lower-ordered agents.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 16/438,197, filed Jun. 11, 2019, now U.S. Pat. No. 10,708,431, issued Jul. 7, 2020, which is a continuation of U.S. patent application Ser. No. 15/687,000, filed Aug. 25, 2017, now U.S. Pat. No. 10,320,985, issued Jun. 11, 2019, which is a continuation of U.S. patent application Ser. No. 14/956,086, filed Dec. 1, 2015, now U.S. Pat. No. 9,781,269, issued Oct. 3, 2017, which is a continuation-in-part of U.S. patent application Ser. No. 14/871,658, filed Sep. 30, 2015, now U.S. Pat. No. 9,300,802, issued Mar. 29, 2016, which is a continuation-in-part of U.S. patent application Ser. No. 12/021,251, filed Jan. 28, 2008, now U.S. Pat. No. 9,712,679, issued Jul. 18, 2017, and is a continuation-in-part of U.S. patent application Ser. No. 14/530,058, filed Oct. 31, 2014, now U.S. Pat. No. 9,277,055, issued Mar. 1, 2016, which is a continuation of U.S. patent application Ser. No. 13/843,724, filed Mar. 15, 2013, now U.S. Pat. No. 8,879,715, issued Nov. 4, 2014, which claims priority to U.S. Provisional Patent Application No. 61/615,788, filed Mar. 26, 2012, U.S. Provisional Patent Application No. 61/615,779, filed Mar. 26, 2012, and U.S. Provisional Patent Application No. 61/615,772, filed Mar. 26, 2012, each of which is hereby incorporated by reference in their entirety as if fully set forth herein. This application is also related to U.S. patent application Ser. No. 14/956,074, entitled “Techniques for Hybrid Behavioral Pairing in a Contact Center System,” filed Dec. 1, 2015, and U.S. patent application Ser. No. 15/686,945, entitled “Techniques for Hybrid Behavioral Pairing in a Contact Center System,” filed Aug. 25, 2017.

US Referenced Citations (283)
Number Name Date Kind
5155763 Bigus et al. Oct 1992 A
5206903 Kohler et al. Apr 1993 A
5311572 Friedes et al. May 1994 A
5327490 Cave Jul 1994 A
5537470 Lee Jul 1996 A
5702253 Bryce et al. Dec 1997 A
5825869 Brooks et al. Oct 1998 A
5903641 Tonisson May 1999 A
5907601 David et al. May 1999 A
5926538 Deryugin et al. Jul 1999 A
6044355 Crockett et al. Mar 2000 A
6044368 Powers Mar 2000 A
6049603 Schwartz et al. Apr 2000 A
6052460 Fisher et al. Apr 2000 A
6064731 Flockhart et al. May 2000 A
6088444 Walker et al. Jul 2000 A
6163607 Bogart et al. Dec 2000 A
6192122 Flockhart et al. Feb 2001 B1
6222919 Hollatz et al. Apr 2001 B1
6292555 Okamoto Sep 2001 B1
6324282 McIllwaine et al. Nov 2001 B1
6333979 Bondi et al. Dec 2001 B1
6389132 Price May 2002 B1
6389400 Bushey et al. May 2002 B1
6408066 Andruska et al. Jun 2002 B1
6411687 Bohacek et al. Jun 2002 B1
6424709 Doyle et al. Jul 2002 B1
6434230 Gabriel Aug 2002 B1
6496580 Chack Dec 2002 B1
6504920 Okon et al. Jan 2003 B1
6519335 Bushnell Feb 2003 B1
6526135 Paxson Feb 2003 B1
6528135 Egret et al. Mar 2003 B1
6532088 Dantu et al. Mar 2003 B1
6535600 Fisher et al. Mar 2003 B1
6535601 Flockhart et al. Mar 2003 B1
6553113 Dhir et al. Apr 2003 B1
6570980 Baruch May 2003 B1
6587556 Judkins et al. Jul 2003 B1
6603854 Judkins et al. Aug 2003 B1
6639976 Shellum et al. Oct 2003 B1
6661889 Flockhart et al. Dec 2003 B1
6704410 McFarlane et al. Mar 2004 B1
6707904 Judkins et al. Mar 2004 B1
6714643 Gargeya et al. Mar 2004 B1
6744878 Komissarchik et al. Jun 2004 B1
6763104 Judkins et al. Jul 2004 B1
6774932 Ewing et al. Aug 2004 B1
6775378 Villena et al. Aug 2004 B1
6798876 Bala Sep 2004 B1
6829348 Schroeder et al. Dec 2004 B1
6832203 Villena et al. Dec 2004 B1
6859529 Duncan et al. Feb 2005 B2
6895083 Bers et al. May 2005 B1
6922466 Peterson et al. Jul 2005 B1
6937715 Delaney Aug 2005 B2
6956941 Duncan et al. Oct 2005 B1
6970821 Shambaugh et al. Nov 2005 B1
6978006 Polcyn Dec 2005 B1
7023979 Wu et al. Apr 2006 B1
7039166 Peterson et al. May 2006 B1
7050566 Becerra et al. May 2006 B2
7050567 Jensen May 2006 B1
7062031 Becerra et al. Jun 2006 B2
7068775 Lee Jun 2006 B1
7092509 Mears et al. Aug 2006 B1
7103172 Brown et al. Sep 2006 B2
7158628 McConnell et al. Jan 2007 B2
7184540 Dezonno et al. Feb 2007 B2
7209549 Reynolds et al. Apr 2007 B2
7231032 Nevman et al. Jun 2007 B2
7231034 Rikhy et al. Jun 2007 B1
7236584 Torba Jun 2007 B2
7245716 Brown et al. Jul 2007 B2
7245719 Kawada et al. Jul 2007 B2
7266251 Rowe Sep 2007 B2
7269253 Wu et al. Sep 2007 B1
7353388 Gilman et al. Apr 2008 B1
7398224 Cooper Jul 2008 B2
7593521 Becerra et al. Sep 2009 B2
7676034 Wu et al. Mar 2010 B1
7725339 Aykin May 2010 B1
7734032 Kiefhaber et al. Jun 2010 B1
7798876 Mix Sep 2010 B2
7826597 Berner et al. Nov 2010 B2
7864944 Khouri et al. Jan 2011 B2
7899177 Bruening et al. Mar 2011 B1
7913063 Lyerly Mar 2011 B1
7916858 Heller et al. Mar 2011 B1
7940917 Lauridsen et al. May 2011 B2
7961866 Boutcher et al. Jun 2011 B1
7995717 Conway et al. Aug 2011 B2
8000989 Kiefhaber et al. Aug 2011 B1
8010607 McCormack et al. Aug 2011 B2
8094790 Conway et al. Jan 2012 B2
8126133 Everingham et al. Feb 2012 B1
8140441 Cases et al. Mar 2012 B2
8175253 Knott et al. May 2012 B2
8229102 Knott et al. Jul 2012 B2
8249245 Jay et al. Aug 2012 B2
8295471 Spottiswoode et al. Oct 2012 B2
8300798 Wu et al. Oct 2012 B1
8306212 Arora Nov 2012 B2
8359219 Chishti et al. Jan 2013 B2
8433597 Chishti et al. Apr 2013 B2
8472611 Chishti Jun 2013 B2
8565410 Chishti et al. Oct 2013 B2
8634542 Spottiswoode et al. Jan 2014 B2
8644490 Stewart Feb 2014 B2
8670548 Xie et al. Mar 2014 B2
8699694 Chishti et al. Apr 2014 B2
8712821 Spottiswoode Apr 2014 B2
8718271 Spottiswoode May 2014 B2
8724797 Chishti et al. May 2014 B2
8731178 Chishti et al. May 2014 B2
8737595 Chishti et al. May 2014 B2
8750488 Spottiswoode et al. Jun 2014 B2
8761380 Kohler et al. Jun 2014 B2
8781100 Spottiswoode et al. Jul 2014 B2
8781106 Afzal Jul 2014 B2
8792630 Chishti et al. Jul 2014 B2
8824658 Chishti Sep 2014 B2
8831203 Chang et al. Sep 2014 B2
8831207 Agarwal Sep 2014 B1
8855292 Brunson Oct 2014 B1
8879715 Spottiswoode et al. Nov 2014 B2
8903079 Xie et al. Dec 2014 B2
8913736 Kohler et al. Dec 2014 B2
8929537 Chishti et al. Jan 2015 B2
8938063 Hackbarth et al. Jan 2015 B1
8995647 Li et al. Mar 2015 B2
9020137 Chishti et al. Apr 2015 B2
9025757 Spottiswoode et al. May 2015 B2
9148512 Kumar et al. Sep 2015 B1
9215323 Chishti Dec 2015 B2
9277055 Spottiswoode et al. Mar 2016 B2
9300802 Chishti Mar 2016 B1
9426296 Chishti et al. Aug 2016 B2
9712676 Chishti Jul 2017 B1
9712679 Chishti et al. Jul 2017 B2
10135987 Chishti et al. Nov 2018 B1
20010032120 Stuart et al. Oct 2001 A1
20020018554 Jensen et al. Feb 2002 A1
20020046030 Haritsa et al. Apr 2002 A1
20020059164 Shtivelman May 2002 A1
20020082736 Lech et al. Jun 2002 A1
20020110234 Walker et al. Aug 2002 A1
20020111172 DeWolf et al. Aug 2002 A1
20020131399 Philonenko Sep 2002 A1
20020138285 DeCotiis et al. Sep 2002 A1
20020143599 Nourbakhsh et al. Oct 2002 A1
20020161765 Kundrot et al. Oct 2002 A1
20020184069 Kosiba et al. Dec 2002 A1
20020196845 Richards et al. Dec 2002 A1
20030002653 Uckun Jan 2003 A1
20030059029 Mengshoel et al. Mar 2003 A1
20030081757 Mengshoel et al. May 2003 A1
20030095652 Mengshoel et al. May 2003 A1
20030169870 Stanford Sep 2003 A1
20030174830 Boyer et al. Sep 2003 A1
20030217016 Pericle Nov 2003 A1
20040028211 Culp et al. Feb 2004 A1
20040057416 McCormack Mar 2004 A1
20040096050 Das et al. May 2004 A1
20040098274 Dezonno et al. May 2004 A1
20040101127 Dezonno et al. May 2004 A1
20040109555 Williams Jun 2004 A1
20040117299 Algiene et al. Jun 2004 A1
20040133434 Szlam et al. Jul 2004 A1
20040210475 Starnes et al. Oct 2004 A1
20040230438 Pasquale et al. Nov 2004 A1
20040267816 Russek Dec 2004 A1
20050013428 Walters Jan 2005 A1
20050043986 McConnell et al. Feb 2005 A1
20050047581 Shaffer et al. Mar 2005 A1
20050047582 Shaffer et al. Mar 2005 A1
20050071223 Jain et al. Mar 2005 A1
20050129212 Parker Jun 2005 A1
20050135593 Becerra et al. Jun 2005 A1
20050135596 Zhao Jun 2005 A1
20050187802 Koeppel Aug 2005 A1
20050195960 Shaffer et al. Sep 2005 A1
20050286709 Horton et al. Dec 2005 A1
20060062374 Gupta Mar 2006 A1
20060098803 Bushey et al. May 2006 A1
20060110052 Finlayson May 2006 A1
20060124113 Roberts Jun 2006 A1
20060184040 Keller et al. Aug 2006 A1
20060222164 Contractor et al. Oct 2006 A1
20060233346 McIlwaine et al. Oct 2006 A1
20060256955 Laughlin et al. Nov 2006 A1
20060262918 Karnalkar et al. Nov 2006 A1
20060262922 Margulies et al. Nov 2006 A1
20070036323 Travis Feb 2007 A1
20070071222 Flockhart et al. Mar 2007 A1
20070116240 Foley et al. May 2007 A1
20070121602 Sin et al. May 2007 A1
20070121829 Tal et al. May 2007 A1
20070136342 Singhai et al. Jun 2007 A1
20070154007 Bernhard Jul 2007 A1
20070174111 Anderson et al. Jul 2007 A1
20070198322 Bourne et al. Aug 2007 A1
20070211881 Parker-Stephen Sep 2007 A1
20070219816 Van Luchene et al. Sep 2007 A1
20070274502 Brown Nov 2007 A1
20080002823 Fama et al. Jan 2008 A1
20080004933 Gillespie Jan 2008 A1
20080008309 Dezonno et al. Jan 2008 A1
20080046386 Pieraccinii et al. Feb 2008 A1
20080065476 Klein et al. Mar 2008 A1
20080095355 Mahalaha et al. Apr 2008 A1
20080118052 Houmaidi et al. May 2008 A1
20080144803 Jaiswal et al. Jun 2008 A1
20080152122 Idan et al. Jun 2008 A1
20080181389 Bourne et al. Jul 2008 A1
20080199000 Su et al. Aug 2008 A1
20080205611 Jordan et al. Aug 2008 A1
20080267386 Cooper Oct 2008 A1
20080273687 Knott et al. Nov 2008 A1
20090043670 Johansson et al. Feb 2009 A1
20090086933 Patel et al. Apr 2009 A1
20090171729 Anisimov et al. Jul 2009 A1
20090190740 Chishti et al. Jul 2009 A1
20090190743 Spottiswoode Jul 2009 A1
20090190744 Xie et al. Jul 2009 A1
20090190745 Xie et al. Jul 2009 A1
20090190746 Chishti et al. Jul 2009 A1
20090190747 Spottiswoode Jul 2009 A1
20090190748 Chishti et al. Jul 2009 A1
20090190749 Xie et al. Jul 2009 A1
20090190750 Xie et al. Jul 2009 A1
20090232294 Xie et al. Sep 2009 A1
20090234710 Belgaied Hassine et al. Sep 2009 A1
20090245493 Chen et al. Oct 2009 A1
20090304172 Becerra et al. Dec 2009 A1
20090305172 Tanaka et al. Dec 2009 A1
20090318111 Desai et al. Dec 2009 A1
20090323921 Spottiswoode et al. Dec 2009 A1
20100020959 Spottiswoode Jan 2010 A1
20100020961 Spottiswoode Jan 2010 A1
20100054431 Jaiswal et al. Mar 2010 A1
20100054452 Afzal Mar 2010 A1
20100054453 Stewart Mar 2010 A1
20100086120 Brussat et al. Apr 2010 A1
20100111285 Chishti May 2010 A1
20100111286 Chishti May 2010 A1
20100111287 Xie et al. May 2010 A1
20100111288 Afzal et al. May 2010 A1
20100142689 Hansen et al. Jun 2010 A1
20100142698 Spottiswoode et al. Jun 2010 A1
20100158238 Saushkin Jun 2010 A1
20100183138 Spottiswoode et al. Jul 2010 A1
20110022357 Vock et al. Jan 2011 A1
20110031112 Birang et al. Feb 2011 A1
20110069821 Korolev et al. Mar 2011 A1
20110125048 Causevic et al. May 2011 A1
20120051536 Chishti et al. Mar 2012 A1
20120051537 Chishti et al. Mar 2012 A1
20120166235 Klemm Jun 2012 A1
20120183131 Kohler et al. Jul 2012 A1
20120224680 Spottiswoode et al. Sep 2012 A1
20120278136 Flockhart et al. Nov 2012 A1
20120300920 Fagundes et al. Nov 2012 A1
20130003959 Nishikawa et al. Jan 2013 A1
20130022194 Flockhart et al. Jan 2013 A1
20130051545 Ross et al. Feb 2013 A1
20130058475 Pierce et al. Mar 2013 A1
20130251137 Chishti et al. Sep 2013 A1
20130287202 Flockhart et al. Oct 2013 A1
20140044246 Klemm et al. Feb 2014 A1
20140079210 Kohler et al. Mar 2014 A1
20140119531 Tuchman et al. May 2014 A1
20140119533 Spottiswoode et al. May 2014 A1
20140140494 Zhakov May 2014 A1
20140233719 Vymenets et al. Aug 2014 A1
20140321413 Luan et al. Oct 2014 A1
20140341370 Li et al. Nov 2014 A1
20150055772 Klemm et al. Feb 2015 A1
20150117632 Konig et al. Apr 2015 A1
20150281448 Putra et al. Oct 2015 A1
20160080573 Chishti Mar 2016 A1
20180109680 Korolev et al. Apr 2018 A1
20180159977 Danson Jun 2018 A1
Foreign Referenced Citations (73)
Number Date Country
2008349500 May 2014 AU
2009209317 May 2014 AU
2009311534 Aug 2014 AU
101087271 Dec 2007 CN
101090417 Dec 2007 CN
101645987 Feb 2010 CN
101834953 Sep 2010 CN
101931713 Dec 2010 CN
102164073 Aug 2011 CN
102238291 Nov 2011 CN
102300009 Dec 2011 CN
102300012 Dec 2011 CN
102387264 Mar 2012 CN
102387265 Mar 2012 CN
102496265 Jun 2012 CN
102572139 Jul 2012 CN
102724296 Oct 2012 CN
102890799 Jan 2013 CN
103023983 Apr 2013 CN
103024216 Apr 2013 CN
103684874 Mar 2014 CN
102301688 May 2014 CN
104063756 Sep 2014 CN
102017591 Nov 2014 CN
104239020 Dec 2014 CN
104243730 Dec 2014 CN
104683394 Jun 2015 CN
104956381 Sep 2015 CN
102004061512 Jun 2006 DE
0493292 Jul 1992 EP
0949793 Oct 1999 EP
1032188 Aug 2000 EP
1335572 Aug 2003 EP
11-098252 Apr 1999 JP
2000-069168 Mar 2000 JP
2000-078291 Mar 2000 JP
2000-078292 Mar 2000 JP
2000-092213 Mar 2000 JP
2000-507420 Jun 2000 JP
2000-236393 Aug 2000 JP
2000-253154 Sep 2000 JP
2001-292236 Oct 2001 JP
2001-518753 Oct 2001 JP
2002-297900 Oct 2002 JP
3366565 Jan 2003 JP
2003-187061 Jul 2003 JP
2004-056517 Feb 2004 JP
2004-227228 Aug 2004 JP
2006-345132 Dec 2006 JP
2007-324708 Dec 2007 JP
2009-081627 Apr 2009 JP
2011-511533 Apr 2011 JP
2011-511536 Apr 2011 JP
2012-075146 Apr 2012 JP
5421928 Feb 2014 JP
5631326 Nov 2014 JP
5649575 Jan 2015 JP
2015-514371 May 2015 JP
316118 Dec 2013 MX
322251 Jul 2014 MX
587100 Oct 2013 NZ
587101 Oct 2013 NZ
591486 Jan 2014 NZ
592781 Mar 2014 NZ
1-2010-501704 Feb 2014 PH
1-2010-501705 Feb 2015 PH
WO-199917517 Apr 1999 WO
WO-2001063894 Aug 2001 WO
WO-2006124113 Nov 2006 WO
WO-2009097018 Aug 2009 WO
WO-2010053701 May 2010 WO
WO-2011081514 Jul 2011 WO
WO-2015100391 Jul 2015 WO
Non-Patent Literature Citations (45)
Entry
Afiniti, “Afiniti® Enterprise Behavioral Pairing™ Improves Contact Center Performance,” White Paper, retrieved online from URL: <http://www.afinitit,com/wp-content/uploads/2016/04/Afiniti_White-Paper_Web-Email.pdf> 11 pages (2016).
Anonymous. (2006) “Performance Based Routing in Profit Call Centers,” The Decision Makers′ Direct, located at www.decisioncraft.com, Issue Jun. 2002 (3 pages).
Canadian Office Action issued by the Canada Intellectual Property Office for Canadian Application No. 2,993,380 dated Nov. 27, 2018 (5 pages).
Canadian Office Action issued in Canadian Patent Application No. 2713526, dated Oct. 25, 2016, 7 pages.
Cleveland, William S., “Robust Locally Weighted Regression and Smoothing Scatterplots,” Journal of the American Statistical Association, vol. 74, No. 368, Dec. 1979, pp. 829-836 (8 pages).
Extended European Search Report issued by the European Patent Office for European Application No. 18168620.5 dated Jun. 12, 2018 (9 pages).
Extended European Search Report issued by the European Patent Office for European Patent Application No. 17154781.3 dated May 4, 2017, (7 pages).
Extended European Search Report issued by the European Patent Office for European Patent Application No. 17171761.4 dated Aug. 30, 2017, (8 pages).
Gans, N. et al., “Telephone Call Centers: Tutorial, Review and Research Prospects,” Manufacturing & Service Operations Management, vol. 5, No. 2, 2003, pp. 79-141, (84 pages).
International Preliminary Report on Patentability issued in connection with PCT Application No. PCT/US2009/066254 dated Jun. 14, 2011 (6 pages).
International Search Report and Written Opinion issued by the European Patent Office as International Searching Authority for International Application No. PCT/IB2016/001762 dated Feb. 20, 2017 (15 pages).
International Search Report and Written Opinion issued by the European Patent Office as International Searching Authority for International Application No. PCT/IB2016/001776 dated Mar. 3, 2017 (16 pages).
International Search Report and Written Opinion issued by the European Patent Office as International Searching Authority for International Application No. PCT/IB2017/000570 dated Jun. 30, 2017 (13 pages).
International Search Report issued in connection with International Application No. PCT/US13/33268 dated May 31, 2013 (2 pages).
International Search Report issued in connection with PCT Application No. PCT/US/2009/054352 dated Mar. 12, 2010, 5 pages.
International Search Report issued in connection with PCT Application No. PCT/US2008/077042 dated Mar. 13, 2009 (3 pages).
International Search Report issued in connection with PCT Application No. PCT/US2009/031611 dated Jun. 3, 2009 (5 pages).
International Search Report issued in connection with PCT Application No. PCT/US2009/066254 dated Feb. 24, 2010 (4 pages).
International Search Report issued in connection with PCT/US2009/061537 dated Jun. 7, 2010 (5 pages).
International Search Report issued in connection with PCT/US2013/033261 dated Jun. 14, 2013 (3 pages).
International Search Report issued in connection with PCT/US2013/33265 dated Jul. 9, 2013 (2 pages).
Ioannis Ntzoufras “Bayesian Modeling Using Winbugs An Introduction”, Department of Statistices, Athens University of Economics and Business, Wiley-Interscience, A John Wiley & Sons, Inc., Publication, Chapter 5, Jan. 1, 2007, pp. 155-220 (67 pages).
Japanese Office Action issued by the Japan Patent Office for Application No. 2015-503396 dated Jun. 29, 2016 (7 pages).
Japanese Office Action issued by the Japanese Patent Office for Japanese Application No. 2016-159338 dated Oct. 11, 2017 (12 pages).
Japanese Office Action issued by the Japanese Patent Office for Japanese Application No. 2016-189126 dated Oct. 19, 2017 (24 pages).
Koole, G. (2004). “Performance Analysis and Optimization in Customer Contact Centers,” Proceedings of the Quantitative Evaluation of Systems, First International Conference, Sep. 27-30, 2004 (4 pages).
Koole, G. et al. (Mar. 6, 2006). “An Overview of Routing and Staffing Algorithms in Multi-Skill Customer Contact Centers,” Manuscript, 42 pages.
Notice of Reasons for Rejection issued by the Japan Patent Office for Japanese Application No. 2017-514350 dated Dec. 5, 2018 (12 pages).
Notice of Reasons for Rejection issued by the Japan Patent Office for Japanese Application No. 2018-528305 dated Oct. 17, 2018 (6 pages).
Notice of Reasons for Rejection issued by the Japan Patent Office for Japanese Application No. 2018-528314 dated Oct. 17, 2018 (5 pages).
Notification of First Office Action issued by the China National Intellectual Property Administration for Chinese Application No. 201680070038.3 dated Nov. 26, 2018 (26 pages).
Ntzoufras, “Bayesian Modeling Using Winbugs”. Wiley Interscience, Chapter 5, Normal Regression Models, Oct. 18, 2007, Redacted version, pp. 155-220 (67 pages).
Press, W. H. and Rybicki, G. B., “Fast Algorithm for Spectral Analysis of Unevenly Sampled Data,” The Astrophysical Journal, vol. 338, Mar. 1, 1989, pp. 277-280 (4 pages).
Riedmiller, M. et al. (1993). “A Direct Adaptive Method for Faster Back Propagation Learning: The RPROP Algorithm,” 1993 IEEE International Conference on Neural Networks, San Francisco, CA, Mar. 28-Apr. 1, 1993, 1:586-591.
Stanley et al., “Improving call center operations using performance-based routing strategies,” Calif. Journal of Operations Management, 6(1), 24-32, Feb. 2008; retrieved from http://userwww.sfsu.edu/saltzman/Publist.html.
Subsequent Substantive Examination Report issued in connection with Philippines Application No. 1-2010-501705 dated Jul. 14, 2014 (1 page).
Substantive Examination Report issued in connection with Philippines Application No. 1/2011/500868 dated May 2, 2014 (1 page).
Written Opinion of the International Searching Authority issued in connection with International Application No. PCT/US13/33268 dated May 31, 2013, 7 pages.
Written Opinion of the International Searching Authority issued in connection with PCT Application No. PCT/US/2009/054352 dated Mar. 12, 2010, 5 pages.
Written Opinion of the International Searching Authority issued in connection with PCT Application No. PCT/US2008/077042 dated Mar. 13, 2009, 6 pages.
Written Opinion of the International Searching Authority issued in connection with PCT Application No. PCT/US2009/031611 dated Jun. 3, 2009, 7 pages.
Written Opinion of the International Searching Authority issued in connection with PCT Application No. PCT/US2009/066254 dated Feb. 24, 2010, 5 pages.
Written Opinion of the International Searching Authority issued in connection with PCT/US2009/061537 dated Jun. 7, 2010, 10 pages.
Written Opinion of the International Searching Authority issued in connection with PCT/US2013/033261 dated Jun. 14, 2013, 7 pages.
Written Opinion of the International Searching Authority issued in connection with PCT/US2013/33265 dated Jul. 9, 2013, 7 pages.
Related Publications (1)
Number Date Country
20200336593 A1 Oct 2020 US
Provisional Applications (3)
Number Date Country
61615779 Mar 2012 US
61615772 Mar 2012 US
61615788 Mar 2012 US
Continuations (4)
Number Date Country
Parent 16438197 Jun 2019 US
Child 16921649 US
Parent 15687000 Aug 2017 US
Child 16438197 US
Parent 14956086 Dec 2015 US
Child 15687000 US
Parent 13843724 Mar 2013 US
Child 14530058 US
Continuation in Parts (3)
Number Date Country
Parent 14871658 Sep 2015 US
Child 14956086 US
Parent 14530058 Oct 2014 US
Child 14871658 US
Parent 12021251 Jan 2008 US
Child 14871658 US