Techniques for benchmarking pairing policies in contact center systems

By switching different pairing strategies in the contact center system time period and recording performance data, the problem that contact centers find it difficult to measure performance changes when changing policies is solved, and accurate analysis and optimization of policy performance is achieved.

CN119234415APending Publication Date: 2024-12-31AFINITI AI LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380042633.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-04-14
Filing Date
2023-04-26
Publication Date
2024-12-31

AI Technical Summary

Technical Problem

When changing pairing strategies, it is difficult to accurately measure performance changes and may be affected by other factors, making it difficult to attribute performance gains to the new strategy.

Method used

Ensure fairness and trustworthiness of benchmarking by selecting multiple sets of pairing policies in the contact center system, applying different policies per period, and recording performance metrics to determine and update policy usage ratios.

Benefits of technology

Reliable measurements of performance changes of pairing strategies are achieved, the impact of confounding variables is reduced, the performance gain can be accurately attributed to specific strategies, and the performance analysis and optimization capabilities of the contact center are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119234415A_ABST
    Figure CN119234415A_ABST
Patent Text Reader

Abstract

A method is provided. The method includes selecting a set of pairing policies (PS) from a set of PS sets, the set of PS sets includes i) a first PS set including a first PS (first pairing algorithm / module) and ii) a second PS set including a second PS and a third PS, and as a result of selecting a PS set from the set of PS sets, one or more PS included in the selected PS set are used (s1104) to establish one or more contact-seat pairs.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims the benefit of U.S. Provisional Application No. 63 / 335,604, filed on April 27, 2022, and U.S. Provisional Application No. 63 / 459,537, filed on April 14, 2023. Technical Field

[0003] The present disclosure generally relates to contact centers. One aspect of the present disclosure relates to techniques for benchmarking pairing strategies in a contact center system. Another aspect of the present disclosure relates to varying a time period for applying different pairing strategies when the different pairing strategies are applied sequentially. Background Art

[0004] A typical contact center algorithmically assigns contacts that arrive at the contact center to agents that are available to handle those contacts. At times, a contact center may have agents that are available and waiting to be assigned to inbound or outbound contacts (e.g., phone calls, Internet chat sessions, emails) or outbound contacts. At other times, a contact center may have contacts that are waiting in one or more queues for agents to become available for assignment.

[0005] In some typical contact centers, contacts are assigned to agents sorted based on arrival time, and agents receive contacts sorted based on the time that these agents become available. This strategy may be referred to as a "first in, first out," "FIFO," or "round robin" strategy.

[0006] Some contact centers may use a “performance-based routing” or “PBR” approach to prioritize available agents, or sometimes contacts. PBR prioritization strategies attempt to maximize the expected outcome of each contact-agent interaction, but do so generally without regard for the uniform use of agents across the contact center. Summary of the invention

[0007] There are certain challenges. For example, when a contact center changes from using one type of pairing strategy (e.g., FIFO) to using another type of pairing strategy (e.g., PBR), the overall contact center performance may change over time, and it may be difficult to measure the amount of performance change attributed to using the new pairing strategy because there may be other factors that cause performance to increase or decrease over time.

[0008] Therefore, there is a need for a method and / or system that can benchmark alternative routing strategies to measure performance changes attributed to the alternative routing strategies.

[0009] Therefore, in one aspect of an embodiment of the present disclosure, a method is provided. The method includes selecting a pairing strategy (PS) set from a set of pairing strategies (PS) sets, the set of PS sets including: i) a first PS set including a first PS (a first pairing algorithm / module) and ii) a second PS set including a second PS and a third PS; and as a result of selecting the PS set from the set of PS sets, using one or more PSs included in the selected PS set to establish one or more contact-agent pairs.

[0010] In another aspect, a method is provided, the method comprising obtaining first contact center information, the first contact center information: i) identifying a first set of available agents that can be used to pair with contacts, and ii) identifying a first set of contacts waiting to be paired with the available agents. The method also comprises selecting a pairing strategy (PS) set from a set of two or more PS sets, the set of PS sets comprising: i) a first PS set including a first PS, and ii) a second PS set including a second PS and a third PS. The method also comprises: after obtaining the first contact center information and after selecting the pairing strategy set, performing a first pairing process using the first contact center information, wherein the first pairing process implements the PS included in the selected PS set.

[0011] In another aspect, a method is provided, the method comprising obtaining first pairing strategy (PS) group information, the first PS group information comprising at least a first PS identifier identifying a first PS and a second PS identifier identifying a second PS. The method further comprises: obtaining second PS group information, the second PS group information comprising at least a third PS identifier identifying a third PS; determining a first ratio value indicating a first ratio of a time period, wherein the first ratio is associated with (i) the first PS identifier and the second PS identifier or (ii) the third PS identifier; determining a first sub-ratio value indicating a first sub-ratio of the time period, wherein the first sub-ratio is associated with the first PS identifier or the second PS identifier, and applying the first PS during a first portion of the first time period, wherein the first portion of the first time period is selected based on the first ratio value and the first sub-ratio value. The method further comprises: applying the second PS during a second portion of the first time period, wherein the second portion of the first time period is selected based on the first ratio value and the first sub-ratio; applying the third PS during a third portion of the first time period, wherein the third portion of the first time period is selected based on the first ratio value; and obtaining performance metric data indicating performance of the first PS and the second PS during the first time period. The method further includes: determining an updated first subscale value indicating an updated first subscale of the time period based on the performance metric data, wherein the updated first subscale is associated with the first PS identifier or the second PS identifier. The method further includes: applying the first PS during a first portion of the second time period, wherein the first portion of the second time period is selected based on the updated first subscale value; applying the second PS during a second portion of the second time period, wherein the second portion of the second time period is selected based on the updated first subscale value; and applying the third PS during a third portion of the second time period.

[0012] In another aspect, a computer program is provided, which includes instructions, which when executed by a processing circuit, cause the processing circuit to perform the method of any one of the above embodiments.

[0013] In another aspect, a carrier is provided, the carrier embodying the computer program of the above embodiment, wherein the carrier is one of an electronic signal, an optical signal, a radio signal and a computer-readable storage medium.

[0014] In another aspect, a device is provided. The device is configured to select a pairing strategy (PS) set from a set of PS sets, the set of PS sets comprising: i) a first PS set including a first PS (a first pairing algorithm / module) and ii) a second PS set including a second PS and a third PS. The device is also configured to, as a result of selecting the PS set from the set of PS sets, establish one or more contact-agent pairs using one or more PSs included in the selected PS set.

[0015] In another aspect, an apparatus is provided. The apparatus is configured to obtain first contact center information, the first contact center information: i) identifies a first set of available agents that can be used to pair with contacts, and ii) identifies a first set of contacts waiting to be paired with available agents. The apparatus is configured to select a pairing strategy (PS) set from a set of two or more PS sets, the set of PS sets including: i) a first PS set including a first PS, and ii) a second PS set including a second PS and a third PS; and after obtaining the first contact center information and after selecting the pairing strategy set, perform a first pairing process using the first contact center information, wherein the first pairing process implements the PS included in the selected PS set.

[0016] In another aspect, a device is provided. The device is configured to obtain first pairing strategy (PS) group information, the first PS group information including at least a first PS identifier identifying a first PS and a second PS identifier identifying a second PS. The device is also configured to obtain second PS group information, the second PS group information including at least a third PS identifier identifying a third PS, determine a first ratio value indicating a first ratio of a time period, wherein the first ratio is associated with (i) the first PS identifier and the second PS identifier or (ii) the third PS identifier, and determine a first sub-ratio value indicating a first sub-ratio of the time period, wherein the first sub-ratio is associated with the first PS identifier or the second PS identifier. The device is also configured to apply the first PS during a first portion of a first time period, wherein the first portion of the first time period is selected based on the first ratio value and the first sub-ratio value; apply the second PS during a second portion of the first time period, wherein the second portion of the first time period is selected based on the first ratio value and the first sub-ratio; and apply the third PS during a third portion of the first time period, wherein the third portion of the first time period is selected based on the first ratio value. The apparatus is further configured to obtain performance metric data indicating performance of the first PS and the second PS during a first time period; and based on the performance metric data, determine an updated first sub-scale value indicating an updated first sub-scale of the time period, wherein the updated first sub-scale is associated with the first PS identifier or the second PS identifier. The apparatus is further configured to apply the first PS during a first portion of the second time period, wherein the first portion of the second time period is selected based on the updated first sub-scale value; apply the second PS during a second portion of the second time period, wherein the second portion of the second time period is selected based on the updated first sub-scale value; and apply the third PS during a third portion of the second time period.

[0017] In another aspect, a device is provided, comprising a memory; and a processing circuit coupled to the memory. The device is configured to perform the method of any one of the above embodiments.

[0018] The present disclosure will now be described in more detail with reference to the specific embodiments shown in the accompanying drawings. Although the present disclosure is described below with reference to specific embodiments, it should be understood that the present disclosure is not limited thereto. Those of ordinary skill in the art will recognize other embodiments, modifications and embodiments and other fields of use after obtaining the teachings herein, which are within the scope of the present disclosure described herein and for which the present disclosure may have significant practicality. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] In order to facilitate a more complete understanding of the present disclosure, reference is now made to the accompanying drawings, in which like elements are represented by like reference numerals. These drawings should not be construed as limiting the present disclosure, but are intended to be illustrative only.

[0020] Figure 1A A schematic diagram of a benchmark test sequence according to an embodiment of the present disclosure is shown.

[0021] Figure 1B A schematic diagram of a benchmark test sequence according to an embodiment of the present disclosure is shown.

[0022] Figure 2A A schematic diagram of a benchmark test sequence according to an embodiment of the present disclosure is shown.

[0023] Figure 2B A schematic diagram of a benchmark test sequence according to an embodiment of the present disclosure is shown.

[0024] Figure 3A A schematic diagram of a benchmark test sequence according to an embodiment of the present disclosure is shown.

[0025] Figure 3B A schematic diagram of a benchmark test sequence according to an embodiment of the present disclosure is shown.

[0026] Figure 3C A schematic diagram of a benchmark test sequence according to an embodiment of the present disclosure is shown.

[0027] Figure 3D A schematic diagram of a benchmark test sequence according to an embodiment of the present disclosure is shown.

[0028] Figure 4 A flowchart of a benchmarking method according to an embodiment of the present disclosure is shown.

[0029] Figure 5 A flowchart of a benchmarking method according to an embodiment of the present disclosure is shown.

[0030] Figure 6 A block diagram of a contact center system according to an embodiment of the present disclosure is shown.

[0031] Fig. 7AA schematic diagram of a benchmark test sequence according to an embodiment of the present disclosure is shown.

[0032] Figure 7B A schematic diagram of a benchmark test sequence according to an embodiment of the present disclosure is shown.

[0033] Figure 8 A flowchart of a benchmarking method according to an embodiment of the present disclosure is shown.

[0034] Fig. 9A An example of period benchmarking in accordance with some embodiments is shown.

[0035] Fig. 9B An example of inline benchmarking according to some embodiments is shown.

[0036] Fig. 10A An example of hybrid benchmarking according to some embodiments is shown.

[0037] Fig. 10B An example of hybrid benchmarking according to some embodiments is shown.

[0038] Fig.11 A process according to some embodiments is shown.

[0039] Fig.12 An apparatus according to some embodiments is shown.

[0040] Fig.13 A process according to some embodiments is shown.

[0041] Fig.14A An example of hybrid benchmarking according to some embodiments is shown.

[0042] Fig. 14B An example of hybrid benchmarking according to some embodiments is shown.

[0043] Fig.15A An example of hybrid benchmarking according to some embodiments is shown.

[0044] Fig. 15B An example of hybrid benchmarking according to some embodiments is shown.

[0045] Fig.16A An example of hybrid benchmarking according to some embodiments is shown.

[0046] Fig. 16B An example of hybrid benchmarking according to some embodiments is shown.

[0047] Fig.17 A system according to some embodiments is shown.

[0048] Fig.18AMethods of applying different pairing strategies according to some embodiments are shown.

[0049] Fig.18B Methods of applying different pairing strategies according to some embodiments are shown.

[0050] Fig.19 A process according to some embodiments is shown. DETAILED DESCRIPTION

[0051] A typical contact center algorithmically assigns contacts that arrive at the contact center to agents that are available to handle those contacts. At times, a contact center may have agents that are available and waiting to be assigned to inbound or outbound contacts (e.g., phone calls, Internet chat sessions, emails) or outbound contacts. At other times, a contact center may have contacts that are waiting in one or more queues for agents to become available for assignment.

[0052] In some typical contact centers, contacts are assigned to agents sorted based on arrival time, and agents receive contacts sorted based on the time when these agents became available. This strategy may be referred to as a "first in, first out," "FIFO," or "round robin" strategy. For example, the longest available agent pairing strategy preferably selects the available agent who has been available the longest.

[0053] Some contact centers may use a "performance-based routing" or "PBR" approach to rank available agents, or sometimes contacts. PBR ranking strategies attempt to maximize the expected outcome of each-agent interaction, but do so generally without regard for using agents uniformly across the contact center. Some variations of PBR may include a highest performance agent pairing strategy that preferentially selects the available agent with the highest performance, or a highest performance agent pairing strategy by contact type that preferentially selects the available agent with the highest performance for the contact type being paired.

[0054] As another example, some contact centers may use a "behavioral pairing" or "BP" strategy, under which contacts and agents may be intentionally (preferentially) paired in a manner that enables allocation of subsequent contact-agent pairs such that when the benefits of all allocations under the BP strategy are totaled, they may exceed the benefits of the FIFO and PBR strategies. BP is designed to encourage balanced utilization of agents across skill queues while still improving overall contact center performance beyond what a FIFO or PBR approach would allow. This is a remarkable achievement because BP acts on the same calls and the same agents as a FIFO or PBR approach, utilizing approximately the same number of agents as FIFO would provide, but improving overall contact center performance. BP is described, for example, in U.S. patent application Ser. No. 14 / 871,658, filed Sept. 30, 2015, which is incorporated herein by reference. Additional information regarding these and other features related to a pairing or matching module (sometimes also referred to as a "SATMAP," "routing system," "routing engine," etc.) is described, for example, in U.S. Patent No. 8,879,715, which is incorporated herein by reference.

[0055] Some contact centers may use a variety of other possible pairing strategies. For example, in a longest available agent pairing strategy, the agent with the longest wait (idle) time since the end of the agent's most recent contact interaction (e.g., call) may be selected. In a least occupied agent pairing strategy, the agent with the lowest ratio of contact interaction time to wait or idle time (e.g., time spent on calls versus time outside of calls) may be selected. In a pairing strategy with the fewest contact interactions by the agent, the agent with the fewest total interactions or calls may be selected. In a random selection agent pairing strategy, an available agent may be randomly selected (e.g., using a pseudo-random number generator). In a sequentially marked agent pairing strategy, agents may be marked sequentially, and the available agent with the next sequential mark may be selected.

[0056] In situations where multiple contacts are waiting in a queue and an agent is available to connect to one of the contacts in the queue, various pairing strategies can be used. For example, in a FIFO or longest waiting contact pairing strategy, an agent may be paired with the contact that has been waiting the longest in the queue (e.g., the contact at the head of the queue). In a random selection contact pairing strategy, an agent may be paired with a contact randomly selected from all or a subset of the contacts in the queue. In a priority-based routing or highest priority contact pairing strategy, an agent may be paired with a higher priority contact even if a lower priority contact has been waiting longer in the queue.

[0057] Contact centers can measure performance based on a variety of metrics. For example, a contact center can measure performance based on one or more of sales revenue, sales conversion rate, customer retention rate, average handling time, customer satisfaction (e.g., based on customer surveys), etc. Regardless of what metric or combination of metrics a contact center uses to measure performance, or what pairing strategy (e.g., FIFO, PBR, BP) is used, performance may change over time. For example, year over year contact center performance may change as a company shrinks or grows over time, or introduces new products or contact center activities. Month to month contact center performance may change as a company goes through sales cycles, such as busy holiday sales periods, or peaks in technical support requests after new products or upgrades are launched. Day to day contact center performance may change if, for example, customers are more likely to call during the weekend than on weekdays, or are more likely to call on Monday than on Friday. Intraday contact center performance may also change. For example, customers may be more likely to call when the contact center opens (e.g., 8:00 AM), during the lunch break (e.g., 12:00 PM), or after normal evening business hours (e.g., 6:00 PM) than at other times of the day. Contact center performance may also vary within an hour. For example, more urgent, higher-value contacts may be more likely to arrive at the moment the contact center opens (e.g., 9:00 or 9:01) than slightly later (e.g., 9:05). Contact center performance may also depend on the number and capacity of agents working at a given time. For example, agents working the 9:00-5:00 PM shift may, on average, perform better than agents working the 5:00 AM-9:00 AM shift.

[0058] These examples of changes in certain times of the day or longer time periods may make it difficult to attribute performance changes over a given time period to a specific pairing strategy. For example, if a contact center uses FIFO routing for a year, where the average performance is a 20% sales conversion rate, and then switches to PBR in the second year, where the average performance is a 30% sales conversion rate, the obvious change in performance is a 50% improvement. However, if the contact center continues to use FIFO routing instead of PBR, the contact center may not have a reliable way to know what the average performance will be in the second year. In real-world situations, at least a portion of the 50% performance gain in the second year may be attributed to other uncontrolled or unmeasured factors or variables. For example, the contact center may have retrained its agents or hired higher-performing agents, or the company may have launched an improved product that is more popular in the market. Therefore, due to the challenges associated with measuring the performance gain attributed to the new pairing strategy, it may be difficult for the contact center to analyze the internal rate of return or return on investment from switching to a different pairing strategy.

[0059] In some embodiments, the contact center may periodically switch (or "cycle") between at least two different pairing strategies (e.g., between FIFO and PBR; between PBR and BP; between FIFO, PBR, and BP). Additionally, the outcome of each contact-agent interaction may be recorded along with the identification of the pairing strategy (e.g., FIFO, PBR, or BP) that has been used to assign that particular contact-agent pair. By tracking which interactions produced which outcomes, the contact center can measure performance attributed to the first strategy (e.g., FIFO) and performance attributed to the second strategy (e.g., PBR). In this way, the relative performance of one strategy can be benchmarked against another. Over many periods of switching between different pairing strategies, the contact center may more reliably attribute performance gains to one strategy or another.

[0060] Several benchmarking techniques can achieve precisely measurable performance gains by reducing noise from confounding variables and removing biases that favor one or another pairing strategy. In some embodiments, the benchmarking technique can be time-based ("epoch benchmarking"). In other embodiments, the benchmarking technique can involve randomization or counting ("inline benchmarking"). In other embodiments, the benchmarking technique can be a hybrid of epoch benchmarking and inline benchmarking.

[0061] In period benchmarking, as explained in detail below, the switching frequency (or time period duration) can affect the accuracy and fairness (e.g., statistical purity) of the benchmark. For example, assume a two-year time period, with a switch between two different strategies each year. In this case, the contact center could use FIFO at a 20% conversion rate in the first year and PBR at a 30% conversion rate in the second year, and measure the gain as 50%. However, this time period is too large to eliminate or otherwise control the expected performance changes. Even shorter time periods (such as two months), with a switch between strategies each month, may be susceptible to similar effects. For example, if FIFO is used in November and PBR is used in December, some of the performance improvements in December may be attributed to the increase in holiday sales in December, rather than PBR itself.

[0062] In some embodiments, to reduce or minimize the impact of performance variations over time, the time period may be much shorter (eg, less than a day, less than an hour, less than twenty minutes). Figure 1A A benchmark test time period of ten units (e.g., ten minutes) is shown. Figure 1AIn the example, the horizontal axis represents time, and the vertical axis represents whether a first pairing strategy ("1") or a second pairing strategy ("0") is used. For the first five minutes (e.g., 9:00-9:05 AM), the first pairing strategy (e.g., BP) can be used. After five minutes, the contact center can switch to a second pairing strategy (e.g., FIFO or PBR) for the remaining five minutes of the ten-minute time period (9:05-9:10 AM). At 9:10 AM, the second time period can begin, switching back to the first pairing strategy ( Figure 1A If the time period is 30 minutes (i.e., Figure 1A Each time unit in is equal to three minutes), the first pairing strategy can be used for the first 15 minutes, and the second pairing strategy can be used for the second 15 minutes.

[0063] For short intra-hour time periods (10 minutes, 20 minutes, 30 minutes, etc.), benchmarks are unlikely to favor one pairing strategy or another based on long-term changes (e.g., year-over-year, month-over-month sales cycles). However, other factors of performance variation may persist. For example, if a contact center always applies Figure 1A If the contact center uses the time period shown, the contact center will always use the first strategy (BP) for the first five minutes. As mentioned above, contacts arriving at the contact center opening time may have a different type, urgency, value, or distribution of type / urgency / value than contacts arriving at other times of the hour or day. Therefore, the benchmark may be biased toward the paired strategy used at the beginning of each day (for example, 9:00 AM).

[0064] In some embodiments, in order to reduce or minimize the impact of performance variations even within short time periods, the order in which the pairing strategies are used within each time period may vary. Figure 1B As shown, the order in which the pairing strategy is used is the same as Figure 1A The order shown is reversed. Specifically, the contact center may start with the second pairing strategy (eg, FIFO or PBR) for the first five minutes and then switch to the first pairing strategy (BP) for the next five minutes.

[0065] In some embodiments, to help ensure trust and fairness in the benchmarking system, a benchmarking plan can be established in advance and published or otherwise shared with contact center management or other users. In some embodiments, contact center management or other users can directly control the benchmarking plan in real time, such as using a computer program interface to control the order of cycle duration and pairing strategies.

[0066] Embodiments of the present disclosure may use any of a variety of techniques to change the order in which pairing strategies are used in each time period. For example, a contact center may alternate between pairing strategies every hour (or every day or every month). Figure 1A The first sort shown starts and ends with Figure 1B In other embodiments, each time period may be randomly selected for sorting (e.g., given that approximately 50% of the time periods in a day are used Figure 1A The order shown, given that approximately 50% of the time during the day is used Figure 1B The ordering shown, where the ordering is uniformly and randomly distributed between time periods).

[0067] exist Figure 1A and Figure 1B In the examples of , each pairing strategy uses the same amount of time in each time period (e.g., five minutes each). In these examples, the "duty cycle" is 50%. However, although there are other variables that affect performance, some pairing strategies are expected to perform better than others. For example, BP is expected to perform better than FIFO. Therefore, the contact center may want to use BP for a greater proportion of the time than FIFO in order to make more pairings using the higher performing pairing strategy. Therefore, the contact center may prefer a higher duty cycle (e.g., 60%, 70%, 80%, 90%, etc.), which means that more time (or proportion of contacts) are paired using the higher performing pairing strategy. Figure 2A An example of a ten minute time period with an 80% duty cycle is shown. For the first eight minutes (e.g., 9:00-9:08 AM), a first pairing strategy (e.g., BP) may be used. After the first eight minutes, the contact center may switch to a second pairing strategy (e.g., FIFO) for the remaining two minutes of the time period (9:08-9:10), and then switch back to the first pairing strategy (not shown). If, for example, a thirty minute time period is used, the first pairing strategy may be used for the first twenty-four minutes (e.g., 9:00-9:24 AM), and the second pairing strategy may be used for the next six minutes (e.g., 9:24-9:30 AM).

[0068] like Figure 2BAs shown, the contact center can go through six ten-minute time periods over the course of an hour. In this example, each ten-minute time period has an 80% duty cycle, which favors the first pairing strategy, and the ordering within each time period begins with the favorable first pairing strategy. In this hour, the contact center may switch pairing strategies twelve times (e.g., at 9:08, 9:10, 9:18, 9:20, 9:28, 9:30, 9:38, 9:40, 9:48, 9:50, 9:58, and 10:00). In this hour, a total of 80% of the time (48 minutes) uses the first pairing strategy, while the remaining 20% ​​of the time (12 minutes) uses the second pairing strategy. For a thirty-minute time period (not shown) with an 80% duty cycle, in this hour, the contact center can switch pairing strategies four times (e.g., at 9:24, 9:30, 9:48, and 10:00), and a total of 48 minutes of the first pairing strategy is used, and 12 minutes of the second pairing strategy is used.

[0069] In some embodiments, Figure 1B For example, the order in which the pairing strategies are used within a time period may vary (not shown) even if the duty cycle (the percentage of time a given strategy is used within a time period) remains constant. However, for time periods that are factors or multiples of 60 minutes (e.g., 10 minutes, 30 minutes), the time periods may always or often align with the boundaries of every hour on the hour (e.g., a new time period starts at 9:00, 10:00, 11:00, etc.), regardless of the order in which the pairing strategies are to be used for that time period at the beginning of a given hour.

[0070] In some embodiments, as described below with reference Figure 3A -D explains that choosing a time period such as 11 minutes, 37 minutes, some prime number or other number that is not a factor of the 60 minute interval can increase the number of time periods required before a particular pattern repeats. Conversely, the alignment of time periods may span hours, days, weeks, etc. before repeating. The cycle duration of each pairing strategy may infrequently align with hours of the day, days of the week, weeks of the month or year, etc.

[0071] Figure 3A An example of a single non-factor time period is shown, which is 11 minutes and has a duty cycle of approximately 73%, with the first eight minutes using the first pairing strategy and the second three minutes using the second pairing strategy. Figure 3B Six consecutive cycles are illustrated. For example, at the first hour of the first day of the week (e.g., 9:00 a.m. on Monday), a first time period may begin that aligns with the first hour of the hour, the first hour of the day, and the first day of the week. The first time period may last from 9:00 a.m. to 9:11 a.m., followed by a second time period from 9:11 a.m. to 9:22 a.m., and so on. Figure 3B and as illustrated below in Table I. The sixth time period begins at 9:55 and ends at 10:06. The second hour (10:00 AM) occurs during the sixth cycle and is not aligned with the start of a time period. Figure 3C Shown with Figure 3B The same six time periods, with the horizontal axis marking times at ten-minute intervals to further illustrate the deliberate misalignment within the hours.

[0072] Table I

[0073] Time period# Time when the time period starts 1 9:00 2 9:11 3 9:22 4 9:33 5 9:44 6 9:55 7 10:06

[0074] like Figure 3D As shown in Table II below, using the example of a contact center that is open from 9:00 AM to 5:00 PM (9:00-17:00 hours), the alignment of time periods relative to the most recent hour drifts throughout the day. The first time period of the first hour (9:00 AM) is aligned to the top of the hour (9:00 AM). The first time period of the second hour (10:00 AM) begins at 10:06 AM, six minutes after the top of the hour. The first time period of the third hour (11:00 AM) begins at 11:01 AM, one minute after the top of the hour. It takes 60 time periods in 11 hours for the first time period of an hour to align with the top of the hour again. As shown in Table II, a contact center that is open from 9 to 5 will not be aligned to the top of the hour again until 12:00 PM the next day (1.375 eight-hour workdays later).

[0075] Table II

[0076]

[0077] Table III below shows the date and time sequence for the new time period to start at the top of the hour. For example, assuming five working days from Monday to Friday, eight working hours from 9 to 5 each day, the sequence will start with alignment at 9:00 am on Monday, to 12:00 noon on Tuesday, to 3:00 pm (15:00) on Wednesday, to 10:00 am on Friday, and so on. As shown in Table III, for a contact center that is open five days a week and eight hours a day, it takes 2.2 weeks to align at the beginning of the day (e.g., 9:00 am on Tuesday two weeks later).

[0078] Table III

[0079]

[0080] Table IV below shows the sequence of which day of the week the new time period starts from the hour of the day of the week. In this example, assuming a five-day work week, Monday to Friday, and eight hours of work per day, the sequence will be aligned with the start of Monday of the first week, the start of Tuesday of the third week, the start of Wednesday of the fifth week, and so on. As shown in Table IV, it will take 11 weeks for this contact center to align with the start of Monday again.

[0081] Table IV

[0082] week The next daily cycle starts on the hour of the day 1 on Monday 3 Tuesday 5 Wednesday 7 Thursday 9 Friday 12 on Monday

[0083] Therefore, if Figure 3A-3D As illustrated in Tables I-IV, selecting non-factored time periods with hour / day / week / etc. boundaries can effectively allow the alignment of the time periods to "drift" across natural time boundaries over weeks / months / years. Because the alignment of the time periods drifts, patterns that confound the relative performance of multiple pairing strategies are less likely to occur. In some embodiments, the selection of non-factored time periods can be combined with other techniques for reducing the impact of confounding variables on performance, such as randomizing or otherwise changing the order of pairing strategies within each time period or set of time periods.

[0084] In some embodiments, the contact center can determine which pairing strategy to use based on the time when the pairing request is made for the contact. Figure 1A The example below benchmarks BP and FIFO (a ten-minute time period with a 50% duty cycle, the first half is BP, and the second half is FIFO). If the contact center requests a match at 9:04 AM, the match time falls in the first half of the time period, so the BP policy can be used. If the contact center requests a match at 9:06 AM, the match time falls in the second half of the time period, so the FIFO policy can be used.

[0085] In other embodiments, the contact center may determine which pairing strategy to use based on the time that the contacts arrive. For example, assume that the contact center is benchmarking BP and FIFO, as in the previous example. If the first contact arrives at 9:04 AM, the arrival time falls in the first half of the time period, so the BP strategy can be used for that contact. Even if the first contact has to wait in the queue for two minutes and does not request pairing until 9:06 AM, it can still be paired using the BP strategy. Additionally, if the second contact arrives at 9:05 AM while the first contact is still waiting in the queue, the second contact can be designated for FIFO pairing. Therefore, at 9:06 AM, the contact selection under behavioral pairing may be limited to contacts in the queue that arrived during the BP portion of the time period, and in this example, only the first contact to arrive is available.

[0086] In an embodiment for period-based benchmarking, where contacts arrive on the boundaries between time periods, or on the boundaries between switching pairing strategies within a time period, the system can have a predetermined tie-breaking strategy. For example, the boundaries can be defined as "at or before the above time", or "at or after the above time", etc. For example, if a time period is defined as being associated with strategy "A" from 9:00-9:08 and strategy B from 9:08-9:10, it may mean that contacts must arrive at or after 9:00 but before 9:08 (e.g., 9:07.99) to be considered within the first part of the time period. Alternatively, this may mean that contacts must arrive after 9:00 but at or before 9:08.00 to be considered within the first part of the time period.

[0087] In some embodiments, an inline benchmarking technique may be used, where a pairing strategy may be selected on a contact-by-contact basis. For example, assume that approximately 50% of the contacts arriving at a contact center should be paired using a first pairing method (e.g., FIFO), while the other 50% of the contacts should be paired using a second pairing method (e.g., BP).

[0088] In some embodiments, each contact may be randomly assigned for pairing using one method or another with a probability of 50%. In other embodiments, the contacts may be assigned sequentially according to a specific time period. For example, the first five (or ten, twenty, etc.) contacts may be assigned for the FIFO strategy, and the next five (or ten, twenty, etc.) contacts may be assigned for the BP strategy. Other percentages and ratios may also be used, such as 60% (or 80%, etc.) paired with the BP strategy, and the other 40% (or 20%, etc.) paired with the FIFO strategy.

[0089] Sometimes, a contact may return to the contact center multiple times (e.g., callbacks). Specifically, some contacts may require multiple "touches" (e.g., multiple interactions with one or more contact center agents) to resolve the issue. In these cases, it may be desirable to ensure that the same pairing strategy is used to pair the contact each time the contact returns to the contact center. If the same pairing strategy is used for each contact, the benchmarking technique will ensure that the single pairing strategy is associated with the final outcome (e.g., resolution) of multiple contact-agent interactions. In other cases, it may be desirable to switch pairing strategies each time a contact returns to the contact center so that each pairing strategy has an equal chance of being used during the pairing process to resolve the contact's needs and produce a final outcome. In other cases, it may be desirable to select a pairing strategy without regard to whether the contact has contacted the contact center multiple times for the same issue.

[0090] In some embodiments, determining whether a repeat contact should be assigned the same (or different) pairing strategy may depend on other factors. For example, there may be a time limit such that a contact must return to the contact center within a specified time period in order for a previous pairing strategy to be considered (e.g., within an hour, within a day, within a week). In other embodiments, the pairing strategy used in the first interaction may be considered regardless of how much time has passed since the first interaction.

[0091] As another example, repeat contacts may be limited to specific skill queues or customer needs. Consider a contact that calls a contact center and requests to speak with a customer service agent to discuss the contact's bill. The contact hangs up, and calls back a few minutes later and requests to speak with a technical support agent to discuss the contact's technical difficulties. In this case, the second call may be considered a new issue, rather than a second "contact" about the billing issue. In the second call, it may be determined that the pairing strategy used in the first call is not relevant to the second call. In other embodiments, the pairing strategy used in the first call may be considered regardless of why the contact returned to the contact center.

[0092] Figure 4 An approach to consider prior pairings of inline benchmarking techniques is depicted. Figure 4 A flow chart of a benchmarking method 400 according to an embodiment of the present disclosure is shown. The benchmarking method 400 may begin at block 410 .

[0093] At block 410, an identifier of a contact (e.g., a caller) may be identified or otherwise determined. In this example, a "billing telephone number" or "BTN" of the caller may be identified. This example assumes that the caller uses the same BTN for each call. In other embodiments, other identifiers of the contact (e.g., a customer identification number, an Internet Protocol (IP) address) may be used instead. Having identified the caller's BTN (or other contact identifier), the benchmarking method 400 may proceed to block 420.

[0094] At block 420 , a pseudo-random number generator (PRNG) may be seeded with the BTN (or other contact identifier). After seeding the PRNG with the BTN, the benchmarking method 400 may proceed to block 430 .

[0095] At block 430, a pseudo-random number may be generated for the contact using the seeded PRNG. Since the seed is the same for a given contact each time the contact returns to the contact center, the pseudo-random number generated will also be the same each time for a given contact. After the pseudo-random number has been generated, the benchmarking method 400 may proceed to block 440.

[0096] At block 440, a pairing strategy (e.g., BP or FIFO) may be selected for a given contact based on the generated pseudo-random number. For example, if 50% of the contacts should use BP pairing and the other 50% of the contacts should use FIFO pairing, the PRNG may be configured to generate either 1 or 0. If the generated pseudo-random number is 1, the contact may be designated for BP pairing. If the generated pseudo-random number is 0, the contact may be designated for FIFO pairing.

[0097] In this way, each time a contact returns to the contact center, the contact will always be paired using the same strategy. The PRNG will be seeded with the same seed (e.g., the contact's BTN) each time, so the PRNG will generate the same pseudo-random numbers for the contact each time. Therefore, the benchmarking method 400 can select the same pairing strategy for the contact each time. In this way, previous pairings can be taken into account without relying on a database or other storage means to determine whether or how the contact has been previously paired. In this way, the benchmarking method 400 is stateless as to whether or how the contact was previously paired. Having selected a pairing strategy for the contact, the benchmarking method 400 can proceed to block 450.

[0098] At block 450, the contact may be paired with an available agent using the selected pairing strategy. After the contact has been paired with an available agent, a component of the contact center system (e.g., a switch, a router) may connect the contact to the agent. After (or during) the contact-agent interaction, the agent may create a record of the interaction outcome. For example, in a sales queue, the agent may create an order for the contact. In a technical support queue, the agent may create or modify a service ticket. The contact center system may also record information about the interaction, such as the time of the call and the duration of the call, the BTN or other identifier of the contact, the agent identifier, and other data. At this point, the benchmarking method may proceed to block 460.

[0099] At block 460, an identifier of the selected pairing strategy may be associated with the record of the contact-agent interaction created at block 450. In some embodiments, this may occur simultaneously with the creation of the record. For example, when the contact center system records the time and duration of the call, it may also record whether the call has been paired using a BP or FIFO pairing strategy. In other embodiments, another module may create a separate record of the pairing. The module may record the time of the pairing, the contact and agent identifiers, the pairing strategy used (e.g., BP or FIFO), and any other data that may be helpful in later matching the pairing record with the caller-agent interaction outcome record. At some later time, the pairing record may be matched with the caller-agent interaction record so that the pairing strategy information may be associated with the outcome in one record or the other (or both). After block 460, the benchmarking method 400 may end. In some embodiments, the benchmarking method 400 may return to block 410, waiting for another contact to arrive.

[0100] Figure 5 Another approach that considers prior pairing combined with epoch benchmarking techniques is depicted. This type of technique can be viewed as "hybrid inline epoch benchmarking". Figure 5 A flow chart of a benchmarking method 500 according to an embodiment of the present disclosure is shown. The benchmarking method 500 may begin at block 510 .

[0101] At block 510 , a contact (eg, “contact n”) arrives at a contact center at a particular time t. Benchmarking method 500 may proceed to block 520 .

[0102] At block 520, it may be determined whether the contact has been previously paired; that is, whether the contact has been returned to the contact center for subsequent contact or interaction. This determination may be made using a variety of techniques. For example, the benchmarking system may look up a record of the contact using a contact identifier (e.g., BTN or customer ID) in a database to determine whether and when the contact has previously contacted the contact center. Using suitable techniques, the benchmarking system may determine whether the contact has been previously paired, and in some embodiments, whether and how the previous pairing affects the current pairing.

[0103] In some embodiments, the benchmarking system may preferably use the same pairing strategy to pair contacts each time the contact returns to the contact center. Thus, if contact n was previously paired using pairing strategy "A" (e.g., BP), the benchmarking method 500 may proceed to block 560 to use pairing strategy A again for subsequent pairing. Similarly, if contact n was previously paired using pairing strategy "B" (e.g., FIFO), the benchmarking method 500 may proceed to block 570 to use pairing strategy B again for subsequent pairing.

[0104] However, if it is determined at block 520 that contact n has not been previously paired (or, in some embodiments, any previous pairing should not affect the current pairing), then the benchmarking method 500 may continue using epoch benchmarking at block 550 .

[0105] At block 550, time may be used to determine which pairing strategy to use for contact n. In this example, the arrival time t may be used. If contact n arrives during a time period in which the benchmark system uses strategy A for pairing, the benchmark method 500 may proceed to block 560 to use strategy A for subsequent pairing. Similarly, if contact n arrives during a time period in which the benchmark system uses strategy B for pairing, the benchmark method 500 may proceed to block 570 to use strategy B for subsequent pairing.

[0106] At blocks 560 and 570, the contact may be paired with an available agent using pairing strategy A or B, respectively. In some embodiments, more than two pairing strategies may be used (e.g., prior pairing using A, B, C, etc., or period benchmarking using A, B, C, etc. over a time period). Once paired, the contact may be routed or otherwise connected to an available agent within the contact center system. As described above with respect to the benchmarking method 400 ( Figure 4 ), the agent may create a record of the contact-agent interaction, and the contact center system may also create or modify the record. The benchmarking method may continue to block 580.

[0107] At block 580, an identifier of the selected pairing strategy (e.g., A or B) may be associated with the record created at block 560 or 570. As described above with respect to the benchmarking method 400, this association may occur simultaneously with the creation of the contact-agent interaction record, or may be matched later with other records created by the benchmarking module or other modules. After block 580, the benchmarking method 500 may end. In some embodiments, the benchmarking method 500 may return to block 510, waiting for another contact to arrive.

[0108] By associating pairing strategies with outcomes, as in, for example, benchmarking methods 400 and 500, the outcomes associated with each pairing strategy can be measured (e.g., averaged, accumulated), and the relative performance of each pairing strategy can be measured (e.g., the relative overall performance gain attributed to using BP for pairing rather than using FIFO for pairing). The benchmarking data can be used for various purposes. For example, the data can be used to evaluate the strength of one pairing module relative to another pairing module. For another example, the data can be used to improve the strength of the BP module by providing "BP on" and "BP off" (e.g., FIFO) contact-agent interaction records to enhance artificial intelligence in the system. For another example, the data can be used for billing. Because the value added by one pairing strategy relative to another can be accurately and fairly measured, the benchmarking data can be used in a pay-for-performance business model in which the customer pays the pairing strategy provider a percentage of the actual metric value increased by using the provider's pairing strategy (e.g., when BP is on rather than when BP is off).

[0109] Specifically, in some embodiments, the associated outcome data may be used to determine the economic value or gain associated with using one pairing strategy over another. In some embodiments, the economic value or gain may be used to determine compensation to vendors or other service providers that provide one or more modules for a higher performance pairing strategy that creates economic value. For example, if a contact center benchmarks BP against FIFO and determines that over a given time period (e.g., a day, a week, a month, etc.), BP performs 5% better than FIFO on average over that time period, then the BP vendor may receive compensation corresponding to the 5% value added by BP (e.g., a percentage of 5% additional sales revenue, or a percentage of 5% additional cost savings, etc.). Under this business model, the contact center owner may forgo capital expenditures or vendor fees and only pay the vendor for the time period in which the vendor demonstrates added value to the contact center's performance.

[0110] Figure 6A block diagram of a contact center system 600 according to an embodiment of the present disclosure is shown. The description herein describes network elements, computers and / or components for systems and methods for simulating a contact center system, which 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. However, a module should not be interpreted as software that is not implemented on hardware, firmware or recorded on a processor-readable and recordable storage medium (i.e., the module itself is not software). It should be noted that modules are exemplary. Modules may be combined, integrated, separated and / or replicated to support various applications. In addition, the functions performed at a specific module described herein may be performed at one or more other modules and / or by one or more other devices to replace or supplement the functions performed at a specific module. In addition, modules may be implemented across multiple devices and / or other components that are local or remote to each other. In addition, a module may be moved from one device and added to another device and / or may be included in two devices.

[0111] like Figure 6 As shown, the contact center system 600 may include a central switch 610. The central switch 610 may receive incoming contacts (e.g., callers) or support outbound connections to contacts via a telecommunications network (not shown). The central switch 610 may include contact routing hardware and software to help route contacts between one or more contact centers, or to one or more PBX / ACDs or other queuing or switching components within a contact center.

[0112] If there is only one contact center in the contact center system 600, or only one PBX / ACD routing component, then the central switch 610 may not be necessary. If more than one contact center is part of the contact center system 600, each contact center may include at least one contact center switch (e.g., contact center switches 620A and 620B). Contact center switches 620A and 620B may be communicatively coupled to the central switch 610.

[0113] Each contact center switch of each contact center may be communicatively coupled to a plurality of agents (or "pools"). Each contact center switch may support a certain number of agents (or "seats") logged in simultaneously. At any given time, a logged in agent may be available and waiting to be connected to a contact, or a logged in agent may be unavailable for a variety of reasons, such as being connected to another contact, performing some post-call function (such as recording information about a call), or taking a break.

[0114] exist Figure 6In the example of FIG. 6 , the central switch 610 routes the contact to one of two contact centers via the contact center switch 620A and the contact center switch 620B, respectively. Each of the contact center switches 620A and 620B is shown to have two agents. Agents 630A and 630B can log in to the contact center switch 620A, and agents 630C and 630D can log in to the contact center switch 620B.

[0115] The contact center system 600 may also be communicatively coupled to integration services from, for example, third-party vendors. Figure 6 In an example of the present invention, the benchmarking module 640 can be communicatively coupled to one or more switches in the switch system of the contact center system 600, such as the central switch 610, the contact center switch 620A, or the contact center switch 620B. In some embodiments, the switches of the contact center system 600 can be communicatively coupled to multiple benchmarking modules. In some embodiments, the benchmarking module 640 can be embedded within a component of the contact center system (e.g., embedded in a switch or otherwise integrated with the switch). The benchmarking module 640 can receive information about agents (e.g., agents 630A and 630B) logged into the switch and information about contacts incoming via another switch (e.g., the central switch 610) from a switch (e.g., the contact center switch 620A), or in some embodiments, receive information from a network (e.g., the Internet or a telecommunications network) (not shown).

[0116] The contact center may include multiple pairing modules (e.g., BP modules and FIFO modules) (not shown), and one or more pairing modules may be provided by one or more different suppliers. In some embodiments, one or more pairing modules may be components of the benchmark module 640 or one or more switches (such as the central switch 610 or the contact center switches 620A and 620B). In some embodiments, the benchmark module may determine which pairing module may handle the pairing of a particular contact. For example, the benchmark module may alternate between enabling pairing via the BP module and enabling pairing with the FIFO module. In other embodiments, a pairing module (e.g., a BP module) may be configured to simulate other pairing strategies. For example, a benchmark module or a benchmark component integrated with a BP component in a BP module may determine whether the BP module may use BP pairing or simulate FIFO pairing for a particular contact. In this case, "BP on" may refer to the time when the BP module applies the BP pairing strategy, and "BP off" may refer to other times when the BP module applies different pairing strategies (e.g., FIFO).

[0117] In some embodiments, regardless of whether the pairing strategies are handled by separate modules or whether some pairing strategies are simulated within a single pairing module, a single pairing module can be configured to monitor and store information about pairings performed under any or all pairing strategies. For example, the BP module can observe and record data about FIFO pairings performed by the FIFO module, or the BP module can observe and record data about simulated FIFO pairings performed by the BP module operating in FIFO simulation mode.

[0118] Embodiments of the present disclosure are not limited to benchmarking only two pairing strategies, but can be benchmarked on two or more pairing strategies. Fig. 7A and Figure 7B Examples of benchmarking systems for three pairing strategies (eg, benchmarking FIFO, PBR, and BP) are depicted.

[0119] Fig. 7A A schematic diagram of a benchmark test sequence according to an embodiment of the present disclosure is shown. In this period benchmark test example, a time period is 15 time units, and each pairing strategy uses one-third of the time (5 units). Fig. 7A Two complete time periods are shown, cycling between pairing strategies "2", "1", and "0" twice within 30 time units. For example, from 9:00 am to 9:10 am, FIFO may be used; from 9:10 am to 9:20 am, PBR may be used; and from 9:20 am to 9:30 am, BP may be used. This pattern of FIFO-PBR-BP is repeated in the second time period.

[0120] FIG7B shows a schematic diagram of a benchmark sequence according to an embodiment of the present disclosure. In this period benchmark example, a complete time period is 30 time units. The preferred pairing strategy "2" (e.g., BP) is used two-thirds of the time, and the other pairing strategies "1" and "0" (e.g., FIFO and PBR) are used one-sixth of the time. In this example, each time strategy "2" is turned off, pairing strategies "1" and "0" are turned on alternately. For example, the pattern can be BP-FIFO-BP-PBR. In addition Fig. 7A and Figure 7B In addition to the example of , many other patterns can be used to switch between multiple pairing strategies.

[0121] In some embodiments, contact center management or other users may prefer a "stabilization period" or other neutral zone. For example, consider a contact center benchmarking BP and FIFO pairing strategies. When the system converts from BP to FIFO (or vice versa), contact center management may be concerned that the effects of one pairing strategy may somehow affect the performance of another pairing strategy. To alleviate these concerns about fairness, a stabilization period can be added.

[0122] One technique for implementing a stabilization period may be to exclude the contact-agent interaction efforts for the first portion of contacts after switching the pairing strategy. For example, assume that the contact center benchmarks BP and FIFO at a 50% duty cycle for 30 minutes. In the above example (e.g., Figure 1A and Figure 1B ), BP will be on for 15 minutes, then FIFO will be on for 15 minutes, and all contact-agent interactions within the 30 minutes will be included in the benchmark measurement. During the stabilization period, BP will be on for, say, 10 minutes. After 10 minutes, the system will switch to FIFO. However, the first (say) 10 minutes will be considered the stabilization period, and FIFO pairings made during this period will be excluded from the benchmark. The last 10 minutes of that period will continue to use FIFO for pairings, and these FIFO pairings will be included in the benchmark.

[0123] Fig. 7A This pattern is illustrated in . In this example, instead of depicting switching between three pairing strategies "2", "1", and "0", "1" can represent a stabilization period. Pairing strategy "2" (e.g., BP) can be turned on for the first five time units. After five time units, BP can be turned off, and other pairing strategies (e.g., FIFO) can be used for the remaining ten time units. The next five units ("1") can be excluded as part of the stabilization period, and the next five time units ("0") can be included as part of the FIFO benchmark period.

[0124] In some embodiments, the stabilization period may be longer or shorter.In some embodiments, the stabilization period may be used for FIFO-BP conversion, instead of or in addition to BP-FIFO conversion (or any conversion between two different pairing strategies).

[0125] As discussed above, some contacts may require multiple "touches" (e.g., multiple interactions with one or more contact center agents) to resolve the needs of the contact. For example, an individual may call or otherwise contact a mortgage lender multiple times. The first call may be merely introductory or informational, the second call may be to evaluate a different loan offer, and the third call may be to close (accept) or reject the loan offer. Similarly, some technical support and customer service requests may require multiple contact interactions to resolve.

[0126] In some cases, it may be desirable to select a pairing strategy without regard to whether the contact has contacted the contact center multiple times regarding the same issue. Alternatively, the benchmarking technique may be configured to consider each pairing strategy. For example, each pairing strategy may be evaluated in a manner that fairly considers the extent to which each pairing strategy contributed to a series of contact interactions that produced a final outcome or resolved the contact need.

[0127] Figure 8 A flow chart of a benchmarking method 800 is shown according to an embodiment of the present disclosure. The benchmarking method 800 may begin at block 810 .

[0128] At block 810, a contact (e.g., "contact n") arrives at a contact center at a particular time t and a particular iteration i. For example, if the time is the first time contact n has contacted the contact center for the particular need, it will be designated as the first iteration (i.e., i=1), or the time may be the second (i=2), third (i=3), ... the i-th call. The benchmarking method 800 may proceed to block 820.

[0129] At block 820, time may be used to determine which pairing strategy to use for contact n. In these embodiments, even if this is a subsequent arrival such that i>1, the pairing strategy selected for any previous pairing need not affect the current pairing. In this example, the arrival time t may be used. If contact n arrives during a time period in which the benchmark system uses strategy A for pairing, the benchmark method 800 may proceed to block 830 for subsequent pairing using strategy A. Similarly, if contact n arrives during a time period in which the benchmark system uses strategy B for pairing, the benchmark method 800 may proceed to block 840 for subsequent pairing using strategy B. In some embodiments, pairing strategy A may be a behavioral pairing strategy (behavioral pairing "on"), and pairing strategy B may be a different pairing strategy, such as FIFO or performance-based routing (behavioral pairing "off").

[0130] At blocks 830 and 840, the contact may be paired with an available agent using pairing strategy A or B, respectively. In some embodiments, more than two pairing strategies may be used. Once paired, the contact may be routed or otherwise connected to an available agent within the contact center system. As described above with respect to the benchmarking method 400 ( Figure 4 ) and 500 ( Figure 5 ), the agent may create a record of the contact-agent interaction, and the contact center system may also create or modify the record. The benchmarking method may continue to block 850.

[0131] At block 850, the identifier of the selected pairing strategy (e.g., A or B) may be associated with the identifier of the current iteration i of contact n within the record (or set of records) created at blocks 830 or 840. As described above with respect to benchmarking methods 400 and 500, this association may occur concurrently with the creation of the contact-agent interaction record, or may be matched later with other records created by the benchmarking module or other modules.

[0132] In some embodiments, the benchmarking method 800 may proceed to block 860. At block 860, it may be determined whether the need of contact n has been resolved. If the need of contact n has not been resolved, or in other embodiments where the outcome of a given call may be matched at a later time, the benchmarking method 800 may end or return to block 810 for the next contact to arrive. If the need of contact n has been resolved, the benchmarking method 800 may proceed to block 870.

[0133] At block 870, the final outcome (e.g., mortgage closed or denied, sale completed or cancelled) may be associated with a record for each of the i iterations of contact n. Table V shows an example set of records for four contacts W, X, Y, and Z, each of which contacted the contact center system three times before reaching a final resolution. In a real-world scenario, there may be many more contacts, and the number of contact interactions required to resolve a single contact need may vary between contacts, from one contact interaction to three or even more.

[0134] Table V

[0135] Iteration i Contact W Contact X Contact Y Contact Z 1 A B A B 2 B B A A 3 A A B B Results Sale Sale Sale Not sold

[0136] As shown in Table V, and as described above with respect to block 850, the contact's identifier (W, X, Y, or Z) and iteration (1, 2, or 3) are associated with the selected pairing strategy for a given contact interaction (A or B). For contact W, iteration 1 is paired with strategy A, iteration 2 is paired with strategy B, and iteration 3 is paired with strategy A. For contact X, iteration 1 is paired with strategy B, iteration 2 is paired with strategy B, and iteration 3 is paired with strategy A. For contact Y, iteration 1 is paired with strategy A, iteration 2 is paired with strategy A, and iteration 3 is paired with strategy B. For contact Z, iteration 1 is paired with strategy B, iteration 2 is paired with strategy A, and iteration 3 is paired with strategy B.

[0137] As also shown in Table V, and as described above with respect to block 870, the final outcome of the contact can be associated with the record of each iteration. Contacts W, X, and Y completed a sale. Contact Z did not complete a sale. In some embodiments, a "no sale" determination can be made if the contact explicitly states that a sale is not intended to be completed. In other embodiments, the contact center system can make a "no sale" determination after a predetermined number of iterations have occurred without a sale being completed, or after a predetermined amount of time has passed since the most recent iteration without a sale being completed. In some cases, such as when a contact has resolved a technical support or customer service need, the final resolution may be a customer satisfaction survey result or score.

[0138] After block 870, the benchmarking method 800 may end. In some embodiments, the benchmarking method 800 may return to block 810, waiting for another contact to arrive (eg, a different contact, or a contact n with a new requirement).

[0139] The performance differences between the pairing strategies may be determined on a continuous, hourly, daily, weekly basis. In some embodiments, the performance differences may be hierarchical for each iteration (performance differences for all contact interactions for iteration i=1; performance differences for all contact interactions for iteration i=2; etc.). Although a final resolution may not have been reached after the first contact interaction (when i=1), the first level of benchmarking may be measured using the final effort, which was previously associated with the first contact interaction at block 870, or later matched with other contact center system records.

[0140] Using the example shown in Table V, for the first level (i=1) of the benchmark, two contacts (W and Y) were paired using strategy A for the first iteration, and both resulted in sales, achieving a 100% conversion rate. The other two contacts (X and Z) were paired using strategy B for the first iteration, and only one (X) resulted in a sale, achieving a 50% conversion rate.

[0141] Similarly, for the second level (i=2) of the benchmark, two contacts (Y and Z) were paired using Strategy A for the second iteration, and only one contact (Y) resulted in a sale, achieving a 50% conversion rate. The other two contacts (W and X) were paired using Strategy B for the second iteration, and both resulted in sales, achieving a 100% conversion rate.

[0142] Finally, for the third level (i=3) of the benchmark, two contacts (W and X) were paired using Strategy A for the third iteration, and both resulted in sales, achieving a 100% conversion rate. The other two contacts (Y and Z) were paired using Strategy B for the third iteration, and only one contact (Y) resulted in a sale, achieving a 50% conversion rate.

[0143] These levels and conversion rates are shown in Table VI below:

[0144] Table VI

[0145] Iteration / Level i Strategy A Strategy B 1 100% 50% 2 50% 100% 3 100% 50%

[0146] After determining the performance or performance difference between each pairing strategy for each iteration (based on the final results), the performance differences can be combined. In some embodiments, the performance differences can be averaged. In the example of Table V, the average conversion rate of strategy A is about 83%, and the average conversion rate of strategy B is about 67%. Strategy A performs nearly 24% better than strategy B. In some embodiments, the performance differences can be normalized based on the total number of contact interactions for each strategy for each iteration.

[0147] In some embodiments, some iterations may be weighted more or less than others. For example, it may be determined (by, for example, a contact center system administrator or other business owner) that the first contact interaction is most critical in determining whether or to what extent a desired end result is achieved. In other cases, it may be determined that the last contact interaction is most critical. In these cases, the more critical tiers may be weighted more heavily than the less critical tiers in the final benchmark results.

[0148] As described above, when benchmarking the performance of different pairing strategies, the above-described period benchmarking may be used in some embodiments. Fig. 9AAs shown, in the case where the period benchmark is used to evaluate the performance of the first pairing strategy and the second pairing strategy, the first pairing strategy (PS) and the second PS are alternately adopted for a predefined time interval. That is, the first PS is exclusively adopted for a first predefined time interval (e.g., 10 minutes), and then when the first time period expires, the second PS is exclusively adopted for a second predefined time interval (e.g., 10 minutes, 20 minutes, 30 minutes), and the cycle is repeated, as shown in FIG. Fig. 9A More specifically, Fig. 9A As shown, the first PS is employed exclusively during time intervals 912, 916, and 920, and the second PS is employed exclusively during time intervals 914, 918, and 922. In the example shown, time intervals 912, 916, and 920 have the same duration as time intervals 914, 918, and 922, respectively, but this is not required.

[0149] On the other hand, Fig. 9B As shown, in the case where the inline benchmark is used to evaluate the performance of the first PS and the second PS, the PSs are adopted in a random manner.

[0150] For example, for each pairing opportunity, a pseudo-random number generator may be used to generate a pseudo-random number (PRN) based on a seed value (eg, time of day in seconds), and the PRN may be used to determine whether to employ a first pairing strategy or a second pairing strategy for a given pairing opportunity.

[0151] In embodiments where more than two PSs need to be evaluated, a combination of benchmarking techniques (also known as hybrid benchmarking) can be used to evaluate different pairing strategies. For example, epoch benchmarking and inline benchmarking can be used together to evaluate the performance of different pairing strategies.

[0152] In some embodiments, when hybrid benchmarking is adopted, each PS to be evaluated belongs to at least one PS set included in a group of two or more PS sets. For example, if there are three PSs (a first PS, a second PS, and a third PS) to be evaluated, the first PS (e.g., FIFO) can be a member of PS set 1, the second PS (e.g., 2D BP) can be a member of PS set 2, and the third PS (e.g., 3D BP) can also be a member of PS set 2. Therefore, a PS set can consist of a single PS or include two or more PSs. Therefore, as used herein, a "PS set" is a single PS or a group of two or more PSs. In this example, it is possible to use period benchmarking to select which PS set to adopt for any given pairing opportunity, and, if the selected PS set includes multiple PSs, it is possible to use inline benchmarking to select which of the PSs included in the selected PS to adopt for a given pairing opportunity.

[0153] Fig. 10A An illustration of a hybrid benchmark test is provided in which the performance of three different PSs is evaluated. Fig. 10A In , the pairing strategies are FIFO, two-dimensional ("2D") BP, and three-dimensional ("3D") BP. Fig. 10A The pairing strategy types shown in are provided for explanation purposes only and do not limit the embodiments of the present disclosure in any way.

[0154] In a 2D BP, the first dimension of the 2D is related to agents, and the second dimension of the 2D is related to tasks (e.g., callers). The 2D BP can be used to pair agents with tasks. In a 3D BP, the first dimension of the 3D is related to agents, the second dimension of the 3D is related to tasks, and the third dimension of the 3D can be related to a set of offers or rewards. The 3D BP can be used to assign tasks and offers / rewards to agents. Similarly, in an N-dimensional BP, each dimension in the N dimensions is related to a different parameter (e.g., agent, task, offer, or reward), and the N-dimensional BP can be used to assign one of the parameters (e.g., agent) to the remaining different parameters (e.g., task, offer, reward, etc.). More details on multidimensional BPs are provided in the Appendix.

[0155] like Fig. 10A As shown in , 2D BP and 3D BP are members of a first PS set (i.e., BP set), and FIFO is a member of a second PS set, and an epoch benchmark is used to select between the first PS set and the second PS set. For example, during time interval 1002, pairing is performed using the first PS set (BP set), and during interval 1004, pairing is performed using the second PS set (i.e., FIFO), and the cycle repeats.

[0156] Since the BP set includes two different PSs (2D BP and 3D BP), a second benchmark (eg, an inline benchmark) may be applied during the time interval 1002 to select between the 2D BP and the 3D BP.

[0157] For example, Fig. 10B As shown, inline benchmarking is used to alternate between 2D BP and 3D BP during time interval 1002. For example, for each time interval 1112-1138, a PRN may be generated and then used to select whether to employ 2D BP or 3D BP during that time interval.

[0158] Fig.14AAnother example of hybrid benchmarking is illustrated where the performance of three different PSs is being evaluated and inline benchmarking is used to select between a first PS set and a second PS set. For example, for each time interval 1402-1428, a PRN is obtained and then used to select between a FIFO and a BP set for that time interval (e.g., Fig.14A As shown, a FIFO set is selected for three consecutive time intervals 1404, 1406 and 1408).

[0159] Because the BP set includes two different PSs (2D BP and 3D BP), Fig. 14B In the example shown, a period benchmark may be applied during time interval 1402 to select between 2D BP and 3D BP.

[0160] Fig.15A Another example of hybrid benchmarking is illustrated where the performance of three different PSs is being evaluated and inline benchmarking is used to select between a first PS set and a second PS set. For example, during time interval 1502, pairing is performed using the first PS set (BP set), and during interval 1504, pairing is performed using the second PS set (i.e., FIFO), and the cycle repeats.

[0161] Because the BP set includes two different PSs (2D BP and 3D BP), Fig. 15B In the example shown, another epoch reference test is applied to select between 2D BP and 3D BP during time interval 1502. The epoch reference test used to select between the first PS set and the second PS set may be the same as or different from the epoch reference test used to select between 2D BP and 3D BP.

[0162] Fig.16A Another example of hybrid benchmarking is shown where the performance of three different PSs is being evaluated and inline benchmarking is used to select between a first PS set and a second PS set. For example, for each time interval 1602-1628, a PRN is obtained and then used to select between a FIFO and a BP set for that time interval (e.g., Fig.16A As shown, a FIFO set is selected for three consecutive time intervals 1604, 1606 and 1608).

[0163] Because the BP set includes two different PSs (2D BP and 3D BP), a second benchmark (eg, an inline benchmark) may be applied during the time interval 1602 to select between the 2D BP and the 3D BP.

[0164] For example, Fig. 16B As shown, inline benchmarking is used to alternate between 2D BP and 3D BP during time interval 1602. For example, for each time interval 1632-1658, a PRN may be generated and then used during the time interval to select whether to employ 2D BP or 3D BP.

[0165] It is conceivable that any PS set can contain more than two PS sets. In such an embodiment, whenever a PS set containing multiple PS sets is selected, another selection can be made to select one of the PS sets included in the selected PS set. For example, consider the case of a group with two PS sets (PS-set-1 and PS-set-2), and PS-set-2 itself has two PS sets (PS-set-2.1 and PS-set-2.2) as its members, and PS-set-2.2 includes two PS sets (PS-set-2.2.1 and PS-set-2.2.2). In this case, if PS-set-2 is initially selected, another selection process must be performed to select one of PS-set-2.1 or PS-set-2.2. If PS-set-2.2 is selected, another selection process must be performed to select one of PS-set-2.2.1 or PS-set-2.2.2. Likewise, if PS-Set-2.2.2 is selected and the set includes multiple PS-Sets, another selection process may be performed to select a member of PS-Set-2.2.2. Thus, PS-Sets can be nested any number of times.

[0166] Fig.11 A process 1100 according to some embodiments is shown. The process 1100 may start with step s1102. Step s1102 includes selecting a pairing strategy (PS) set from a set of pairing strategy (PS) sets, the set of PS sets including: i) a first PS set including a first PS (a first pairing algorithm / module) and ii) a second PS set including a second PS and a third PS. Step s1104 includes establishing one or more contact-agent pairs using one or more PSs included in the selected PS set as a result of selecting the PS set from the set of PS sets.

[0167] In some embodiments, selecting a PS set from a set of PS sets includes: selecting a PS set from a set of PS sets based on a time value indicating a time of day or indicating an amount of time that has passed since a period of time, or selecting a PS set from a set of PS sets based on a generated pseudo-random value (PRV).

[0168] In some embodiments, the method further includes receiving, at one or more switches, contact information indicating a plurality of contacts available for pairing; and obtaining, by at least one computer processor communicatively coupled to a contact center system and configured to operate in the contact center system, contact information indicating a plurality of available contacts, wherein each of the plurality of available contacts can be used to pair with one of a plurality of available agents, wherein the step of establishing one or more contact-agent pairs using one or more PSs included in the selected PS set includes selecting a PS included in the selected PS set and pairing one of the available contacts with one of the available agents using the selected PS.

[0169] In some embodiments, the selected PS set is a second PS set, and selecting the PS included in the second PS set includes generating a PRV and selecting the PS included in the second PS set using the PRV.

[0170] In some embodiments, the step of selecting a PS set from a group of PS sets comprises: determining a current time of day; and selecting a PS set included in the group of PS sets based on the determined current time of day.

[0171] In some embodiments, establishing one or more contact-agent pairs using one or more PSs included in the selected PS set includes establishing one or more contact-agent pairs using one or more PSs included in the selected PS set during at least a first specified duration.

[0172] In some embodiments, the selected PS set is a second PS set, the first PS set consists of the first PS, and the method further includes: determining that a first specified duration has passed; and as a result of determining that the first specified duration has passed, establishing multiple contact-agent pairs using the first PS set for at least a second specified duration.

[0173] In some embodiments, the first PS is a first-in-first-out PS, the second PS is a two-dimensional behavior PS, and the second PS is an n-dimensional behavior PS, where n>2.

[0174] Fig.13A process 1300 is shown according to some embodiments. The process 1300 may begin with step s1302. Step s1302 includes obtaining first contact center information that: i) identifies a first set of available agents that are available for pairing with contacts, and ii) identifies a first set of contacts waiting to be paired with the available agents. Step s1304 includes selecting a pairing strategy (PS) set from a set of two or more PS sets, the set of PS sets including: i) a first PS set including a first PS and ii) a second PS set including a second PS and a third PS. Step s1306 includes performing a first pairing process using the first contact center information after obtaining the first contact center information and after selecting the pairing strategy set, wherein the first pairing process implements the PSs included in the selected PS set.

[0175] In some embodiments, the method further includes: after performing the first pairing process: obtaining second contact center information, the second contact center information: i) identifying a second set of available agents that can be used to pair with contacts and ii) identifying a second set of contacts waiting to be paired with available agents; selecting one of the PS sets included in a group of PS sets; and after obtaining the second contact center information and selecting one of the PS sets included in the group of PS sets, performing a second pairing process using the second contact center information, wherein the second pairing process implements the PS included in the most recently selected PS set.

[0176] like Figure 10A-10B , Figure 14A-14B , Figure 15A-15B as well as Figure 16A-16B As shown, in some embodiments, during a first time period (e.g., Fig.15A and Fig. 15B The first group (e.g., Fig.15A BP PS set) in one or more pairing strategies (PS), and in a second time period immediately following the first time period (e.g., Fig.15A and Fig. 15B The second group (e.g., Fig.15A and Fig. 15B FIFO PS Set in one or more PSs. Note that even Figure 10A-10B , Figure 14A-14B , Figure 15A-15B as well as Figure 16A-16B It is shown that the number of PSs included in the first group is 2, and the number of PSs included in the second group is 1, but an arbitrary number of PSs can be included in each of the first group and the second group.

[0177] In the case where the first group includes a plurality of PSs, the plurality of PSs may be applied alternately within a time period allocated for the first group (ie, the first time period described above). Fig. 15B , the first group of PSs includes 2D BP PS and 3D BP PS, and the two BP PSs are applied alternately within a first time period 1502 .

[0178] exist Fig. 15B In the embodiment, the duration for which 2D BP PS is applied and the duration for which 3D BP PS is applied are the same. However, there may be situations where it may be beneficial to apply 2D BP PS and 3D BP PS for different durations. For example, if it is determined that 2D BP PS performs better than 3D BP PS, it may be beneficial to apply 2D BP PS for a longer duration than the duration for which 3D BP PS is applied.

[0179] Therefore, according to some embodiments, the time period for applying one or more PSs included in the first group of PSs within the time period allocated to the first group of PSs is adjusted based on the performance of one or more PSs included in the first group of PSs and / or the performance of one or more PSs included in the second group of PSs. Additionally or alternatively, the time period for applying one or more PSs included in the second group of PSs within the time period allocated to the second group of PSs may be adjusted based on the performance of one or more PSs included in the first group of PSs and / or the performance of one or more PSs included in the second group of PSs.

[0180] Fig.17 An apparatus 1700 for adjusting a time period for applying one or more PSs included in a first set of PSs and / or a second set of PSs according to some embodiments is shown. The apparatus 1700 may include an adjuster 1706, a switch 1710, and an evaluator 1718. The adjuster 1706 is configured to receive a first PS group information 1702 and a second PS group information 1704. The first PS group information 1702 may include one or more PS identifiers ("IDs") that identify one or more PSs included in the first set of PSs. Similarly, the second set of information 1704 may include one or more PS IDs that identify one or more PSs included in the second set of PSs.

[0181] exist Fig.17 In the example shown, the first PS group information 1702 includes a first PS ID identifying a first PS and a second PS ID identifying a second PS, and the second PS group information 1704 includes a third PS ID identifying a third PS. However, as described above, the number of PSs included in the first group and / or the second group may be any number. In addition, even if Fig.171706 receives the first PS group information 1702 and the second PS group information 1704, but in other embodiments, the adjuster 1706 may generate the first PS group information 1702 and the second PS group information 1704. In such an embodiment, the adjuster 1706 will not receive the first PS group information 1702 and the second PS group information 1704. Alternatively, the first PS group information 1702 and the second PS group information 1704 may be stored in a storage medium (e.g., a memory) of the adjuster 1706, and the adjuster 1706 may simply retrieve the first PS group information 1702 and the second PS group information 1704 from the storage medium.

[0182] After obtaining the first PS group information 1702 and the second PS group information 1704, the adjuster 1706 can determine the time ratio of applying the first group of PS and / or the second group of PS in a given time interval. The value of the time ratio is called a "ratio value". The ratio value represents the ratio of applying the first group of PS or the ratio of applying the second group of PS in a given time interval. Initially, the ratio value can be set to a predefined value.

[0183] For example, in Fig.18A , during a given time period 1802, each of the first group of PSs and the second group of PSs is applied during 50% of the time period 1802. More specifically, the first PS and the second PS included in the first group are applied during a time period 1804 that is 50% of the time period 1802, and the third PS included in the second group is applied during a time period 1806 that is 50% of the time period 1802. Here, the ratio value is 0.5 or 50%.

[0184] In another example, in Fig.18B , in a given time period 1852, the first group of PSs is applied during 70% of the time period 1852, and the second group of PSs is applied during 30% of the time period 1852. More specifically, the first PS and the second PS included in the first group are applied during a time period 1854 that is 70% of the time period 1852, and the third PS included in the second group is applied during a time period 1856 that is 30% of the time period 1852. Here, the ratio value may be 0.7 or 70%, or 0.3 or 30%.

[0185] In addition to determining the ratio value, after obtaining the first PS group information 1702 and the second PS group information 1704, the adjuster 1706 can also determine the time ratio of applying the first PS or the second PS included in the first PS group during the time period allocated to the first group of PS. The value of the time ratio is called a "sub-ratio value". The sub-ratio value represents a sub-ratio of applying the first PS or the second PS included in the first group of PS within the time period allocated to the first group of PS. Initially, the sub-ratio value can be set to a predefined value.

[0186] For example, in Fig.18A , during a time period 1804 (which is 50% of the time period 1802 and is allocated to the first group of PSs), each of the first PS and the second PS included in the first group is applied during 50% of the time period 1804. More specifically, the first PS is applied during t11+t12+t13 which is 50% of the time period 1804, and the second PS is applied during t21+t22+t23 which is 50% of the time period 1804. Here, the sub-ratio value is 0.5 or 50%.

[0187] In another example, in Fig.18B , during time period 1854 (which is 70% of time period 1852 and is allocated to the first group of PSs), the first PS is applied during approximately 66.6% of time period 1854, and the second PS is applied during 33.3% of time period 1854. More specifically, the first PS is applied during t1'1+t1'2+t1'3+t1'4+t1'5 which is 66.6% of time period 1854, and the second PS is applied during t2'1+t2'2+t2'3+t2'4 which is 33.3% of time period 1854. Here, the sub-ratio value may be 0.666 or 60% or 0.333 or 33%.

[0188] The scale value and sub-scale value determined by the adjuster 1706 may be provided to the switch 1710, which pairs one or more contact IDs with one or more agent IDs based on the received scale value and sub-scale value. Fig.18A In the example shown, during the first portion (t11+t12+t13) of the time period 1802, the switch 1710 may pair one or more contact IDs with one or more agent IDs using a first PS, and during the second portion (t21+t22+t23) of the time period 1802, the switch 1710 may pair one or more contact IDs with one or more agent IDs using a second PS. In addition, during the third portion (1806) of the time period 1802, the switch 1710 may pair one or more contact IDs with one or more agent IDs using a third PS.

[0189] After applying the first, second and third PSs within a time period determined based on the scale value and the sub-scale value, the evaluator 1718 can evaluate the performance of the first PS, the second PS and / or the third PS, thereby generating performance metric data 1720 indicating the performance of the first PS, the second PS and / or the third PS.

[0190] The performance metric data 1720 may include a first performance score indicating the performance of the first PS, a second performance score indicating the performance of the second PS, and / or a third performance score indicating the performance of the third PS. The performance of the pairing strategy may be determined according to any performance metric method known in the contact center environment. In one example, several methods for evaluating the performance of the first PS, the second PS, and / or the third PS are described in U.S. Patent No. 10,122,860, which is incorporated herein by reference. After generating the performance metric data 1720, the evaluator 1718 may transmit the performance metric data 1720 to the adjuster 1706.

[0191] Adjuster 1706 may adjust the scale value and / or sub-scale value based on received performance metric data 1720. More specifically, in some embodiments, adjuster 1706 may evaluate one or more of the first, second, and third performance scores and adjust the scale value and / or sub-scale value based on the evaluation.

[0192] For example, the adjuster 1706 may compare each of the first performance score and the second performance score with a reference value, and adjust the scale value and / or the sub-scale value based on the evaluation. In the case where one of the first performance score and the second performance score is greater than or equal to the reference value and the other of the first performance score and the second performance score is lower than the reference value, the adjuster 1706 may adjust the sub-scale value so that a PS having a performance score greater than the reference value (e.g., having a larger sub-scale value) is applied for a longer time than a PS having a performance score lower than the reference value (e.g., having a lower sub-scale value).

[0193] More specifically, in Fig.18A In the example provided in , each of the first PS and the second PS is applied during 50% of the time period 1804. However, in the case where the adjuster 1706 determines that the first performance score indicating the performance of the first PS is greater than the reference value and the second performance score indicating the performance of the second PS is less than the reference value, as Fig.18B As shown, the adjuster 1706 may increase the time period for applying the first PS and simultaneously decrease the time period for applying the second PS.

[0194] Furthermore, in the above example, when both the first performance score and the second performance score are lower than the reference value, or when both the first performance score and the second performance score are higher than the reference value, the sub-ratio value may be adjusted based on the comparison of the first performance score and the second performance score. More specifically, when the first performance score is higher than the second performance score, the adjuster 1706 may adjust the sub-ratio value so that, within the time period allocated to the first group of PSs, the first PS is applied longer than the second PS (e.g., Fig.18A 1804 or Fig.18B in 1854).

[0195] In another example, the sub-ratio value may be adjusted based only on a comparison of the first PS and the second PS (without considering the reference value). In such an example, when the first performance score is higher than the second performance score, the adjuster 1706 may adjust the sub-ratio value so that the first PS is applied longer than the second PS during the time period allocated to the first group of PSs. On the other hand, when the first performance score is lower than the second performance score, the adjuster 1706 may adjust the sub-ratio value so that the second PS is applied longer than the first PS during the time period allocated to the first group of PSs.

[0196] The reference value may be a predefined value, or may be calculated based on one or more of the first, second, and / or third performance scores. For example, the reference value may be based on an average of the performance scores of the pairing strategy set (e.g., the first and second performance scores of the first group of PSs), or may be an average of the performance values ​​of the pairing strategies in the first group of PSs and the second group of PSs (e.g., the first, second, and third performance scores). In another example, the reference value may be based on the third performance score (rather than the performance score from the first group of PSs). In another example, the reference value may be based on a moving average over a time period (e.g., 1 day, 2 days, 3 days, 5 days, 7 days, 14 days, 21 days, a month) for the pairing strategy set, all applied pairing strategies, and / or any single pairing strategy.

[0197] There are various ways to adjust the ratio value and the sub-ratio value according to the performance of the first PS, the second PS and / or the third PS.

[0198] In some embodiments, the amount of adjustment to the scale value or sub-scale value may be determined in proportion to the amount of difference between the performance score and the reference value. For example, where the sub-scale value indicates a duration of time for which a first PS is applied, the sub-scale value may be adjusted based on the performance of the first PS so that the sub-scale value is equal to A*(BC), where A is a real number, B is a first performance score indicating the performance of the first PS, and C is a reference value. In some embodiments, the amount of adjustment to the scale value or sub-scale value may be determined in proportion to the amount of difference between the performance scores for one PS compared to a set of pairing strategies, all applied pairing strategies, and / or any other single pairing strategy.

[0199] In other embodiments, the scale value and / or sub-scale value may be determined using methods such as the Thompson sampling method or the Multi-armed Bandit method.

[0200] Notice, Fig.17 This is merely a conceptual diagram of an apparatus according to an embodiment of the present disclosure. It may not show the actual physical aspects of the apparatus. In other words, Fig.17 The physical characteristics of the devices shown in do not limit the embodiments of the present disclosure in any way. For example, in some embodiments, any two or more of the adjuster 1706, the switch 1710, and the evaluator 1708 may be included in a single entity (eg, a processor).

[0201] Fig.19A process 1900 according to some embodiments is shown. The process 1900 may begin with step s1902. Step s1902 includes obtaining first pairing strategy (PS) group information, the information including at least a first PS identifier identifying a first PS and a second PS identifier identifying a second PS. Step s1904 includes obtaining second PS group information, the information including at least a third PS identifier identifying a third PS. Step s1906 includes determining a first scale value indicating a first scale of a time period, wherein the first scale is associated with (i) the first PS identifier and the second PS identifier or (ii) the third PS identifier. Step s1908 includes determining a first subscale value indicating a first subscale of a time period, wherein the first subscale is associated with the first PS identifier or the second PS identifier. Step s1910 includes applying the first PS during a first portion of a first time period, wherein the first portion of the first time period is selected based on the first scale value and the first subscale value. Step s1912 includes applying the second PS during a second portion of the first time period, wherein the second portion of the first time period is selected based on the first scale value and the first subscale value. Step s1914 includes applying a third PS during a third portion of a first time period, wherein the third portion of the first time period is selected based on the first scale value. Step s1916 includes obtaining performance metric data indicating performance of the first PS and the second PS during the first time period. Step s1918 includes determining an updated first subscale value indicating an updated first subscale of the time period based on the performance metric data, wherein the updated first subscale is associated with the first PS identifier or the second PS identifier. Step s1920 includes applying the first PS during a first portion of a second time period, wherein the first portion of the second time period is selected based on the updated first subscale value. Step s1922 includes applying the second PS during a second portion of the second time period, wherein the second portion of the second time period is selected based on the updated first subscale value. Step s1924 includes applying the third PS during a third portion of the second time period.

[0202] In some embodiments, the first ratio value indicates a ratio of a given time period for (i) applying at least one of the first PS and the second PS but not applying the third PS, or (ii) applying the third PS but not applying the first PS and the second PS, and the given time period is used to apply all of the first PS, the second PS, and the third PS.

[0203] In some embodiments, the first sub-ratio value indicates a sub-ratio of the given time period for (i) applying the first PS but not applying the second PS, or (ii) applying the second PS but not applying the first PS, and the ratio of the given time period is for applying both the first PS and the second PS.

[0204] In some embodiments, the length of the third portion of the first time period is the same as the length of the third portion of the second time period.

[0205] In some embodiments, a first portion of the second time period is selected based on the updated first subscale value and the first scale value, a second portion of the second time period is selected based on the updated first subscale value and the first scale value, and a third portion of the second time period is selected based on the first scale value.

[0206] In some embodiments, the length of the third portion of the first time period is different from the length of the third portion of the second time period.

[0207] In some embodiments, process 1900 includes determining an updated first scale value indicating an updated first scale of a time period, wherein the first scale value and the updated first scale value are different, the updated first scale is associated with (i) the first PS and the second PS or (ii) the third PS, a first portion of the second time period is selected based on the updated first sub-scale value and the updated first scale value, a second portion of the second time period is selected based on the updated first sub-scale value and the updated first scale value, and a third portion of the second time period is selected based on the updated first sub-scale value and the updated first scale value.

[0208] In some embodiments, the updated first ratio value is determined based on the performance metric data.

[0209] In some embodiments, the first PS group information includes a first PS identifier set identifying a first PS set, the first PS set includes a first PS and a second PS, the second PS group information includes a second PS identifier set identifying a second PS set, the second PS set includes a third PS, the first ratio value indicates a ratio of application of a given time period in which (i) the first PS set is used but the second PS set is not applied, or (ii) the second PS set is applied but the first PS set is not applied, and the given time period is used to apply both the first PS set and the second PS set.

[0210] In some embodiments, the first sub-ratio value indicates a sub-ratio of the given time period for applying only one PS included in the first PS set, and the ratio of the given time period is for applying the first PS set.

[0211] In some embodiments, process 1900 includes obtaining updated first PS group information, which updated first PS group information includes an updated first PS identifier set for identifying an updated first PS set; and / or obtaining second PS group information, which second PS group information includes an updated second PS identifier set for identifying an updated second PS set, wherein the first PS set and the updated first PS set are different, and / or the second PS set and the updated second PS set are different.

[0212] In some embodiments, the performance of the first PS and the second PS during the first time period is determined based on a number of pairings performed using the third PS.

[0213] In some embodiments, applying the first PS or the second PS includes selecting an agent from a set of agents for pairing with the contact, and applying the third PS includes selecting an agent from the same set of agents for pairing with the contact.

[0214] In some embodiments, the length of the first time period and the length of the second time period are both one day.

[0215] Fig.12 According to some embodiments, Fig.11 1200 is a block diagram of an apparatus 1200 for implementing the method shown in FIG. Fig.12As shown, the device 1200 may include: a processing circuit (PC) 1202, which may include one or more processors (P) 1255 (e.g., a general-purpose microprocessor and / or one or more other processors, such as an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), etc.), which may be co-located in a single housing or a single data center, or may be geographically distributed (i.e., the device 1200 may be a distributed computing device); a network interface 1248, including a transmitter (Tx) 1245 and a receiver (Rx) 1247, which is used to enable the device 1200 to send data to and receive data from other nodes connected to a network 110 (e.g., an Internet Protocol (IP) network) to which the network interface 1248 is connected (directly or indirectly) (e.g., the network interface 1248 may be wirelessly connected to the network 110, in which case the network interface 1248 is connected to an antenna device); and a local storage unit (also known as a "data storage system") 1208, which may include one or more non-volatile storage devices and / or one or more volatile storage devices. In embodiments where the PC 1202 includes a programmable processor, a computer program product (CPP) 1241 may be provided. The CPP 1241 includes a computer readable medium (CRM) 1242 storing a computer program (CP) 1243 including computer readable instructions (CRI) 1244. The CRM 1242 may be a non-transitory computer readable medium, such as a magnetic medium (e.g., a hard disk), an optical medium, a storage device (e.g., a random access memory, a flash memory), etc. In some embodiments, the CRI 1244 of the computer program 1243 is configured such that when executed by the PC 1202, the CRI causes the device 1200 to perform the steps described herein (e.g., the steps described herein with reference to the flowcharts). In other embodiments, the device 1200 may be configured to perform the steps described herein without code. That is, for example, the PC 1202 may consist solely of one or more ASICs. Thus, the features of the embodiments described herein may be implemented in hardware and / or software.

[0216] At this point, it should be noted that the behavior pairing in the contact center system according to the present disclosure as described above may involve the processing of input data and the generation of output data to some extent. The input data processing and output data generation can be implemented in hardware or software. For example, specific electronic components can be used in a behavior pairing module or similar or related circuits to implement the behavior pairing-related functions in the contact center system according to the present disclosure as described above. Alternatively, one or more processors operating according to instructions can implement the behavior pairing-related functions in the contact center system according to the present disclosure as described above. If this is the case, then within the scope of the present disclosure, these instructions may be stored on one or more non-transitory processor-readable storage media (e.g., disks or other storage media), or transmitted to one or more processors via one or more signals embodied in one or more carriers.

[0217] The scope of the present disclosure is not limited by the specific embodiments described herein. In fact, in addition to those described herein, various other embodiments and modifications of the present disclosure will be apparent to those of ordinary skill in the art from the above description and the accompanying drawings. Therefore, these other embodiments and modifications are intended to fall within the scope of the present disclosure. In addition, although the present disclosure has been described herein in the context of at least one specific embodiment for at least one specific purpose in at least one specific environment, those of ordinary skill in the art will recognize that its usefulness is not limited thereto, and the present disclosure can be beneficially implemented for any number of purposes in any number of environments. Therefore, the claims described below should be interpreted according to the full scope and spirit of the present disclosure described herein.

[0218] Summary of various embodiments

[0219] A1. A method (1100) comprises:

[0220] selecting (s1102) a pairing strategy (PS) set from a set of PS sets, the set of PS sets comprising: i) a first PS set comprising a first PS (a first pairing algorithm / module) and ii) a second PS set comprising a second PS and a third PS; and

[0221] As a result of selecting a PS set from the set of PS sets, one or more contact-agent pairs are established using (s1104) one or more PSs included in the selected PS set.

[0222] A2. The method of embodiment A1, wherein selecting a PS set from the set of PS sets comprises:

[0223] selecting a PS set from the set of PS sets based on a time value indicating a time of day or indicating an amount of time that has elapsed since a period, or

[0224] A PS set is selected from the set of PS sets based on a generated pseudo-random value (PRV).

[0225] A3. The method of embodiment A1 or A2, further comprising:

[0226] receiving, at one or more switches, contact information indicating a plurality of contacts available for pairing; and

[0227] Contact information indicating a plurality of available contacts is obtained, via at least one computer processor communicatively coupled to and configured to operate in the contact center system, wherein each of the plurality of available contacts is available for pairing with one of the plurality of available agents, wherein

[0228] The step of establishing one or more contact-agent pairs using one or more PSs included in the selected set of PSs includes selecting a PS included in the selected set of PSs and pairing one of the available contacts with one of the available agents using the selected PS.

[0229] A4. The method of embodiment A3, wherein

[0230] the selected PS set is the second PS set, and

[0231] Selecting the PS included in the second PS set includes generating a PRV and selecting the PS included in the second PS set using the PRV.

[0232] A5. The method of embodiment A4, wherein the step of selecting a PS set from a set of PS sets comprises:

[0233] Determine the current time of day; and

[0234] A PS set is selected for inclusion in the set of PS sets based on the determined current time of day.

[0235] A6. The method of embodiment A5, wherein the step of establishing one or more contact-agent pairs using one or more PSs included in the selected PS set comprises:

[0236] For at least a first specified duration, one or more contact-agent pairs are established using one or more PSs included in the selected set of PSs.

[0237] A7. The method of embodiment A6, wherein

[0238] The selected PS set is the second PS set,

[0239] The first PS set consists of the first PS, and

[0240] The method further includes:

[0241] determining that a first specified duration has elapsed; and

[0242] As a result of determining that the first specified duration has elapsed, a plurality of contact-agent pairs are established using the first set of PSs for at least a second specified duration.

[0243] A8. The method of embodiment A7, wherein

[0244] The first PS is the first-in-first-out PS.

[0245] The second PS is a two-dimensional behavior PS, and

[0246] The second PS is an n-dimensional behavioral PS, where n>2.

[0247] B1. A method (1300) comprising:

[0248] Obtaining (s1302) first contact center information, the first contact center information: i) identifying a first set of available agents that can be used to pair with contacts, and ii) identifying a first set of contacts waiting to be paired with available agents;

[0249] selecting (s1304) a pairing strategy (PS) set from a group of two or more PS sets, the group of PS sets comprising: i) a first PS set comprising the first PS, and ii) a second PS set comprising the second PS and the third PS; and

[0250] After obtaining the first contact center information and after selecting the pairing strategy set, a first pairing process is performed (s1306) using the first contact center information, wherein the first pairing process implements the PSs included in the selected PS set.

[0251] B2. The method of embodiment B1, further comprising: after performing the first pairing process:

[0252] obtaining second contact center information that: i) identifies a second set of available agents that can be used to pair with the contacts, and ii) identifies a second set of contacts waiting to be paired with the available agents;

[0253] selecting one of the PS sets included in the group of PS sets; and

[0254] After obtaining the second contact center information and selecting one of the PS sets included in the group of PS sets, a second pairing process is performed using the second contact center information, wherein the second pairing process implements the PS included in the most recently selected PS set.

[0255] C1. A method (1900) comprising:

[0256] obtaining (s1902) first pairing strategy (PS) group information, which includes at least a first PS identifier identifying a first PS and a second PS identifier identifying a second PS;

[0257] obtaining (s1904) second PS group information including at least a third PS identifier identifying a third PS;

[0258] determining (s1906) a first ratio value indicating a first ratio of the time period, wherein the first ratio is associated with (i) the first PS identifier and the second PS identifier or (ii) the third PS identifier;

[0259] determining (s1908) a first sub-scale value indicating a first sub-scale of the time period, wherein the first sub-scale is associated with the first PS identifier or the second PS identifier;

[0260] applying (s1910) a first PS during a first portion of a first time period, wherein the first portion of the first time period is selected based on a first scale value and a first sub-scale value;

[0261] applying (s1912) a second PS during a second portion of the first time period, wherein the second portion of the first time period is selected based on the first scale value and the first sub-scale;

[0262] applying (s1914) a third PS during a third portion of the first time period, wherein the third portion of the first time period is selected based on the first ratio value;

[0263] obtaining (s1916) performance metric data indicative of performance of the first PS and the second PS during a first time period;

[0264] determining (s1918) an updated first sub-scale value indicative of an updated first sub-scale of the time period based on the performance metric data, wherein the updated first sub-scale is associated with the first PS identifier or the second PS identifier;

[0265] applying (s1920) the first PS during a first portion of a second time period, wherein the first portion of the second time period is selected based on the updated first sub-scale value;

[0266] applying (s1922) a second PS during a second portion of the second time period, wherein the second portion of the second time period is selected based on the updated first sub-scale value; and

[0267] A third PS is applied (s1924) during a third portion of the second time period.

[0268] C2. The method of embodiment C1, wherein

[0269] The first ratio value indicates a ratio of a given time period for (i) applying at least one of the first PS and the second PS but not applying the third PS or (ii) applying the third PS but not applying the first PS and the second PS, and

[0270] The given time period is used to apply all of the first PS, the second PS, and the third PS.

[0271] C3. The method of embodiment C2, wherein

[0272] The first sub-ratio value indicates a sub-ratio for a given time period for (i) applying the first PS but not applying the second PS or (ii) applying the second PS but not applying the first PS, and

[0273] The ratio of the given time period is used for applying the first PS and the second PS.

[0274] C4. The method of any of embodiments C1-C3, wherein the length of the third portion of the first time period is the same as the length of the third portion of the second time period.

[0275] C5. The method of embodiment C4, wherein

[0276] A first portion of the second time period is selected based on the updated first sub-scale value and the first scale value,

[0277] A second portion of the second time period is selected based on the updated first sub-scale value and the first scale value,

[0278] A third portion of the second time period is selected based on the first ratio value.

[0279] C6. The method of embodiment C1, wherein the length of the third portion of the first time period is different from the length of the third portion of the second time period.

[0280] C7. The method of embodiment C6, comprising:

[0281] determining an updated first ratio value indicating an updated first ratio of the time period, wherein

[0282] The first scale value and the updated first scale value are different,

[0283] The updated first ratio is associated with (i) the first PS and the second PS or (ii) the third PS,

[0284] selecting a first portion of the second time period based on the updated first sub-scale value and the updated first scale value,

[0285] selecting a second portion of the second time period based on the updated first sub-scale value and the updated first scale value, and

[0286] A third portion of the second time period is selected based on the updated first ratio value.

[0287] C8. The method of embodiment C7, wherein the updated first ratio value is determined based on the performance metric data.

[0288] C9. The method of any one of embodiments C2-C8, wherein

[0289] The first PS group information includes a first PS identifier set identifying a first PS set,

[0290] The first PS set includes a first PS and a second PS,

[0291] The second PS group information includes a second PS identifier set identifying a second PS set,

[0292] The second PS set includes a third PS,

[0293] The first ratio value indicates a ratio of a given time period for (i) applying the first PS set but not applying the second PS set or (ii) applying the second PS set but not applying the first PS set, and

[0294] The given time period is used to apply both the first PS set and the second PS set.

[0295] C10. The method of embodiment C9, wherein

[0296] The first sub-ratio value indicates a sub-ratio for applying only one PS included in the first PS set for a given time period, and

[0297] The proportion of the given time period is used for applying the first PS set.

[0298] C11. The method of embodiment C9 or C10, comprising:

[0299] obtaining updated first PS group information including an updated first PS set identifier identifying the updated first PS set; and / or

[0300] obtaining second PS group information including an updated second PS set identifier identifying an updated second PS set, wherein

[0301] The first PS Set and the updated first PS Set are different, and / or

[0302] The second PS Set and the updated second PS Set are different.

[0303] C12. The method of any of embodiments C1-C11, wherein the performance of the first PS and the second PS during the first time period is determined based on a number of pairings performed using a third PS.

[0304] C13. The method of any one of embodiments C1-C11, wherein

[0305] Applying the first PS or the second PS includes selecting an agent from a set of agents to pair with the contact, and

[0306] Applying the third PS includes selecting an agent from the same set of agents to pair with the contact.

[0307] C14. The method of any of embodiments C1-C13, wherein each of the length of the first time period and the length of the second time period is one day.

[0308] D1. A computer program (1243) comprising instructions (1244) which, when executed by a processing circuit (1202), cause the processing circuit to perform the method of any one of embodiments A1-C14.

[0309] D2. A carrier containing the computer program of embodiment D1, wherein the carrier is one of an electronic signal, an optical signal, a radio signal and a computer-readable storage medium.

[0310] E1. An apparatus (1200), the apparatus being configured to:

[0311] selecting (s1102) a pairing strategy (PS) set from a set of PS sets, the set of PS sets comprising: i) a first PS set comprising a first PS (a first pairing algorithm / module) and ii) a second PS set comprising a second PS and a third PS; and

[0312] As a result of selecting a PS set from the set of PS sets, one or more contact-agent pairs are established using (s1104) one or more PSs included in the selected PS set.

[0313] E2. The apparatus of Embodiment E1, wherein the apparatus is further configured to perform the method of any one of Embodiments A2-A8.

[0314] F1. A device (1200), the device being configured to:

[0315] Obtaining (s1302) first contact center information, the first contact center information: i) identifying a first set of available agents that can be used to pair with contacts and ii) identifying a first set of contacts waiting to be paired with available agents;

[0316] selecting (s1304) a pairing strategy (PS) set from a group of two or more PS sets, the group of PS sets comprising: i) a first PS set comprising the first PS and ii) a second PS set comprising the second PS and the third PS; and

[0317] After obtaining the first contact center information and after selecting the pairing policy set, a first pairing process is performed (s1306) using the first contact center information, wherein the first pairing process implements the PSs included in the selected PS set.

[0318] F2. The apparatus of embodiment F1, wherein the apparatus is further configured to perform the method of embodiment B2.

[0319] G1. A device (1200), the device being configured to:

[0320] obtaining (s1902) first pairing strategy (PS) group information, which includes at least a first PS identifier identifying a first PS and a second PS identifier identifying a second PS;

[0321] obtaining (s1904) second PS group information including at least a third PS identifier identifying a third PS;

[0322] determining (s1906) a first ratio value indicating a first ratio of the time period, wherein the first ratio is associated with (i) the first PS identifier and the second PS identifier or (ii) the third PS identifier;

[0323] determining (s1908) a first subscale value indicating a first subscale of the time period, wherein the first subscale is associated with the first PS identifier or the second PS identifier;

[0324] applying (s1910) a first PS during a first portion of a first time period, wherein the first portion of the first time period is selected based on a first scale value and a first sub-scale value;

[0325] applying (s1912) a second PS during a second portion of the first time period, wherein the second portion of the first time period is selected based on the first scale value and the first sub-scale;

[0326] applying (s1914) a third PS during a third portion of the first time period, wherein the third portion of the first time period is selected based on the first proportional value;

[0327] obtaining (s1916) performance metric data indicative of performance of the first PS and the second PS during a first time period;

[0328] determining (s1918) an updated first sub-scale value indicating an updated first sub-scale of the time period based on the performance metric data, wherein the updated first sub-scale is associated with the first PS identifier or the second PS identifier;

[0329] applying (s1920) the first PS during a first portion of a second time period, wherein the first portion of the second time period is selected based on the updated first sub-scale value;

[0330] applying (s1922) a second PS during a second portion of the second time period, wherein the second portion of the second time period is selected based on the updated first sub-scale value; and

[0331] A third PS is applied (s1924) during a third portion of the second time period.

[0332] H1. A device (1200), comprising:

[0333] Memory (1242); and

[0334] A processing circuit (1202) coupled to a memory, wherein

[0335] The apparatus is configured to perform the method of any one of embodiments A1-C14.

[0336] Although various embodiments are described herein, it should be understood that they are presented by way of example only, not limitation. Therefore, the breadth and scope of the present disclosure should not be limited by any of the above-described exemplary embodiments. In addition, unless otherwise indicated herein or clearly contradicted by the context, any combination of the above-described elements in all possible variations thereof is encompassed by the present disclosure.

[0337] Furthermore, although the processes described above and shown in the accompanying drawings are shown as a series of steps, this is for illustration purposes only. Therefore, it is contemplated that some steps may be added, some steps may be omitted, the order of the steps may be rearranged, and some steps may be performed in parallel.

Claims

1. A method (1100), comprising: selecting (s1102) a pairing strategy (PS) set from a set of PS sets, the set of PS sets comprising: i) a first PS set comprising a first PS (a first pairing algorithm / module), and ii) a second PS set comprising a second PS and a third PS; and As a result of selecting a PS set from the group of PS sets, one or more contact-agent pairs are established using (s1104) one or more PSs included in the selected PS set.

2. The method according to claim 1, wherein: Selecting a PS set from the set of PS sets comprises: selecting a PS set from the set of PS sets based on a time value indicating a time of day or indicating an amount of time that has elapsed since a period, or A PS set is selected from the group of PS sets based on a generated pseudo-random value (PRV).

3. The method according to claim 1 or 2, further comprising: receiving, at one or more switches, contact information indicating a plurality of contacts available for pairing; as well as Contact information indicating a plurality of available contacts is obtained by at least one computer processor communicatively coupled to and configured to operate in the contact center system, wherein each of the plurality of available contacts is available for pairing with one of a plurality of available agents, wherein The step of establishing one or more contact-agent pairs using one or more PSs included in the selected set of PSs includes selecting a PS included in the selected set of PSs and pairing one of the available contacts with one of the available agents using the selected PS.

4. The method according to claim 3, wherein The selected PS set is the second PS set, and Selecting the PS included in the second PS set includes generating a PRV and selecting the PS included in the second PS set using the PRV.

5. The method according to claim 4, wherein: The step of selecting a PS set from the group of PS sets comprises: Determine the current time of day; and A PS set included in the set of PS sets is selected based on the determined current time of day.

6. The method according to claim 5, wherein: The step of establishing one or more contact-agent pairs using the one or more PSs included in the selected PS set comprises: For at least a first specified duration, the one or more contact-agent pairs are established using the one or more PSs included in the selected PS set.

7. The method according to claim 6, wherein The selected PS set is the second PS set, The first PS set consists of the first PS, and The method further comprises: determining that the first specified duration has elapsed; as well as As a result of determining that the first specified duration has elapsed, a plurality of contact-agent pairs are established using the first set of PSs for at least a second specified duration.

8. The method according to claim 7, wherein The first PS is a first-in, first-out PS, The second PS is a two-dimensional behavioral PS, and The second PS is an n-dimensional behavioral PS, where n>2.

9. A method (1300) comprising: Obtaining (s1302) first contact center information, the first contact center information: i) identifying a first set of available agents that can be used to pair with contacts, and ii) identifying a first set of contacts waiting to be paired with available agents; selecting (s1304) a pairing strategy (PS) set from a set of two or more PS sets, the set of PS sets comprising: i) a first PS set comprising the first PS and ii) a second PS set comprising the second PS and the third PS; as well as After obtaining the first contact center information and after selecting the pairing strategy set, a first pairing process is performed (s1306) using the first contact center information, wherein the first pairing process implements the PS included in the selected PS set.

10. The method according to claim 9, further comprising, after performing the first pairing process: obtaining second contact center information, the second contact center information: i) identifying a second set of available agents that can be used to pair with contacts, and ii) identifying a second set of contacts waiting to be paired with the available agents; selecting one of the PS sets included in the group of PS sets; and After obtaining the second contact center information and selecting one of the PS sets included in the group of PS sets, a second pairing process is performed using the second contact center information, wherein the second pairing process implements the PS included in the most recently selected PS set.

11. A method (1900) comprising: obtaining (s1902) first pairing strategy (PS) group information, the first PS group information comprising at least a first PS identifier identifying a first PS and a second PS identifier identifying a second PS; obtaining (s1904) second PS group information, the second PS group information comprising at least a third PS identifier identifying a third PS; determining (s1906) a first ratio value indicating a first ratio of a time period, wherein the first ratio is associated with (i) the first PS identifier and the second PS identifier or (ii) the third PS identifier; determining (s1908) a first sub-scale value indicating a first sub-scale of a time period, wherein the first sub-scale is associated with the first PS identifier or the second PS identifier; applying (s1910) the first PS during a first portion of a first time period, wherein the first portion of the first time period is selected based on the first scale value and the first sub-scale value; applying (s1912) the second PS during a second portion of the first time period, wherein the second portion of the first time period is selected based on the first scale value and the first sub-scale; applying (s1914) the third PS during a third portion of the first time period, wherein the third portion of the first time period is selected based on the first ratio value; obtaining (s1916) performance metric data indicative of performance of the first PS and the second PS during the first time period; determining (s1918) an updated first sub-scale value indicative of an updated first sub-scale of a time period based on the performance metric data, wherein the updated first sub-scale is associated with the first PS identifier or the second PS identifier; applying (s1920) the first PS during a first portion of a second time period, wherein the first portion of the second time period is selected based on the updated first sub-scale value; applying (s1922) the second PS during a second portion of the second time period, wherein the second portion of the second time period is selected based on the updated first sub-scale value; and The third PS is applied (s1924) during a third portion of the second time period.

12. The method according to claim 11, wherein the first ratio value indicates a ratio for a given time period for (i) applying at least one of the first PS and the second PS but not applying the third PS or (ii) applying the third PS but not applying the first PS and the second PS, and The given time period is used to apply all of the first PS, the second PS, and the third PS.

13. The method according to claim 12, wherein The first sub-ratio value indicates a sub-ratio of the given time period for (i) applying the first PS but not applying the second PS or (ii) applying the second PS but not applying the first PS, and The proportion of the given time period is for applying both the first PS and the second PS.

14. The method according to at least one of claims 11 to 13, wherein: The length of the third portion of the first time period is the same as the length of the third portion of the second time period.

15. The method according to claim 14, wherein the first portion of the second time period is selected based on the updated first sub-scale value and the first scale value, The second portion of the second time period is selected based on the updated first sub-scale value and the first scale value, and The third portion of the second time period is selected based on the first ratio value.

16. The method of claim 11, wherein the third portion of the first time period has a length different from the third portion of the second time period.

17. The method according to claim 16, comprising: determining an updated first ratio value indicating an updated first ratio of the time period, wherein the first scale value and the updated first scale value are different, The updated first ratio is associated with (i) the first PS and the second PS or (ii) the third PS, selecting the first portion of the second time period based on the updated first sub-scale value and the updated first scale value, selecting the second portion of the second time period based on the updated first sub-scale value and the updated first scale value, and The third portion of the second time period is selected based on the updated first ratio value.

18. The method according to claim 17, wherein: The updated first ratio value is determined based on the performance metric data.

19. The method according to any one of claims 12 to 18, wherein The first PS group information includes a first PS identifier set identifying a first PS set, The first PS set includes the first PS and the second PS, The second PS group information includes a second PS identifier set identifying a second PS set, The second PS set includes the third PS, The first ratio value indicates a ratio of the given time period for (i) applying the first PS set but not applying the second PS set or (ii) applying the second PS set but not applying the first PS set, and The given time period is used to apply both the first PS set and the second PS set.

20. The method according to claim 19, wherein The first sub-ratio value indicates a sub-ratio for applying only one PS included in the first PS set for the given time period, and The proportion of the given time period is for applying the first PS set.

21. The method according to claim 19 or 20, comprising: obtaining updated first PS group information, wherein the updated first PS group information includes an updated first PS identifier set identifying an updated first PS set; and / or obtaining second PS group information, the second PS group information comprising an updated second PS identifier set identifying an updated second PS set, wherein The first PS Set and the updated first PS Set are different, and / or The second PS Set and the updated second PS Set are different.

22. The method according to at least one of claims 11 to 21, wherein: The performance of the first PS and the second PS during the first time period is determined based on a number of pairings performed using the third PS.

23. The method according to at least one of claims 11 to 21, wherein Applying the first PS or the second PS includes selecting an agent from a set of agents to pair with the contact, and Applying the third PS includes selecting an agent from the same set of agents to pair with the contact.

24. The method according to at least one of claims 11 to 23, wherein: The length of the first time period and the length of the second time period are both one day.

25. A computer program (1243) comprising instructions (1244) which, when executed by a processing circuit (1202), cause the processing circuit to perform the method according to at least one of claims 1-24.

26. A carrier comprising a computer program according to claim 25, wherein: The carrier is one of an electronic signal, an optical signal, a radio signal and a computer-readable storage medium.

27. An apparatus (1200), the apparatus being configured to: A pairing strategy (PS) set is selected (s1102) from a set of PS sets, the set of PS sets comprising: i) a first PS set including a first PS (first pairing algorithm / module) and ii) a second PS set including a second PS and a third PS; and As a result of selecting a PS set from the group of PS sets, one or more contact-agent pairs are established using (s1104) one or more PSs included in the selected PS set.

28. The device according to claim 27, wherein The apparatus is further configured to perform the method according to at least one of claims 2-8.

29. An apparatus (1200), the apparatus being configured to: Obtaining (s1302) first contact center information, the first contact center information: i) identifying a first set of available agents that can be used to pair with contacts, and ii) identifying a first set of contacts waiting to be paired with available agents; A pairing strategy (PS) set is selected (s1304) from a set of two or more PS sets, the set of PS sets comprising: i) a first PS set including the first PS, and ii) a second PS set including the second PS and the third PS; as well as After obtaining the first contact center information and after selecting the pairing strategy set, a first pairing process is performed (s1306) using the first contact center information, wherein the first pairing process implements the PS included in the selected PS set.

30. The device according to claim 29, wherein: The apparatus is further configured to perform the method according to claim 10.

31. An apparatus (1200), the apparatus being configured to: obtaining (s1902) first pairing strategy (PS) group information, the first PS group information comprising at least a first PS identifier identifying a first PS and a second PS identifier identifying a second PS; obtaining (s1904) second PS group information, the second PS group information comprising at least a third PS identifier identifying a third PS; A first ratio value indicating a first ratio of the time period is determined (s1906), wherein The first ratio is associated with (i) the first PS identifier and the second PS identifier or (ii) the third PS identifier; determining (s1908) a first sub-scale value indicating a first sub-scale of a time period, wherein the first sub-scale is associated with the first PS identifier or the second PS identifier; applying (s1910) the first PS during a first portion of a first time period, wherein the first portion of the first time period is selected based on the first scale value and the first sub-scale value; applying (s1912) the second PS during a second portion of the first time period, wherein the second portion of the first time period is selected based on the first scale value and the first sub-scale; applying (s1914) the third PS during a third portion of the first time period, wherein the third portion of the first time period is selected based on the first ratio value; obtaining (s1916) performance metric data indicative of performance of the first PS and the second PS during the first time period; determining (s1918) an updated first sub-scale value indicative of an updated first sub-scale of a time period based on the performance metric data, wherein the updated first sub-scale is associated with the first PS identifier or the second PS identifier; applying (s1920) the first PS during a first portion of a second time period, wherein the first portion of the second time period is selected based on the updated first sub-scale value; applying (s1922) the second PS during a second portion of the second time period, wherein the second portion of the second time period is selected based on the updated first sub-scale value; and The third PS is applied (s1924) during a third portion of the second time period.

32. The device according to claim 31, wherein The apparatus is further configured to perform the method according to at least one of claims 12-24.

33. An apparatus (1200), comprising: memory (1242); as well as A processing circuit (1202) coupled to the memory, wherein The apparatus is configured to perform the method according to at least one of claims 1-24.