Data processing method and device, computer program product and electronic equipment
By constructing business and employee constraints and iteratively solving the utility cost function under these conditions, the problem of allocating the number of employees in financial institutions’ outlets in different time periods is solved, the optimal allocation of business volume and employee number is achieved, and operational efficiency and service quality are improved.
Patent Information
- Application Number
- CN202411709954.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-26
- Publication Date
- 2025-03-21
AI Technical Summary
The prior art cannot accurately determine the number of employees that each financial institution outlet should allocate on different time periods, resulting in excessive service pressure in some time periods, but waste of human resources in some time periods.
By constructing business constraints and total number of employees based on business cap data, the utility cost function of each outlet is constructed, and when the constraints are met, the objective function is iteratively solved to obtain the initial business volume and number of employees of the outlets in each time period. Based on the mismatch value less than the preset threshold, the target number of employees is determined for allocation.
It has achieved the optimal allocation of business volume and number of employees of financial institutions' outlets over different time periods, improved operational efficiency and service quality, reduced customer waiting time and improved employee utilization.
Smart Images

Figure CN119671116A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of financial technology, and in particular, to a data processing method and device thereof, a computer program product, and an electronic device. Background Art
[0002] As the types of financial services provided by financial institutions increase, the on-site staff of many financial institutions' branches are facing great service pressure. In terms of geographical dimension, the business volume of different branches varies. Some branches with large business volume have increased work pressure due to insufficient staff, which not only affects the work status of employees, but also reduces the customer service experience. Branches with smaller business volume have the problem of inefficient utilization of human resources. In addition, in terms of time dimension, the peak business hours of different branches are also different. During certain periods, some branches are short of staff due to a surge in business volume, which affects the customer service experience, while in other periods, there may be a waste of human resources.
[0003] However, the number of on-site staff at each branch in different time periods is relatively fixed, which leads to excessive business pressure at some branches during certain periods, while the human resources of other branches are not fully utilized. If the number of on-site staff at each branch in different time periods can be more efficiently allocated in terms of geography and time, it can not only improve the efficiency of human resource utilization, but also significantly improve the service experience of the branches.
[0004] To the above-mentioned problems, no effective solution has been proposed yet. Summary of the invention
[0005] The embodiments of the present invention provide a data processing method and device, a computer program product, and an electronic device, so as to at least solve the technical problem in the related art that it is impossible to accurately determine the number of employees that should be allocated to each branch in different time periods, resulting in excessive service pressure at the branch in some time periods and waste of human resources in other time periods.
[0006] According to one aspect of an embodiment of the present invention, a data processing method is provided, comprising: constructing business constraints based on business upper limit data of each outlet in a target area in each time period, and constructing employee constraints based on the total number of employees in the target area, wherein an outlet refers to an outlet of a financial institution that provides business appointments; constructing a utility cost function for each outlet, and using the utility cost function as an objective function of the outlet, wherein the objective function includes: a business volume variable and an employee quantity variable; iteratively solving the objective function to obtain an initial business volume and an initial number of employees of the outlet in each time period when the business constraints and employee constraints are met; determining a mismatch value corresponding to each time period based on the total number of employees and the initial number of employees of all outlets in all time periods, and using the initial number of employees as a target number of employees when the mismatch value is less than a preset mismatch threshold, so as to allocate a corresponding target number of employees to each outlet in each time period.
[0007] In one embodiment of the present application, the services are divided into: first-category services and second-category services, the first-category services are flexible services in which a time period for a customer to handle the services is determined by a network point, and the second-category services are non-flexible services in which a customer selects a time period for handling the services, and the steps of constructing a service constraint condition based on the service upper limit data of each network point in each time period in a target area include: constructing a first service volume array based on a first service volume variable for handling the first-category services at each network point in each time period, and determining a first service upper limit for handling the first-category services at each network point in each time period; constructing a first service constraint condition based on the first service volume array and the first service upper limit; constructing a second service volume array based on a second service volume variable for handling the second-category services at each network point in each time period, and determining a second service upper limit for handling the second-category services at each network point in each time period; constructing a second service constraint condition based on the second service volume array and the second service upper limit; and characterizing the first service constraint condition and the second service constraint condition as service constraints.
[0008] In one embodiment of the present application, the step of constructing employee constraints based on the total number of employees in the target area includes: constructing an employee quantity array based on the employee quantity variable of each outlet in each time period; and constructing employee constraints based on the employee quantity array and the total number of employees.
[0009] In one embodiment of the present application, the step of constructing a utility cost function for each outlet includes: obtaining business volume data of the outlet handling second-category business in each time period; constructing the utility cost function of the outlet based on the business volume variable of the outlet handling first-category business in each time period, the number of employees of the outlet in each time period, and the business volume data.
[0010] In one embodiment of the present application, under the condition that business constraints and employee constraints are satisfied, the objective function is iteratively solved to obtain the initial business volume and initial number of employees of the outlet in each time period, including: based on the objective function, constructing a first sub-function and a second sub-function, wherein the first sub-function is a function containing a business volume variable, and the second sub-function is a function containing an employee number variable; based on the business constraints and employee constraints, constructing a matrix constraint; based on the dual variables and the penalty parameters, constructing an augmented Lagrangian function, wherein the augmented Lagrangian function includes: a Lagrangian function and a quadratic penalty term that satisfies the matrix constraints; based on the first sub-function, the second sub-function and the augmented Lagrangian function, constructing a solution function; iteratively solving the solution function until the difference between the current dual variable value of the dual variable in the current iteration and the previous dual variable value of the previous iteration is less than a preset difference threshold, thereby obtaining the initial business volume and initial number of employees of the outlet in each time period.
[0011] In one embodiment of the present application, a solution function is iteratively solved until the difference between the current dual variable value of the dual variable in the current iteration and the previous dual variable value of the previous iteration is less than a preset difference threshold, and the steps of obtaining the initial business volume and initial number of employees of the outlet in each time period include: determining the initial business volume, initial number of employees and initial dual variable value of the first iteration; substituting the initial number of employees and the initial dual variable value into the solution function to determine the first business volume of the first iteration; substituting the first business volume and the initial dual variable value into the solution function to determine the first number of employees of the first iteration; substituting the first business volume and the first number of employees into the solution function to determine the first number of employees of the first iteration a dual variable value; based on the first number of employees and the first dual variable value, continue to iterate the business volume variable using the solution function, and based on the current business volume corresponding to the iterated business volume variable and the first dual variable value, continue to iterate the employee number variable using the solution function, and based on the current number of employees corresponding to the iterated employee number variable and the current business volume, continue to iterate the dual variable using the solution function to obtain the current dual variable value of the current iteration; compare the difference between the current dual variable value and the previous dual variable value of the previous iteration with a preset difference threshold, and stop the iteration when the difference is less than the preset difference threshold to obtain the target dual variable value; determine the initial business volume and the initial number of employees based on the target dual variable value.
[0012] In one embodiment of the present application, after determining the initial business volume and the initial number of employees based on the target dual variable value, it also includes: accumulating the initial number of employees corresponding to each outlet in the same time period to obtain the total number of assigned employees; using the difference between the total number of assigned employees and the total number of employees as the mismatch value in the time period; updating the target dual variable value when the mismatch value is greater than the preset mismatch threshold; using the updated target dual variable value as the initialization dual variable value, and re-iterating and solving the objective function.
[0013] According to another aspect of an embodiment of the present invention, a data processing device is also provided, including: a first construction unit, used to construct business constraints based on the business upper limit data of each outlet in the target area in each time period, and to construct employee constraints based on the total number of employees in the target area, wherein the outlet refers to an outlet of a financial institution that provides business appointments; a second construction unit, used to construct a utility cost function for each outlet, and use the utility cost function as the objective function of the outlet, wherein the objective function includes: a business volume variable and an employee number variable; an iteration unit, used to iteratively solve the objective function when the business constraints and employee constraints are met, so as to obtain the initial business volume and initial number of employees of the outlet in each time period; a determination unit, used to determine the mismatch value corresponding to each time period based on the total number of employees and the initial number of employees of all outlets in all time periods, and when the mismatch value is less than a preset mismatch threshold, use the initial number of employees as the target number of employees to allocate the corresponding target number of employees to each outlet in each time period.
[0014] In one embodiment of the present application, the business is divided into: a first type of business and a second type of business, the first type of business is a flexible business in which a time period for a customer to handle the business is determined by an outlet, and the second type of business is a non-flexible business in which a customer chooses a time period for handling the business, and the first construction unit includes: a first construction module, which is used to construct a first business volume array based on a first business volume variable for handling the first type of business at each outlet in each time period, and determine a first business upper limit for handling the first type of business at each outlet in each time period; a second construction module, which is used to construct a first business constraint condition based on the first business volume array and the first business upper limit; a third construction module, which is used to construct a second business volume array based on a second business volume variable for handling the second type of business at each outlet in each time period, and determine a second business upper limit for handling the second type of business at each outlet in each time period; a fourth construction module, which is used to construct a second business constraint condition based on the second business volume array and the second business upper limit; a first characterization module, which is used to characterize the first business constraint condition and the second business constraint condition as business constraint conditions.
[0015] In one embodiment of the present application, the first construction unit also includes: a fifth construction module, used to construct an employee quantity array based on the employee quantity variable of each outlet in each time period; a sixth construction module, used to construct an employee constraint condition based on the employee quantity array and the total number of employees.
[0016] In one embodiment of the present application, the second construction unit includes: a first acquisition module, used to obtain the business volume data of the second type of business handled by the outlet in each time period; a seventh construction module, used to construct a utility cost function of the outlet based on the business volume variable of the first type of business handled by the outlet in each time period, the number of employees of the outlet in each time period and the business volume data.
[0017] In one embodiment of the present application, the iteration unit includes: an eighth construction module, which is used to construct a first sub-function and a second sub-function based on the objective function, wherein the first sub-function is a function including a business volume variable, and the second sub-function is a function including an employee quantity variable; a ninth construction module, which is used to construct a matrix constraint based on business constraints and employee constraints; a tenth construction module, which is used to construct an augmented Lagrangian function based on dual variables and penalty parameters, wherein the augmented Lagrangian function includes: a Lagrangian function and a quadratic penalty term that satisfies the matrix constraint; an eleventh construction module, which is used to construct a solution function based on the first sub-function, the second sub-function and the augmented Lagrangian function; a first iteration module, which is used to iteratively solve the solution function until the difference between the current dual variable value of the dual variable in the current iteration and the previous dual variable value in the previous iteration is less than a preset difference threshold, thereby obtaining the initial business volume and initial number of employees of the outlet in each time period.
[0018] In one embodiment of the present application, the first iteration module includes: a first determination submodule, which is used to determine the initialization business volume, the initialization number of employees and the initialization dual variable value of the first iteration; a second determination submodule, which is used to substitute the initialization number of employees and the initialization dual variable value into the solution function to determine the first business volume of the first iteration; a third determination submodule, which is used to substitute the first business volume and the initialization dual variable value into the solution function to determine the first number of employees of the first iteration; a fourth determination submodule, which is used to substitute the first business volume and the first number of employees into the solution function to determine the first dual variable value of the first iteration; the first iteration submodule, which is used to substitute the first business volume and the first number of employees into the solution function to determine the first dual variable value of the first iteration based on the first number of employees and the first dual variable value. Variable value, use the solution function to continue to iterate the business volume variable, and based on the current business volume corresponding to the iterated business volume variable and the first dual variable value, use the solution function to continue to iterate the employee quantity variable, and based on the current number of employees and the current business volume corresponding to the iterated employee quantity variable, use the solution function to continue to iterate the dual variable to obtain the current dual variable value of the current iteration; a first comparison submodule, used to compare the difference between the current dual variable value and the previous dual variable value of the previous iteration with a preset difference threshold, and stop the iteration when the difference is less than the preset difference threshold to obtain the target dual variable value; a fifth determination submodule, used to determine the initial business volume and the initial number of employees based on the target dual variable value.
[0019] In one embodiment of the present application, the data processing device also includes: a first accumulation module, which is used to accumulate the initial number of employees corresponding to each outlet in the same time period after determining the initial business volume and the initial number of employees based on the target dual variable value, to obtain the total number of assigned employees; a first as module, which is used to use the difference between the total number of assigned employees and the total number of employees as the mismatch value in the time period; when the mismatch value is greater than the preset mismatch threshold, the target dual variable value is updated; and a second as module, which is used to use the updated target dual variable value as the initialization dual variable value to re-iterate and solve the objective function.
[0020] According to another aspect of an embodiment of the present invention, a computer program product is provided, including a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, any one of the above-mentioned data processing methods is implemented.
[0021] According to another aspect of an embodiment of the present invention, there is also provided an electronic device, comprising one or more processors and a memory, wherein the memory is used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement any one of the above-mentioned data processing methods.
[0022] In the present invention, business constraints are constructed based on the business upper limit data of each outlet in the target area in each time period, and employee constraints are constructed based on the total number of employees in the target area. A utility cost function of each outlet is constructed, and the utility cost function is used as the objective function of the outlet. When the business constraints and employee constraints are met, the objective function is iteratively solved to obtain the initial business volume and initial number of employees of the outlet in each time period. Based on the total number of employees and the initial number of employees of all outlets in all time periods, the mismatch value corresponding to each time period is determined, and when the mismatch value is less than a preset mismatch threshold, the initial number of employees is used as the target number of employees to allocate the corresponding target number of employees to each outlet in each time period, thereby solving the technical problem in the related art that the number of employees that should be allocated to each outlet in different time periods cannot be accurately determined, resulting in excessive service pressure in some time periods at the outlets, but waste of human resources in some time periods.
[0023] In the present invention, by constructing business constraints, employee constraints and utility cost functions, and then iteratively solving the utility cost function while satisfying the business constraints and employee constraints, the initial number of employees of each branch in each time period is obtained. If it is determined that the initial number of employees of all branches in all time periods can satisfy the mismatch condition, the determined initial number of employees is the target number of employees to be ultimately allocated to each branch in each time period, thereby achieving the optimal allocation of business volume and number of employees of financial institution branches in different time periods, effectively improving the operating efficiency and service quality of the branches, reducing customer waiting time, and improving employee utilization, thereby achieving the technical effect of accurately determining the number of employees that should be allocated to each branch in different time periods. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] The drawings described herein are used to provide a further understanding of the present invention and constitute a part of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings:
[0025] Figure 1 A hardware structure block diagram of a computer terminal (or mobile device) for implementing a data processing method is shown;
[0026] Figure 2 is a flow chart of a data processing method according to Embodiment 1 of the present application;
[0027] Figure 3 is a schematic diagram of the coordination process of the central coordinator according to Embodiment 1 of the present application;
[0028] Figure 4is a schematic diagram of an optional data processing device according to an embodiment of the present application;
[0029] Figure 5 It is a structural block diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION
[0030] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.
[0031] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0032] It should be noted that the data processing method and device thereof in the present invention can be used in the field of financial technology to determine the number of employees that should be assigned to each branch in different time periods, and can also be used in any field other than financial technology to determine the number of employees that should be assigned to each branch in different time periods. The present invention does not limit the application field of the data processing method and device thereof.
[0033] It should be noted that the relevant information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) collected and involved in the present invention are all information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of relevant data are in compliance with the relevant laws, regulations and standards of the relevant regions, necessary confidentiality measures are taken, and public order and good customs are not violated, and corresponding operation entrances are provided for users to choose to authorize or refuse. For example, an interface is set between the system and the relevant users or organizations. Before obtaining relevant information, it is necessary to send an acquisition request to the aforementioned user or organization through the interface, and obtain relevant information after receiving the consent information fed back by the aforementioned user or organization.
[0034] In the present invention, a method for allocating the number of on-site employees for outlets with business reservations is proposed, which can efficiently allocate the number of on-site employees in various time periods at various outlets in a certain area, so that the business pressure of each outlet in each time period is relatively balanced, which can effectively improve the efficiency of manpower utilization at the outlets, reduce the business pressure of employees during peak business periods, and improve the service experience of the outlets.
[0035] In the present invention, a service utility model of branch staff is constructed, and a branch staff allocation method based on the alternating direction multiplier optimization algorithm (ADMM) is provided, which realizes the efficient allocation of the number of employees in each branch in a certain area in each time period, so that the business pressure of each branch in each time period is relatively balanced, the business pressure during the peak period is reduced, the efficiency of branch manpower utilization is improved, and the customer's branch service experience is improved. In addition, on the basis of the ADMM algorithm, a proximal quadratic penalty term is added, which can realize the rapid solution of branch staff allocation, and the branch staff allocation solution is performed through a distributed solution algorithm, which protects the privacy of the solution result of the number of branch staff.
[0036] The present invention is described in detail below in conjunction with various embodiments.
[0037] Example 1
[0038] According to an embodiment of the present application, an embodiment of a data processing method is also provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0039] The method embodiment provided in the first embodiment of the present application can be executed in a mobile terminal, a computer terminal or a similar computing device. Figure 1 FIG. 1 shows a hardware structure block diagram of a computer terminal (or mobile device) for implementing a data processing method. Figure 1 As shown, the computer terminal 10 (or mobile device) may include one or more ( Figure 1 102a, 102b, ..., 102n are used to illustrate) processor 102 (processor 102 may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 104 for storing data, and a transmission device 106 for communication functions. In addition, it may also include: a display, a keyboard, a cursor control device, an input / output interface (I / O interface), a universal serial bus (USB) port (which may be included as one of the ports of the BUS bus), a network interface, a power supply and / or a camera, wherein the network interface may be connected to a wired and / or wireless network. A person of ordinary skill in the art will understand that Figure 1 The structure shown is only for illustration and does not limit the structure of the above electronic device. Figure 1 More or fewer components as shown, or with Figure 1 Different configurations are shown.
[0040] It should be noted that the one or more processors 102 and / or other data processing circuits described above may generally be referred to herein as "data processing circuits". The data processing circuits may be embodied in whole or in part as software, hardware, firmware, or any other combination thereof. In addition, the data processing circuit may be a single independent processing module, or may be incorporated in whole or in part into any of the other components in the computer terminal 10 (or mobile device). As described in the embodiments of the present application, the data processing circuit acts as a processor control (e.g., selection of a variable resistor terminal path connected to an interface).
[0041] The memory 104 can be used to store software programs and modules of application software, such as program instructions / data storage devices corresponding to the data processing method in the embodiment of the present application. The processor 102 executes various functional applications and data processing by running the software programs and modules stored in the memory 104, that is, realizing the above-mentioned data processing method. The memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include a memory remotely arranged relative to the processor 102, and these remote memories may be connected to the computer terminal 10 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0042] The transmission device 106 is used to receive or send data via a network. The specific example of the above network may include a wireless network provided by a communication provider of the computer terminal 10. In one example, the transmission device 106 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission device 106 can be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0043] The display may be, for example, a touch screen liquid crystal display (LCD) that enables a user to interact with a user interface of the computer terminal 10 (or mobile device).
[0044] Under the above operating environment, this application provides Figure 2 The data processing method shown. Figure 2 is a flow chart of a data processing method according to Embodiment 1 of the present application, such as Figure 2 As shown, the method comprises the following steps:
[0045] Step S201, constructing business constraints based on the business upper limit data of each outlet in the target area in each time period, and constructing employee constraints based on the total number of employees in the target area, wherein the outlet refers to the outlet of a financial institution that provides business appointments.
[0046] In an embodiment of the present invention, each area (for example, a city district, a county, etc.) is provided with a plurality of financial institution outlets that can provide business reservations. Users can make an appointment in advance on the financial institution's business system to handle business at a certain outlet on a certain day or during a certain period of time on a certain day (for example, 9-10 o'clock).
[0047] In the embodiment of the present invention, in order to ensure that the number of businesses that need to be handled by each branch in each time period does not exceed the upper limit of the businesses that can be handled, it is necessary to construct business constraints based on the business upper limit data of each branch in each time period (including the upper limit of businesses that can be handled by each branch in each time period), that is, the business reservation quantity of each branch in each time period must be less than or equal to the corresponding business upper limit.
[0048] In an embodiment of the present invention, the total number of employees in outlets within a certain area is relatively fixed. Therefore, it is necessary to ensure that the number of employees allocated to each outlet in the area does not exceed the total number of employees in the outlets (i.e., the total number of employees). In other words, it is necessary to construct an employee constraint condition based on the total number of employees in the target area, i.e., the number of employees in each outlet in the same time period needs to be equal to the total number of employees.
[0049] Here, the daily working hours (such as 9:00 am to 6:00 pm) can be divided into multiple time periods, and the division time points of each network point in the same area are consistent.
[0050] Step S202: construct a utility cost function for each outlet, and use the utility cost function as the objective function of the outlet, wherein the objective function includes: a business volume variable and an employee quantity variable.
[0051] In an embodiment of the present invention, the business pressure of branch employees and the waiting time of customers served by the branch can be combined into the utility cost of the branch. Therefore, the utility cost of the branch in a certain time period increases significantly with the increase in the amount of business it needs to handle, and the average utility cost of handling a business also increases accordingly. That is, a utility cost function between the number of employees and the amount of business handled by branch n in the hth time period can be constructed (that is, the utility cost function includes two variables: the business volume variable and the number of employees variable). The utility cost function can be set as a quadratic function, and then the utility cost function can be used as the objective function of the branch, so as to obtain the optimal business volume and the optimal number of employees for each branch in each time period by finding the optimal solution to the objective function.
[0052] Step S203, when the business constraint condition and the employee constraint condition are satisfied, the objective function is iteratively solved to obtain the initial business volume and the initial number of employees of the outlet in each time period.
[0053] In the embodiment of the present invention, the goal of solving the objective function is to minimize the sum of the total utility costs of all outlets in all time periods while satisfying the constraints (i.e., business constraints and employee constraints). Therefore, a distributed algorithm can be used to iteratively solve the objective function to obtain the initial business volume and initial number of employees of the outlets in each time period.
[0054] Step S204, based on the total number of employees and the initial number of employees of all outlets in all time periods, determine the mismatch value corresponding to each time period, and when the mismatch value is less than or equal to the preset mismatch threshold, use the initial number of employees as the target number of employees to allocate the corresponding target number of employees to each outlet in each time period.
[0055] In an embodiment of the present invention, in order to ensure the distributed execution of the distributed algorithm, it is necessary to ensure that the number of employees of all outlets in all time periods meets the mismatch condition, that is, the sum of the number of employees of all outlets in the same time period minus the total number of employees in the area to obtain the mismatch value. If the mismatch value is less than or equal to the preset mismatch threshold (i.e., 0), it is determined that the objective function is solved successfully, and the initial number of employees can be used as the target number of employees to allocate the corresponding target number of employees to each outlet in each time period.
[0056] In this embodiment, by solving the optimal solution of the objective function, the business processing time period and the number of branch employees can be adjusted, which can greatly alleviate the pressure on branch employees during peak hours, reduce customer waiting time, and improve customer service experience.
[0057] In summary, by constructing business constraints, employee constraints and utility cost functions, and then iteratively solving the utility cost function while satisfying the business constraints and employee constraints, the initial number of employees for each branch in each time period is obtained. If it is determined that the initial number of employees for all branches in all time periods can satisfy the mismatch condition, then the determined initial number of employees is the target number of employees to be ultimately allocated to each branch in each time period, thereby achieving the optimal allocation of business volume and number of employees for financial institution branches in different time periods, and effectively improving the operating efficiency and service quality of the branches, which can reduce customer waiting time and improve employee utilization, thereby solving the technical problem that the related technology cannot accurately determine the number of employees that should be allocated to each branch in different time periods, resulting in excessive service pressure in some time periods at the branches, but waste of human resources in some time periods, and achieving the technical effect of accurately determining the number of employees that should be allocated to each branch in different time periods.
[0058] Optionally, the services are divided into: first-category services and second-category services, wherein the first-category services are flexible services that determine the time period for customers to handle services through outlets, and the second-category services are non-flexible services that allow customers to select the time period for handling services. In order to improve the accuracy of determining service constraints, in the data processing method provided in Example 1 of the present application, based on the first business volume variable for each outlet to handle the first-category services in each time period, a first business volume array is constructed, and the first business upper limit for each outlet to handle the first-category services in each time period is determined; based on the first business volume array and the first business upper limit, a first business constraint is constructed; based on the second business volume variable for each outlet to handle the second-category services in each time period, a second business volume array is constructed, and the second business upper limit for each outlet to handle the second-category services in each time period is determined; based on the second business volume array and the second business upper limit, a second business constraint is constructed; and the first business constraint and the second business constraint are characterized as business constraints.
[0059] In the embodiment of the present invention, according to the different requirements of the user for the accuracy of the service processing time period, the user can choose to process it on a certain day or a certain time period of a certain day (for example, 9-10 o'clock). Therefore, the appointment service can be divided into time-shifted flexible service (i.e., the first type of service) and inflexible service (i.e., the second type of service). The first type of service is a flexible service in which the time period for the customer to process the service is determined by the outlet (i.e., the time period for the time-shifted flexible service can be calculated by the financial institution system one day before the service is processed, and then the customer is notified by the system SMS to come to process it during the time period); the second type of service is an inflexible service in which the customer chooses the time period for the customer to process the service (i.e., the inflexible service notifies the customer to come to process it during the scheduled time period).
[0060] In the embodiment of the present invention, the first type of business handled by each network point in each time period can be expressed as: n =[v n1 ,...,v nH ] (i.e. the first traffic volume array of node n), and each v n The corresponding value has an appropriate range, and its value range is: Among them, v n1 ,...,v nH They represent the time-shifted flexible business volume handled by network point n in the 1st time period, ..., Hth time period, respectively. is the upper limit of the time-shifted flexible business volume of outlet n, and N is the number of outlets. Therefore, according to the requirement that the time-shifted flexible business volume handled by each outlet in each time period is less than or equal to the corresponding upper limit, a first business constraint condition is constructed, which is a constraint matrix composed of multiple linear inequality constraints.
[0061] In the embodiment of the present invention, the second type of business handled by each network point in each time period can be expressed as: n =[u n1 ,...,u nH ] (i.e., the second traffic volume array of node n), and each u n The corresponding value has an appropriate range, and its value range is: Among them, u n1 ,...,u nH They represent the inflexible business volume handled by branch n in the 1st, ..., Hth time periods, respectively. is the upper limit of the inflexible business volume of outlet n, and N is the number of outlets. Therefore, according to the requirement that the inflexible business volume handled by each outlet in each time period is less than or equal to the corresponding upper limit, a second business constraint condition is constructed, which is a constraint matrix composed of multiple linear inequality constraints.
[0062] In the embodiment of the present invention, the first business constraint condition and the second business constraint condition may be characterized as business constraint conditions used when solving the optimal solution of the objective function.
[0063] In order to improve the accuracy of employee constraint conditions, in the data processing method provided in Example 1 of the present application, an employee quantity array is constructed based on the employee quantity variable of each outlet in each time period; and an employee constraint condition is constructed based on the employee quantity array and the total number of employees.
[0064] In the embodiment of the present invention, the number of employees in each outlet can be expressed as φ n =[φ n1 ,...,φ nH ](i.e. the number of employees in branch n array φ n ), where φ nh represents the number of employees at branch n who handle business in the hth time period. The total number of branch employees in a certain area is relatively fixed and can be expressed as Therefore, the sum of the number of employees in all outlets during the same time period must be equal to the total number of employees, that is, the following business constraints must be met: The business constraint condition is a constraint matrix composed of multiple linear equality constraints.
[0065] In order to improve the accuracy of determining the utility cost function, in the data processing method provided in Example 1 of the present application, the business volume data of the second type of business handled by the outlet in each time period is obtained; based on the business volume variable of the first type of business handled by the outlet in each time period, the number of employees of the outlet in each time period and the business volume data, the utility cost function of the outlet is constructed.
[0066] In the embodiment of the present invention, the business volume data of the second type of business handled by the outlet in each time period can be obtained first, and then the utility cost function of the outlet can be constructed according to the business volume variable of the first type of business handled by the outlet in each time period, the number of employees of the outlet in each time period, and the business volume data. The utility cost function is as follows: Among them, φ nh represents the number of employees handling business at branch n in time period h, v nh represents the time-shifted flexible business volume handled by branch n in the hth time period, u nh It represents the inflexible business volume handled by the outlet n in the hth time period, a>0, b>0, a, b are pre-set parameters, N represents the number of outlets, and H represents the number of divided time periods.
[0067] In order to improve the accuracy of determining the initial business volume and initial number of employees of an outlet in each time period, in the data processing method provided in Example 1 of the present application, based on the objective function, a first sub-function and a second sub-function are constructed, wherein the first sub-function is a function including a business volume variable, and the second sub-function is a function including a number of employees variable; based on the business constraints and the employee constraints, a matrix constraint is constructed; based on the dual variables and the penalty parameters, an augmented Lagrangian function is constructed, wherein the augmented Lagrangian function includes: a Lagrangian function and a quadratic penalty term that satisfies the matrix constraints; based on the first sub-function, the second sub-function and the augmented Lagrangian function, a solution function is constructed; the solution function is iteratively solved until the difference between the current dual variable value of the dual variable in the current iteration and the previous dual variable value in the previous iteration is less than a preset difference threshold, so as to obtain the initial business volume and initial number of employees of the outlet in each time period.
[0068] In the embodiment of the present invention, the objective function is to minimize the sum of the total utility costs of all network points in all time periods while satisfying the constraints, that is, the objective function to be solved is as follows:
[0069]
[0070] In the embodiment of the present invention, the objective function is a function obtained by adding N convex quadratic functions, and is also a convex quadratic function, whose constraint is a partial polyhedral constraint including equality constraints and inequality constraints. Since all the constraints are linear inequality constraints or linear equality constraints. Therefore, the problem of minimizing the sum of utility costs to be solved can be regarded as a convex programming problem with linear equality and inequality constraints, and there is a feasible solution that satisfies the constraints, that is, the objective function has an optimal solution under satisfying the constraints.
[0071] In an embodiment of the present invention, the ADMM computing framework has good applicability for optimization problems whose sub-problems are non-strictly convex optimization functions, and ADMM integrates the excellent convergence properties of the augmented Lagrangian method and the decomposability of the dual ascent method to decompose the original function and the augmented function, thereby facilitating parallel optimization of sub-functions under more general assumptions. And while introducing new variables (i.e., dual variables), the optimization is alternately performed by cross-changing directions. In the problem to be solved, each grid point can be regarded as a node, and the objective function of each node is a convex function and is continuously differentiable. The constraints are all affine and are a closed polyhedron. Therefore, a decentralized algorithm based on the ADMM computing framework can be used for solving.
[0072] In the embodiment of the present invention, the objective function can be converted into a first sub-function (i.e., a function f(x) including a business volume variable) and a second sub-function (i.e., a function g(z) including an employee quantity variable), and a matrix constraint is constructed according to the business constraint condition and the employee constraint condition, which is expressed as follows:
[0073]
[0074] Among them, x represents the business volume variable, z represents the employee quantity variable, A, B, and C are the first matrix, the second matrix, and the constant calculated according to each first business constraint condition, the second business constraint condition, and the business constraint condition, respectively.
[0075] In this embodiment, f(x) is a convex function, g(z) is also a convex function, and the objective function is f(x)+g(z), which is composed of two parts, f(x) related to variable x and g(z) related to variable z, and needs to be minimized. The difference from the general linear equality constraint problem is that the variables can be split into two parts, x and z, in order to facilitate the processing of the regularization term in the objective optimization function; Ax+Bz=c is a matrix description form of the equality constraint, which contains multiple equality constraints.
[0076] In the embodiment of the present invention, an augmented Lagrangian function can be constructed according to the dual variable λ (also called Lagrangian multiplier) and the penalty parameter ρ (ρ>0), and the augmented Lagrangian function includes: Lagrangian function λ T (Ax+Bz-c) and the quadratic penalty term that satisfies the matrix constraints The augmented Lagrangian function is to add a quadratic penalty term about the constraint on the basis of the Lagrangian function of the original problem. The purpose is to reduce the requirements for solving strong convexity and increase convergence.
[0077] Then, according to the first subfunction f(x), the second subfunction g(z) and the augmented Lagrangian function Construct the solution function L ρ (x, z), the solution function L ρ (x, z) is represented as follows:
[0078]
[0079] Afterwards, the solution function is iteratively solved. During the solution process, two variables can be fixed and only the other variable is updated, and the updates are continuously alternating until the difference between the current dual variable value of the current iteration and the previous dual variable value of the previous iteration is less than the preset difference threshold (i.e., a smaller value), thereby obtaining the initial business volume and initial number of employees of the outlet in each time period.
[0080] In order to further improve the accuracy of determining the initial business volume and the initial number of employees, in the data processing method provided in Example 1 of the present application, the initialization business volume, the initialization number of employees and the initialization dual variable value of the first iteration are determined; the initialization number of employees and the initialization dual variable value are substituted into the solution function to determine the first business volume of the first iteration; the first business volume and the initialization dual variable value are substituted into the solution function to determine the first number of employees of the first iteration; the first business volume and the first number of employees are substituted into the solution function to determine the first dual variable value of the first iteration; based on the first number of employees and the first dual variable value, Continue to iterate the business volume variable using the solver function, and based on the current business volume corresponding to the iterated business volume variable and the first dual variable value, continue to iterate the employee quantity variable using the solver function, and based on the current number of employees corresponding to the iterated employee quantity variable and the current business volume, continue to iterate the dual variable using the solver function to obtain the current dual variable value of the current iteration; compare the difference between the current dual variable value and the previous dual variable value of the previous iteration with a preset difference threshold, and stop the iteration when the difference is less than the preset difference threshold to obtain the target dual variable value; determine the initial business volume and the initial number of employees based on the target dual variable value.
[0081] In the embodiment of the present invention, the following three steps are repeatedly performed for k=1, 2, 3, ..., where k represents the number of iterations:
[0082] The first step is to update x, L ρ is a function only about x, using z from the previous iteration k and λ k , find the solution that makes L ρ The minimum x is used as the updated value x of the current iteration k+1 ; The second step is to update z, Lρ It is just a function of z, using the lambda from the previous iteration k and update the value x k+1 , find the solution that makes L ρ The minimum z is taken as the z of the current iteration k+1 The third step is to update λ, using the updated x k+1 and z k+1 value, to update λ and get the updated value λ of the current iteration k+1 . Repeat the above three steps until the change of λ is less than the set value and convergence is achieved. f(x) and g(z) are the key to the alternating update of variables and decomposition execution. The formula for updating x, z, and λ is as follows:
[0083]
[0084] That is, the initialization business volume, the initialization number of employees and the initialization dual variable value of the first iteration can be determined first, and then the initialization number of employees and the initialization dual variable value are substituted into the solution function to determine the first business volume of the first iteration, and then the first business volume and the initialization dual variable value are substituted into the solution function to determine the first number of employees of the first iteration, and then the first business volume and the first number of employees are substituted into the solution function to determine the first dual variable value of the first iteration. Afterwards, based on the first number of employees and the first dual variable value, the solution function is used to continue to iterate the business volume variable, and based on the current business volume and the first dual variable value corresponding to the iterated business volume variable, the solution function is used to continue to iterate the employee number variable, and based on the current number of employees and the current business volume corresponding to the iterated employee number variable, the solution function is used to continue to iterate the dual variable to obtain the current dual variable value of the current iteration. The difference between the current dual variable value and the previous dual variable value of the previous iteration is compared with the preset difference threshold, and when the difference is less than the preset difference threshold, the iteration is stopped to obtain the target dual variable value. Finally, the number of employees and the business volume used to obtain the target dual variable value are determined as the initial number of employees and the initial business volume.
[0085] In some optional embodiments, the first-order term and the second-order term in the augmented Lagrangian function can be combined, the dual variables can be scaled, and the constraint can be defined as: r = Ax + Bz-c, and then the following formula can be obtained:
[0086]
[0087] Among them, u = (1 / ρ)λ is the scaling of the dual variable. Through this form of scaling, the formula for updating x, z, and λ can be changed as follows:
[0088]
[0089] In some other optional embodiments, in order to achieve the fastest possible convergence, the local solution function of the node can be adjusted. Each node adds a factor about the number of employees at the branch in the solution function. nh In an iterative solution, each node solves the following proximal augmented Lagrangian function problem with a large number of constraints on its own utility function:
[0090]
[0091] var:v n ,φ n ,n∈N
[0092] Among them, β>0 is the proximal term parameter, ξ k represents the difference between the sum of the number of employees in all outlets minus the total number of employees obtained in the kth iteration, v n represents the traffic variable of node n, φ n The variable representing the number of employees in branch n, v n k+1 represents the traffic volume of node n obtained in the k+1th iteration, φ n k+1 represents the number of employees in branch n obtained in the k+1th iteration, Represents the number of employees in branch n obtained in the kth iteration.
[0093] In order to achieve accuracy in iteratively solving the objective function, in the data processing method provided in Example 1 of the present application, after determining the initial business volume and the initial number of employees based on the target dual variable value, the initial number of employees corresponding to each outlet in the same time period is accumulated to obtain the total number of assigned employees; the difference between the total number of assigned employees and the total number of employees is used as the mismatch value in the time period; when the mismatch value is greater than the preset mismatch threshold, the target dual variable value is updated; the updated target dual variable value is used as the initialization dual variable value, and the objective function is iteratively solved again.
[0094] In the embodiment of the present invention, in order to ensure the decentralized execution of the algorithm, a central coordinator can be set to collect, process and issue information from each network point. The central coordinator can collect the number of users φ calculated by all nodes (that is, each network point can be characterized as a node) nh , add them together and subtract the total number of employees as the residual ξ (i.e., mismatch value), and then send it to all nodes to update the global dual variable, and continue to iterate until the residual is close to zero. In addition, because the number of users at the outlet is an integer, the number of employees at the outlet φ obtained for all nodes is nh Round up.
[0095] In an embodiment of the present invention, the initial number of employees corresponding to each outlet in the same time period collected can be accumulated to obtain the total number of assigned employees, and then the difference between the total number of assigned employees and the total number of employees is used as the mismatch value in the time period. If the mismatch value is greater than the preset mismatch threshold (i.e., 0), it is necessary to update the target dual variable value, and use the updated target dual variable value as the initialization dual variable value to iteratively solve the objective function again until the sum of the number of employees corresponding to each outlet in the same time period meets the mismatch condition.
[0096] Figure 3 is a schematic diagram of the coordination process of the central coordinator according to Example 1 of the present application, such as Figure 3 As shown, the central coordinator can communicate with each node (including: node 1, node 2, ..., node n). After the node calculation, it can send the calculation result of the number of people to the central coordinator, and then the central coordinator returns the mismatch value to each node to determine whether the mismatch condition is met according to the mismatch value, and update the dual variable when the mismatch condition is not met.
[0097] The data processing method provided in the embodiment of the present application constructs business constraints, employee constraints and a utility cost function, and then iteratively solves the utility cost function under the conditions of satisfying the business constraints and employee constraints to obtain the initial number of employees for each branch in each time period. If it is determined that the initial number of employees for all branches in all time periods can satisfy the mismatch condition, the determined initial number of employees is the target number of employees to be ultimately allocated to each branch in each time period, thereby achieving the optimal allocation of the business volume and number of employees for branches of financial institutions in different time periods, effectively improving the operating efficiency and service quality of the branches, reducing customer waiting time, and improving employee utilization, thereby solving the technical problem in the related art that the number of employees that should be allocated to each branch in different time periods cannot be accurately determined, resulting in excessive service pressure in some time periods at the branches, but waste of human resources in some time periods, and achieving the technical effect of accurately determining the number of employees that should be allocated to each branch in different time periods.
[0098] It should be noted that the steps shown in the flowcharts of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and that, although a logical order is shown in the flowcharts, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0099] Example 2
[0100] The embodiment of the present application also provides a data processing device. It should be noted that the data processing device of the embodiment of the present application can be used to execute the data processing method provided by the embodiment of the present application. The data processing device provided by the embodiment of the present application is introduced below.
[0101] According to an embodiment of the present application, a device for implementing the above data processing method is also provided. Figure 4 is a schematic diagram of an optional data processing device according to an embodiment of the present application, such as Figure 4 As shown, the data processing device may include: a first construction unit 40 , a second construction unit 41 , an iteration unit 42 , and a determination unit 43 .
[0102] The first constructing unit 40 is used to construct a business constraint condition based on the business upper limit data of each outlet in the target area in each time period, and to construct an employee constraint condition based on the total number of employees in the target area, wherein the outlet refers to an outlet of a financial institution that provides business appointments;
[0103] The second construction unit 41 is used to construct a utility cost function of each outlet and use the utility cost function as the objective function of the outlet, wherein the objective function includes: a business volume variable and an employee quantity variable;
[0104] An iteration unit 42 is used to iteratively solve the objective function under the condition that the business constraint condition and the employee constraint condition are satisfied, so as to obtain the initial business volume and the initial number of employees of the outlet in each time period;
[0105] The determination unit 43 is used to determine the mismatch value corresponding to each time period based on the total number of employees and the initial number of employees of all outlets in all time periods, and when the mismatch value is less than or equal to a preset mismatch threshold, use the initial number of employees as the target number of employees to allocate the corresponding target number of employees to each outlet in each time period.
[0106] The data processing device provided in the embodiment of the present application constructs business constraints, employee constraints and a utility cost function, and then iteratively solves the utility cost function under the conditions of satisfying the business constraints and employee constraints to obtain the initial number of employees for each branch in each time period. If it is determined that the initial number of employees for all branches in all time periods can satisfy the mismatch condition, the determined initial number of employees is the target number of employees to be ultimately allocated to each branch in each time period, thereby achieving the optimal allocation of the business volume and number of employees for branches of financial institutions in different time periods, effectively improving the operating efficiency and service quality of the branches, reducing customer waiting time, and improving employee utilization, thereby solving the technical problem in the related art that the number of employees that should be allocated to each branch in different time periods cannot be accurately determined, resulting in excessive service pressure at the branch in some time periods and waste of human resources in some time periods, and achieving the technical effect of accurately determining the number of employees that should be allocated to each branch in different time periods.
[0107] Optionally, the services are divided into: first category services and second category services, the first category services are flexible services in which the time periods for customers to handle services are determined by outlets, and the second category services are non-flexible services in which customers choose the time periods for handling services, and the first construction unit includes: a first construction module, for constructing a first business volume array based on a first business volume variable for each outlet to handle the first category services in each time period, and determining a first business upper limit for each outlet to handle the first category services in each time period; a second construction module, for constructing a first business constraint condition based on the first business volume array and the first business upper limit; a third construction module, for constructing a second business volume array based on a second business volume variable for each outlet to handle the second category services in each time period, and determining a second business upper limit for each outlet to handle the second category services in each time period; a fourth construction module, for constructing a second business constraint condition based on the second business volume array and the second business upper limit; a first characterization module, for characterizing the first business constraint condition and the second business constraint condition as business constraints.
[0108] Optionally, the first construction unit further includes: a fifth construction module, used to construct an employee quantity array based on the employee quantity variable of each outlet in each time period; and a sixth construction module, used to construct an employee constraint condition based on the employee quantity array and the total number of employees.
[0109] Optionally, the second construction unit includes: a first acquisition module, used to obtain business volume data of the second type of business handled by the outlet in each time period; a seventh construction module, used to construct a utility cost function of the outlet based on the business volume variable of the first type of business handled by the outlet in each time period, the number of employees of the outlet in each time period and the business volume data.
[0110] Optionally, the iteration unit includes: an eighth construction module, which is used to construct a first sub-function and a second sub-function based on the objective function, wherein the first sub-function is a function containing a business volume variable, and the second sub-function is a function containing a number of employees variable; a ninth construction module, which is used to construct a matrix constraint based on business constraints and employee constraints; a tenth construction module, which is used to construct an augmented Lagrangian function based on dual variables and penalty parameters, wherein the augmented Lagrangian function includes: a Lagrangian function and a quadratic penalty term that satisfies the matrix constraint; an eleventh construction module, which is used to construct a solution function based on the first sub-function, the second sub-function and the augmented Lagrangian function; a first iteration module, which is used to iteratively solve the solution function until the difference between the current dual variable value of the dual variable in the current iteration and the previous dual variable value in the previous iteration is less than a preset difference threshold, thereby obtaining the initial business volume and initial number of employees of the outlet in each time period.
[0111] Optionally, the first iteration module includes: a first determination submodule, used to determine the initialization business volume, the initialization number of employees and the initialization dual variable value of the first iteration; a second determination submodule, used to substitute the initialization number of employees and the initialization dual variable value into the solution function to determine the first business volume of the first iteration; a third determination submodule, used to substitute the first business volume and the initialization dual variable value into the solution function to determine the first number of employees of the first iteration; a fourth determination submodule, used to substitute the first business volume and the first number of employees into the solution function to determine the first dual variable value of the first iteration; the first iteration submodule, used to adopt Continue to iterate the business volume variable using the solver function, and based on the current business volume corresponding to the iterated business volume variable and the first dual variable value, continue to iterate the employee quantity variable using the solver function, and based on the current number of employees corresponding to the iterated employee quantity variable and the current business volume, continue to iterate the dual variable using the solver function to obtain the current dual variable value of the current iteration; a first comparison submodule is used to compare the difference between the current dual variable value and the previous dual variable value of the previous iteration with a preset difference threshold, and stop the iteration when the difference is less than the preset difference threshold to obtain the target dual variable value; a fifth determination submodule is used to determine the initial business volume and the initial number of employees based on the target dual variable value.
[0112] Optionally, the data processing device also includes: a first accumulation module, which is used to accumulate the initial number of employees corresponding to each outlet in the same time period after determining the initial business volume and the initial number of employees based on the target dual variable value, to obtain the total number of assigned employees; a first as module, which is used to use the difference between the total number of assigned employees and the total number of employees as the mismatch value in the time period; when the mismatch value is greater than a preset mismatch threshold, update the target dual variable value; and a second as module, which is used to use the updated target dual variable value as the initialization dual variable value to re-iterate and solve the objective function.
[0113] The above-mentioned data processing device may also include a processor and a memory. The above-mentioned first construction unit 40, second construction unit 41, iteration unit 42, determination unit 43, etc. are all stored in the memory as program units, and the processor executes the above-mentioned program units stored in the memory to realize corresponding functions.
[0114] The processor includes a kernel, which retrieves the corresponding program unit from the memory. One or more kernels can be set to determine the mismatch value corresponding to each time period based on the total number of employees and the initial number of employees of all outlets in all time periods by adjusting kernel parameters, and when the mismatch value is less than or equal to a preset mismatch threshold, the initial number of employees is used as the target number of employees to allocate the corresponding target number of employees to each outlet in each time period.
[0115] The above-mentioned memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one storage chip.
[0116] It should be noted that the first construction unit 40, the second construction unit 41, the iteration unit 42, and the determination unit 43 correspond to steps S201 to S204 in Example 1, and the examples and application scenarios implemented by the above units and the corresponding steps are the same, but are not limited to the contents disclosed in the above Example 1. It should be noted that the above units can be hardware components or software components stored in a memory (e.g., memory 104) and processed by one or more processors (e.g., processors 102a, 102b, ..., 102n), and the above units can also be run in the computer terminal 10 provided in Example 1 as part of the device.
[0117] Example 3
[0118] The embodiment of the present application may provide a computer terminal, which may be any computer terminal device in a computer terminal group. Optionally, in this embodiment, the computer terminal may also be replaced by a terminal device such as a mobile terminal or an electronic device.
[0119] Optionally, in this embodiment, the computer terminal may be located in at least one network device among a plurality of network devices of the computer network.
[0120] In this embodiment, the computer terminal can execute the program code of the following steps in the data processing method: construct business constraints based on the business upper limit data of each outlet in the target area in each time period, and construct employee constraints based on the total number of employees in the target area, wherein the outlet refers to the outlet of a financial institution that provides business appointments; construct a utility cost function for each outlet, and use the utility cost function as the objective function of the outlet, wherein the objective function includes: a business volume variable and an employee number variable; iteratively solve the objective function when the business constraints and employee constraints are met to obtain the initial business volume and initial number of employees of the outlet in each time period; determine the mismatch value corresponding to each time period based on the total number of employees and the initial number of employees of all outlets in all time periods, and when the mismatch value is less than or equal to the preset mismatch threshold, use the initial number of employees as the target number of employees to allocate the corresponding target number of employees to each outlet in each time period.
[0121] Optionally, the computer terminal can execute the program code of the following steps in the data processing method: the business is divided into: a first type of business and a second type of business, the first type of business is a flexible business in which the time period for customers to handle the business is determined by the outlets, and the second type of business is a non-flexible business in which the customers choose the time period for handling the business. Based on the business upper limit data of each outlet in the target area in each time period, the step of constructing a business constraint condition includes: based on the first business volume variable of each outlet handling the first type of business in each time period, constructing a first business volume array, and determining the first business upper limit for each outlet to handle the first type of business in each time period; constructing a first business constraint condition based on the first business volume array and the first business upper limit; constructing a second business volume array based on the second business volume variable of each outlet handling the second type of business in each time period, and determining the second business upper limit for each outlet to handle the second type of business in each time period; constructing a second business constraint condition based on the second business volume array and the second business upper limit; characterizing the first business constraint condition and the second business constraint condition as business constraints.
[0122] Optionally, the computer terminal can execute the program code of the following steps in the data processing method: the step of constructing employee constraints based on the total number of employees in the target area, including: constructing an employee quantity array based on the employee quantity variables of each outlet in each time period; constructing employee constraints based on the employee quantity array and the total number of employees.
[0123] Optionally, the above-mentioned computer terminal can execute the program code of the following steps in the data processing method: the step of constructing the utility cost function of each outlet, including: obtaining the business volume data of the outlet handling the second type of business in each time period; constructing the utility cost function of the outlet based on the business volume variable of the outlet handling the first type of business in each time period, the number of employees of the outlet in each time period and the business volume data.
[0124] Optionally, the computer terminal can execute the program code of the following steps in the data processing method: iteratively solving the objective function while satisfying business constraints and employee constraints to obtain the initial business volume and initial number of employees of the outlet in each time period, including: constructing a first sub-function and a second sub-function based on the objective function, wherein the first sub-function is a function containing business volume variables and the second sub-function is a function containing employee number variables; constructing matrix constraints based on the business constraints and employee constraints; constructing an augmented Lagrangian function based on dual variables and penalty parameters, wherein the augmented Lagrangian function includes: a Lagrangian function and a quadratic penalty term that satisfies the matrix constraints; constructing a solution function based on the first sub-function, the second sub-function and the augmented Lagrangian function; iteratively solving the solution function until the difference between the current dual variable value of the dual variable in the current iteration and the previous dual variable value of the previous iteration is less than a preset difference threshold, thereby obtaining the initial business volume and initial number of employees of the outlet in each time period.
[0125] Optionally, the computer terminal may execute the program code of the following steps in the data processing method: iteratively solving the solution function until the difference between the current dual variable value of the dual variable in the current iteration and the previous dual variable value of the previous iteration is less than a preset difference threshold, and obtaining the initial business volume and initial number of employees of the outlet in each time period, including: determining the initial business volume, initial number of employees and initial dual variable value of the first iteration; substituting the initial number of employees and the initial dual variable value into the solution function to determine the first business volume of the first iteration; substituting the first business volume and the initial dual variable value into the solution function to determine the first number of employees of the first iteration; substituting the first business volume and the initial dual variable value into the solution function to determine the first number of employees of the first iteration; substituting the first business volume and the first number of employees into the solution function , determine the first dual variable value of the first iteration; based on the first number of employees and the first dual variable value, use the solution function to continue to iterate the business volume variable, and based on the current business volume corresponding to the iterated business volume variable and the first dual variable value, use the solution function to continue to iterate the employee number variable, and based on the current number of employees and the current business volume corresponding to the iterated employee number variable, use the solution function to continue to iterate the dual variable to obtain the current dual variable value of the current iteration; compare the difference between the current dual variable value and the previous dual variable value of the previous iteration with a preset difference threshold, and stop the iteration when the difference is less than the preset difference threshold to obtain the target dual variable value; based on the target dual variable value, determine the initial business volume and the initial number of employees.
[0126] Optionally, the computer terminal can execute the program code of the following steps in the data processing method: after determining the initial business volume and the initial number of employees based on the target dual variable value, it also includes: accumulating the initial number of employees corresponding to each outlet in the same time period to obtain the total number of assigned employees; using the difference between the total number of assigned employees and the total number of employees as the mismatch value in the time period; when the mismatch value is greater than a preset mismatch threshold, updating the target dual variable value; using the updated target dual variable value as the initialization dual variable value, and re-iterating and solving the objective function.
[0127] Optionally, Figure 5 is a structural block diagram of an electronic device according to an embodiment of the present application. Figure 5 As shown, the electronic device may include: one or more ( Figure 5 (only one is shown) processor 502, memory 504, storage controller, and peripheral interface, wherein the peripheral interface is connected to the radio frequency module, audio module and display.
[0128] Among them, the memory can be used to store software programs and modules, such as the program instructions / modules corresponding to the data processing method and device in the embodiment of the present application. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory, that is, realizing the above-mentioned data processing method. The memory may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory may further include a memory remotely arranged relative to the processor, and these remote memories may be connected to the terminal via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0129] The processor can call the information and application programs stored in the memory through the transmission device to execute the above steps in the above data processing method.
[0130] By adopting the embodiment of the present application, a data processing scheme is provided. By constructing business constraints, employee constraints and utility cost functions, and then iteratively solving the utility cost function under the conditions of satisfying the business constraints and employee constraints, the initial number of employees of each branch in each time period is obtained. If it is determined that the initial number of employees of all branches in all time periods can satisfy the mismatch condition, the determined initial number of employees is the target number of employees to be finally allocated to each branch in each time period, and the optimized allocation of the business volume and the number of employees of the branches of the financial institution in different time periods is realized, and the operation efficiency and service quality of the branches are effectively improved, which can reduce the waiting time of customers and improve the utilization rate of employees, thereby solving the technical problem that the number of employees that should be allocated to each branch in different time periods cannot be accurately determined in the related technology, resulting in excessive service pressure in some time periods of the branches, but waste of human resources in some time periods, and achieving the technical effect of accurately determining the number of employees that should be allocated to each branch in different time periods.
[0131] It can be understood by those skilled in the art that Figure 5 The structure shown is for illustration only, and the electronic device may also be a terminal device such as a smart phone, a tablet computer, a PDA, and a mobile Internet device (Mobile Internet Devices, MID). Figure 5 The structure of the electronic device is not limited. Figure 5 More or fewer components (such as network interfaces, display devices, etc.) shown in, or having Figure 5 Different configurations are shown.
[0132] A person of ordinary skill in the art can understand that all or part of the steps in the various methods of the above embodiments can be completed by instructing the hardware related to the terminal device through a program, and the program can be stored in a computer-readable storage medium, and the storage medium may include: a flash drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.
[0133] Example 4
[0134] The embodiment of the present application further provides a storage medium. Optionally, in this embodiment, the storage medium can be used to store the program code executed by the data processing method provided in the first embodiment.
[0135] Optionally, in this embodiment, the above storage medium may be located in any computer terminal in a computer terminal group in a computer network, or in any mobile terminal in a mobile terminal group.
[0136] The present application also provides a computer program product, which, when executed on a data processing device, is suitable for executing the program of the data processing method steps.
[0137] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.
[0138] In the above embodiments of the present application, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, please refer to the relevant description of other embodiments.
[0139] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.
[0140] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0141] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0142] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or optical disk and other media that can store program codes.
[0143] The above is only a preferred implementation of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.
Claims
1. A data processing method, characterized in that: include: Based on the business upper limit data of each outlet in the target area in each time period, a business constraint condition is constructed, and based on the total number of employees in the target area, an employee constraint condition is constructed, wherein the outlet refers to an outlet of a financial institution that provides business appointments; Constructing a utility cost function for each of the outlets, and using the utility cost function as the objective function of the outlet, wherein the objective function includes: a business volume variable and an employee quantity variable; Under the condition that the business constraint condition and the employee constraint condition are satisfied, the objective function is iteratively solved to obtain the initial business volume and the initial number of employees of the network point in each time period; Based on the total number of employees and the initial number of employees of all the outlets in all the time periods, the mismatch value corresponding to each of the time periods is determined, and when the mismatch value is less than or equal to a preset mismatch threshold, the initial number of employees is used as the target number of employees to allocate the corresponding target number of employees to each of the outlets in each of the time periods.
2. The data processing method according to claim 1, characterized in that: The services are divided into: first-category services and second-category services. The first-category services are flexible services in which the outlets determine the time periods for customers to handle services. The second-category services are non-flexible services in which customers select the time periods for handling services. Based on the service upper limit data of each outlet in the target area in each time period, the steps of constructing service constraint conditions include: Based on the first business volume variable of each network point handling the first type of business in each time period, construct a first business volume array, and determine the first business upper limit volume of each network point handling the first type of business in each time period; Constructing a first service constraint condition based on the first service volume array and the first service upper limit; Based on the second business volume variable of each of the outlets handling the second type of business in each of the time periods, a second business volume array is constructed, and a second business upper limit volume of each of the outlets handling the second type of business in each of the time periods is determined; Constructing a second service constraint condition based on the second service volume array and the second service upper limit; The first business constraint condition and the second business constraint condition are characterized as the business constraint condition.
3. The data processing method according to claim 1, characterized in that: The step of constructing employee constraint conditions based on the total number of employees in the target area includes: Based on the employee quantity variable of each outlet in each time period, construct an employee quantity array; The employee constraint condition is constructed based on the employee quantity array and the total number of employees.
4. The data processing method according to claim 1, characterized in that: The step of constructing the utility cost function of each of the network points comprises: Obtaining the business volume data of the second type of business handled by the outlet in each of the time periods; The utility cost function of the outlet is constructed based on the business volume variable of the first type of business handled by the outlet in each time period, the employee quantity variable of the outlet in each time period, and the business volume data.
5. The data processing method according to claim 1, characterized in that: Under the condition that the business constraint condition and the employee constraint condition are satisfied, the step of iteratively solving the objective function to obtain the initial business volume and the initial number of employees of the network point in each time period includes: Based on the objective function, construct a first sub-function and a second sub-function, wherein the first sub-function is a function including the business volume variable, and the second sub-function is a function including the employee quantity variable; Constructing a matrix constraint based on the business constraint and the employee constraint; Based on the dual variables and the penalty parameters, an augmented Lagrangian function is constructed, wherein the augmented Lagrangian function includes: a Lagrangian function and a quadratic penalty term satisfying the matrix constraint; Constructing a solution function based on the first sub-function, the second sub-function and the augmented Lagrangian function; The solution function is iteratively solved until the difference between the current dual variable value of the dual variable in the current iteration and the previous dual variable value of the previous iteration is less than a preset difference threshold, thereby obtaining the initial business volume and the initial number of employees of the network point in each of the time periods.
6. The data processing method according to claim 5, characterized in that: The step of iteratively solving the solution function until the difference between the current dual variable value of the dual variable in the current iteration and the previous dual variable value of the previous iteration is less than a preset difference threshold, and obtaining the initial business volume and the initial number of employees of the network point in each time period includes: Determine the initial business volume, initial number of employees, and initial dual variable values for the first iteration; Substituting the initial number of employees and the initial dual variable value into the solution function to determine the first business volume of the first iteration; Substituting the first business volume and the initialized dual variable value into the solution function to determine the first number of employees in the first iteration; Substituting the first business volume and the first number of employees into the solution function to determine the first dual variable value of the first iteration; Based on the first number of employees and the first dual variable value, the solution function is used to continue to iterate the business volume variable, and based on the current business volume corresponding to the iterated business volume variable and the first dual variable value, the solution function is used to continue to iterate the number of employees variable, and based on the current number of employees corresponding to the iterated number of employees variable and the current business volume, the solution function is used to continue to iterate the dual variable to obtain the current dual variable value of the current iteration; Compare the difference between the current dual variable value and the previous dual variable value of the previous iteration with the preset difference threshold, and stop iteration when the difference is less than the preset difference threshold to obtain the target dual variable value; Based on the target dual variable value, the initial business volume and the initial number of employees are determined.
7. The data processing method according to claim 6, characterized in that: After determining the initial business volume and the initial number of employees based on the target dual variable value, the method further includes: Accumulating the initial number of employees corresponding to each of the outlets in the same time period to obtain the total number of assigned employees; Taking the difference between the total number of assigned employees and the total number of employees as the mismatch value over the time period; When the mismatch value is greater than the preset mismatch threshold, updating the target dual variable value; The updated target dual variable value is used as the initialization dual variable value, and the target function is iteratively solved again.
8. A data processing device, characterized in that: include: A first construction unit is used to construct a business constraint condition based on the business upper limit data of each outlet in the target area in each time period, and to construct an employee constraint condition based on the total number of employees in the target area, wherein the outlet refers to an outlet of a financial institution that provides business appointments; A second construction unit is used to construct a utility cost function for each of the outlets, and use the utility cost function as an objective function of the outlet, wherein the objective function includes: a business volume variable and an employee quantity variable; An iteration unit, configured to iteratively solve the objective function under the condition that the business constraint condition and the employee constraint condition are satisfied, so as to obtain the initial business volume and the initial number of employees of the network point in each time period; A determination unit is used to determine the mismatch value corresponding to each of the time periods based on the total number of employees and the initial number of employees of all the outlets in all the time periods, and when the mismatch value is less than or equal to a preset mismatch threshold, use the initial number of employees as the target number of employees to allocate the corresponding target number of employees to each of the outlets in each of the time periods.
9. A computer program product, characterized in that The invention comprises a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the data processing method according to any one of claims 1 to 7 is implemented.
10. An electronic device, characterized in that: It includes one or more processors and a memory, wherein the memory is used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the data processing method described in any one of claims 1 to 7.