CN108537619A - A kind of method for allocating tasks, device and equipment based on maximum-flow algorithm - Google Patents

A kind of method for allocating tasks, device and equipment based on maximum-flow algorithm Download PDF

Info

Publication number
CN108537619A
CN108537619A CN201810178166.0A CN201810178166A CN108537619A CN 108537619 A CN108537619 A CN 108537619A CN 201810178166 A CN201810178166 A CN 201810178166A CN 108537619 A CN108537619 A CN 108537619A
Authority
CN
China
Prior art keywords
task
allocated
network
capacity
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201810178166.0A
Other languages
Chinese (zh)
Inventor
杨杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ennew Digital Technology Co Ltd
Original Assignee
Ennew Digital Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ennew Digital Technology Co Ltd filed Critical Ennew Digital Technology Co Ltd
Priority to CN201810178166.0A priority Critical patent/CN108537619A/en
Publication of CN108537619A publication Critical patent/CN108537619A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • G06Q30/0635Processing of requisition or of purchase orders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06315Needs-based resource requirements planning or analysis

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

This application discloses a kind of method for allocating tasks, device and equipment based on maximum-flow algorithm.Wherein, which specifically includes, and obtains target information and mission bit stream to be allocated;Capacity-network is built according to target information and mission bit stream to be allocated, wherein the weight on each side handles the treatment effeciency determination of different classes of task according to target in the Capacity-network;It is solved in the Capacity-network using default maximum-flow algorithm, all task distribution paths from source node to sink nodes;The task to be allocated is distributed according to the task distribution path.The application is reference with the value that the treatment effeciency of task to be allocated and/or target generate, configuration obtains the weight of each edge in Capacity-network, make in final result, the value for the treatment of effeciency or the target generation of task to be allocated reaches the state of total optimization.

Description

A kind of method for allocating tasks, device and equipment based on maximum-flow algorithm
Technical field
This application involves Internet technical field more particularly to a kind of method for allocating tasks, dresses based on maximum-flow algorithm It sets and equipment.
Background technology
With a large amount of service for life demands generated in daily life, O2O, that is, online to offline (arrive line on line Under) service sexual norm development it is swift and violent, will subscribe on line, serviced under line, payment etc. flows be transferred in service for life scene, Such as:Supplier cleans household electrical appliances, the services such as household installation by providing on-site maintenance household electrical appliances on line.
In order to improve occupation rate of market, necessity that efficiency of service and service quality become major supplier considers a problem institute Therefore, how efficiently to assign order just to become an important problem for multipotency work.
In the prior art, region worksheet processing pattern is mostly used;That is, current most suitable multipotency work is assigned when order reaches, This worksheet processing pattern substantially uses greedy algorithm, does not consider globally optimal solution performance.
Invention content
This specification embodiment provides a kind of method for allocating tasks, device and equipment based on maximum-flow algorithm, to realize The allocation strategy integrally controlled in assignment operation.
A kind of method for allocating tasks based on maximum-flow algorithm that this specification embodiment provides, specifically includes:
Obtain target information and mission bit stream to be allocated;
Capacity-network is built according to target information and mission bit stream to be allocated, wherein each side in the Capacity-network Weight according to target handle different classes of task treatment effeciency determine;
It is solved in the Capacity-network using default maximum-flow algorithm, all tasks from source node to sink nodes distribute road Diameter;
The task to be allocated is distributed according to the task distribution path.
In addition, the present embodiment additionally provides a kind of task allocation apparatus based on maximum-flow algorithm, specifically include:
Data obtaining module, for obtaining target information and mission bit stream to be allocated;
Module is built, for building Capacity-network according to target information and mission bit stream to be allocated, wherein the appearance The weight on each side handles the treatment effeciency determination of different classes of task according to target in amount network;
Path solves module, for being solved in the Capacity-network using presetting maximum-flow algorithm, it is all from source node to The task distribution path of sink nodes;
Task allocating module, for distributing the task to be allocated according to the task distribution path.
In addition, the present embodiment additionally provides a kind of task distributing equipment based on maximum-flow algorithm, specifically include:
Memory stores the task distribution program based on maximum-flow algorithm;
Communication interface receives information acquisition request;
Processor calls what is stored in memory to be calculated based on max-flow after communication interface receives information extraction request The task distribution program of method, and execute:
Obtain target information and mission bit stream to be allocated;
Capacity-network is built according to target information and mission bit stream to be allocated, wherein each side in the Capacity-network Weight according to target handle different classes of task treatment effeciency determine;
It is solved in the Capacity-network using default maximum-flow algorithm, all tasks from source node to sink nodes distribute road Diameter;
The task to be allocated is distributed according to the task distribution path.
This specification embodiment can reach following advantageous effect using above-mentioned at least one technical solution:
Capacity-network is built according to target information and mission bit stream to be allocated, with the treatment effeciency for task to be allocated And/or the value that target generates is reference, configuration obtains the weight of each edge in Capacity-network, makes in final result, wait for The value that the treatment effeciency or target of distribution task generate, reaches the state of total optimization.
Description of the drawings
Attached drawing described herein is used for providing further understanding of the present application, constitutes part of this application, this Shen Illustrative embodiments and their description please do not constitute the improper restriction to the application for explaining the application.In the accompanying drawings:
Fig. 1 is the method for allocating tasks flow chart based on maximum-flow algorithm that this specification embodiment provides;
Fig. 2 is another method for allocating tasks flow chart based on maximum-flow algorithm that this specification embodiment provides;
Fig. 3 is another method for allocating tasks flow chart based on maximum-flow algorithm that this specification embodiment provides;
Fig. 4 is the Capacity-network structural schematic diagram that this specification embodiment provides;
Fig. 5 is another Capacity-network structural schematic diagram that this specification embodiment provides;
Fig. 6 is the offer of this specification embodiment for the task allocation apparatus structural schematic diagram based on maximum-flow algorithm.
Specific implementation mode
To keep the purpose, technical scheme and advantage of the application clearer, below in conjunction with the application specific embodiment and Technical scheme is clearly and completely described in corresponding attached drawing.Obviously, described embodiment is only the application one Section Example, instead of all the embodiments.Based on the embodiment in the application, those of ordinary skill in the art are not doing Go out the every other embodiment obtained under the premise of creative work, shall fall in the protection scope of this application.
In one or more embodiments in the description, method for allocating tasks can be applied to multiple tasks to be allocated Reasonable distribution gives multiple targets, to improve the efficiency of task processing, generates the value of bigger.
Wherein, technical ability difference is good at due to target, the efficiency for handling different types of task is also different, therefore needs It will be according to technical ability and task type distribution task be good at, so that the whole efficiency that target handles task to be allocated reaches most Greatly.Meanwhile method for allocating tasks can also be by the value of task to be allocated as reference, so that target handles to be allocated Maximum value is generated when business in same time.
Specifically, in the embodiment of the method for allocating tasks of the application, need to obtain the work pair being in idle condition As with task to be allocated, using each target and task to be allocated as node, and according to the workmanship of target and waiting for The task type of distribution task is established each node and is connected;Meanwhile increasing the connection of source node and target node, sink nodes With the connection of task node to be allocated, Capacity-network is formed, and appointing from source node to sink nodes is solved based on the Capacity-network Business distribution path, and then the task to be allocated is distributed according to the task distribution path, make the treatment effeciency of task to be allocated Reach maximum or target generation value and reaches maximum.
The method for allocating tasks based on maximum-flow algorithm provided in this specification embodiment, as shown in Figure 1, specifically including With lower part:
Step S100, target information and mission bit stream to be allocated are obtained.
In the present embodiment, target information includes all working object being in idle condition, the target information It can be obtained from target pond.Mission bit stream to be allocated includes all tasks to be treated, the task to be allocated Information can be obtained from task pool to be allocated.Illustratively, it is waited for point from user (for example, passing through client) receiving When with task (for example, energy services demand class order), the information of these tasks to be allocated can be obtained and be stored, is largely waited for Distribution mission bit stream forms task pool to be allocated.
Specifically, the target described in the present embodiment can be any type of work pair that can provide various services As, for example, it may be have the robot of certain skills, for distribute and the process of scheduling resource, for for client provide altogether Enjoy service shared bicycle or shared automobile, at least two technical ability multipotency work (multipotency work may include with operate it is more The operating personnel of kind machinery equipment ability).Corresponding with target, mission bit stream to be allocated can be according to customer demand The various types of tasks generated, for example, it may be when being handled by robot in plant produced line for task, application program are run Special services that are that memory and resource, shared automobile or the order of shared automobile, user needed is sent out and needing multipotency work to handle Demand.
According to the preferred embodiment of the application, target is preferred real with the worker of energy services and/or service for life Apply example, usually can they be referred to as multipotency work, multipotency work can have multinomial technical ability (for example, repair gas pipeline, repair water Pipe, installation gas meter, flow meter, replacement gas-cooker etc.).Accordingly, mission bit stream to be allocated can be that energy services demand class order is appointed Business, for example, gas pipeline maintenance order, gas meter, flow meter that gas user is submitted by client install order etc..It is led in the energy The most distribution that worksheet processing is carried out using the technical ability for being based only on worker or the position for being based only on worker of service in domain, multipotency work are advised Then, more technical ability value of multipotency work is ignored, and does not consider total optimization state, therefore, the embodiment of the present application can solve The problem present in energy field.
Specifically, in the acquisition process of target information and mission bit stream to be allocated, can first judge target and The state of task to be allocated, and then satisfactory target and task to be allocated are stored in the form of array or queue In storage unit.
Step S120, Capacity-network is built according to target information and mission bit stream to be allocated.
Wherein, in the Capacity-network weight on each side handled according to target different classes of task treatment effeciency it is true It is fixed.
In the present embodiment, the target information includes the working condition of target, can handle task category, difference The treatment effeciency of category task.Mission bit stream to be allocated includes the information such as the working condition of task to be allocated, task generic.
Capacity-network includes several target nodes, several task node, a source node and a remittance section to be allocated Point.It can be attached by directed line segment between each node, to indicate the direction of service logic stream in Capacity-network.Specifically , source node is connect with each target node respectively, and target node is directed toward in the direction of service logic stream by source node.It converges Node is connect with each task node to be allocated respectively, and sink nodes are directed toward in the direction of service logic stream by task node to be allocated.Work The connection made between Object node and task node to be allocated can handle task category and to be allocated according to target The task generic of business is established, and task node to be allocated is directed toward in the direction of service logic stream by target node.
Specifically, it can be method for allocating tasks that each edge, which is required for configuration weighted value, the weighted value, in Capacity-network As a result guiding function is provided, i.e., in same Capacity-network, according to the weight configured without factor, finally solve obtained optimal road Diameter is different, and obtained final result is also different.Therefore, with the treatment effeciency of task to be allocated and/or work pair in the present embodiment As the value of generation to refer to, configures and obtain the weight of each edge in Capacity-network, make in final result, the place of task to be allocated Reason efficiency reaches maximum or target generation value and reaches maximum.
Further, the not necessary being of the Capacity-network described in the present embodiment, but for more accurate description thing Particular kind of relationship between object has this relationship with node on behalf things between indicating corresponding two things with 2 points of line of connection.
Step S130, it is solved in the Capacity-network using default maximum-flow algorithm, it is all from source node to sink nodes Task distribution path.
Wherein, the task distribution path is distributed by the task based on the optimal solution obtained in above-mentioned Capacity-network The final result that path obtains can make the overall treatment efficiency of task to be allocated reach maximum or target generation valence Value reaches maximum.
In the present embodiment, the default maximum-flow algorithm includes Edmond-Karp algorithms, Ford-Fulkerson algorithms With Dinic algorithms.Wherein, Edmond-Karp algorithms are most short augmenting path algorithm, and the principle of the algorithm is, constantly from Source node begins look for augmenting path, every time to the further augmentation of the augmenting path searched out, until source node and sink nodes It is not connected to, that is, extra augmenting path is not present in the Capacity-network, at this time in current task point in current capacities network Optimal solution with path.
The also known as continuous most short augmenting path algorithm of Dinic algorithms, the principle of the algorithm is to increase in Capacity-network by stages Extensively.It is a difference in that with Edmond-Karp algorithms:Edmond-Karp algorithms have executed primary most short increasing in each stage After wide, to restart from source node and begin look for another augmenting path;And in Dinic algorithms, only needing once can be real Now multiple augmentation.
Step S140, the task to be allocated is distributed according to the task distribution path.
Specifically, in some embodiments, the task distribution path is the optimal solution in the Capacity-network.Pass through task Distribution path distributes the task to be allocated, maximally utilizing for target whole work efficiency may be implemented, and then make reality The maximization of existing target work values.
In some embodiments, the target information and mission bit stream to be allocated meeting real-time update, a subtask point Method of completing the square can also execute in real time, execution each time during, directed line segment, Yi Jiyou between the node of Capacity-network, node It can all change to the weight of line segment.
In some embodiments, another method for allocating tasks based on maximum-flow algorithm is additionally provided.Such as Fig. 2 institutes Show, which specifically includes:
Step S201, target information and mission bit stream to be allocated are obtained.
The target information includes the workmanship and skill proficiency of multiple targets;The task to be allocated Information includes the task category of multiple tasks to be allocated.
Step S203, according to the task category structure of the workmanship of the multiple target and multiple tasks to be allocated Build Capacity-network.
Wherein, specific workmanship can handle specific task to be allocated, i.e., the workmanship of target and wait for The task category of distribution task will produce correlation, and correlation can be prestored in database.And then it is executed in method During, the association between target node and task node to be allocated can be established by the correlation.
Processing when step S205, being calculated task to be allocated described in any operative object handles using skill proficiency is imitated Rate.
In some embodiments, the mission bit stream to be allocated further includes the workload of task to be allocated;Specifically, utilizing Treatment effeciency described in skill proficiency evaluation work object handles when task to be allocated, specifically includes:It is ripe using the technical ability White silk degree and workload computing target handle the treatment effeciency when task to be allocated.
Step S207, the weight on side in the Capacity-network is configured according to the treatment effeciency.
Specifically, the weight can provide guiding function for the result of method for allocating tasks, i.e., in same Capacity-network, root According to the weight configured without factor, obtained optimal path difference is finally solved, obtained final result is also different.Therefore, originally The value generated with the treatment effeciency of task to be allocated and/or target in embodiment is reference, and configuration obtains Capacity-network The weight of middle each edge, makes in final result, and the treatment effeciency of task to be allocated reaches maximum.
Step S209, it is solved in the Capacity-network using default maximum-flow algorithm, it is all from source node to sink nodes Task distribution path.
Step S211, the task to be allocated is distributed according to the task distribution path.
Task distribution path includes a plurality of path from source node to sink nodes, and each path representation one is to be allocated The allocation result of task.For example, when A targets are connected with B tasks to be allocated, B tasks to be allocated can be distributed to A by expression Target.
In some other embodiments, another method for allocating tasks based on maximum-flow algorithm is additionally provided, it should Method can be used for matching for multipotency work point in the usage scenario of order, as shown in figure 3, the method for allocating tasks specifically includes:
Step S300, multipotency work information and order information to be allocated are obtained.
In the present embodiment, multipotency work information includes the information for the whole multipotency works being in idle condition in multipotency work pond, often One multipotency work all grasps at least two workmanship, but due to individual difference, multipotency work is for different operating technical ability It is skilled different.It makes house calls specifically, the workmanship can be to provide repair household electrical appliances, clean household electrical appliances service or household installation Service etc..
Order to be allocated is sent out by user, can be various types of orders, such as repair household electrical appliances make house calls, clean house Electricity service or household installation service etc..It can be classified according to order to be allocated and workmanship in the present embodiment, and to belonging to Same category of order to be allocated is associated with workmanship foundation, and the incidence relation is stored in database.
Step S302, it is built according to the workmanship of the multiple multipotency work and the order classification of multiple orders to be allocated Capacity-network.
Wherein, the weight on each side of the Capacity-network handles value caused by different classes of order really according to multipotency work It is fixed.Optionally, the order value can be indicated by the order amount of money that user is paid.
Specifically, as shown in figure 4, the Capacity-network structural schematic diagram that this specification embodiment provides.Wherein, work1, Work2, work3, work4 indicate four multipotency work nodes, can be acquired from multipotency work pond, order1, order2, Order3, order4 indicate four order nodes to be allocated, can be obtained from order pond to be allocated.It, can basis in this implementation The workmanship of multipotency work and the order type of order establish connection to work nodes and order nodes.
In Capacity-network structure shown in Fig. 4, work1 connect respectively with order1, order2, order3 to be formed it is oriented Line segment indicates that work1 has the workmanship of processing order1, order2 and order3, but the weighted of directed line segment (not shown), the weight is related to the had qualification of different operating technical ability of multipotency work, and qualification is higher, corresponding power It is again bigger.
Further specifically, in Capacity-network, the side between multipotency work node and order node to be matched can be by E1={ e (1,1), e (1,2) ... e (n, k) } it indicates, wherein the n indicates that the number of multipotency work, k indicate the number of order to be matched, E (n, k) indicates that the side between n-th of multipotency work and k-th of order to be matched, the weight on side can be indicated by We (n, k), further , We (n, k)=B+V (wn,ok), wnIndicate n-th of worker, okIndicate k-th of order to be matched;V(wn,ok), it indicates more It can work wnServe okThe value that can be generated, B are a customized parameters, optionally, B > max (V (wn,ok))。
Side between source node and multipotency work node can be indicated that s is indicated by E2={ e (s, 1), e (s, 2) ... e (s, n) } Source node.Side between order node and sink nodes to be allocated can be indicated, t by E3={ e (1, t), e (2, t) ... e (k, t) } Indicate sink nodes.
Step S304, the salvage value when order to be allocated is handled using the order value calculation multipotency work.
Wherein, the salvage value can be payment amount of the user to order to be allocated, can also be according to multipotency work The efficiency of the order to be allocated is handled and a reference data that user obtains the payment amount of order to be allocated, with for task The overall value that distribution method obtains provides reference.For example, for same task order, the higher multipotency work of working efficiency is produced Raw value is higher
In another example it is the income that Order splitting platform generates that salvage value, which can also be multipotency work,.Specifically, salvage value The time consumed according to multipotency work order-processing and order value are calculated, and order is worth higher and/or order-processing institute The time of consumption is shorter, and corresponding salvage value is higher;The time that the lower and/or order-processing of order value is consumed is longer, Corresponding salvage value is higher.
Step S306, the weight on side in the Capacity-network is configured according to the salvage value.
Compared to above-described embodiment, the weight configured using salvage value in the present embodiment is more accurate, because of place Managing can be by the treatment effeciency of multipotency work order-processing as reference, for the side of Capacity-network configuration in the calculating process of value Weight and business demand more close to.
The configuration thinking of weight is same as the previously described embodiments in the present embodiment, here no longer narration in detail.
Step S308, it is solved in the Capacity-network using default maximum-flow algorithm, it is all from source node to sink nodes Order splitting path.
The default maximum-flow algorithm includes:Edmond-Karp algorithms, Ford-Fulkerson algorithms and Dinic are calculated Method.
Specifically, it is the order that directed line segment, which is formed by path, in Capacity-network as shown in Figure 5, between each node Distribution path can obtain Capacity-network total optimization solution according to the Order splitting path.
Step S310, according to order to be allocated described in the Order splitting path allocation.
In addition, additionally providing a kind of task allocation apparatus based on maximum-flow algorithm, as described in Figure 6, institute in this specification Task allocation apparatus is stated to specifically include:
Data obtaining module 601, for obtaining target information and mission bit stream to be allocated;
Module 602 is built, for building Capacity-network according to target information and mission bit stream to be allocated;Wherein, institute The weight for stating each side in Capacity-network handles the treatment effeciency determination of different classes of task according to target;
Path solves module 603, all from source node for being solved in the Capacity-network using default maximum-flow algorithm To the task distribution path of sink nodes;
Task allocating module 604, for distributing the task to be allocated according to the task distribution path.
On the basis of the above embodiments, the target information includes the workmanship and technical ability of multiple targets Proficiency;The mission bit stream to be allocated includes the task category of several tasks to be allocated;Build module 602, it may also be used for, Capacity-network is built according to the task category of the workmanship of the multiple target and multiple tasks to be allocated;Utilize skill Treatment effeciency described in energy proficiency evaluation work object handles when task to be allocated;The appearance is configured according to the treatment effeciency Measure the weight on side in network.
On the basis of the above embodiments, the mission bit stream to be allocated further includes the workload of task to be allocated;Structure Module 602, it may also be used for when handling the task to be allocated using the skill proficiency and workload computing target Treatment effeciency.
On the basis of the above embodiments, the weight on each side of the Capacity-network handles different classes of according to target Value caused by business determines.
On the basis of the above embodiments, the default maximum-flow algorithm includes:Edmond-Karp algorithms, Ford- Fulkerson algorithms and Dinic algorithms.
On the basis of the above embodiments, target information include multiple multipotency works workmanship and technical ability it is skilled Degree;Order information to be allocated includes the task category and order value of multiple orders to be allocated;Structure module 602 can be used for, root Capacity-network is built according to the workmanship of the multiple multipotency work and the order classification of multiple orders to be allocated;Utilize price-purchase order Value calculates the salvage value when order to be allocated is managed in multipotency work point other places;The capacity net is configured according to the salvage value The weight on side in network.
In addition, additionally providing a kind of task distributing equipment based on maximum-flow algorithm in this specification, task distribution is set It is standby to specifically include:
Memory stores the task distribution program based on maximum-flow algorithm;
Communication interface receives information acquisition request;
Processor calls what is stored in memory to be calculated based on max-flow after communication interface receives information extraction request The task distribution program of method, and execute:
Obtain target information and mission bit stream to be allocated;
Capacity-network is built according to target information and mission bit stream to be allocated;Wherein, each side in the Capacity-network Weight according to target handle different classes of task treatment effeciency determine;
It is solved in the Capacity-network using default maximum-flow algorithm, all tasks from source node to sink nodes distribute road Diameter;
The task to be allocated is distributed according to the task distribution path.
Each embodiment in this specification is described in a progressive manner, identical similar portion between each embodiment Point just to refer each other, and each embodiment focuses on the differences from other embodiments.Especially for device, For equipment and medium class embodiment, just no longer repeat one by one here.
It is above-mentioned that this specification specific embodiment is described.Other embodiments are in the scope of the appended claims It is interior.In some cases, the action recorded in detail in the claims or step or module can be according to different from embodiments Sequence executes and desired result still may be implemented.In addition, the process described in the accompanying drawings is not necessarily required and is shown Particular order or consecutive order could realize desired result.In some embodiments, multitasking and parallel processing It is also possible or it may be advantageous.
In the 1990s, the improvement of a technology can be distinguished clearly be on hardware improvement (for example, Improvement to circuit structures such as diode, transistor, switches) or software on improvement (improvement for method flow).So And with the development of technology, the improvement of current many method flows can be considered as directly improving for hardware circuit. Designer nearly all obtains corresponding hardware circuit by the way that improved method flow to be programmed into hardware circuit.Cause This, it cannot be said that the improvement of a method flow cannot be realized with hardware entities module.For example, programmable logic device (Programmable Logic Device, PLD) (such as field programmable gate array (Field Programmable Gate Array, FPGA)) it is exactly such a integrated circuit, logic function determines device programming by user.By designer Voluntarily programming comes a digital display circuit " integrated " on a piece of PLD, designs and makes without asking chip maker Dedicated IC chip.Moreover, nowadays, substitution manually makes IC chip, this programming is also used instead mostly " patrols Volume compiler (logic compiler) " software realizes that software compiler used is similar when it writes with program development, And the source code before compiling also write by handy specific programming language, this is referred to as hardware description language (Hardware Description Language, HDL), and HDL is also not only a kind of, but there are many kind, such as ABEL (Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL (Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language) etc., VHDL (Very-High-Speed are most generally used at present Integrated Circuit Hardware Description Language) and Verilog.Those skilled in the art also answer This understands, it is only necessary to method flow slightly programming in logic and is programmed into integrated circuit with above-mentioned several hardware description languages, The hardware circuit for realizing the logical method flow can be readily available.
Controller can be implemented in any suitable manner, for example, controller can take such as microprocessor or processing The computer for the computer readable program code (such as software or firmware) that device and storage can be executed by (micro-) processor can Read medium, logic gate, switch, application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), the form of programmable logic controller (PLC) and embedded microcontroller, the example of controller includes but not limited to following microcontroller Device:ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicone Labs C8051F320, are deposited Memory controller is also implemented as a part for the control logic of memory.It is also known in the art that in addition to Pure computer readable program code mode is realized other than controller, can be made completely by the way that method and step is carried out programming in logic Controller is obtained in the form of logic gate, switch, application-specific integrated circuit, programmable logic controller (PLC) and embedded microcontroller etc. to come in fact Existing identical function.Therefore this controller is considered a kind of hardware component, and to including for realizing various in it The device of function can also be considered as the structure in hardware component.Or even, it can will be regarded for realizing the device of various functions For either the software module of implementation method can be the structure in hardware component again.
System, device, module or the unit that above-described embodiment illustrates can specifically realize by computer chip or entity, Or it is realized by the product with certain function.It is a kind of typically to realize that equipment is computer.Specifically, computer for example may be used Think personal computer, laptop computer, cellular phone, camera phone, smart phone, personal digital assistant, media play It is any in device, navigation equipment, electronic mail equipment, game console, tablet computer, wearable device or these equipment The combination of equipment.
For convenience of description, it is divided into various units when description apparatus above with function to describe respectively.Certainly, implementing this The function of each unit is realized can in the same or multiple software and or hardware when application.
It should be understood by those skilled in the art that, the embodiment of the present invention can be provided as method, system or computer program Product.Therefore, complete hardware embodiment, complete software embodiment or reality combining software and hardware aspects can be used in the present invention Apply the form of example.Moreover, the present invention can be used in one or more wherein include computer usable program code computer The computer program production implemented in usable storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) The form of product.
The present invention be with reference to according to the method for the embodiment of the present invention, the flow of equipment (system) and computer program product Figure and/or block diagram describe.It should be understood that can be realized by computer program instructions every first-class in flowchart and/or the block diagram The combination of flow and/or box in journey and/or box and flowchart and/or the block diagram.These computer programs can be provided Instruct the processor of all-purpose computer, special purpose computer, Embedded Processor or other programmable data processing devices to produce A raw machine so that the instruction executed by computer or the processor of other programmable data processing devices is generated for real The device for the function of being specified in present one flow of flow chart or one box of multiple flows and/or block diagram or multiple boxes.
These computer program instructions, which may also be stored in, can guide computer or other programmable data processing devices with spy Determine in the computer-readable memory that mode works so that instruction generation stored in the computer readable memory includes referring to Enable the manufacture of device, the command device realize in one flow of flow chart or multiple flows and/or one box of block diagram or The function of being specified in multiple boxes.
These computer program instructions also can be loaded onto a computer or other programmable data processing device so that count Series of operation steps are executed on calculation machine or other programmable devices to generate computer implemented processing, in computer or The instruction executed on other programmable devices is provided for realizing in one flow of flow chart or multiple flows and/or block diagram one The step of function of being specified in a box or multiple boxes.
In a typical configuration, computing device includes one or more processors (CPU), input/output interface, net Network interface and memory.
Memory may include computer-readable medium in volatile memory, random access memory (RAM) and/or The forms such as Nonvolatile memory, such as read-only memory (ROM) or flash memory (flash RAM).Memory is computer-readable medium Example.
Computer-readable medium includes permanent and non-permanent, removable and non-removable media can be by any method Or technology realizes information storage.Information can be computer-readable instruction, data structure, the module of program or other data. The example of the storage medium of computer includes, but are not limited to phase transition internal memory (PRAM), static RAM (SRAM), moves State random access memory (DRAM), other kinds of random access memory (RAM), read-only memory (ROM), electric erasable Programmable read only memory (EEPROM), fast flash memory bank or other memory techniques, read-only disc read only memory (CD-ROM) (CD-ROM), Digital versatile disc (DVD) or other optical storages, magnetic tape cassette, tape magnetic disk storage or other magnetic storage apparatus Or any other non-transmission medium, it can be used for storage and can be accessed by a computing device information.As defined in this article, it calculates Machine readable medium does not include temporary computer readable media (transitory media), the data letter number and carrier wave of such as modulation.
It should also be noted that, the terms "include", "comprise" or its any other variant are intended to nonexcludability Including so that process, method, commodity or equipment including a series of elements include not only those elements, but also wrap Include other elements that are not explicitly listed, or further include for this process, method, commodity or equipment intrinsic want Element.In the absence of more restrictions, the element limited by sentence "including a ...", it is not excluded that wanted including described There is also other identical elements in the process of element, method, commodity or equipment.
It will be understood by those skilled in the art that embodiments herein can be provided as method, system or computer program product. Therefore, complete hardware embodiment, complete software embodiment or embodiment combining software and hardware aspects can be used in the application Form.It is deposited moreover, the application can be used to can be used in the computer that one or more wherein includes computer usable program code The shape for the computer program product implemented on storage media (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) Formula.
The application can describe in the general context of computer-executable instructions executed by a computer, such as program Module.Usually, program module includes routine, program, object, the group for executing particular transaction or realizing particular abstract data type Part, data structure etc..The application can also be put into practice in a distributed computing environment, in these distributed computing environments, by Affairs are executed by the connected remote processing devices of communication network.In a distributed computing environment, program module can be with In the local and remote computer storage media including storage device.
Each embodiment in this specification is described in a progressive manner, identical similar portion between each embodiment Point just to refer each other, and each embodiment focuses on the differences from other embodiments.Especially for system reality For applying example, since it is substantially similar to the method embodiment, so description is fairly simple, related place is referring to embodiment of the method Part explanation.
Above is only an example of the present application, it is not intended to limit this application.For those skilled in the art For, the application can have various modifications and variations.It is all within spirit herein and principle made by any modification, equivalent Replace, improve etc., it should be included among the interest field of the application.

Claims (10)

1. a kind of method for allocating tasks based on maximum-flow algorithm, which is characterized in that including:
Obtain target information and mission bit stream to be allocated;
Capacity-network is built according to target information and mission bit stream to be allocated, wherein the power on each side in the Capacity-network The treatment effeciency that repeated root handles different classes of task according to target determines;
It is solved in the Capacity-network using default maximum-flow algorithm, all task distribution paths from source node to sink nodes;
The task to be allocated is distributed according to the task distribution path.
2. according to the method described in claim 1, it is characterized in that, the target information includes the work of multiple targets Make technical ability and skill proficiency;The mission bit stream to be allocated includes the task category of multiple tasks to be allocated;
Capacity-network is built according to target information and mission bit stream to be allocated, wherein the power on each side in the Capacity-network The treatment effeciency that repeated root handles different classes of task according to target determines, specifically includes:
Capacity-network is built according to the task category of the workmanship of the multiple target and multiple tasks to be allocated;
Treatment effeciency when task to be allocated described in any operative object handles is calculated using skill proficiency;
The weight on side corresponding with the target in the Capacity-network is determined according to the treatment effeciency.
3. according to the method described in claim 2, it is characterized in that, the mission bit stream to be allocated further includes task to be allocated Workload;
Treatment effeciency when task to be allocated described in any operative object handles is calculated using skill proficiency, is specifically included:
It is handled using target described in the skill proficiency and the workload computing of the task to be allocated described to be allocated Treatment effeciency when task.
4. according to the method described in claim 1, it is characterized in that:
The weight on each side of Capacity-network is handled to be worth caused by different classes of task according to target and be determined.
5. according to the method described in claim 1, it is characterized in that,
The default maximum-flow algorithm includes:Edmond-Karp algorithms, Ford-Fulkerson algorithms and Dinic algorithms.
6. according to the method described in claim 1, it is characterized in that:
Target information includes the workmanship and skill proficiency of multiple multipotency works;Order information to be allocated includes multiple waits for Distribute the task category and order value of order;
Capacity-network is built according to target information and mission bit stream to be allocated, wherein the power on each side in the Capacity-network The treatment effeciency that repeated root handles different classes of task according to target determines, specifically includes:
Capacity-network is built according to the workmanship of the multiple multipotency work and the order classification of multiple orders to be allocated;
The salvage value when order to be allocated is handled using order value calculation multipotency work;
The weight on side in the Capacity-network is configured according to the salvage value.
7. a kind of task allocation apparatus based on maximum-flow algorithm, which is characterized in that including:
Data obtaining module, for obtaining target information and mission bit stream to be allocated;
Module is built, for building Capacity-network according to target information and mission bit stream to be allocated, wherein the capacity net The weight on each side handles the treatment effeciency determination of different classes of task according to target in network;
Path solution module, it is all to be saved from source node to remittance for being solved in the Capacity-network using default maximum-flow algorithm The task distribution path of point;
Task allocating module, for distributing the task to be allocated according to the task distribution path.
8. device according to claim 7, which is characterized in that the target information includes the work of multiple targets Make technical ability and skill proficiency;The mission bit stream to be allocated includes the task category of multiple tasks to be allocated;
Build module, it may also be used for according to the task class of the workmanship of the multiple target and multiple tasks to be allocated Capacity-network is not built;
Treatment effeciency when task to be allocated described in any operative object handles is calculated using skill proficiency;
The weight on side corresponding with the target in the Capacity-network is determined according to the treatment effeciency.
9. device according to claim 7, which is characterized in that the mission bit stream to be allocated further includes task to be allocated Workload;
Build module, it may also be used for utilize to be allocated described in the skill proficiency and workload computing any operative object handles Treatment effeciency when task.
10. a kind of task distributing equipment based on maximum-flow algorithm, which is characterized in that including:
Memory stores the task distribution program based on maximum-flow algorithm;
Communication interface receives information acquisition request;
Processor, after communication interface receives information extraction request, call stored in memory based on maximum-flow algorithm Task distribution program, and execute:
Obtain target information and mission bit stream to be allocated;
Capacity-network is built according to target information and mission bit stream to be allocated, wherein the power on each side in the Capacity-network The treatment effeciency that repeated root handles different classes of task according to target determines;
It is solved in the Capacity-network using default maximum-flow algorithm, all task distribution paths from source node to sink nodes;
The task to be allocated is distributed according to the task distribution path.
CN201810178166.0A 2018-03-05 2018-03-05 A kind of method for allocating tasks, device and equipment based on maximum-flow algorithm Pending CN108537619A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810178166.0A CN108537619A (en) 2018-03-05 2018-03-05 A kind of method for allocating tasks, device and equipment based on maximum-flow algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810178166.0A CN108537619A (en) 2018-03-05 2018-03-05 A kind of method for allocating tasks, device and equipment based on maximum-flow algorithm

Publications (1)

Publication Number Publication Date
CN108537619A true CN108537619A (en) 2018-09-14

Family

ID=63486708

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810178166.0A Pending CN108537619A (en) 2018-03-05 2018-03-05 A kind of method for allocating tasks, device and equipment based on maximum-flow algorithm

Country Status (1)

Country Link
CN (1) CN108537619A (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110033246A (en) * 2018-12-07 2019-07-19 阿里巴巴集团控股有限公司 Network payment Current limited Control method and apparatus
CN110119876A (en) * 2019-04-03 2019-08-13 口碑(上海)信息技术有限公司 Worksheet method and device
CN110334436A (en) * 2019-07-03 2019-10-15 腾讯科技(深圳)有限公司 A kind of data processing method and equipment
CN110618855A (en) * 2018-12-25 2019-12-27 北京时光荏苒科技有限公司 Task allocation method and device, electronic equipment and storage medium
CN110866687A (en) * 2019-11-07 2020-03-06 中盈优创资讯科技有限公司 Task allocation method and device
CN110991808A (en) * 2019-11-06 2020-04-10 中国建设银行股份有限公司 Task allocation method and device
CN110991846A (en) * 2019-11-25 2020-04-10 深圳市北斗智能科技有限公司 Service personnel task allocation method, device, equipment and storage medium
CN111309821A (en) * 2020-01-20 2020-06-19 上海依图网络科技有限公司 Graph database-based task scheduling method and device and electronic equipment
CN111652552A (en) * 2020-05-29 2020-09-11 优信数享(北京)信息技术有限公司 Logistics order transportation planning method, system and device
CN111882152A (en) * 2020-06-18 2020-11-03 科大讯飞股份有限公司 Task allocation method and related device
CN113159628A (en) * 2021-05-13 2021-07-23 中国建设银行股份有限公司 Task allocation method and device

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102904750A (en) * 2012-09-24 2013-01-30 曙光信息产业(北京)有限公司 Activity allocation method based on network topology
CN103338228A (en) * 2013-05-30 2013-10-02 江苏大学 Cloud calculating load balancing scheduling algorithm based on double-weighted least-connection algorithm
CN104599168A (en) * 2015-02-02 2015-05-06 北京嘀嘀无限科技发展有限公司 Method and device for allocating taxi-calling orders
US20150188844A1 (en) * 2011-02-01 2015-07-02 Google Inc. System to Share Network Bandwidth Among Competing Applications
CN106203893A (en) * 2016-09-09 2016-12-07 扬州大学 A kind of method for allocating tasks of based on genetic algorithm under mass-rent environment
CN106982139A (en) * 2017-03-21 2017-07-25 深圳先进技术研究院 A kind of method and device of the Assignment Problems based on multirobot multitask, user equipment
CN107705000A (en) * 2017-09-18 2018-02-16 平安科技(深圳)有限公司 Choosing method, device, storage medium and the computer equipment of scanning device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150188844A1 (en) * 2011-02-01 2015-07-02 Google Inc. System to Share Network Bandwidth Among Competing Applications
CN102904750A (en) * 2012-09-24 2013-01-30 曙光信息产业(北京)有限公司 Activity allocation method based on network topology
CN103338228A (en) * 2013-05-30 2013-10-02 江苏大学 Cloud calculating load balancing scheduling algorithm based on double-weighted least-connection algorithm
CN104599168A (en) * 2015-02-02 2015-05-06 北京嘀嘀无限科技发展有限公司 Method and device for allocating taxi-calling orders
CN106203893A (en) * 2016-09-09 2016-12-07 扬州大学 A kind of method for allocating tasks of based on genetic algorithm under mass-rent environment
CN106982139A (en) * 2017-03-21 2017-07-25 深圳先进技术研究院 A kind of method and device of the Assignment Problems based on multirobot multitask, user equipment
CN107705000A (en) * 2017-09-18 2018-02-16 平安科技(深圳)有限公司 Choosing method, device, storage medium and the computer equipment of scanning device

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
姚慧峰: "移动云计算环境下任务分配问题的研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
王正元: "基于作战能力的部队作战任务分配方法", 《指挥控制与仿真》 *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110033246A (en) * 2018-12-07 2019-07-19 阿里巴巴集团控股有限公司 Network payment Current limited Control method and apparatus
CN110033246B (en) * 2018-12-07 2024-01-12 创新先进技术有限公司 Network payment current limiting control method and device
CN110618855A (en) * 2018-12-25 2019-12-27 北京时光荏苒科技有限公司 Task allocation method and device, electronic equipment and storage medium
CN110119876B (en) * 2019-04-03 2021-08-13 口碑(上海)信息技术有限公司 Work order processing method and device
CN110119876A (en) * 2019-04-03 2019-08-13 口碑(上海)信息技术有限公司 Worksheet method and device
CN110334436A (en) * 2019-07-03 2019-10-15 腾讯科技(深圳)有限公司 A kind of data processing method and equipment
CN110334436B (en) * 2019-07-03 2023-11-07 腾讯科技(深圳)有限公司 Data processing method and device
CN110991808A (en) * 2019-11-06 2020-04-10 中国建设银行股份有限公司 Task allocation method and device
CN110991808B (en) * 2019-11-06 2022-06-28 中国建设银行股份有限公司 Task allocation method and device
CN110866687A (en) * 2019-11-07 2020-03-06 中盈优创资讯科技有限公司 Task allocation method and device
CN110991846B (en) * 2019-11-25 2023-06-20 深圳市北斗智能科技有限公司 Service personnel task allocation method, device, equipment and storage medium
CN110991846A (en) * 2019-11-25 2020-04-10 深圳市北斗智能科技有限公司 Service personnel task allocation method, device, equipment and storage medium
CN111309821B (en) * 2020-01-20 2023-07-14 上海依图网络科技有限公司 Task scheduling method and device based on graph database and electronic equipment
CN111309821A (en) * 2020-01-20 2020-06-19 上海依图网络科技有限公司 Graph database-based task scheduling method and device and electronic equipment
CN111652552A (en) * 2020-05-29 2020-09-11 优信数享(北京)信息技术有限公司 Logistics order transportation planning method, system and device
CN111652552B (en) * 2020-05-29 2024-07-12 优信数享(北京)信息技术有限公司 Logistics order transportation planning method, system and device
CN111882152A (en) * 2020-06-18 2020-11-03 科大讯飞股份有限公司 Task allocation method and related device
CN111882152B (en) * 2020-06-18 2024-07-05 科大讯飞股份有限公司 Task allocation method and related device
CN113159628A (en) * 2021-05-13 2021-07-23 中国建设银行股份有限公司 Task allocation method and device

Similar Documents

Publication Publication Date Title
CN108537619A (en) A kind of method for allocating tasks, device and equipment based on maximum-flow algorithm
Waschneck et al. Optimization of global production scheduling with deep reinforcement learning
US10884795B2 (en) Dynamic accelerator scheduling and grouping for deep learning jobs in a computing cluster
Huang et al. A survey of resource management in multi-tier web applications
CN103853618B (en) Resource allocation method with minimized cloud system cost based on expiration date drive
Wu et al. Hybrid evolutionary scheduling for energy-efficient fog-enhanced internet of things
US8589929B2 (en) System to provide regular and green computing services
CN109298940A (en) Calculation task allocating method, device, electronic equipment and computer storage medium
CN107360206A (en) A kind of block chain common recognition method, equipment and system
CN109992407A (en) A kind of YARN cluster GPU resource dispatching method, device and medium
US11275744B2 (en) Disaggregating latent causes for computer system optimization
Yu et al. Workflow performance prediction based on graph structure aware deep attention neural network
Susila et al. A fuzzy-based firefly algorithm for dynamic load balancing in cloud computing environment
Pandey et al. A heuristic method towards deadline-aware energy-efficient mapreduce scheduling problem in Hadoop YARN
Sontakke et al. Optimization of hadoop mapreduce model in cloud computing environment
Oliveira et al. Optimizing query prices for data-as-a-service
Heidari et al. CAMDNN: Content-aware mapping of a network of deep neural networks on edge MPSoCs
CN113986511A (en) Task management method and related device
Seddiki et al. Fuzzy rule-based systems for optimizing power consumption in data centers
Li et al. Toward optimal operator parallelism for stream processing topology with limited buffers
Mytilinis et al. The vision of a heterogenerous scheduler
CN110008000A (en) Application cluster capacity reduction method and device
Tekin et al. Dynamic server allocation for unstable queueing networks with flexible servers
Kessaci Multi-criteria scheduling on clouds
CN116151137B (en) Simulation system, method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180914