A method and apparatus for determining a queuing queue

By analyzing historical data to determine the expected processing time and time fluctuation parameters, and optimizing the selection of queues, the problem of long waiting times in existing queuing methods has been solved, resulting in more efficient queuing and service provision.

CN113780733BActive Publication Date: 2026-05-05WEBANK (CHINA)
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
WEBANK (CHINA)
Filing Date
2021-08-06
Publication Date
2026-05-05

AI Technical Summary

Technical Problem

Existing single-queue and multi-queue first-in-first-out queuing methods result in long average user waiting times and low queuing efficiency.

Method used

By analyzing historical business processing data, the expected processing time and time fluctuation parameters of users waiting in line are determined. Based on these parameters, a reasonable queuing queue is selected from various queuing queues. By utilizing the positive correlation between the expected processing time and the time fluctuation parameters, the arrangement of queuing queues is optimized.

Benefits of technology

It reduced the average waiting time for users, improved the efficiency of service providers, and enhanced the queuing experience for users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113780733B_ABST
    Figure CN113780733B_ABST
Patent Text Reader

Abstract

This invention relates to the field of financial technology (Fintech) and discloses a method and apparatus for determining a queue. Based on historical transaction processing data, the estimated processing time of pending transactions for users in the queue is determined; the duration fluctuation parameter of the period in which the pending transaction is located is obtained; and based on the estimated processing time and the duration fluctuation parameter, the queue for the user in the queue is determined from each queue. This method utilizes data on the processing time of each transaction in the historical period of the user's current period. The determined duration fluctuation parameter reflects the degree of difference in processing time for each transaction. Therefore, when selecting a queue for a user in the queue, a more reasonable queue can be selected based on the degree of difference, enabling each queue to process transactions as quickly as possible, reducing the average waiting time, and thus improving the efficiency of the service provider in providing transaction services to users.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of financial technology (Fintech), and more particularly to a method and apparatus for determining a queue. Background Technology

[0002] With the development of computer technology, more and more technologies (such as big data, cloud computing, or blockchain) are being applied in the financial sector, and the traditional financial industry is gradually transforming into fintech. For example, relying on big data technology, banks are able to offer increasingly diverse business scenarios, thus attracting more and more users to banks to conduct related business. To ensure that all users experience fairness in terms of time during their business transactions, banks often require users to queue and follow the "first-in, first-out" principle to provide relevant services to each user in the queue.

[0003] Currently, the commonly used queuing methods include the following two:

[0004] Method 1: First-In-First-Out (FIFO) of a Single Queue

[0005] All customers are in the same waiting queue, and the same service is provided by N windows. Whenever a window becomes available, the customer at the front of the queue goes to that available window to conduct business.

[0006] Method 2: First-In-First-Out (FIFO) of Multiple Queues

[0007] T different waiting queues are set up according to the type of business. Each waiting queue has Nt dedicated windows that serve only that queue, and the waiting queues still operate on a first-in, first-out basis. For example, if windows 1-4 of a bank branch handle cash transactions and windows 5-8 handle other transactions, then users who need to handle cash transactions will be arranged in one waiting queue according to the order of their arrival at the bank branch, and users who need to handle other transactions will be arranged in another waiting queue according to the order of their arrival at the bank branch.

[0008] Because the processing time varies greatly among different users and for different services, the two existing queuing schemes suffer from long average waiting times and low queuing efficiency. Summary of the Invention

[0009] This application provides a method and apparatus for determining a queue, which reduces the average waiting time for users during the queuing process and improves the efficiency of service providers in providing business processing services to users.

[0010] In a first aspect, embodiments of this application provide a method for determining a queue, the method comprising: determining the estimated processing time of pending transactions for users waiting in line based on historical transaction processing data; obtaining the processing time of each transaction in the historical period of the period in which the pending transaction is located, and determining a duration fluctuation parameter of the period in which the pending transaction is located based on the processing time of each transaction; the duration fluctuation parameter being used to reflect the degree of difference in the processing time of each transaction; determining the queue of the users waiting in line from each queue based on the estimated processing time and the duration fluctuation parameter; wherein the queuing time of the queue of the users waiting in line is positively correlated with the estimated processing time and the duration fluctuation parameter.

[0011] Based on this scheme, for any user waiting in line, the estimated processing time for their current task can be determined by first combining historical transaction data. Then, based on the processing times of other transactions within the historical period of the user's current task, a duration fluctuation parameter for that period can be determined. Finally, the queue for the user can be determined based on the estimated processing time and the duration fluctuation parameter. Because this method uses data on the processing times of other transactions within the historical period of the user's current task, the determined duration fluctuation parameter reflects the degree of difference in processing times for each transaction. Therefore, when selecting a queue for a user, a more reasonable queue can be chosen based on the degree of difference, allowing all queues to process transactions as quickly as possible, reducing the average waiting time, and thus improving the efficiency of the service provider in providing services to users.

[0012] In one possible implementation method, determining the estimated processing time of a pending task for a user waiting in line based on historical transaction processing data includes: obtaining first records from historical transaction processing data that match the transaction processing attributes of the pending task; determining a reference processing time for the pending task based on the first records; determining second records of the pending task processed by the user waiting in line from the historical transaction processing data, and determining the processing time deviation rate of the pending task for the user waiting in line based on the second records; and determining the estimated processing time of the pending task based on the reference processing time and the processing time deviation rate.

[0013] Based on this scheme, on the one hand, the first records in historical transaction data that match the transaction attributes of the pending tasks of the users in the queue can be determined, thereby determining the reference processing time for the users in the queue. On the other hand, the processing time deviation rate of the users in the queue can be determined based on the second records in the historical transaction data. Then, the estimated processing time for the users in the queue can be calculated based on the reference processing time and the processing time deviation rate. This method, by correcting the reference processing time using the processing time deviation rate, yields a more accurate estimated processing time that accurately represents the time spent by users in the queue when processing their pending tasks. This allows the estimated processing time to be displayed when issuing queue tickets to users in the queue, which clearly aligns with users' queuing psychology.

[0014] In one possible implementation method, the business processing attribute includes processing time; determining the reference processing time of the pending business based on each first record includes: taking the median of the historical processing times corresponding to each first record as the reference processing time of the pending business; determining each second record processed by the queuing user from the historical business processing data, and determining the processing time deviation rate of the queuing user for the pending business based on each second record includes: taking each historical business processing record of the queuing user obtained from the historical business processing data as each second record; determining a second reference processing time for any second record based on the historical business processing data; and determining the processing time deviation rate of the pending business based on the actual processing time and the second reference processing time of each second record.

[0015] Based on this scheme, on the one hand, the first records matching the business processing attributes of the pending tasks of users in the queue can be extracted from historical business processing data, and the median (or mean, mode, etc.) of each first record can be used as a reference processing time for users in the queue to process their pending tasks in this instance, thus having a certain degree of universality. On the other hand, by obtaining the second records of users in the queue from historical business processing data, the responsiveness of users in the queue during business processing can be determined. This responsiveness can be used to characterize the state of users in the queue when processing their pending tasks. This responsiveness is the processing time deviation rate of users in the queue when processing their pending tasks. In this way, by calibrating the reference processing time using the processing time deviation rate, the expected processing time of users in the queue when processing their pending tasks can be obtained.

[0016] In one possible implementation method, obtaining the processing time of each business in the historical period of the period in which the pending business is located, and determining the duration fluctuation parameter of the period in which the pending business is located based on the processing time of each business, includes: obtaining the processing time of each business in the historical period of the period in which the pending business is located; determining the mean and standard deviation of the processing time based on the processing time of each business; and determining the duration fluctuation parameter of the period in which the pending business is located based on the mean and the standard deviation.

[0017] Based on this scheme, when determining the queue for a user waiting in line, the processing time of each service in the historical period of the user's pending business can be used as a reference factor. Specifically, the mean and standard deviation of the processing time can be determined from the historical processing time. Then, the duration fluctuation parameter for the pending business period can be determined based on the calculated mean and standard deviation. Since the duration fluctuation parameter represents the degree of difference in processing time for each service, a larger value can be set when the difference in processing time is small, and a smaller value can be set when the difference is large. This can result in a smaller average waiting time for each queue, thereby improving the efficiency of the service provider in providing services to users.

[0018] In one possible implementation, the number of queues is N; determining the duration fluctuation parameter of the period in which the pending task is located based on the mean and the standard deviation includes: if the ratio of the mean to the standard deviation is not greater than a first reference value, then determining the duration fluctuation parameter of the period in which the pending task is located as a preset threshold; the preset threshold is less than 1; or, if the ratio of the mean to the standard deviation is greater than the first reference value and not greater than a second reference value, then determining the duration fluctuation parameter of the period in which the pending task is located as a preset threshold and the first reference value is less than 1. Positive correlation; the second reference value is less than 1; or, if the ratio of the mean to the standard deviation is greater than the second reference value, then the duration fluctuation parameter of the period in which the pending business is located is determined to be positively correlated with the standard deviation. Positive correlation.

[0019] Based on this scheme, when the ratio between the mean and the standard deviation is relatively small, it indicates that the service provider's handling of various services is relatively even throughout the historical period, and the processing time for each service is similar. In this case, the duration fluctuation parameter value can be set smaller. Thus, when the expected processing time for a user in the queue is short, that user can be placed in a queue with a shorter remaining queue time, allowing them to complete their pending tasks as quickly as possible and freeing up the queue for new users. This avoids placing a user with a short expected processing time in a queue with a long remaining queue, as this would increase the average waiting time, which is undesirable. Conversely, when the ratio between the mean and the standard deviation is relatively large, it indicates that the service provider's handling of various services is relatively uneven throughout the historical period, with some services taking significantly longer or shorter times than others. For other services, the time fluctuation parameter value can be set larger. This way, when the estimated processing time for a user in the queue is long, they can be placed in a queue with a longer remaining waiting time. This aligns with user psychology, as users who know their expected processing time is long are less concerned about waiting longer and can use this time to do other things. It's preferable to place them in a queue with a shorter remaining waiting time, as this would increase the average waiting time if a new user with a shorter estimated processing time follows them, which is undesirable. Therefore, having users wait a little longer has a smaller impact on the average waiting time than having them occupy a queue with a shorter remaining time. This effectively shortens the average waiting time and improves the service provider's efficiency in serving users.

[0020] In one possible implementation method, the pending tasks have a first weight; determining the queue of the user waiting to be queued from each queue based on the estimated processing time and the time fluctuation parameter includes: using the queue with the shortest queuing time among the queues as a reference queue; determining the queue of the user waiting to be queued from each queue based on the estimated processing time, the time fluctuation parameter, the queuing time of the reference queue, and the first weight; the queuing time of the user waiting to be queued is negatively correlated with the first weight.

[0021] Based on this scheme, the various services that a service provider can offer to a customer are not entirely the same in meaning to the service provider. Therefore, in the process of arranging users waiting in line into a more suitable queue, the queue determined by combining the first weight of the service that the user needs to handle this time (i.e. the service to be done) can make the queue more reasonable when used to queue users.

[0022] In one possible implementation method, before obtaining the processing time of each business in the historical period of the period in which the pending business is located, and determining the duration fluctuation parameter of the period in which the pending business is located based on the processing time of each business, the method further includes: determining that there is no idle queue in each queue; the method further includes: if there is an idle queue in each queue, then determining the idle queue as the queue of the user waiting to queue.

[0023] Based on this scheme, when there are no idle queues in each queue, the estimated processing time of the pending business of the users waiting to be queued can be obtained, and combined with the obtained time fluctuation parameters, a better queue can be determined for the users waiting to be queued; once an idle queue appears in each queue, the users waiting to be queued can be placed into the idle queue, which can speed up the business processing progress of the service provider.

[0024] In one possible implementation method, the processing time for the user waiting in line is determined based on the queuing time of the queue and the estimated processing time; the user waiting in line is then notified of the processing time.

[0025] Based on this scheme, since the estimated processing time for each user waiting in line is calculated, they can know the time it will take to process their task, allowing them to be aware of the time commitment and aligning with user psychology. Furthermore, when a user is placed in the designated queue, the estimated processing time of each user in the queue is calculated, and combined with their own estimated processing time, the user can know the total time spent from queuing to the completion of their task. By subtracting this from their own estimated processing time, the user can obtain their total waiting time. This allows users to better plan their waiting time while avoiding missing their turn, further aligning with user psychology.

[0026] Secondly, embodiments of this application provide an apparatus for determining a queue, the apparatus comprising: an estimated processing time determination unit, configured to determine the estimated processing time of a pending transaction for a user waiting in line based on historical transaction processing data; a time fluctuation parameter determination unit, configured to obtain the processing time of each transaction in a historical period of the period in which the pending transaction is located, and determine a time fluctuation parameter of the period in which the pending transaction is located based on the processing time of each transaction; the time fluctuation parameter being used to reflect the degree of difference in the processing time of each transaction; and a queue determination unit, configured to determine the queue of the user waiting in line from each queue based on the estimated processing time and the time fluctuation parameter; wherein the queuing time of the queue of the user waiting in line is positively correlated with the estimated processing time and the time fluctuation parameter.

[0027] Thirdly, embodiments of this application provide a computing device, including:

[0028] Memory, used to store program instructions;

[0029] A processor is configured to invoke program instructions stored in the memory and execute any implementation method of the first aspect according to the obtained program.

[0030] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions for causing a computer to perform any implementation method as described in the first aspect. Attached Figure Description

[0031] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0032] Figure 1 A schematic diagram illustrating a method for determining a queue, as provided in an embodiment of this application;

[0033] Figure 2 A schematic diagram of a window queuing system provided in this application embodiment;

[0034] Figure 3 A schematic diagram of an apparatus for determining a queue, provided in an embodiment of this application;

[0035] Figure 4 A computing device provided in an embodiment of this application. Detailed Implementation

[0036] To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0037] Current queuing schemes, whether single-queue FIFO or multi-queue FIFO, generally suffer from long average waiting times. To address this issue, embodiments of this application provide a method for determining the queuing queue, such as... Figure 1 The diagram shown is a schematic representation of a method for determining a queue according to an embodiment of this application. The method includes:

[0038] Step 101: Based on historical business processing data, determine the estimated processing time for pending business of users in the queue.

[0039] In this step, the service provider, such as a bank, government department, or hospital, records the transaction details for each user during the service process. This historical transaction data includes information such as the type of transaction, the applicant's personal information, and the transaction time. By processing this historical transaction data, the estimated processing time for each user waiting in the queue can be obtained. The transactions that users are currently waiting for are the pending transactions.

[0040] Step 102: Obtain the processing time of each business in the historical period of the period in which the pending business is located, and determine the duration fluctuation parameter of the period in which the pending business is located based on the processing time of each business.

[0041] The duration fluctuation parameter is used to reflect the degree of difference in processing time for each service.

[0042] In this step, the processing time of each service in a historical period can be used to determine the duration fluctuation parameter for the next period. For example, a duration fluctuation parameter Z11 can be determined based on the processing time of each service in the first week, and this parameter Z11 can be used as the duration fluctuation parameter for all users waiting in line in the second week; similarly, a duration fluctuation parameter Z12 can be determined based on the processing time of each service in the second week, and this parameter Z12 can be used as the duration fluctuation parameter for all users waiting in line in the third week, and so on. Alternatively, a duration fluctuation parameter Z21 can be determined based on the processing time of each service in the first month, and this parameter Z21 can be used as the duration fluctuation parameter for all users waiting in line in the second month; similarly, a duration fluctuation parameter Z22 can be determined based on the processing time of each service in the second month, and this parameter Z22 can be used as the duration fluctuation parameter for all users waiting in line in the third month, and so on. Therefore, this application does not limit the time period.

[0043] Step 103: Determine the queue of the user waiting to queue from each queue based on the estimated processing time and the time fluctuation parameter.

[0044] The queuing time of the queue of the users waiting in line is positively correlated with the expected processing time and the time fluctuation parameter.

[0045] In this step, based on the estimated processing time of the pending transactions of the users in the queue determined in step 101 and the time fluctuation parameters of the users in the queue determined in step 102, a suitable queue can be determined from the existing queues. The current queuing time of the determined suitable queue is positively correlated with both the estimated processing time and the time fluctuation parameters of the users in the queue. The suitable queue is determined based on the goal of minimizing the average waiting time of each queue, thereby improving the efficiency of the service provider in providing services to users.

[0046] This method uses data on the processing time of each service in the historical period of the user waiting in line. The time fluctuation parameter determined can reflect the degree of difference in the processing time of each service. Therefore, when selecting a queue for the user waiting in line, a more reasonable queue can be selected based on the degree of difference. This allows each queue to process services as quickly as possible, reducing the average waiting time and improving the efficiency of the service provider in providing services to users.

[0047] The following will provide a detailed explanation of some of the steps mentioned above, with examples.

[0048] In one implementation of step 101 above, determining the estimated processing time of the pending business of a user waiting in line based on historical business processing data includes: obtaining first records that match the business processing attributes of the pending business from historical business processing data; determining a reference processing time for the pending business based on the first records; determining second records of the pending business processed by the user waiting in line from the historical business processing data, and determining the processing time deviation rate of the pending business for the user waiting in line based on the second records; and determining the estimated processing time of the pending business based on the reference processing time and the processing time deviation rate.

[0049] In some embodiments of this application, the business processing attribute includes processing time; determining the reference processing time of the pending business based on each first record includes: taking the median of the historical processing times corresponding to each first record as the reference processing time of the pending business; determining each second record processed by the queuing user from the historical business processing data, and determining the processing time deviation rate of the queuing user for the pending business based on each second record includes: taking each historical business processing record of the queuing user obtained from the historical business processing data as each second record; determining a second reference processing time for any second record based on the historical business processing data; and determining the processing time deviation rate of the pending business based on the actual processing time and the second reference processing time of each second record.

[0050] For example, by analyzing the transaction processing data of various banking users, factors affecting transaction processing time can be identified, including transaction type, age group, and transaction amount. Therefore, based on the actual processing status of a user's pending transactions, historical transaction data matching that user's actual situation can be retrieved. Furthermore, based on the user's individual historical transaction history, the estimated processing time for their pending transactions can be approximated. The following concrete example illustrates how to determine the estimated processing time for pending transactions of users in the queue.

[0051] On the one hand, based on the historical business processing data of the most recent day T, the evaluation factors for users waiting in line include R1, R2, ... R n If we extract a sample of historical transactions with the same factors from the historical transaction data of the most recent day T as S, then the median of the sample S can be used as the reference processing time.

[0052] On the other hand, for historical business processing data from the most recent day T, when there are historical processing records for users waiting in the queue, the processing time deviation rate for these users can be calculated using the following method:

[0053]

[0054] If no historical records exist, then the processing time deviation rate = 1.

[0055] Therefore, the estimated processing time C for the pending business of users in the queue is calculated. m The estimated processing time (C) can be calculated as follows: m = Reference processing time × Processing time deviation rate

[0056] For example, suppose a customer with customer number C001, who is waiting in line, visits the store again on April 1, 2021, and needs to withdraw less than 50,000 yuan. Assuming the data time range is T = 365 days, then by reading the database, the historical transaction data from the past year prior to April 1, 2021, can be determined as shown in Table 1 below:

[0057]

[0058] Table 1 Historical Business Processing Data

[0059] When user C001, who was waiting in line, returned to the store on April 1, 2021, wanting to withdraw less than 50,000 yuan, the system first retrieved historical transaction data based on C001's transaction attributes, including the transaction type being withdrawal, the transaction amount being less than 50,000 yuan, and the age range being 1992-2001. Records 1, 2, 3, 4, and 6 were identified as matching C001's transaction attributes. Therefore, by sorting the processing times indicated in these five records in ascending order, the median of the sorted processing times was used as a reference processing time. For example, after sorting, the reference processing time was determined to be 120 seconds.

[0060] On the other hand, the user C001 waiting in the queue has 3 historical records in the historical business processing data shown in Table 1, namely record 1, record 2 and record 7.

[0061] For example, referring to Table 1, for record 1, the actual time taken for this transaction was 180 seconds. By searching Table 1, it can be determined that the only record that matches the user's transaction processing attributes is record 4. Therefore, the processing time of 120 seconds indicated by record 4 can be used as the reference processing time for this transaction. The number of days for this transaction is 59 days.

[0062] For record 2, the actual processing time of this transaction was 300 seconds. By searching Table 1, it can be determined that the records that match the transaction processing attributes of user C001 in this transaction include record 1, record 3 and record 4. Therefore, the processing time indicated by the records in this group can be sorted in ascending order. It can be determined that the reference processing time of record 2 is 120 seconds and the number of days the transaction took is 30 days.

[0063] For record 7, the actual processing time of this transaction was 840 seconds. By searching Table 1, it can be determined that the only record that matches the user's transaction processing attributes is record 8. Therefore, the processing time of 600 seconds indicated by record 8 can be used as the reference processing time of this transaction. The number of days for this transaction is 86 days.

[0064] Based on records 1, 2, and 7, the total number of days for these three transactions is 59 + 30 + 86 = 175 days. Therefore, the processing time deviation rate for user C001 in the queue during this transaction can be determined through the following calculation process:

[0065]

[0066] Therefore, after obtaining the reference processing time of 120 seconds for the pending tasks of users in the queue and the processing time deviation rate of 1.89, the estimated processing time for the pending tasks of users in the queue can be determined as follows:

[0067] Estimated processing time = 120 × 1.89 ≈ 226 seconds

[0068] It should be noted that, in the process of determining the reference processing time, the average or mode of the processing time indicated by each record can also be used as the reference processing time, and this application does not limit this.

[0069] Analyzing the first-in-first-out (FIFO) method of a single queue, when the number of windows is 1, the formula for calculating the average waiting time is as follows:

[0070]

[0071] This formula shows that the average waiting time is minimized when all customers are arranged in ascending order of processing time.

[0072] For example, suppose the processing times for customers a, b, c, and d are 5, 2, 6, and 1 minutes respectively. When a single queue following a first-in-first-out (FIFO) method is formed by queuing customers a, b, c, and d in that order, the waiting times for customers a, b, c, and d are 0, 5, 7, and 13 minutes respectively, resulting in an average waiting time of 6.25 minutes. If the processing order of customers is changed to d, b, a, and c, the waiting times for customers d, b, a, and c become 0, 1, 3, and 8 minutes respectively, with the minimum average waiting time of 3 minutes.

[0073] Based on the aforementioned queuing principle that minimizes average waiting time, this embodiment of the application allocates a separate queuing queue to each window. During the process of selecting a queue for arriving customers using an algorithm, it leverages the length differences between different queues to select the overall optimal queue for each customer, rather than the shortest one. This achieves a reordering of customers within a certain range, thereby reducing the overall average waiting time. Simultaneously, because individual queues remain ordered, fairness to other customers in the queue is not affected.

[0074] In one implementation of step 102 above, obtaining the processing time of each business in the historical period of the period in which the pending business is located, and determining the duration fluctuation parameter of the period in which the pending business is located based on the processing time of each business, includes: obtaining the processing time of each business in the historical period of the period in which the pending business is located; determining the mean and standard deviation of the processing time based on the processing time of each business; and determining the duration fluctuation parameter of the period in which the pending business is located based on the mean and the standard deviation.

[0075] In some embodiments of this application, determining the duration fluctuation parameter of the period in which the pending task is located based on the mean and the standard deviation includes: if the ratio of the mean to the standard deviation is not greater than a first reference value, then determining the duration fluctuation parameter of the period in which the pending task is located as a preset threshold; the preset threshold is less than 1; or, if the ratio of the mean to the standard deviation is greater than the first reference value and not greater than a second reference value, then determining the duration fluctuation parameter of the period in which the pending task is located as a preset threshold and the first reference value is less than 1. Positive correlation; the second reference value is less than 1; or, if the ratio of the mean to the standard deviation is greater than the second reference value, then the duration fluctuation parameter of the period in which the pending business is located is determined to be positively correlated with the standard deviation. Positive correlation.

[0076] For example, when selecting a suitable queue for a user waiting in line, the range of user reordering needs to be adjusted accordingly due to differences in actual business conditions and the number of windows. Therefore, this embodiment introduces a duration fluctuation parameter Z, and its value evaluation algorithm is as follows:

[0077] Step 1: Based on the period in which the user in the queue is located, obtain the business processing data from a historical period before the period in which the user in the queue is located, and use it as a sample; where each sample is the time that each user spends at the window to process the business they want to process during the peak business period, that is, the actual business processing time.

[0078] Step 2: Calculate the average E and standard deviation S of the processing time for this sample.

[0079] Step 3: Let N be the number of service windows provided by the service provider during the current queuing process for users waiting in line. The queuing time fluctuation parameter Z can achieve better queuing results when it is set as follows:

[0080] Scenario 1, in If the value is not greater than the first reference value, set to 0.5, then the duration fluctuation parameter Z is determined to be a preset threshold, set to 0.5.

[0081] Scenario 2, in If the value is greater than the first reference value by 0.5 but not greater than the second reference value, it is set to 1. Then, the duration fluctuation parameter Z is determined. as well as Positive correlation;

[0082] Scenario 3, in When it is greater than the second reference value of 1, then the duration fluctuation parameter Z is determined to be... Positive correlation.

[0083] The above three situations can be summarized as follows:

[0084]

[0085] in, Used to assess the concentration of processing times for different types of business.

[0086] when A smaller value indicates a significant difference in processing times between different services. In this case, a smaller time fluctuation parameter should be used; otherwise, it may lead to excessively large differences in the remaining queuing time for each queue. This can be further explained as: when When the value is relatively small, it indicates that the service provider's processing of various services is relatively even throughout the historical period, and the processing time for each service is similar. In this case, the duration fluctuation parameter value can be set smaller. Thus, when the expected processing time for users in the queue is short, these users can be placed in queues with shorter remaining waiting times. This allows them to complete their pending tasks as quickly as possible, freeing up the queue for new users. It avoids assigning them to queues with longer remaining waiting times. This is because, according to the aforementioned principle that queuing users in ascending order of processing time minimizes the average waiting time, placing a user with a short expected processing time in a queue with a long remaining waiting time would increase the overall average waiting time, which is undesirable.

[0087] when A larger value indicates that the processing times for different services are not significantly different. The time fluctuation parameter should be gradually increased based on the number of service windows; otherwise, increasing the number of windows will not achieve the goal of shortening the overall average waiting time. This can be further explained as: when... A larger value indicates that the service provider's handling of various services was uneven throughout the historical period. Some services took significantly longer or shorter times than others. In this case, a larger value for the time fluctuation parameter can be used. Thus, when the estimated processing time for a user in the queue is long, that user can be placed in a queue with a longer remaining waiting time. This aligns with user psychology, as users who know their expected processing time is long are less concerned about the longer wait and can use this time to do other things. Avoid placing users in queues with shorter remaining waiting times. Based on the principle that queuing users in ascending order of their processing time minimizes the average waiting time, placing a new user with a shorter expected processing time after the first user will increase the overall average waiting time, which is undesirable. Therefore, allowing users to wait a little longer is less detrimental to the average waiting time than having them occupy a queue with a shorter remaining time. This effectively shortens the average waiting time and improves the service provider's efficiency in serving users.

[0088] In one implementation of step 103 above, the pending business has a first weight; determining the queue of the user waiting to be queued from each queue based on the estimated processing time and the time fluctuation parameter includes: taking the queue with the shortest queuing time as a reference queue; determining the queue of the user waiting to be queued from each queue based on the estimated processing time, the time fluctuation parameter, the queuing time of the reference queue, and the first weight; the queuing time of the user waiting to be queued is negatively correlated with the first weight.

[0089] Continuing with the previous example, for a user waiting in line, on the one hand, by analyzing historical transaction data based on the user's pending tasks and personal information, the estimated processing time for the pending tasks can be determined; on the other hand, by obtaining the processing time of each transaction in the historical period of the user's current period, the time fluctuation parameter for the user's current queuing time can be determined. Based on these two factors, a suitable queue can be selected from multiple queues for the user to queue in. The remaining queuing time of the queue determined for the user is positively correlated with the user's estimated processing time and time fluctuation parameter.

[0090] For example, for two users who arrive at the same time and are waiting in line, let's call them user A and user B. Since their time fluctuation parameters are the same, if user A's expected processing time is longer than user B's expected processing time, then the remaining queuing time for user A's queue will be longer than the remaining queuing time for user B's queue.

[0091] For example, for two different periods, let’s call them period 1 and period 2, if the estimated processing time for a user C to handle business 1 in period 1 is the same as the estimated processing time for a user D to handle business 2 in period 2, then if the duration fluctuation parameter of period 1 is greater than the duration fluctuation parameter of period 2, then the remaining queuing time of the queue determined for user 1 will be greater than the remaining queuing time of the queue determined for user D.

[0092] In addition to the methods mentioned above for determining queues for users waiting in line, a suitable queue can also be determined by combining the weight of pending tasks, as follows:

[0093] First, for the case where user m in the queue wants to process service A, let C be... m For his estimated processing time, G m G represents the weight of business A, where G m∈(0,1], the weight of each business is determined by the service provider according to the importance of the business type. The weight of the business is positively correlated with the importance of the business type, that is, the business type with greater importance has a greater weight, and the business type with less importance has a smaller weight.

[0094] Then, let Q p For the queue of window p, W p For queue Q p The current estimated waiting time, i.e. the remaining queuing time, has the following value:

[0095]

[0096] Where n represents the queue Q p There are currently n people in the queue, C n This indicates the estimated processing time for each person in the queue.

[0097] For example, let queue Q be... p There is m a ,m b ,m c There are 3 people in the queue, m a ,m b ,m c The estimated processing time for these three people in line is C. a =5 minutes, C b =15 minutes, C c =8 minutes, then W p =5 + 15 + 8 = 28 minutes.

[0098] Let Q be the queue with the shortest remaining waiting time among all the current queues. r The remaining queuing time is W. r ;

[0099] Therefore, for user m waiting in the queue, he / she should be assigned to queue Q. p ,satisfy:

[0100]

[0101] like Figure 2 The diagram shown is a window queuing illustration provided in an embodiment of this application. Currently, there are four queuing windows, each offering identical business services. Each queuing window corresponds to a queuing queue. The remaining queuing time for queue 1 is 95 minutes, for queue 2 it is 75 minutes, for queue 3 it is 65 minutes, and for queue 4 it is 45 minutes. Figure 2 The window queuing situation shown indicates that the estimated processing time C for user m in the queue is... m=35, Business weight G m =0.6, and when the duration fluctuation parameter Z=2, then the queue with the largest remaining queuing time should be selected from the queues that satisfy the condition of remaining queuing time ≤ (45+35×(1-0.6)×2). Among them, the queues that meet this condition include queues 3 and 4. The queue with the largest remaining queuing time is queue 3, which is selected as the queue for user m to wait in line.

[0102] Based on the above, it can be seen that for two users arriving at the same time and waiting in the queue, denoted as user E and user F, since they correspond to the same duration fluctuation parameter, if the expected processing time of their respective pending tasks is the same, and assuming that the weight of user E's pending task is greater than the weight of user F's pending task, then according to the calculation method for determining the queue for users waiting in the queue, the remaining queuing time of the queue selected for user E will be less than the remaining queuing time of the queue selected for user F. Therefore, in this application, it is preferred to place users with larger business weights into queues with shorter remaining queuing times, which satisfies the requirement of the service provider to provide services to users with important business as quickly as possible.

[0103] In some implementations of this application, before obtaining the processing time of each business in the historical period of the period in which the pending business is located, and determining the duration fluctuation parameter of the period in which the pending business is located based on the processing time of each business, the method further includes: determining that there is no idle queue in each queue; the method further includes: if there is an idle queue in each queue, then determining the idle queue as the queue of the user waiting to queue.

[0104] For example, in Figure 2 In the window queuing diagram shown, if the service provider temporarily adds several windows for business processing, corresponding to several idle queues, then the user m waiting in line can be directly assigned to any of these idle queues without having to select a suitable queue from the four existing queues. In other words, if when the user m arrives at the store, all currently available windows are already occupied, meaning there are no idle queues, then a suitable queue needs to be selected from the existing queues based on the user m's expected processing time, business weight, and time fluctuation parameters.

[0105] In some embodiments of this application, the processing time for the user waiting in line is determined based on the queuing time of the queue and the estimated processing time; the user waiting in line is then notified of the processing time.

[0106] Based on the previous example, when the queue assigned to user m is queue 3, by adding the remaining queuing time of queue 3 to the estimated processing time of user m, the total time that user m needs from the start of queuing to the end of their business can be obtained, i.e., the processing time. Therefore, when the machine prints a queuing slip for the user, the queuing slip can display the following three types of time:

[0107] 1. Estimated processing time for user m in the queue;

[0108] 2. The processing time for user m in the queue, that is, the total time that user m in the queue needs to spend from the start of queuing to the end of their business processing;

[0109] 3. The waiting time for user m in the queue before he / she can complete his / her business, which is the remaining queuing time of the selected queue.

[0110] Based on the above three types of time, the user m waiting in line can have a macro-level time concept of the current business processing process, which makes it easier for the user to reasonably plan the waiting time according to their actual situation and prevent missing their number.

[0111] Based on the same concept, embodiments of this application provide an apparatus for determining a queue, such as... Figure 3 The diagram shown is a schematic of a device for determining a queue according to an embodiment of this application. The device includes an estimated processing time determination unit 301, a time fluctuation parameter determination unit 302, and a queue determination unit 303.

[0112] The estimated processing time determination unit 301 is used to determine the estimated processing time of pending transactions for users in the queue based on historical transaction processing data.

[0113] The duration fluctuation parameter determination unit 302 obtains the processing time of each business in the historical period of the period in which the pending business is located, and determines the duration fluctuation parameter of the period in which the pending business is located based on the processing time of each business; the duration fluctuation parameter is used to reflect the degree of difference in the processing time of each business.

[0114] The queue determination unit 303 is used to determine the queue of the user waiting to queue from each queue based on the estimated processing time and the time fluctuation parameter; wherein the queuing time of the queue of the user waiting to queue is positively correlated with the estimated processing time and the time fluctuation parameter.

[0115] Furthermore, for this device, the estimated processing time determination unit 301 is specifically used for: obtaining each first record that matches the business processing attribute from historical business processing data based on the business processing attribute of the pending business of the user in the queue; determining the reference processing time of the pending business based on the first record; determining each second record processed by the user in the queue from the historical business processing data, and determining the processing time deviation rate of the pending business for the user in the queue based on the second record; and determining the estimated processing time of the pending business based on the reference processing time and the processing time deviation rate.

[0116] Furthermore, for this device, the business processing attribute includes processing time; the estimated processing time determination unit 301 is further configured to: take the median of each historical processing time corresponding to each first record as the reference processing time of the pending business; and take each historical business processing record of the queuing user obtained from the historical business processing data as each second record; for any second record in the second records, determine the second reference processing time of the second record based on the historical business processing data; and determine the processing time deviation rate of the pending business based on the actual processing time of each second record and the second reference processing time.

[0117] Furthermore, for this device, the duration fluctuation parameter determination unit 302 is specifically used to: obtain the processing time of each business in the historical period of the period in which the pending business is located; determine the mean and standard deviation of the processing time based on the processing time of each business; and determine the duration fluctuation parameter of the period in which the pending business is located based on the mean and the standard deviation.

[0118] Furthermore, for this device, the number of each queue is N; the duration fluctuation parameter determination unit 302 is specifically used for: if the ratio of the mean to the standard deviation is not greater than a first reference value, then determining the duration fluctuation parameter of the period in which the pending business is located as a preset threshold; the preset threshold is less than 1; or, if the ratio of the mean to the standard deviation is greater than the first reference value and not greater than a second reference value, then determining the duration fluctuation parameter of the period in which the pending business is located as a ratio to the first reference value and the second reference value. Positive correlation; the second reference value is less than 1; or, if the ratio of the mean to the standard deviation is greater than the second reference value, then the duration fluctuation parameter of the period in which the pending business is located is determined to be positively correlated with the standard deviation. Positive correlation.

[0119] Furthermore, for this device, the pending business has a first weight; the queue determination unit 303 is specifically used to: take the queue with the shortest queuing time among all queues as the reference queue; determine the queue of the user waiting to queue from among the queues according to the expected processing time, the time fluctuation parameter, the queuing time of the reference queue and the first weight; the queuing time of the user waiting to queue is negatively correlated with the first weight.

[0120] Furthermore, for this device, the duration fluctuation parameter determination unit 302 is also used to determine that there is no idle queue in each of the queuing queues; the queue determination unit 303 is also used to: if there is an idle queue in each of the queuing queues, then determine the idle queue as the queue of the user waiting to queue.

[0121] Furthermore, the device also includes a processing time determination unit 304 and a notification unit 305; the processing time determination unit 304 is used to determine the processing time of the user waiting in line based on the queuing time of the queue and the estimated processing time; the notification unit 305 is used to notify the user waiting in line of the processing time.

[0122] This application also provides a computing device, which may specifically be a desktop computer, portable computer, smartphone, tablet computer, personal digital assistant (PDA), etc. The computing device may include a central processing unit (CPU), memory, input / output devices, etc. Input devices may include a keyboard, mouse, touchscreen, etc., and output devices may include display devices, such as liquid crystal displays (LCDs) and cathode ray tubes (CRTs).

[0123] The memory may include read-only memory (ROM) and random access memory (RAM), and provides the processor with program instructions and data stored in the memory. In embodiments of this application, the memory may be used to store program instructions for a method of determining a queue.

[0124] The processor is used to call program instructions stored in the memory and execute a method for determining the queue according to the obtained program.

[0125] like Figure 4 The diagram shown is a schematic representation of a computing device provided in an embodiment of this application. The computing device includes:

[0126] The processor 401, memory 402, transceiver 403, and bus interface 404 are provided; wherein the processor 401, memory 402, and transceiver 403 are connected via bus 405.

[0127] The processor 401 is used to read the program in the memory 402 and execute the above-described method for determining the queue.

[0128] Processor 401 can be a central processing unit (CPU), a network processor (NP), or a combination of a CPU and an NP. It can also be a hardware chip. The aforementioned hardware chip can be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The aforementioned PLD can be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.

[0129] The memory 402 is used to store one or more executable programs and can store data used by the processor 401 when performing operations.

[0130] Specifically, the program may include program code, which includes computer operation instructions. Memory 402 may include volatile memory, such as random-access memory (RAM); memory 402 may also include non-volatile memory, such as flash memory, hard disk drive (HDD), or solid-state drive (SSD); memory 402 may also include combinations of the above types of memory.

[0131] Memory 402 stores the following elements: executable modules or data structures, or subsets thereof, or extended sets thereof:

[0132] Operation instructions: This includes various operation instructions used to perform various operations.

[0133] Operating system: includes various system programs used to implement various basic business functions and handle hardware-based tasks.

[0134] The 405 bus can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be divided into address buses, data buses, control buses, etc. For ease of representation, Figure 4 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0135] Bus interface 404 can be a wired communication interface, a wireless bus interface, or a combination thereof. The wired bus interface can be, for example, an Ethernet interface. The Ethernet interface can be an optical interface, an electrical interface, or a combination thereof. The wireless bus interface can be a WLAN interface.

[0136] This application also provides a computer-readable storage medium storing computer-executable instructions for causing a computer to perform a method for determining a queue.

[0137] Those skilled in the art will understand that embodiments of this application can be provided as methods or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0138] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0139] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0140] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0141] Although preferred embodiments of this application have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of this application.

[0142] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.

Claims

1. A method for determining a queue, characterized in that, include: Based on historical transaction data, determine the estimated processing time for pending transactions of users in the queue; The processing time of each business in the historical period of the period in which the pending business is located is obtained, and the duration fluctuation parameter of the period in which the pending business is located is determined based on the processing time of each business; the duration fluctuation parameter is used to reflect the degree of difference in the processing time of each business. The step of obtaining the processing time of each business in the historical period of the period in which the pending business is located, and determining the duration fluctuation parameter of the period in which the pending business is located based on the processing time of each business, includes: Obtain the processing time of each business in the historical period of the period in which the pending business is located; Based on the processing time of each service, determine the mean and standard deviation of the processing time; If the ratio of the mean to the standard deviation is not greater than the first reference value, then the duration fluctuation parameter of the period in which the pending business is located is determined to be a preset threshold; the preset threshold is less than 1; or, If the ratio of the mean to the standard deviation is greater than the first reference value and not greater than the second reference value, then the duration fluctuation parameter of the period in which the pending business is located is determined to be the ratio of the two values. Positive correlation; the second reference value is less than 1, where N represents the number of queues; or, If the ratio of the mean to the standard deviation is greater than the second reference value, then the duration fluctuation parameter of the period in which the pending business is located is determined to be related to the... Positive correlation; Based on the estimated processing time and the time fluctuation parameter, the queue of the user waiting to queue is determined from each queue; wherein, the queuing time of the queue of the user waiting to queue is positively correlated with the estimated processing time and the time fluctuation parameter, respectively. The pending tasks have a first weight; determining the queue of the users waiting in line from each queue based on the estimated processing time and the time fluctuation parameter includes: The queue with the shortest queuing time among all queues is used as the reference queue. Based on the estimated processing time, the time fluctuation parameter, the queuing time of the reference queuing queue, and the first weight, the queuing queue of the user waiting to queue is determined from each queuing queue; the queuing time of the user waiting to queue is negatively correlated with the first weight.

2. The method as described in claim 1, characterized in that, The process of determining the estimated processing time for pending transactions of users in the queue based on historical transaction data includes: Based on the business processing attributes of the pending business of the users in the queue, obtain each first record that matches the business processing attributes from the historical business processing data; Based on each of the first records, the reference processing time for the pending business is determined; The second records of the pending users are determined from the historical business processing data, and the processing time deviation rate of the pending users for the pending business is determined based on the second records. The estimated processing time for the pending business is determined based on the reference processing time and the processing time deviation rate.

3. The method as described in claim 2, characterized in that, The service processing attributes include processing time; The step of determining the reference processing time for the pending business based on the first records includes: Based on the historical processing time corresponding to each of the first records, the median of each historical processing time is used as the reference processing time for the pending business. The second records of the pending users are determined from the historical business processing data, and the processing time deviation rate of the pending users for the pending business is determined based on the second records, including: Each historical business processing record of the user waiting in line, obtained from the historical business processing data, shall be used as a second record. For any one of the second records, a second reference processing time is determined based on the historical business processing data; The processing time deviation rate of the pending business is determined based on the actual processing time and the second reference processing time of each of the second records.

4. The method according to any one of claims 1 to 3, characterized in that, Before obtaining the processing time of each business in the historical period of the period in which the pending business is located, and determining the duration fluctuation parameter of the period in which the pending business is located based on the processing time of each business, the method further includes: determining that there is no idle queue in each queue; the method further includes: If there is an idle queue among the queues, then the idle queue is determined as the queue for the user waiting to queue.

5. The method according to any one of claims 1 to 3, characterized in that, The method further includes: The processing time for each user in the queue is determined based on the queuing time of the queue and the estimated processing time. The notification stated the processing time for users waiting in the queue.

6. A computer device, characterized in that, include: Memory, used to store computer programs; A processor is configured to invoke a computer program stored in the memory and execute the method as described in any one of claims 1-5 according to the obtained program.

7. A computer-readable storage medium, characterized in that, The storage medium stores computer-executable instructions for causing a computer to perform the method as described in any one of claims 1-5.

Citation Information

Patent Citations

  • Queue number generating method and terminal equipment

    CN109377633A

  • Network queuing method and device, computer equipment and readable storage medium

    CN111461868A