Techniques for behavioral pairing in a task assignment system
Techniques for behavioral pairing in a task assignment system are disclosed. In one particular embodiment, the techniques may be realized as a method for behavioral pairing in a task assignment system comprising: determining, by at least one computer processor communicatively coupled to and configured to operate in the task assignment system, a priority for each of a plurality of tasks; determining, by the at least one computer processor, an agent available for assignment to any of the plurality of tasks; and assigning, by the at least one computer processor, a first task of the plurality of tasks to the agent using a task assignment strategy, wherein the first task has a lower-priority than a second task of the plurality of tasks.
1 . A method performed by a contact center system, the contact center system comprising at least one computer processor, the method comprising:
(i) determining, by said at least one computer processor, a set of contacts that are waiting to be paired with agents, wherein the number of contacts included in the set is M;
(ii) dynamically determining, by said at least one computer processor, an integer N, wherein N is greater than 1 and is less than M;
(iii) based on N, establishing, by said at least one computer processor, a subset of the set of M contacts that are waiting to be paired with an agent, wherein the number of contacts included in the subset of the set of M contacts is S, where S is greater than or equal to 1 and less than or equal to N;
(iv) after establishing the subset of S contacts, applying, by said at least one computer processor, a pairing strategy to the established subset of S contacts waiting to be paired with an agent, wherein applying the pairing strategy to the established subset of S contacts results in at least a first contact from the established subset of S contacts being selected to pair with a first agent; and
(v) as a result of selecting the first contact, pairing the selected first contact with the first agent, wherein
establishing the subset of S contacts comprises:
establishing an initial subset of N contacts; and
based on a threshold time period, removing a contact from the initial subset of N contacts, thereby forming the subset of S contacts.
2 . The method of claim 1 , wherein the integer N is dynamically determined based on:
M, and/or
a number of contacts within the set that have a first priority.
3 . The method of claim 1 , wherein
the threshold time period is a service level agreement (SLA) period, and
the contact is removed from the initial subset of contacts based at least on determining that the contact has been waiting less than the SLA period.
4 . The method of claim 1 , wherein:
the method further comprises, prior to applying the pairing strategy to the subset of contacts:
obtaining a value indicating a number of times that the first contact was included in a group of contacts to which the pairing strategy was applied; and
based on the obtained value, changing the likelihood of selecting the first contact with an agent as a result of applying the pairing strategy.
5 . The method of claim 1 , wherein
the contacts included in the set are arranged in an order based on a priority given to each of one or more contacts included in the set and the length of a waiting time of each of one or more contacts included in the set.
6 . The method of claim 1 , wherein the integer N is different from a number of agents available for pairing at the time of applying the pairing strategy.
7 . The method of claim 1 , wherein increasing a value of the integer N decreases a likelihood of the pairing strategy selecting a longest-waiting contact within the set of contacts.
8 . The method of claim 1 , wherein
the first contact is assigned a first priority,
the subset of contacts further includes a second contact having a second priority,
the second priority is higher than the first priority, and
applying the pairing strategy to the subset of contacts results in pairing the first contact having the first priority before the second contact having the second priority.
9 . The method of claim 1 , wherein S is greater than or equal to 2 and less than or equal to N.
10 . A contact center system comprising:
at least one computer processor, wherein said at least one computer processor is configured to perform a method comprising:
(i) determining a set of contacts that are waiting to be paired with agents, wherein the number of contacts included in the set is M;
(ii) dynamically determining an integer N, wherein N is greater than 1 and is less than M;
(iii) based on N, establishing a subset of the set of M contacts that are waiting to be paired with an agent, wherein the number of contacts included in the subset of the set of M contacts is S, where S is greater than or equal to 1 and less than or equal to N;
(iv) after establishing the subset of S contacts, applying a pairing strategy to the established subset of S contacts waiting to be paired with an agent, wherein applying the pairing strategy to the established subset of S contacts results in at least a first contact from the subset of S contacts being selected to pair with a first agent; and
(v) as a result of selecting the first contact, pairing the selected first contact with the first agent, wherein
establishing the subset of S contacts comprises:
establishing an initial subset of N contacts; and
based on a threshold time period, removing a contact from the initial subset of N contacts, thereby forming the subset of S contacts.
11 . The contact center system of claim 10 , wherein the integer N is dynamically determined based on:
M, and/or
a number of contacts within the set that have a first priority.
12 . The contact center system of claim 10 , wherein
the threshold time period is a service level agreement (SLA) period, and
said one or more contacts are removed from the initial subset of contacts based at least on determining that said one or more contacts have been waiting less than the SLA period.
13 . The contact center system of claim 10 , wherein:
the subset of contacts comprises a first contact, and
the method further comprises, prior to applying the pairing strategy to the subset of contacts:
obtaining a value indicating a number of times that the first contact was included in a group of contacts to which the pairing strategy was applied; and
based on the obtained value, changing the likelihood of pairing the first contact with an agent.
14 . The contact center system of claim 10 , wherein
the contacts included in the set are arranged in an order based on a priority given to each of one or more contacts included in the set and the length of a waiting time of each of one or more contacts included in the set.
15 . The contact center system of claim 10 , wherein the integer N is different from a number of agents available for pairing at the time of applying the pairing strategy.
16 . The contact center system of claim 10 , wherein increasing a value of the integer N decreases a likelihood of the pairing strategy selecting a longest-waiting contact within the set of contacts.
17 . The contact center system of claim 10 , wherein
the subset of contacts includes at least a first contact having a first priority and a second contact having a second priority,
the second priority is higher than the first priority, and
applying the pairing strategy to the subset of contacts results in pairing the first contact having the first priority before the second contact having the second priority.
18 . An article of manufacture comprising:
a non-transitory computer 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 in a contact center system and thereby cause said at least one computer processor to operate so as to perform a method comprising:
(i) determining a set of contacts that are waiting to be paired with agents, wherein the number of contacts included in the set is M;
(ii) dynamically determining an integer N, wherein N is greater than 1 and is less than M;
(iii) based on N, establishing, by said at least one computer processor, a subset of the set of M contacts that are waiting to be paired with an agent, wherein the number of contacts included in the subset of the set of M contacts is S, where S is greater than or equal to 1 and less than or equal to N;
(iv) after establishing the subset of S contacts, applying, by said at least one computer processor, a pairing strategy to the established subset of S contacts waiting to be paired with an agent, wherein applying the pairing strategy to the established subset of S contacts results in at least a first contact from the subset of S contacts being selected to pair with a first agent; and
(v) as a result of selecting the first contact, pairing the selected first contact with the first agent, wherein
establishing the subset of S contacts comprises:
establishing an initial subset of N contacts; and
based on a threshold time period, removing a contact from the initial subset of N contacts, thereby forming the subset of S contacts.