CN116720645B - Task distribution method, distribution equipment and task distribution system - Google Patents
Task distribution method, distribution equipment and task distribution system Download PDFInfo
- Publication number
- CN116720645B CN116720645B CN202211293323.5A CN202211293323A CN116720645B CN 116720645 B CN116720645 B CN 116720645B CN 202211293323 A CN202211293323 A CN 202211293323A CN 116720645 B CN116720645 B CN 116720645B
- Authority
- CN
- China
- Prior art keywords
- sampling
- task
- equipment
- tasks
- state
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 110
- 238000005070 sampling Methods 0.000 claims abstract description 1473
- 238000012545 processing Methods 0.000 claims abstract description 169
- 238000013507 mapping Methods 0.000 claims description 96
- 230000000875 corresponding effect Effects 0.000 claims description 37
- 238000004590 computer program Methods 0.000 claims description 25
- 238000012216 screening Methods 0.000 claims description 23
- 230000002596 correlated effect Effects 0.000 claims description 2
- 230000002159 abnormal effect Effects 0.000 description 29
- 230000008569 process Effects 0.000 description 26
- 239000000178 monomer Substances 0.000 description 17
- 238000011156 evaluation Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 230000005856 abnormality Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000000694 effects Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 238000013139 quantization Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000003203 everyday effect Effects 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000007474 system interaction Effects 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 206010037660 Pyrexia Diseases 0.000 description 2
- 230000002547 anomalous effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Debugging And Monitoring (AREA)
Abstract
The embodiment of the application discloses a task distribution method, distribution equipment and a task distribution system, which are applicable to the technical field of data processing, and the method comprises the following steps: acquiring a first processing capacity of sampling equipment to a first sampling task; the first sampling task is a sampling task in the execution of the sampling device; and adjusting the sampling task allocated to the sampling device according to the first processing capacity. The embodiment of the application can improve the sampling efficiency of the whole sampling task.
Description
Technical Field
The present application relates to the field of data processing technologies, and in particular, to a task allocation method, allocation apparatus, and task allocation system.
Background
With the popularity of the use of various artificial intelligence (ARTIFICIAL INTELLIGENCE, AI) models, there is an increasing demand for sample data required for training the artificial intelligence models. In a scenario where sample data is collected with an electronic device and then an artificial intelligence model is trained based on the sample data collected by the electronic device. Because of the limited sample data available from a single electronic device, a large number of electronic devices are often required to perform the sampling task to obtain the sample data required for model training.
In practical applications, the available electronic equipment resources are limited, and the number of sampling tasks to be processed is often large. Therefore, how to effectively distribute the sampling tasks to the electronic devices so as to improve the sampling efficiency of the overall sampling task is a problem to be solved in practical application.
Disclosure of Invention
In view of this, the embodiments of the present application provide a task allocation method, allocation apparatus, and task allocation system, which can improve the sampling efficiency of the overall sampling task.
A first aspect of an embodiment of the present application provides a task allocation method, applied to an allocation device, including:
the method comprises the steps of firstly obtaining first processing capacity of sampling equipment to a first sampling task, and then adjusting the sampling task distributed to the sampling equipment according to the first processing capacity. The first sampling task is a sampling task in the execution of the sampling device. Adjusting the sampling tasks assigned to the sampling device includes: deleting part or all of the first sampling tasks of the sampling device and/or assigning a second sampling task to the sampling device that is different from the first sampling task.
The embodiment of the application can be applied to the early sampling stage or the middle sampling stage. In the embodiment of the application, the distribution equipment can dynamically adjust the sampling task distributed to the sampling equipment according to the actual processing capacity of the sampling equipment on the sampling task in the process of processing the sampling task by the sampling equipment. For example, newly assign some sampling tasks or delete sampling tasks. Therefore, the embodiment of the application can lead the matching degree of the whole sampling equipment and the distributed sampling tasks to be higher, thereby improving the sampling efficiency of the whole sampling tasks. In the method, for deleting part of sampling tasks or emptying the sampling tasks, some inefficient and even useless sampling equipment can be effectively removed from the perspective of the sampling tasks. Meanwhile, by combining the embodiment of the application, the distribution equipment can distribute the deleted sampling tasks to other sampling equipment which can be processed efficiently, so that the sampling tasks can acquire the required sample data more efficiently, and certain sampling tasks are prevented from being blocked in part of the sampling equipment for a long time. Therefore, the high-efficiency utilization of the whole sampling equipment can be realized, and the sampling efficiency of the whole sampling task is improved in the angle of the whole distribution system.
In a first possible implementation manner of the first aspect, obtaining a first processing capability of the sampling device for a first sampling task includes: and acquiring a first sampling state value of the sampling equipment for the first processing capacity of the first sampling task, wherein the sampling state value is a quantized value for the processing capacity, and the height of the sampling state value is positively correlated with the strength of the processing capacity.
The embodiment of the application converts the first processing capacity of the sampling device to the first sampling task into the first sampling state value, so that the processing capacity of the sampling device to the sampling task can be quantized later.
In a second possible implementation manner of the first aspect, adjusting the sampling task allocated to the sampling device according to the first processing capability includes:
The method comprises the steps of firstly obtaining a mapping relation and obtaining an equipment portrait label of sampling equipment. And adjusting the sampling task allocated to the sampling equipment according to the equipment portrait tag, the first sampling state value and the mapping relation of the sampling equipment. The mapping relation records a plurality of sampling tasks and the association relation between the equipment portrait tag and the sampling state value under each sampling task.
The embodiment of the application is applicable to the middle sampling stage. By means of the mapping relation and the equipment portrait labels of the sampling equipment, the distribution equipment can determine some sampling tasks possibly suitable for the sampling equipment. And adjusting the sampling task allocated to the sampling device by combining the actual processing capacity of the sampling device to the sampling task in execution, so that the embodiment of the application can dynamically allocate the more matched sampling task according to the processing capacity of the sampling device to the sampling task. Therefore, the embodiment of the application has extremely high flexibility in the allocation of the sampling tasks and extremely high self-adaptive capacity to the conditions of sampling equipment, so that the embodiment of the application can greatly improve the sampling efficiency of the whole sampling task.
In a third possible implementation manner of the first aspect, adjusting a sampling task allocated to the sampling device according to the sampling state includes: and deleting part or all of the first sampling tasks of the sampling device when the first sampling state value is lower than the first state threshold value.
When the first sampling state value is lower than the first state threshold value, the processing capacity of the sampling device for the sampling task in execution is poorer. At this time, the embodiment of the application can delete part or all of the sampling tasks in the execution of the sampling device, thereby avoiding the sampling tasks from being blocked in the sampling device for a long time.
In some embodiments, the value of the first state threshold may be set to be "efficient" or other sampling state value that characterizes the sampling device as having greater processing power for the sampling task.
In a fourth possible implementation manner of the first aspect, the number of the first sampling tasks is one or more, and each first sampling task has a corresponding first sampling state value.
Deleting part or all of the first sampling task of the sampling device when the first sampling state value is below the first state threshold, including: and deleting the sampling task with the first sampling state value lower than the first state threshold value from the first sampling tasks of the sampling device.
In the embodiment of the application, each sampling task in execution of the sampling device has an independent sampling state value. When the sampling state value of a certain sampling task is determined to be relatively inefficient or abnormal in execution of the sampling task, the sampling task is timely deleted, and therefore the sampling task is prevented from being clamped in the sampling equipment for a long time.
In a fifth possible implementation manner of the first aspect, the first sampling state value includes a second sampling state value, where the second sampling state value is a quantized value of a total processing capability of the sampling device for all first sampling tasks.
Deleting part or all of the first sampling task of the sampling device when the first sampling state value is below the first state threshold, including: and deleting all the first sampling tasks of the sampling device when the second sampling state value is lower than the second state threshold value, and stopping distributing the sampling tasks to the sampling device. Wherein the second state threshold is lower than the first state threshold.
The second state threshold is "inefficient" or other sampling state value that characterizes the end-side as having weaker processing power for the sampling task. In the embodiment of the application, the distribution equipment can acquire the overall processing capacity of the sampling equipment for all the sampling tasks in execution. Specifically, a quantized value of the overall processing power can be obtained: a second sampled state value (also referred to as an overall state value). On the basis, for the sampling equipment with the abnormal overall processing capacity and the second sampling state value being too low (lower than the second state threshold value), the mode of emptying the sampling task and terminating the allocation of the sampling task is adopted, so that the allocation of the sampling task to the sampling equipment with the abnormal sampling state value can be avoided to the greatest extent, and the overall sampling efficiency is improved.
In a sixth possible implementation manner of the first aspect, adjusting a sampling task allocated to the sampling device according to a device portrait tag, a first sampling state value, and a mapping relationship of the sampling device includes:
And when the first sampling state value is higher than or equal to the first state threshold value, or when the first sampling task of the sampling equipment part is deleted, acquiring a second sampling task matched with the sampling equipment according to the equipment portrait label and the mapping relation of the sampling equipment, and distributing the second sampling task to the sampling equipment.
When the first sampling state value is higher than or equal to the first state threshold value, the processing capacity of the sampling device for executing the sampling task is higher, and when part of the sampling task of the sampling device is deleted, the performance of the sampling device may be free. Therefore, at the two possible occasions, new sampling tasks are matched and issued for the sampling equipment in time based on the mapping relation, and the actual sampling task processing capacity of the sampling equipment can be utilized rapidly and better, so that the overall sampling efficiency is improved.
In a seventh possible implementation manner of the first aspect, according to the device portrait tag and the mapping relation of the sampling device, acquiring a second sampling task matched with the sampling device includes:
and acquiring a second sampling task according to the mapping relation. In the mapping relation, the sampling state value associated with the device portrait tag of the sampling device under the second sampling task is higher than or equal to the first state threshold value.
When a sampling task needs to be newly added to the sampling device, the embodiment of the application can match and distribute the sampling tasks which can be efficiently processed by some sampling devices based on the mapping relation, so that the sampling efficiency of the sampling device to the sampling task can be improved, and the sampling efficiency of the whole sampling task can be improved.
In an eighth possible implementation manner of the first aspect, the task allocation method further includes:
The state parameters of the sampling device are obtained and the device state of the sampling device is identified based on the state parameters.
If the identified equipment state is that the sampling equipment is not suitable for executing the sampling task, deleting all first sampling tasks of the sampling equipment, and stopping distributing the sampling tasks to the sampling equipment.
In the embodiment of the application, the distribution device identifies whether the device state of the sampling device is suitable for executing the sampling task, namely whether executing the sampling task can influence the normal use of the sampling device by a user. If the equipment state of the sampling equipment is identified to be problematic, the user can normally use the sampling equipment to influence the execution of the sampling tasks, and all the sampling tasks of the sampling equipment are emptied. Meanwhile, the sampling device is removed from the sampling task shunting range, and the sampling task can be subsequently not reassigned to the sampling device. Therefore, the embodiment of the application can effectively ensure the normal use of the sampling equipment by a user while collecting the sample data through the sampling equipment, thereby ensuring the use experience of the user.
In a ninth possible implementation manner of the first aspect, according to the device portrait tag and the mapping relation of the sampling device, acquiring a second sampling task matched with the sampling device includes:
and determining all third sampling tasks matched with the sampling equipment according to the equipment portrait labels and the mapping relation of the sampling equipment. And screening part or all of the sampling tasks from the third sampling tasks to serve as second sampling tasks.
In the embodiment of the application, in consideration of the general upper limit requirement on the number of sampling tasks distributed to a single sampling device and the requirements on the number of sampling devices or sample data and the like required by different sampling tasks, after all matched sampling tasks are determined, the embodiment of the application can screen according to actual requirements and then distribute the screened sampling tasks meeting the requirements to the sampling devices. Therefore, the embodiment of the application can effectively meet the actual requirements of sampling equipment and sampling tasks in actual application.
In a tenth possible implementation manner of the first aspect, the operation of screening part or all of the sampling tasks from the third sampling task as the second sampling task includes any one or more of the following screening operations:
and screening out sampling tasks with the demand quantity of the sample data higher than the demand quantity threshold value in the third sampling tasks.
And screening out the sampling tasks with the number of the allocated electronic devices less than the threshold value of the number of the devices in the third sampling tasks.
And screening out the sampling tasks which are eliminated from the electronic equipment except the sampling equipment in the third sampling tasks.
Because the sampling tasks with larger sample data demand, the sampling tasks with smaller number of allocated sampling devices and the sampling tasks removed from other sampling devices are all sampling tasks with urgent sample data demand, the sampling tasks are preferentially allocated to the sampling devices in the efficient state, and the efficiency of the sampling tasks for obtaining the sample data can be effectively improved.
In addition, in the embodiment of the application, when a new sampling task is allocated to the sampling device, the sampling task deleted from other electronic devices can be used as a candidate task. I.e. to match some new suitable sampling devices for these deleted sampling tasks. Therefore, timely and reasonable dynamic adjustment of the sampling equipment issued by the sampling task is realized. Therefore, the embodiment of the application can realize effective dynamic distribution of the sampling tasks, thereby improving the flexibility of the distribution of the sampling tasks and realizing the improvement of the sampling efficiency of the whole sampling task.
In an eleventh possible implementation manner of the first aspect, the first sampling state value is: any one of the first state value, the second state value and the third state value, and the first processing capacity corresponding to the first state value, the second state value and the third state value is reduced in sequence.
The embodiment of the application provides a dividing standard (namely a quantization rule for processing capacity) for the sampling state value, so that the processing capacity of the sampling task of the sampling device can be quantized subsequently. As an alternative embodiment of the present application, the first state value may be efficient, the second state value may be inefficient, and the third state value may be abnormal. At this time, the first state value indicates that the sampling device can efficiently process a certain sampling task, the second state value indicates that the sampling device is less efficient in processing a certain sampling task, and the third state value indicates that the sampling device is abnormal in processing a certain sampling task.
In a twelfth possible implementation manner of the first aspect, obtaining a first sampling state value of the sampling device for the first sampling task includes:
and receiving a first sampling state value sent by the sampling equipment for a first sampling task. Or alternatively
And evaluating the first processing capacity of the sampling equipment to obtain a first sampling state value.
In the embodiment of the application, the sampling equipment can actively report the processing capacity quantized value of the sampling equipment in execution to the distribution equipment, and the distribution equipment can also actively evaluate the processing capacity of the sampling equipment to obtain the corresponding processing capacity quantized value.
In a thirteenth possible implementation manner of the first aspect, the evaluating the first processing capability of the sampling device to obtain the first sampling state value includes:
and acquiring a first sampling task of the sampling equipment, and determining a first sampling state value of the sampling equipment for the first sampling task according to the mapping relation and the equipment portrait label of the sampling equipment. Or alternatively
And acquiring sample data of the first sampling task uploaded by the sampling equipment, and evaluating the sampling state of the first sampling task based on the sample data of the first sampling task to obtain a first sampling state value.
In the embodiment of the application, the distribution equipment can determine the theoretical processing capacity of the sampling equipment to the sampling task based on the mapping relation and the equipment portrait label of the sampling equipment and process the theoretical processing capacity as a first sampling state value. The distribution device can also accurately evaluate the theoretical processing capacity of the sampling device for the sampling task according to the sample data uploaded by the sampling device. By means of the method, the distribution device can reduce the dependence on information provided by the sampling device, and can cope with the situation that the sampling device cannot provide sampling state values due to various unknown situations. Therefore, the task allocation method in the embodiment of the application can be more freely implemented, and the overall sampling efficiency can be more effectively improved.
In a fourteenth possible implementation manner of the first aspect, acquiring a device portrait tag of a sampling device includes:
Acquiring equipment information of the sampling equipment, and determining an equipment portrait label of the sampling equipment according to the equipment information.
In an embodiment of the application, the device portrait tag of the sampling device may be actively extracted by the distribution device. Because the distribution equipment can acquire equipment information of a large number of different sampling equipment, the labeling can be performed more accurately and reliably when the labeling processing of the sampling equipment is performed. Therefore, the obtained equipment portrait tag can better represent dominant or recessive characteristics of a large number of sampling equipment, so that the subsequent study and use of the mapping relation are more accurate, and the matching of the sampling tasks is more accurate when the sampling tasks are adjusted to the allocation equipment.
In a fifteenth possible implementation manner of the first aspect, before acquiring the first processing capability of the sampling device for the first sampling task, the method further includes:
upon receiving a request for a sampling task by a sampling device, it is identified whether the sampling device has a first sampling task in execution.
When the sampling device has a first sampling task, an operation is performed that obtains a first processing capability of the sampling device for the first sampling task.
And when the sampling equipment does not have the first sampling task, acquiring a mapping relation, wherein the mapping relation records a plurality of sampling tasks and the association relation between the equipment portrait tag and the sampling state value under each sampling task.
And acquiring the device portrait label of the sampling device.
And matching the sampling tasks of the sampling equipment according to the equipment portrait labels and the mapping relation of the sampling equipment, and distributing the matched sampling tasks to the sampling equipment.
For the sampling equipment without executing the sampling task, the embodiment of the application can determine the most suitable sampling task of the sampling equipment according to the equipment portrait label and the mapping relation of the sampling equipment and issue the sampling task, so that the embodiment of the application can furthest match the sampling task suitable for the actual condition of the sampling equipment. Therefore, the embodiment of the application can be well adapted to the actual condition of the sampling equipment to finish the initial sampling task allocation of the sampling equipment, and the rationality of the initial sampling task allocation is improved, thereby improving the sampling efficiency of the whole sampling task.
A second aspect of an embodiment of the present application provides a task allocation device, including:
And the sampling capacity acquisition module is used for acquiring the first processing capacity of the sampling equipment to the first sampling task. The first sampling task is a sampling task in the execution of the sampling device.
And the sampling task allocation module is used for adjusting the sampling task allocated to the sampling equipment according to the first processing capacity. Adjusting the sampling tasks assigned to the sampling device includes: deleting part or all of the first sampling tasks of the sampling device and/or assigning a second sampling task to the sampling device that is different from the first sampling task.
As an alternative embodiment of the present application, the task allocation device may further implement the method content as in any one of the above first aspects.
In a third aspect, an embodiment of the present application provides a dispensing device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, the processor implementing a method according to any one of the first aspects described above when the computer program is executed by the processor.
In a fourth aspect, an embodiment of the present application provides a task allocation system, including a plurality of sampling devices and an allocation device according to the third aspect.
In a first possible implementation manner of the fourth aspect, before the distributing device obtains the first processing capability of the sampling device to the first sampling task, the distributing device further includes:
The sampling device evaluates the first processing capacity of the first sampling task according to at least one index data of the quantity, the speed and the quality of the sample data of the first sampling task.
By acquiring the indexes such as the quantity, the speed, the quality and the like of the sample data of the first sampling task, the accuracy of the processing capacity evaluation of the sampling equipment on the sampling task can be effectively improved.
In a fifth aspect, embodiments of the present application provide a computer readable storage medium storing a computer program which when executed by a processor performs a method as in any of the first aspects above.
In a sixth aspect, an embodiment of the present application provides a chip system, including a processor, the processor being coupled to a memory, the processor executing a computer program stored in the memory to implement a method according to any one of the first aspects. The chip system can be a single chip or a chip module composed of a plurality of chips.
In a seventh aspect, embodiments of the present application provide a computer program product for, when run on an electronic device, causing the electronic device to perform the method of any one of the first aspects above.
It will be appreciated that the advantages of the second to seventh aspects may be found in the relevant description of the first aspect, and are not described here again.
Drawings
FIG. 1 is a schematic view of a task allocation system according to an embodiment of the present application;
FIG. 2A is a system interaction diagram of a task allocation method in an initial stage of sampling according to an embodiment of the present application;
FIG. 2B is a schematic diagram of another scenario of a task allocation system according to an embodiment of the present application;
FIG. 2C is a schematic flow chart of a task allocation method according to an embodiment of the present application;
fig. 3 is a schematic view of a mapping relationship and an application scenario provided in an embodiment of the present application;
FIG. 4A is a schematic flow chart of another task allocation method according to an embodiment of the present application;
fig. 4B is a system interaction diagram of a task allocation method in a mid-sampling stage according to an embodiment of the present application;
FIG. 4C is a schematic flow chart of another task allocation method according to an embodiment of the present application;
FIG. 4D is a schematic flow chart of sample task adjustment according to an embodiment of the present application;
FIG. 5 is a schematic flow chart of a task allocation method according to an embodiment of the present application;
FIG. 6 is a schematic diagram of a task allocation scenario according to an embodiment of the present application;
FIG. 7 is a diagram of an overall interaction architecture of a distribution system provided by an embodiment of the present application;
FIG. 8 is a schematic structural diagram of a task allocation device according to an embodiment of the present application;
fig. 9 is a schematic diagram of a hardware structure of an electronic device according to an embodiment of the present application.
Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth such as the particular system architecture, techniques, etc., in order to provide a thorough understanding of the embodiments of the present application. It will be apparent, however, to one skilled in the art that the present application may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present application with unnecessary detail.
Some concepts that may be involved in embodiments of the present application are described below:
A plurality of: in the embodiment of the present application, a plurality means two or more.
Task distribution system, sampling device and distribution device: the sampling device is an electronic device for executing a sampling task and collecting sample data. The distribution device refers to an electronic device responsible for distributing sampling tasks to the sampling devices. In the embodiment of the application, the allocation device is the execution main body of the task allocation method provided by the embodiment of the application. A task distribution system refers to a system comprising a sampling device and a distribution device. In the embodiment of the application, the number of the sampling devices is larger than 1, namely at least 2 sampling devices are arranged. On this basis, the embodiments of the present application do not impose excessive restrictions on the specific number of sampling devices and dispensing devices.
Meanwhile, the embodiment of the application does not limit the specific equipment types of the sampling equipment and the distribution equipment too much. For example, in some alternative embodiments, the sampling device may be an intelligent electronic device such as a personal computer, a mobile phone, a tablet computer, or a wearable device, and the distribution device may be an electronic device such as a server, a super mobile personal computer, or a personal computer with a relatively high data processing capability. For example, in a scenario in which a server distributes a sampling task to a mobile phone and a tablet computer, the server is a distribution device, and the mobile phone and the tablet computer are sampling devices.
In addition, in the embodiment of the application, the sample data to be acquired is determined according to the requirement of the actual sampling task. Therefore, the embodiment of the application does not limit the specific data type of the sample data too much. For example, for a sampling task that needs to collect user face data, the sample data is the user face. And for the sampling task requiring to collect the number of times that the folding screen of the folding screen mobile phone is unfolded every day, the sample data is the number of times that the folding screen is unfolded every day. The sampling tasks to be allocated are determined according to the actual application scene requirements, and are not limited too much.
Device information: in the embodiment of the application, the equipment information of the sampling equipment is used for distributing equipment to determine the equipment portrait label corresponding to the sampling equipment. The specific information content included in the device information is not limited herein too much, and may be determined by a skilled person according to actual requirements. For example, in some alternative embodiments, the device information may include any one or more of the following: software information (e.g., system version, etc.), hardware information (e.g., model, etc.), geographic location information, and user information (e.g., user age, gender, etc.) of the sampling device.
Device portrait tag: the classification label of the sampling equipment obtained by processing equipment information of the sampling equipment can depict some explicit or implicit characteristics of the sampling equipment and realize classification of the sampling equipment. For example, in some embodiments, the device portrait tag may depict explicit features such as the model of the sampling device and whether the sampling device is a folding screen, and may also depict implicit features such as occupation, role, or preference of the user of the sampling device. Such as marking the sampling device user as white collar or teacher, game user or business user by the device portrait label.
The method and the device for processing the equipment information do not limit the mode of obtaining the equipment image label too much. For example, in some alternative embodiments, a portion of the device information may be used as some device portrait tags, or other device portrait tags may be obtained after the device information is extracted twice. In other alternative embodiments, a plurality of fixed device portrait labels may be preset, where the distribution device may match one or more device portrait labels suitable for the sampling device according to the device information, so as to implement classification marking for the sampling device.
Sampling state: the method refers to the execution state condition of sampling equipment on a sampling task, namely the state condition of collecting sample data. Such as how fast or slow the sample data is collected, whether the sample data is efficient or abnormal, etc. In practical application, a technician can divide the sampling state into a plurality of specific state values according to requirements. For example, in some alternative embodiments, the sampling state may be divided into three state values, efficient, inefficient, and anomalous. In alternative embodiments, the sampling state may be divided into other state values, for example, a scoring system may be used to divide the sampling state score into a range of 1 to 100. The sampling state of the sampling device at this time may then be a specific fraction value in the range of 1 to 100. Therefore, the embodiment of the application does not limit the quantization mode of the sampling state too much.
It should be appreciated that the sampling state is one embodiment of the sampling device's processing capability for the sampling task, since the sampling state is determined by the sampling device's actual acquisition capability for the sample data (i.e., processing capability for the sampling task). That is, the better the sampling state of a certain sampling device, the stronger the sampling device can acquire sample data, and the stronger the processing capability of the sampling device to sampling tasks.
According to different actual demands, the number of sampling tasks covered by the sampling states can also have certain differences. For example, in some embodiments, the sampling device may evaluate its sampling state for an independent object with each sampling task in execution. The sampling device may have one sampling state per sampling task being performed, i.e. each sampling state overrides one sampling task. In other alternative embodiments, the sampling device may evaluate the sampling state of itself by using all the executing sampling tasks as a whole. All executing sampling tasks of the sampling device have an overall sampling state, i.e. the sampling state at this time is covered with one or more sampling tasks. Therefore, the number of sampling tasks covered by the sampling state needs to be determined according to the actual situation, which is not limited herein.
A first sampling task, a second sampling task, a first processing capability, and a first sampling state value: wherein, the first sampling task refers to a sampling task in the execution of the sampling device. The first processing capability refers to the processing capability of the sampling device for the first sampling task. When the sampling state is employed to characterize the processing capability of the sampling device for a sampling task, the first processing capability may also be referred to as a first sampling state or the like. The first sampling state value is a quantized value of the first processing capacity, i.e. the processing capacity quantized value of the sampling device for the sampling task in execution. The second sampling task refers to a sampling task which is newly allocated by the allocation device to the sampling device and is different from the first sampling task in the allocation process of each sampling task. For example, assume that a first sampling task in execution of the sampling device a has a sampling task a and a sampling task B, and in a process of allocating the sampling tasks, the allocating device allocates a sampling task C for the sampling device a, where the sampling task C is a second sampling task.
In practice, there are many scenarios that require the use of electronic devices to collect sample data, including but not limited to the following several common scenarios:
Scene 1: and (5) model construction and updating. Many models require a large amount of sample data as a basis for modeling and model updating. Taking an AI model as an example, in order to enable the AI model to better simulate human intelligence, the AI model can effectively process specific scene problems, such as biological feature recognition, natural language processing, intelligent man-machine interaction and the like. In practical application, a large amount of sample data needs to be collected, so that potential rules in the sample data can be effectively analyzed and extracted in the training process of constructing and updating the AI model, and thus training is completed, and model construction or updating is realized.
Scene 2: the update iteration of the software product (including the operating system). In the process of updating the software product, the use data and the feedback data of the user are generally required to be collected, and then the use data and the feedback data are used as sample data to carry out targeted updating iteration on the software product. Such as targeted optimization of certain functions of the software product based on the sample data, or reduction or addition of certain functions of the software product based on user requirements analyzed in the sample data.
To meet the usage requirements of these sample data, a large number of electronic devices are often required to perform the sampling task. However, in practical applications, the available electronic device resources are often limited. For example, for handset manufacturers, sample data may be collected using their own handsets. However, the number of handsets produced by each handset manufacturer is limited, and thus the available electronic device resources are limited. Also for example, for a software product vendor, the sample data may be collected using an electronic device in which the software product is installed. The electronic devices on which the software products are installed tend to be relatively limited, resulting in limited electronic device resources being available. Therefore, how to effectively distribute the sampling tasks to the electronic devices so as to improve the sampling efficiency of the overall sampling task is a problem to be solved in practical application.
In some alternative sampling task allocation methods, the allocation device may sequentially allocate the sampling tasks to the sampling devices requesting the sampling tasks in order of a preset priority of the sampling tasks from high to low. At this time, for each sampling device, the tasks to be allocated are indiscriminately treated. These indiscriminate methods of assigning devices to be sampled have at least the following problems:
the flexibility of task allocation is insufficient, and the adaptability to the condition of sampling equipment is poor, so that the overall sampling efficiency is low. The details are as follows:
In practical application, on one hand, when a sampling task is allocated, a certain difference may exist in the actual processing capacity of each sampling device on the sampling task. For example, sampling devices with different hardware and software configurations typically have a certain difference in processing power of the sampling task. Even two sampling devices with identical configurations may have a difference in the available idle resources of the processor when the number of tasks being executed in the devices is different, resulting in a difference in the actual processing capacity of the two sampling devices for the sampling tasks. For example, for two sampling devices with identical configuration, different settings of the user on various functions in the devices may also cause a difference in actual processing capacities of the two sampling devices on the sampling tasks.
Meanwhile, there may be a change in the device state of the sampling device during the process of collecting the sample data. For example, assuming that the sampling device is a mobile phone, the user may use different functions or software of the mobile phone during the process of collecting the sample data, and at this time, the available idle resources of the mobile phone processor may dynamically change with the use of the user. Thus, even with the same sampling device, there may be differences in the acquisition capabilities of the sample data at different points in time. Resulting in dynamic differences in the ability of the sampling device to perform various sampling tasks.
In combination with the analysis of the problems, it is known that the sampling tasks can be distributed indiscriminately to each sampling device by presetting a fixed task distribution method, and the distribution of the sampling tasks can be realized to a certain extent, but the flexibility is poor. On one hand, the actual sampling capacity of each sampling device during allocation cannot be adapted, and on the other hand, the dynamic change condition of the actual state of each sampling device during the sampling process cannot be adapted. Thus, the distribution of the final overall sampling task is difficult to effectively match the actual situation of each sampling device, and the final overall sampling efficiency is low.
In order to improve the overall sampling efficiency, the embodiment of the application can upload some own equipment information together when the sampling equipment requests the sampling task from the distribution equipment, and can upload the sampling state of each sampling task in execution. For the distribution equipment, the equipment portrait labels corresponding to the sampling equipment are determined according to the collected equipment information of the sampling equipment, and then the mapping relation between the equipment portrait labels and the sampling states under the sampling tasks is learned. On the basis, for sampling equipment which is not allocated with sampling tasks, after the allocation equipment receives the requests of the sampling equipment, the corresponding equipment portrait labels can be determined according to the equipment information of the sampling equipment, and then the sampling tasks matched with the sampling equipment are determined and allocated according to the mapping relation and the equipment portrait labels. For sampling devices that have been assigned sampling tasks, it is then on the one hand selected whether the sampling tasks of the sampling device are to be pruned or not, depending on the sampling state of the sampling devices for the respective sampling task actually performed. On the other hand, for the sampling device with the sampling tasks deleted, the corresponding device portrait label can be determined according to the device information of the sampling device, and then the sampling tasks matched with the sampling device can be determined and distributed according to the mapping relation and the device portrait label. Meanwhile, for sampling equipment with high sampling state, the sampling equipment with the sampling tasks deleted can be selected to match with some new sampling tasks for distribution.
On one hand, the distribution equipment establishes a mapping relation between the portrait tag and the sampling state through learning, and matches a proper sampling task through the mapping relation when the sampling equipment does not have the sampling task, so that the embodiment of the application can maximally match the sampling task which is proper for the actual condition of the sampling equipment when the sampling equipment is initially distributed with the task. Therefore, the embodiment of the application can be well adapted to the actual condition of the sampling equipment to finish the initial sampling task allocation of the sampling equipment, and the rationality of the initial sampling task allocation is improved, thereby improving the sampling efficiency of the whole sampling task. On the other hand, during the sampling period of the sampling device, the embodiment of the application can dynamically prune the sampling tasks of the sampling device based on the sampling state of the sampling device on each sampling task. Meanwhile, the sampling task can be dynamically increased for the sampling device with the sampling task omitted and the sampling device with the better sampling state based on the device information of the sampling device and the learned mapping relation. Therefore, in the sampling task distribution process, the embodiment of the application can dynamically adjust the sampling tasks distributed to each sampling device according to the actual task processing condition of the sampling device, thereby realizing the effect of dynamic distribution of the sampling tasks. Therefore, the embodiment of the application has extremely high flexibility in the allocation of the sampling tasks and extremely high self-adaptive capacity to the conditions of sampling equipment, so that the embodiment of the application can greatly improve the sampling efficiency of the whole sampling task.
It should be noted that the embodiments of the present application are applicable to any scenario requiring the use of an electronic device to collect sample data, including, but not limited to, scenario 1 described above: model building and updating, and scenario 2: the updating of the software product iterates. The specific determination can be determined according to the actual application situation, and the limitation is not made here.
In order to illustrate the technical scheme of the application, a server (hereinafter referred to as cloud side or server side) with a distribution device as a cloud end is used below, the processing capacity of sampling equipment to a sampling task is represented by a sampling state, and the sampling state is divided into three state values of high efficiency, low efficiency and abnormality, and the quantization mode of the sampling state is illustrated by a specific embodiment. Meanwhile, the sampling device may also be referred to as an end side in the embodiment of the present application.
Reference may be made to fig. 1, which is a schematic diagram of a possible scenario of a task allocation system according to an embodiment of the present application. In this scenario, the task allocation system includes one cloud side, and 5 end sides, namely end side 1, end side 2, end side 3, end side 4, and end side 5.
According to different periods of the cloud side to sample task allocation, the task allocation in the embodiment of the application can comprise a sampling initial stage and a sampling middle stage, which are described in detail as follows:
stage one, sampling initial stage:
At the initial stage of sampling, yun Ce just starts to distribute sampling tasks or the time for distributing sampling tasks is not long yet. At this time, the equipment information of the end side accumulated in the cloud side and the sampling states of different end sides on the sampling tasks are less in basic data, so that the cloud side is difficult to obtain more effective basic data, and the sampling tasks suitable for different end sides are learned. Therefore, in the embodiment of the application, one of the important targets in the early stage of sampling is to accumulate the device information of the actual end side and the sampling state information of the end side to the sampling task. The specific start time of the initial sampling stage can be determined according to practical application and can be set by a technician.
In the initial stage of sampling, the end side may normally request a sampling task to the cloud side, and fig. 2A may be referred to illustrate a system interaction diagram of the task allocation method provided in the first embodiment of the present application, which is described in detail below:
S101, sending a request of a sampling task to a cloud side by a terminal side.
In the embodiment of the application, the end side can actively request the sampling task from the cloud side. For example, in the embodiment shown in fig. 1, each of the end sides 1 to 5 may actively request a sampling task from the cloud side. The rules of the end-side request sampling task, such as the request times, the frequency, the time and the like, are not excessively limited, and can be determined according to the actual application situation. For example, in some alternative embodiments, the end side may send a request for a sampling task to the cloud side on a fixed period, such as may be requested from the cloud side once a day, weekly, or monthly. Because the condition of the end side in the practical application is complex and difficult to predict, the end side actively requests the sampling task to the cloud side, and the problems of inaccurate and difficult sampling task allocation caused by the active pushing of the sampling task by the cloud side can be avoided. Meanwhile, the cloud side can be prevented from storing a large amount of terminal side information in advance.
As an alternative embodiment of the application, it may be provided that the end side sends a request for a sampling task to the cloud side once per day.
As an optional embodiment of the present application, the end side may send its own device information to the cloud side while sending a request to the cloud side. For example, assume that in some embodiments, the device information includes software information, hardware information, geographical location information, and user information on the end side, at which point the end side may send the device information to the cloud side along with a request for a sampling task.
S102, after receiving a request of the end side, the cloud side distributes at least one sampling task to each end side according to a preset initial distribution rule.
In the embodiment of the application, the cloud side is provided with a plurality of sampling tasks. The specific number of sampling tasks may be determined according to practical application conditions, and is not limited herein. For example, in practical applications, the cloud side may be provided with several tens to hundreds of different sampling tasks. Meanwhile, the sampling tasks in the cloud side can be updated according to operation settings of technicians, for example, the technicians can add new sampling tasks into the cloud side according to actual requirements, and can delete some sampling tasks in the cloud side.
After receiving the request of the end side, the cloud starts to search a proper sampling task for the end side according to a preset initial allocation rule and issues (i.e. allocates) the sampling task to the end side. The specific content of the initial allocation rule is not excessively limited, and any scheme or rule capable of realizing sampling task selection can be adopted.
As an optional embodiment of the present application, the cloud side receives the device information sent by the end side while receiving the request. At this time, the cloud side can match the device information with each sampling task, determine one or more sampling tasks suitable for the end side, and then send the determined sampling tasks to the end side. Because the requirements of different sampling tasks on the opposite end sides can be different, the mutual matching between the sampling tasks and the opposite end sides can be realized through the matching of equipment information, and the rationality of task allocation is improved. By way of example, assume that the device information includes an end-side model and a geographic location, and when the sampling tasks are matched, some tasks matched with the end-side model and the geographic location can be searched. Meanwhile, the sampling task A needs to collect the number of times that the folding screen of the folding screen mobile phone is opened every day, and the sampling task B needs to collect data of the code scanning of the user subway, such as time and times of code scanning, specific subway stations and the like. At this time, the cloud side can judge whether the terminal side is a folding screen mobile phone according to the model, and if so, the sampling task A can be issued to the terminal side. Meanwhile, the cloud side can judge whether the city or the region where the end side is located has subways according to the geographic position data of the end side, and if so, the sampling task B can be issued to the end side.
In addition, the embodiment of the application does not limit the quantity of the sampling tasks which are specifically allocated to the single end side in the initial allocation rule too much, and can also be determined according to the actual situation. For example, in some alternative embodiments, a task number threshold may be set, and the cloud side may control that the total number of sampling tasks allocated to a single end side does not exceed the task number threshold when allocating sampling tasks to the end side. For example, if the task number threshold is 15, the number of sampling tasks allocated to a single end side by the cloud side at this time may be controlled to be less than 15, for example, may be controlled to be about 10.
S103, after the end side receives the sampling task, the sampling task starts to be executed to collect sample data.
After receiving the sampling task issued by the cloud side, the end side starts to sample data according to the sampling task requirement. For example, assume that the terminal side is a folding screen mobile phone, the number of times that the folding screen is opened every day is collected according to the requirement of the sampling task A, or the data of the subway scanning code of the user is collected according to the requirement of the sampling task B. Since the specific requirements of each sampling task are different, the specific details of the operation of S103 need to be determined according to the specific sampling task situation in practical application, which is not limited herein.
S104, counting the acquisition condition data of the sample data in a period of time by the end side in the process of executing the sampling task, evaluating the sampling state of the end side according to the acquisition condition data, and transmitting the evaluated sampling state value and the acquired sample data to the cloud side.
The end side evaluates the sampling state of the end side as evaluating the first processing capacity of the end side to the first sampling task, and the obtained sampling state value is the first sampling state value.
The embodiment of the application does not limit the evaluation method of the specific sampling state too much, and can be determined according to the actual application condition. For example, in some alternative embodiments, the acquisition condition data may be any one or more index data of the number, the acquisition speed, and the quality of sample data acquired by the end side itself for the sampling task in a unit time. At this time, the end side can judge the sampling state value of the end side according to any one or more index data of indexes such as the number, the acquisition speed, the quality and the like of sample data acquired by the end side in unit time of the sampling task.
As an alternative embodiment of the present application, the end side may determine the state of the sampling task according to the number of samples of the sample data per se. Specifically, a plurality of sample number ranges and sample number ranges corresponding to different sampling state values may be set in advance. The end side can count the number of the sample data collected in the latest period of time, and then determine a specific sampling state value by judging the sample number range where the number of the collected sample data is located. The correspondence between different sampling state values and the sample number ranges, and the time range of the specific last period are not limited herein, and can be set by a technician according to the sampling task condition. For example, the statistical time range may be set to the nearest day, week, or month. For example, the sample data range corresponding to the abnormal sampling state may be set to 0, and if the end side does not collect valid sample data in the last period of time, it may be determined that the sampling state value is abnormal.
For example, assume that the time range of statistics is set to be the last day, and the correspondence between the sampling state value and the sample number range and the sample data quality is:
the sample number range that corresponds with high efficiency is: greater than or equal to a first sample number threshold;
the sample number range for the inefficiency corresponds to: greater than or equal to the second sample number threshold and less than the first sample number threshold;
the number of samples corresponding to the anomaly ranges from: and the data is smaller than the second sample number threshold, or the acquired sample data has more quality abnormality problems such as data errors, data non-standardization or data omission. Wherein, a data abnormality threshold may be set, and when the number of problems such as data errors, data non-norms, or data omission reaches the data abnormality threshold, it is determined that an abnormality exists.
Wherein the first sample number threshold is greater than the second sample number threshold and is any positive number.
At this time, the end side can quickly determine whether the sampling state value of the end side is efficient, inefficient or abnormal according to the quantity of the sample data acquired in one day and the corresponding relation between the sampling state value, the sample quantity range and the quality. As another alternative embodiment of the present application, the sampled state values may be distinguished without considering the quality of the sample data, and in this case, the determination of the quality abnormality of the sample data may not be included in determining the abnormal state value.
It should be understood that the above description is of the evaluation method of the sampling state by taking as an example the division of the sampling state into three state values of high efficiency, low efficiency and abnormality, and the logic of the evaluation method is equally applicable to the quantization mode of other sampling states. The number of the required sample number ranges can be adaptively adjusted according to the actual sampling state quantization mode. For example, in some embodiments, assuming that the sampled state is subdivided into 5 different state values, five one-to-one sample number ranges may be set to achieve one-to-one mapping of the 5 state values. Therefore, other possible sample state quantization modes will not be described here too much.
Meanwhile, in the embodiment of the application, the evaluation of the self sampling state by the end side comprises at least two optional cases:
Evaluation case 1: the end side evaluates all the executing sampling tasks as a whole, and a sampling state value of the whole sampling task is obtained.
Evaluation case 2: and the end side independently evaluates each sampling task in the execution of the end side to obtain a sampling state value corresponding to each sampling task.
For example, it is assumed that there are 4 sampling tasks in execution on the end side, and at this time, for the evaluation case 1, the end side may take the 4 sampling tasks as a whole, count the collection case data of the 4 sampling tasks, and evaluate a sampling state value for the whole of the 4 sampling tasks. And for the evaluation case 2, the end side can respectively count the corresponding acquisition case data for each sampling task and evaluate the acquisition case data, so as to obtain 4 sampling state values corresponding to the 4 sampling tasks one by one.
In practical applications, either or both of the above evaluation conditions may be selected for operation, without limitation.
S105, the cloud side receives the sample data and the sampling state value of the end side, and adjusts the sampling task distributed to the end side according to the sampling state value.
After receiving the sampling state value of the end side, the cloud side can know how the processing capacity of the end side to the sampling task. On the basis, in order to improve the sampling efficiency of the whole sampling task, the cloud side can reduce some sampling tasks aiming at the end side with weaker processing capacity, and add some sampling tasks to the end side with stronger processing capacity. For the end side incapable of normally processing the sampling task, the cloud end can delete all tasks allocated to the end side and simultaneously blacken the end side, namely, the sampling task is not redistributed. The amount of sampling tasks allocated by the end side can be proportional to the processing capacity of the end side to the sampling tasks. I.e. the more processing power of the end side to the sampling tasks, the more sampling tasks are actually allocated dynamically.
According to different conditions of end side to sampling state evaluation, the cloud side processing mode comprises at least the following two conditions, and the following details are as follows:
For end-side inclusion evaluation case 1: and evaluating all the executing sampling tasks as a whole to obtain a sampling state value of the whole sampling task. At this time, the cloud side can identify the specific sampling state value of the end side:
If the sampling state value is high-efficiency or other sampling state values representing that the end side has strong overall sampling task processing capacity, the end side can be judged to be in a high-efficiency state at the moment, and a plurality of new sampling tasks are matched for the end side and then sent to the end side.
If the sampling state value is "low-efficiency" or other sampling state values indicating that the end side has weak processing capability on the whole sampling task, at this time, it can be determined that the end side is in a low-efficiency state, and part of the sampling tasks are deleted from the sampling tasks in the execution of the end side.
If the sampling state value is "abnormal" or another sampling state value indicating that the processing of the whole sampling task by the end side is abnormal, at this time, the end side can be judged to be in an abnormal state, and all the sampling tasks in execution of the end side can be deleted. Meanwhile, the sampling task can be not reassigned to the end side later.
For end side inclusion evaluation case 2: and each sampling task in the self-execution is independently evaluated to obtain a sampling state value corresponding to each sampling task. At this time, the cloud side can identify the sampling state value of each sampling task in execution by the end side, and perform independent operation on each sampling task in execution by the end side. Wherein each sampling task operates as follows:
If the sampling state value is high-efficiency or other sampling state values representing that the end side has stronger processing capacity for the sampling task, the end side can be judged to be in a high-efficiency state at the moment, and a plurality of new sampling tasks are matched for the end side and then sent to the end side.
If the sampling state value is "inefficient" or another sampling state value indicating that the processing capability of the end side to the sampling task is weak, it may be determined that the end side is in an inefficient state at this time, and the sampling task is deleted from the sampling tasks in the execution of the end side.
If the sampling state value is "abnormal" or another sampling state value indicating that there is an abnormality in the processing of the sampling task by the end side, it may be determined that the end side is in an abnormal state at this time, and the sampling task is deleted from the sampling tasks in execution by the end side. At the same time, the sampling task may not be reassigned to this end side later.
As another optional embodiment of the present application, for the end side in the efficient state, the cloud side may select any one or more of the following screening manners to select the sampling task when adding the sampling task, and assign the sampling task to the end side, which is described in detail as follows:
screening method 1: screening out some sampling tasks with larger sample data demand. Specifically, a corresponding demand threshold may be set, and sampling tasks for which the sample data demand is higher than the demand threshold may be screened out.
Screening method 2: some sampling tasks with a smaller number of currently allocated end sides are screened out, specifically, a corresponding end side number threshold (i.e. a device number threshold) may be set, and for sampling tasks with a number of allocated end sides less than the end side number threshold, the sampling tasks may be screened out.
Screening mode 3: some sampling tasks that are eliminated from the other end sides can be filtered out. For example, assume that the cloud side rejects sampling task a from end side a because end side a is in an inefficient state. At this time, if the end side B is in an efficient state, a new sampling task needs to be added, and at this time, the sampling task a removed from the end side a can be preferentially screened out.
Because the sampling tasks with larger sample data demand, the sampling tasks with smaller number of allocated end sides and the sampling tasks removed from other end sides are all sampling tasks with urgent sample data demand, the sampling tasks are preferentially allocated to the end sides in the efficient state, and the efficiency of the sampling tasks to obtain sample data can be effectively improved.
The embodiment shown in fig. 2A is illustrated by way of example, and reference may be made to fig. 2B for a schematic view of a task allocation system according to an embodiment of the present application. In the embodiment of the present application, it is assumed that the task distribution system has 3 end sides in total of the end side 1, the end side 2, and the end side 3. The cloud side distributes 3 sampling tasks to each end side according to an initial distribution rule, each end side evaluates the sampling states of the 3 sampling tasks as a whole in a mode of evaluating the condition 1, and each end side judges the states of the sampling tasks according to the quantity of sample data acquired by the cloud side in the last period. Meanwhile, it is assumed that the processing capacity of the end side 1 to the sampling task is strong, the number of sample data acquired in the last period is large, the processing capacity of the end side 3 to the sampling task is weak, and the number of sample data acquired in the last period is small. While the processing of the sampling task by the end side 2 has an abnormal condition, which results in a very small amount of sample data acquired in the last period of time. On this basis, referring to fig. 2B, it can be known that more sampling tasks can be allocated to the cloud side of the end side 1 in the efficient state to improve the utilization efficiency of the opposite end side 1, so that the number of sampling tasks allocated to the opposite end side 1 increases from 3 to 5. Some sampling tasks may be reduced for the end side 3 cloud side in the inefficient state to avoid that sampling tasks continue to be performed inefficiently at the end side 3, so that the sampling tasks allocated to the end side 3 are reduced from 3 to 1. And for the end side 2 in the abnormal state, all the distributed sampling tasks can be deleted to avoid the abnormal occurrence of the sampling tasks on the end side 2, and the number of the distributed sampling tasks on the end side 2 is reduced from 3 to 0. Meanwhile, the cloud side can pull the black end side 2, namely the sampling task request of the end side 2 is not responded later, so that the sampling task is prevented from being issued to the end side 2.
The embodiment shown in fig. 2A is illustrated by way of example, and referring to fig. 2C, a flow chart of a task allocation method according to an embodiment of the present application is shown. The details are as follows:
S201, the sampling task allocation starts.
S202, the cloud side matches the end side according to the initial allocation rule and issues a sampling task.
And S203, the end side evaluates the sampling state value of the end side according to the processing condition of the sampling task and reports the sampling state value to the cloud side.
S204, the cloud side identifies sampling state values of the end side.
S205, the cloud side adjusts the number of sampling tasks issued by the opposite end side according to the sampling state value. Specifically, for the end side where the sampling state value is efficient, the sampling task of the downstream end side is increased. And for the end side with the low sampling state value, the sampling task of the issuing end side is reduced. And for the end side with the abnormal sampling state value, the sampling task of the end side is cleared, and the sampling task is not issued any more.
In the embodiment of the present application, S201 corresponds to the step of S101, S202 corresponds to the step of S102, S203 corresponds to the steps of S103 to S104, and S204 to S205 correspond to the operation of S105. Therefore, details, principles and effects of operations S201 to S205 may refer to the descriptions of the corresponding steps in S101 to S105, and are not repeated herein.
In the process of distributing the sampling tasks, the distribution equipment can dynamically adjust the quantity of the sampling tasks issued to each sampling equipment according to the actual processing capacity of each sampling equipment to the sampling tasks. For example, adding a sampling task to a sampling device whose processing capability is in an efficient state, subtracting a sampling task to a sampling device whose processing capability is in an inefficient state, and flushing a sampling task to a sampling device whose processing is abnormal does not issue a sampling task any more. Therefore, the embodiment of the application can realize the dynamic shunting effect on the sampling task. The embodiment of the application has extremely high flexibility in the allocation of the sampling tasks and extremely high self-adaptive capacity to the conditions of sampling equipment, so that the embodiment of the application can greatly improve the sampling efficiency of the whole sampling task.
Meanwhile, in the aspect of a sampling task, the embodiment of the application can remove unsuitable sampling equipment in time, and continuously match more suitable sampling equipment for the sampling task in the dynamic shunting process, so that more reasonable regulation and control distribution of the sampling task can be realized, and the collection efficiency and the effectiveness of sample data corresponding to the sampling task are improved. For example, assume that sampling task a needs to acquire a data of 1000 sampling devices, and that there is an acquisition requirement for the amount of a data acquired within each sampling device. At this time, through the embodiment of the application, the distribution equipment can remove the sampling task A from the sampling equipment in time when the sampling equipment samples inefficiency or abnormality, and then distribute the sampling task A to other proper sampling equipment. Therefore, the problem that the sampling efficiency and the sampling effectiveness of the sampling task A are reduced due to the fact that the sampling task A is difficult to collect effective A data for a long time at sampling equipment with low sampling efficiency or abnormal sampling can be avoided.
Stage two, sampling middle stage:
In the embodiment of the application, the end side of the initial sampling stage independently evaluates each sampling task in execution to obtain the sampling state value corresponding to each sampling task and uploads the sampling state value to the cloud side. And the terminal side can upload the equipment information of the terminal side to the cloud side. Therefore, the cloud side can acquire a large amount of equipment information of the end sides and sampling state information (namely sampling state values) of the end sides on each sampling task in the initial sampling stage, and can start to learn the relevance between the end sides and the sampling tasks based on the basic data. Based on this, the embodiment of the present application may enter stage two: mid-sampling stage.
The embodiment of the application does not excessively limit the entering conditions of the middle stage of sampling, and can be determined according to the actual application condition. For example, in some alternative embodiments, one may choose to set any one or more of the following alternatives:
Entry condition 1: setting a phase time threshold, and automatically entering a middle-stage sampling stage when the duration of the initial-stage sampling stage reaches the phase time threshold. The specific value of the phase time threshold is not limited herein, and may be set to any value of 1 to 6 months, for example.
Entry condition 2: setting a basic data quantity threshold, and automatically entering a middle-stage sampling stage when the equipment information of the end side and the data quantity of the sampling state value acquired by the cloud side in the initial-stage sampling stage reach the basic data quantity threshold. Wherein the base data amount threshold specification is not limited herein,
Entry condition 3: the mid-sampling phase may be manually controlled by a technician at the cloud side.
After entering the middle sampling stage, the cloud side starts to determine the equipment portrait labels of all the end sides based on the equipment information on one hand, and learns the mapping relation (hereinafter referred to as mapping relation) between the sampling state values and the equipment portrait labels under all the different sampling tasks according to the equipment portrait labels of the end sides and the sampling state values of all the sampling tasks of the end sides. It should be understood that, because the sampling state value is a quantized value of the sampling state, in the embodiment of the present application, the meaning expressed by the "mapping relationship between the sampling state value and the device portrait tag under each different sampling task" and the "mapping relationship between the sampling state and the device portrait tag under each different sampling task" is the same. The details are as follows:
preferred for device portrait tags, embodiments of the present application provide several alternative ways of device portrait tag determination, including:
Determination mode 1: the cloud side automatically refines the equipment portrait tag from the equipment information, and determines that each end side corresponds to the specific equipment portrait tag according to the specific equipment information of each end side. The method for extracting the equipment portrait tag is not limited too much, and can be set according to actual requirements. For example, in some alternative embodiments, clustering or deep learning may be used to process the device information of all the end sides, to extract a plurality of different device portrait labels, and then determine one or more device portrait labels specifically corresponding to each end side by clustering or other manners.
The determination mode 1 is that the cloud side automatically refines the equipment portrait tag, so that the type of tag possibly generated is difficult to predict in practical application, but the flexibility is higher, and when the equipment portrait tag is refined by adopting methods such as deep learning, the method can be closer to the practical characteristic conditions of all end sides, for example, extraction and labeling of some hidden features of the end sides can be realized. Thus, the determination method 1 has better adaptability.
Determination mode 2: the cloud side is preset with a plurality of equipment portrait labels, and then label matching is carried out according to specific equipment information of each terminal side, so that specific equipment portrait labels corresponding to each terminal side are determined. The embodiment of the application does not limit the preset specific equipment portrait labels too much, and can be set by a technician. For example, in some alternative embodiments, some basic tags related to the software and hardware of the device may be set, such as: folding screen, large screen, small screen, mini screen, android and IOS etc. set some occupation related labels, such as: white collar, teacher, driver, student and photographer set some usage role related labels: game users, business users, student users, and fever friend users (fever friend users refer to users who are used to using means such as overclocking to maximize the performance of using electronic devices). Based on the existing multiple device portrait labels, one or more device portrait labels specifically corresponding to each end side can be matched in a clustering mode.
The method 2 can be used for determining the preset plurality of equipment portrait labels, so that the use requirement of technicians on part of specific labels in some scenes can be met. For example, assume that in some scenarios, a technician wishes to learn how a student user (i.e., the end side under this label) samples some of the sampling tasks, at which point the student user may be stored as a device portrait label on the cloud side.
Determination mode 3: in combination with the above determination mode 1 and determination mode 2, the cloud side also extracts the device portrait tag from the device information by itself, on the basis of setting one or more device portrait tags. And then carrying out label matching according to the specific equipment information of each terminal side, and determining the specific equipment portrait label corresponding to each terminal side.
Secondly, learning a mapping relation: after determining the device portrait labels corresponding to each end side, the cloud side can learn the following information for a single sampling task: device representation tags for each end side executing the sampling task, and sampling status values for the end sides for the sampling task. At this time, the cloud side can perform independent mapping relation learning operation of the equipment portrait tag and the sampling state value according to each sampling task. Therefore, the mapping relation recorded with a plurality of sampling tasks and the association relation between the equipment portrait tag and the sampling state value under each sampling task can be obtained. The embodiment of the application does not limit the specific learning method of the mapping relation too much, and can be selected or set according to actual requirements. For example, in some alternative embodiments, some machine learning platforms may be used to perform deep learning of the mapping relationship, or some clustering methods may also be used to determine the mapping relationship of the device portrait tag and the sampling state value.
Through learning the mapping relation between the equipment portrait tag and the sampling state value, the embodiment of the application can refine the specific processing capacity condition of the sampling task from each end side to the processing capacity condition of the sampling task of each end side (wherein the end sides with the same equipment portrait tag are the same class of end sides), thereby realizing the effective refinement and learning of the processing capacity rule of the end sides.
The mapping relationship is illustrated by an example assuming that the sample state values include: the cloud side collects equipment information and sampling state values of a plurality of end sides for the sampling task A, the sampling task B and the sampling task C. The cloud side determines 4 kinds of tags, namely tag 1, tag 2, tag 3 and tag 4, based on the collected device information. Meanwhile, it is assumed that table 1 (in practical application, the mapping relationship may be stored in a manner other than a table, here, only an example) of the following mapping relationship can be obtained after learning:
Table 1:
the cloud side of the mapping relation table 1 can determine the end side with the tag 1 and the tag 3, and the sampling state of the sampling task A can reach high efficiency, namely, the sampling task A has stronger processing capacity. The end side with tag 4 may be inefficient in terms of sampling state for sampling task a, i.e., have poor processing power for sampling task a. While the sampling state of the end side with the tag 2 to the sampling task a may be abnormal, i.e. there may be an abnormality in processing the sampling task a. Similarly, for the sampling task B and the sampling task C, the cloud side can also determine the end sides with different equipment portrait labels according to the mapping relation table 1, and the processing capacities of the sampling task B and the sampling task C are determined.
Referring to fig. 3, a schematic view of a mapping relationship and an application related scenario is provided in an embodiment of the present application. In the embodiment of the application, the equipment portrait tag comprises a game, a white collar and a driver, and meanwhile, a cloud side machine learning platform learns the equipment portrait tag on the end sides, such as the end sides 1 to 3, and the like, and the sampling state value of a sampling task, so that the mapping relation containing the following information can be obtained:
The end side of the "game" tag can efficiently handle some end side performance related sampling tasks. The end side of the white collar label can efficiently process some sampling tasks related to the clothing and eating activities. The end side of the "driver" tag can efficiently handle some geofence-related sampling tasks.
With continued reference to fig. 3 on the basis of the above mapping relationship, when the cloud side is the end-side matching sampling task, the device portrait tag of the end side may be determined first. In the case that the device portrait tag contains a game, the cloud side can distribute performance-related sampling tasks to the end side, such as a heating power consumption task and a network performance task. For the case that the equipment portrait tag contains a white collar, the cloud side can distribute sampling tasks related to the clothing and food residence to the end side, such as office tasks and camera tasks.
The following points should be explained:
1. the device portrait tag may be determined by processing the cloud side when the cloud side receives the end side device information in the early stage of sampling, and the obtained device portrait tag may be used in the mid-stage of sampling without re-determination. The determination method at this time may also refer to the description of the above determination methods 1 to 3, and will not be repeated here.
2. The mapping relation between the equipment portrait tag and the sampling state value can also be obtained by learning other electronic equipment except the cloud side, and the cloud side can obtain the mapping relation by receiving or actively requesting and the like without self-learning.
On the basis of obtaining the mapping relation, the mapping relation is added into a cloud side sampling task distribution strategy, so that the cloud side can dynamically adjust sampling tasks distributed to each end side based on the sampling task distribution strategy containing the mapping relation. As an alternative embodiment of the present application, reference may be made to fig. 4A, which is a schematic flow chart of an overall scheme for task allocation in the mid-sampling stage, and is described in detail below:
s301, sampling task allocation starts.
S302, reporting sample data, self equipment information and sampling state values of each executing sampling task by the end side.
S303, the cloud side determines the equipment portrait tag according to the acquired equipment information of the end side, learns the sampling state values of the sampling tasks according to the equipment portrait tag of each end side and the end side, and obtains the mapping relation between the equipment portrait tag and the sampling state values. And adding all obtained equipment portrait labels and mapping relations to a sampling task shunting strategy.
S304, the cloud side dynamically adjusts the sampling tasks distributed on the opposite end side according to the sampling task distribution strategy.
The detailed description of the sampling task splitting strategy including the mapping relationship may refer to fig. 4B, which shows a system interaction diagram of the method for task allocation in the middle stage of sampling according to the first embodiment of the present application, and is described in detail as follows:
S401, the terminal side sends a request of a sampling task and self equipment information to the cloud side.
In the embodiment of the present application, the explanation of the sending of the sampling task request by the end side may refer to the explanation of S101, which is not repeated here. Meanwhile, in the middle stage of sampling, the terminal side can send the self equipment information to the cloud side together while sending a request to the cloud side.
In practical application, two possible cases of the sampling task currently executed by the end side are as follows: there are currently no sampling tasks or there are currently one or more sampling tasks.
For the end side not currently allocated with the sampling task, the cloud side may perform first sampling task allocation, where the cloud side may choose to allocate the sampling task to the end side by using the initial allocation rule with reference to S102, or may choose to allocate the task to the end side by using the existing mapping relationship. In the embodiment of the present application, in order to make the sampling task allocated to the opposite end more suitable for the actual situation of the end, the allocation of the sampling task based on the mapping relationship may be selected, and at this time, reference may be continued to the description related to S402.
For the end side with the current sampling task, the cloud side can dynamically adjust the sampling task allocated to the end side based on the mapping relationship, and at this time, the relevant description of S403 can be continued to be referred to.
As an optional embodiment of the application, when the end side has an executing sampling task, each sampling task in self execution can be independently evaluated to obtain a sampling state value corresponding to each sampling task. And simultaneously, the sampling state values and the request can be reported to the cloud side together. The sampling state value corresponding to a single sampling task is hereinafter referred to as a single state value.
As another alternative embodiment of the present application, when the end side already has an executing sampling task, all the executing sampling tasks of the end side can be evaluated as a whole, and a sampling state value of the whole sampling task is obtained. And simultaneously, the sampling state value and the request can be reported to the cloud side together. The sampling state value corresponding to the whole of the sampling task being executed is hereinafter referred to as the whole state value or the second sampling state value.
As an optional embodiment of the application, when the end side has an executing sampling task, the end side can also select to independently evaluate each sampling task in self execution to obtain a sampling state value corresponding to each sampling task. Meanwhile, all the sampling tasks in execution can be used as a whole for evaluation, and a sampling state value of the whole sampling task is obtained. And reporting the monomer state values and the whole state values to the cloud side together with the request.
As an optional embodiment of the present application, the three data of the request of the end side to the sampling task, the self device information and the sampling status value of the executing sampling task may be the same or different, which is not limited herein, and may be determined according to the actual application situation. For example, in some embodiments, three data may be sent to the cloud side at three different occasions, respectively. In other embodiments, any two of the data may be selectively transmitted to the cloud side at the same time, and the third data may be transmitted to the cloud side at another time. In yet another embodiment, the three data may be sent to the cloud side together at the same time.
S402, after receiving a request of an end side, if the end side does not currently allocate sampling tasks, the cloud side allocates at least one sampling task to each end side according to the mapping relation associated with each sampling task and the equipment information of the end side.
In the embodiment of the application, the mode of acquiring the currently allocated sampling task (i.e. the sampling task in execution) of the end side by the cloud side is not excessively limited. For example, in some alternative embodiments, the cloud side may choose to record data when distributing sampling tasks, so that the cloud side may record sampling tasks already distributed by each end side, and thus, when receiving a request, it may be determined whether the end side is currently distributed with sampling tasks. In other alternative embodiments, the end side may send the sampling task situation in execution to the cloud side together when sending the request to the cloud side, so that the cloud side may know whether the end side distributes the sampling task at present when receiving the request. In still other alternative embodiments, the cloud side may record the sampling tasks allocated to each end side, and the end side actively uploads the sampling task situation in execution when sending the request.
As an embodiment of the present application, reference may be made to fig. 4C, which is a flowchart for implementing the allocation of the sampling task on the opposite side of S402 according to an embodiment of the present application, and is described in detail below:
s4021, the cloud side determines the equipment portrait label corresponding to the end side according to the equipment information of the end side.
After the cloud side obtains the device information of the end side, the device portrait tag of the end side can be determined according to the device information. The specific method for determining the portrait tag of the device may refer to the above determination modes 1 to 3 and other related descriptions, which are not described herein.
S4022, the cloud side determines a sampling task matched with the end side according to the equipment portrait label and the mapping relation of the end side.
After obtaining the equipment portrait tag of the end side, the cloud side can query the mapping relation by using the equipment portrait tag, so that some sampling tasks suitable for the end side, namely some sampling tasks with stronger processing capacity, are determined. In particular, for embodiments that divide the end-side sampling state into three state values that are efficient, inefficient, and anomalous, some sampling tasks may be matched where the sampling state values are efficient. For the embodiment with different sampling state division rules, the sampling state values with stronger processing capacity for the sampling task of other characterization end sides can be matched.
Taking table 1 as an example for illustration, it is assumed that the device portrait tag of the end side includes tag 1, tag 3 and tag 4, and at this time, referring to table 1, it is known that the end side can efficiently process both sampling task a and sampling task C, and therefore it is suitable to perform these sampling tasks. At this time, the sampling task a and the sampling task C may be matched.
And S4023, the cloud side determines one or more sampling tasks from all the determined sampling tasks and distributes the one or more sampling tasks to the end side.
After screening out the sampling tasks matched with the end side, the cloud side can select part or all of the sampling tasks from the sampling tasks and send the sampling tasks to the end side. The embodiment of the application does not limit the screening mode of the specific issued sampling task too much, and can be set by a technician according to the requirements.
As an optional embodiment of the application, a task number threshold can be preset, and the cloud side screens out the sampling tasks with the number not exceeding the task number threshold from the matched sampling tasks to issue to the end side. In this case, as an alternative embodiment, when the number of actually matched sampling tasks exceeds the task number threshold, a part of sampling tasks may be preferentially screened for delivery by referring to screening modes 1 to 3 and other related descriptions.
For example, assuming that the task number threshold is 4, the cloud side matches 5 sampling tasks, namely, a sampling task A, a sampling task B, a sampling task C, a sampling task D and a sampling task E, on the opposite side through a mapping relation. And the cloud side simultaneously uses the screening modes 1 to 3 to process, and 3 sampling tasks of the sampling task A, the sampling task C and the sampling task E are screened out. At this time, the cloud side can issue the finally screened sampling task A, sampling task C and sampling task E to the end side.
S403, after receiving the request of the end side, if the end side is already allocated with the sampling task, the cloud side adjusts the sampling task allocated to the end side according to the mapping relation associated with each sampling task and the equipment information of the end side. Wherein adjusting the sampling task includes: delete sampling tasks and/or add sampling tasks.
The manner in which the cloud side obtains the sampling task currently allocated to the end side (i.e., the first sampling task in the end side execution) may refer to the description in S402, which is not described herein. The same as S402, the cloud may determine the device portrait tag of the end according to the device information after obtaining the device information of the end. The specific method for determining the portrait tag of the device may refer to the above determination modes 1 to 3 and other related descriptions, which are not described herein.
Under the condition that one or more sampling tasks are executed on the end side, the cloud side can evaluate the actual processing capacity (namely the first processing capacity) of the end side on the executing sampling tasks, and can determine the processing capacity of the end side on the theory of each sampling task in the cloud side according to the equipment portrait labels and the mapping relation of the end side. On the basis, the cloud side can match proper sampling tasks and carry out sampling task allocation adjustment according to the processing capacity condition of the end side on the sampling tasks. Specifically, for the end side with stronger processing sampling capability, some more sampling tasks can be allocated on the basis of the sampling tasks in the processing execution. While for the end side with weaker sampling capability, some sampling tasks in execution can be eliminated. For the end side with exception in processing the sampling task, the executing sampling task can be emptied, meanwhile, the sampling task can be removed from the distribution range, and the subsequent sampling task request sent by the processing task is not responded.
As an alternative embodiment of the present application, reference may be made to fig. 4D, which is a flowchart for implementing the adjustment of the sampling task in S403 according to an embodiment of the present application. At this time, the "adjusting the sampling task allocated to the peer side according to the mapping relation associated with each sampling task and the device information of the peer side" in S403 may be replaced with:
S4031, the cloud side identifies the processing capability of the end side for which the in-process sampling task is performed.
In the embodiment of the application, in order to identify whether the end side needs to adjust the sampling task, the cloud side may first determine the processing capability condition of the end side on the currently executing sampling task (i.e. determine the first processing capability of the end side on the first sampling task), that is, identify the sampling state value of the end side on the currently executing sampling task (i.e. the first sampling state value). The ways of cloud side identification of processing capacity of the current executing sampling task at the end side at least comprise two main types:
Mode category 1: and evaluating the processing capacity of the sampling task in the processing execution by the cloud side. For example, in some embodiments, the cloud side may query according to the device portrait tag of the end side, the mapping relationship, and the sampling task in execution of the end side, so as to determine the theoretical processing capacity situation of the end side for each sampling task in execution. Still referring to table 1 as an example, assume that the device portrait tag on the end side includes tag 1 and tag 3, and the sampling task in execution includes sampling task B and sampling task C. At this time, as can be seen from the mapping relation in the lookup table 1, the theoretical processing capacity of the end side for the sampling task B is inefficient or abnormal, and the theoretical processing capacity for the sampling task C is inefficient.
For example, in another alternative embodiment, if the end side uploads the sample data of the oversampling task, the cloud side may also evaluate the actual processing capability of the end side for each executing sampling task according to the actual sample data, and then determine whether the end side needs to adjust the sampling task. The difference is that the cloud side is used as the execution body to evaluate the embodiment of the present application, so that the description is omitted herein.
Mode category 2: and the end side actively uploads the sampling state value of the sampling task. And the cloud side determines the processing capacity of the end side to the sampling task in execution according to the sampling state value uploaded by the end side.
In the embodiment of the present application, the sampling status value uploaded by the end side may include at least three possible cases: the single state value of each executing sampling task, the integral state value of all executing sampling tasks, or both the single state value and the integral state value can be determined according to actual application conditions. Three status value cases are described below:
Status value case 1: the sampling state value uploaded by the end side is a single state value of each executing sampling task.
Status value case 2: the sampling state value uploaded by the end side is the overall state value of all the executing sampling tasks.
Status value case 3: the sampling state value uploaded by the end side is a single state value and an integral state value at the same time.
For the state value case 1 and the state value case 3 containing the monomer state value, the cloud side can accurately know the processing capacity of the end side to each sampling task in execution. For the state value case 2, the cloud side can learn the overall processing capability (the overall processing capability may also be referred to as the total processing capability) of the end side for all the sampling tasks in execution.
After determining the processing capacity of the end side to the sampling task in execution, the cloud side can adjust the sampling task allocated to the end side according to the processing capacity so as to furthest improve the matching degree of the end side and the sampling task allocated in real time, thereby improving the sampling efficiency of the whole sampling task.
S4032, the cloud side determines the equipment portrait label corresponding to the end side according to the equipment information of the end side.
S4033, the cloud side determines a sampling task matched with the end side according to the equipment portrait label and the mapping relation of the end side.
The operation of determining the device portrait label and matching the sampling task corresponding to the end side on the cloud side is the same as that of S4022 and S4023, and therefore, reference may be made to S4022 and S4023 and descriptions of other related embodiments are omitted here.
S4034, the cloud side adjusts the sampling tasks distributed on the opposite side based on all the determined sampling tasks.
It should be noted that, in the embodiment of the present application, the adjustment of the sampling task allocated to the peer side may include: the two possible cases of deleting the sampling task in the execution of the end side and newly distributing the sampling task to the opposite end side are deleted, but this does not necessarily increase or decrease the total number of the sampling tasks distributed to the opposite end side, and it is also possible to replace only the sampling task. For example, the cloud side deletes some sampling tasks in execution at the end side, and simultaneously increases and distributes the same number of sampling tasks, so that the total number of the sampling tasks distributed at the opposite end side is unchanged. I.e. it can be understood that the same number of executing sampling tasks on the end side are replaced by some new sampling tasks.
According to the processing capacity condition of the end side to the sampling task in execution, which is obtained by the cloud side, the adjustment scheme of the sampling task allocated to the end side at least comprises the following possible schemes:
Adjustment scheme 1: and adjusting the sampling tasks distributed on the opposite side according to the processing capacity of the end side on each sampling task in execution.
Adjustment scheme 2: and adjusting the sampling tasks distributed on the opposite side according to the overall processing capacity of the end side to all the sampling tasks in execution.
Adjustment scheme 3: and adjusting the sampling tasks distributed on the opposite side according to the processing capacity of the end side for each sampling task in execution and the overall processing capacity of the end side for all the sampling tasks in execution.
As an alternative embodiment of the present application, for adjustment scheme 1 and adjustment scheme 3, the cloud side may perform the following operation independently for each sampling task in the end side execution:
If the monomer state value of the sampling task is "low-efficiency" or other monomer state values representing that the processing capability of the sampling task is weaker on the side of the sampling task, or if the monomer state value of the sampling task is "abnormal" or other monomer state values representing that the processing of the sampling task on the side of the sampling task is abnormal (i.e. the monomer state value is lower than a first state threshold value: "high-efficiency" or other sampling state values representing that the processing capability of the sampling device is stronger on the sampling task). At this time, the cloud side can delete the sampling task from the end side, so that the end side can avoid executing the sampling task again, and the sampling task is prevented from being blocked in the sampling device for a long time.
Meanwhile, as an optional embodiment of the present application, for adjustment scheme 1, the case of adding a sampling task to the opposite end side may include two types: when the situation that the single state value is 'low-efficiency', abnormal and the like exists, and part or all of the sampling tasks at the end side are deleted, the sampling tasks at the end side are added. Or the cloud side can evaluate how the overall processing capacity of the end side for the executing sampling task according to the monomer state value of each executing sampling task of the end side. For example, an efficient proportional threshold or an efficient quantity threshold may be preset. Among all the monomer state values of the end side, when the total number of the monomer state values which are high in processing capacity of the end side for the sampling task exceeds a high-efficiency number threshold or the ratio of the monomer state values to the total monomer state values of the end side exceeds a high-efficiency ratio threshold, the cloud side can judge that the overall processing capacity of the end side for the sampling task in execution is high (namely, the first sampling state value of the end side for the sampling task in execution is higher than or equal to the first state threshold), and at the moment, the sampling task can be newly added to the end side.
As another alternative embodiment of the present application, for adjustment scheme 1 and adjustment scheme 3, when the first sampling state value of any sampling task in the end-side executing sampling task is higher than or equal to the first state threshold, it may be determined that a new sampling task is required to be added to the end-side.
In order to realize the newly added sampling task of the opposite side, the cloud side can match some sampling tasks which can be efficiently processed by the side and issue the sampling tasks by using the mapping relation and the equipment portrait labels of the side. As an alternative embodiment, when the number of actually matched sampling tasks plus the number of currently executing sampling tasks on the end side exceeds the task number threshold, a part of sampling tasks may be preferentially screened for issuing with reference to screening modes 1 to 3 and other related descriptions.
As another alternative embodiment of the present application, for adjustment scheme 2 and adjustment scheme 3, when the overall state value of the end side is lower than the first state threshold: the sampling state value which is high in efficiency or other characteristics that the sampling device has strong processing capacity on the sampling tasks can be used for deleting part or all of the sampling tasks in the execution of the sampling device, so that the sampling tasks are prevented from being blocked on the sampling device for a long time. The details are as follows:
if the overall state value of the end side is 'low-efficiency' or other overall state values representing that the overall sampling task processing capacity of the end side is weak, the cloud side eliminates part of the sampling task in the end side execution. The cloud side may delete the sampling task whose monomer state value in the end side is "low-efficiency" or other monomer state value that characterizes the end side as weak in processing ability for the sampling task.
If the overall state value of the end side is "abnormal" or another overall state value indicating that the end side has an abnormality in the overall sampling task processing (i.e. is lower than a second state threshold: "inefficient" or another sampling state value indicating that the end side has weaker processing capacity on the overall sampling task), the cloud side may delete all the executing sampling tasks of the end side. Meanwhile, the sampling task can be not reassigned to the end side later.
For the overall state value of the end side being "efficient" or other overall state values (i.e. being higher than or equal to the first state threshold) which characterize the end side having a strong processing capability for the overall sampling task, the cloud side can match some sampling tasks which can be processed efficiently by the end side and issue the sampling tasks by using the mapping relationship and the equipment portrait labels of the end side. In this embodiment, as an alternative embodiment, when the number of actually matched sampling tasks plus the number of currently executing sampling tasks on the end side exceeds the task number threshold, a part of sampling tasks may be preferentially screened for issuing with reference to screening modes 1 to 3 and other related descriptions.
In order to improve the effectiveness of the mapping relationship, in the embodiment of the application, the end side can continuously send the monomer state value of each sampling task to the cloud side in the middle stage of sampling. Based on the method, the cloud side can learn and iteratively update the mapping relation according to the determined equipment portrait labels of the end side and the received monomer state values of different sampling tasks. The cloud side can select to update the mapping relation of the sampling tasks of which the equipment portrait labels and the monomer state values are partially or completely acquired, and the specific selected sampling tasks can be determined according to actual requirements. For example, in some alternative embodiments, for some relatively large sampling tasks, the cloud may choose to update the mapping relationships corresponding to those sampling tasks. The larger sampling task may be a sampling task whose required sample data amount exceeds the updated data amount threshold, or may be a sampling task selected by other means.
As an alternative embodiment of the present application, considering that a certain processor resource is required to be occupied by an end side for executing a sampling task in practical application, for an end side with a poor device state, executing the sampling task may cause conditions such as jamming of the end side, thereby affecting normal use of the end side by a user. In order to avoid the influence of executing the sampling task on the normal use of the end side by the user, the embodiment of the application can detect the state of the end side equipment and timely follow the state of the end side equipment to stop distributing the task in the initial stage and the middle stage of sampling. Referring to fig. 5, a flowchart of a task allocation method provided by an embodiment of the present application is described in detail below:
s501, the terminal side acquires the state parameters of the terminal side and uploads the state parameters to the cloud side.
S502, the cloud side identifies the equipment state of the end side according to the received state parameters, namely, whether the sampling task is suitable to be executed or not.
The status parameters refer to some parameters related to the status of the end device, and specific parameter contents included in the status parameters are not limited herein, and may be specifically determined according to an actually used device status recognition method.
As an optional embodiment of the present application, the end-side state may be identified by dimensions such as power consumption, electric quantity, and bright screen state of the end-side, where the state parameter may include any parameter of parameter values such as power consumption, electric quantity, and bright screen state duration of the end-side.
For example, for a terminal side in a high power consumption or low power state, performing a sampling task may cause the terminal side power consumption to increase and power consumption to be accelerated, thus affecting the normal use of the terminal side by a user. The high power consumption means that the power consumption of the terminal side is higher than a set power consumption threshold, and the low power consumption means that the power consumption of the terminal side is lower than the set power consumption threshold. Thus, in some embodiments, the cloud side may determine that the end side is in a device state that is not suitable for performing the sampling task when a high power consumption and/or low power condition of the end side is detected. For another example, when the end side is in the off-screen state for a long time, it is indicated that the user does not use the end side for a long time, and the frequency of use of the end side is relatively low. At this time, the sampling task may increase power consumption of the end-side background, and the effectiveness of the collected sample data is low. Thus in some alternative embodiments, the cloud side may also determine that the end side is in a device state that is not suitable for performing the sampling task. When the duration of the end side in the non-bright screen state reaches a preset duration threshold, the end side is determined to be in the off-screen state for a long time.
As an alternative embodiment of the present application, it is considered that in practical applications, the sampling task often requires a longer period of time for collecting sample data, and the frequency of execution also often is low, for example, it may be required to collect usage data of a certain function within one month at the end side, etc. The sporadic device status is therefore poor and generally does not conflict with performing the sampling task. Based on this, in the embodiment of the present application, the state parameter of the terminal side pair itself may be uploaded multiple times at different times. Correspondingly, after the cloud side acquires the state parameters of a plurality of time points, the cloud side judges whether the equipment state of the end side in a period of time (the period of time can also be called as a preset duration range) is suitable for executing a sampling task. For example, in the above example, the state of the terminal device is identified by power consumption and electric quantity, and at this time, it may be determined whether the power consumption of the terminal in the preset duration range is continuously higher than the set power consumption threshold, and/or whether the electric quantity in the preset duration range is continuously lower than the electric quantity threshold. If either or both of the continuously high power consumption and the continuously low power consumption are satisfied, it may be determined that the sampling task is not suitable to be performed.
S503, if the device status is not suitable for executing the sampling task, the cloud side clears all the executing sampling tasks. Meanwhile, the cloud side can not reassign the sampling task to the end side later, namely, the request of the end side for the sampling task is not responded.
In the embodiment of the application, the cloud side can mark the terminal side of which the equipment state is unsuitable for executing the sampling task, so that the equipment state of one terminal side can be conveniently queried. In this case, the marked end side may be determined to be unsuitable as a sample collection target, and a sampling task may not be issued for the marked end side.
S504, if the equipment state is suitable for executing the sampling task, the cloud side normally executes the operations of the initial stage and the middle stage of sampling. The end side normally continues to sample the sample data.
In the embodiment of the application, the cloud side identifies whether the equipment state of the end side is suitable for executing the sampling task, namely whether the normal use of the end side of a user is affected by executing the sampling task. If the problem of the equipment state of the end side is identified, the user can normally use the end side to influence the execution of the sampling task, and all the sampling tasks of the end side are emptied. Meanwhile, the end side is removed from the sampling task shunting range, and the sampling task can be subsequently not reassigned to the end side. Therefore, the embodiment of the application can effectively ensure the normal use of the opposite end side of the user while collecting the sample data through the end side, thereby ensuring the use experience of the user.
In the middle stage of sampling, the distribution equipment of the embodiment of the application can establish the mapping relation between the portrait tag and the sampling state through learning. When a sampling task request of the sampling equipment is received, the distribution equipment determines the most suitable sampling task of the sampling equipment according to the equipment portrait label and the mapping relation of the sampling equipment and issues the sampling task, so that the embodiment of the application can furthest match the sampling task suitable for the actual condition of the sampling equipment. Therefore, the embodiment of the application can be well adapted to the actual condition of the sampling equipment to finish the initial sampling task allocation of the sampling equipment, and the rationality of the initial sampling task allocation is improved, thereby improving the sampling efficiency of the whole sampling task. On the other hand, the distribution device in the embodiment of the application can dynamically delete the sampling tasks of the sampling device based on the sampling states of the sampling device on the sampling tasks. Meanwhile, the sampling task can be dynamically increased for the sampling device with the sampling task omitted and the sampling device with the better sampling state based on the device information of the sampling device and the learned mapping relation. Therefore, in the sampling task distribution process, the embodiment of the application can dynamically adjust the sampling tasks distributed to each sampling device according to the actual task processing condition of the sampling device and the matching condition of each sampling task and the sampling device in the cloud side recorded in the mapping relation, thereby realizing the effect of dynamic distribution of the sampling tasks. Therefore, the embodiment of the application has extremely high flexibility in the allocation of the sampling tasks and extremely high self-adaptive capacity to the condition of sampling equipment, and can furthest improve the matching degree (comprising the specific sampling tasks and the total number of the sampling tasks) between each end side and the allocated sampling tasks, so that the embodiment of the application can greatly improve the sampling efficiency of the whole sampling tasks.
During mid-sampling phase, the distribution device may delete some of the sampling tasks of the sampling device due to poor or abnormal processing power of the sampling device for executing the sampling tasks. For sampling tasks, the sampling task that is deleted at this time reduces the sampling devices that are applied to collect sample data. Therefore, in order to meet the sampling requirements of the sampling tasks, when new sampling tasks are allocated to the sampling device, the deleted sampling tasks can be used as candidate tasks in the embodiment of the application. I.e. to match new suitable sampling devices for the deleted sampling tasks, so that the sampling efficiency of the sampling tasks is effectively improved. At this time, reference may be made to fig. 6, which is a schematic diagram of a possible scenario of task allocation provided in an embodiment of the present application. At this time, the distribution device is assumed to be the cloud side, and the sampling device is assumed to be the end side. Referring to fig. 6 (a), it is assumed that the sampling task H is allocated to processes in several end sides of end side 1, end side 2, end side 3, and end side 4. Referring also to fig. 6 (b), it is assumed that in the mid-sampling stage, the end side 3 and the end side 4 have poor or abnormal processing power for the sampling task H, thereby causing the cloud side to delete the sampling task H from the end side 3 and the end side 4 (i.e., delete the end side 3 and the end side 4 from the branching range of the sampling task H). On the basis, when the cloud side matches the proper sampling task to other end sides through the mapping relation, the sampling task H can be matched to the proper end side. At this time, assuming that the end side 5 and the end side 6 are both end sides requiring a new sampling task and it is determined that the sampling task H can be efficiently executed through the mapping relationship, the sampling task H may be issued to the end side 5 and the end side 6 with reference to (c) of fig. 6. For the sampling task H, timely and reasonable dynamic adjustment of the issuing end side of the sampling task is realized. Therefore, the embodiment of the application can realize effective dynamic distribution of the sampling tasks, thereby improving the flexibility of the distribution of the sampling tasks and realizing the improvement of the sampling efficiency of the whole sampling task.
On the basis of the embodiments shown in fig. 1 to 6, as an alternative embodiment of the present application, referring to fig. 7, an overall interactive architecture diagram of a distribution system according to an embodiment of the present application is provided. In the embodiment of the application, taking the distribution equipment as a cloud side and the sampling equipment as an intelligent terminal as an example. The details are as follows: the distribution system comprises intelligent terminals and cloud sides, wherein the number of the intelligent terminals is multiple.
The intelligent terminal comprises: and the terminal system and the data sampling management module.
The cloud side comprises: the system comprises a sampling configuration management module, a distribution module, a data collection module, a data storage module, a big data processing module and a machine learning platform.
The terminal system is responsible for processing some operations required by the intelligent terminal, such as the operations of end-side evaluation of the self-sampling status value in the embodiments shown in fig. 2A to 6.
The data sampling management module is responsible for carrying out operation management such as storage and uploading on sample data acquired by the data sampling management module.
And the sampling configuration management module is used for managing the strategy of the cloud side for distributing the sampling tasks to the intelligent terminal, namely, distributing or adjusting the sampling tasks to the intelligent terminal in a mode.
And the classification module is used for executing the strategy for distributing the sampling tasks of the intelligent terminal.
And the data collection module is used for collecting various data uploaded by the intelligent terminal, including but not limited to data such as sample data, equipment information, sampling state values, state parameters and the like.
And the data storage module is used for storing various data uploaded by the collected intelligent terminal.
And the big data processing module is used for carrying out big data processing on the received data. For example, the method can be used for determining available equipment portrait labels according to the equipment information uploaded by the intelligent terminal, counting sample data uploaded by the intelligent terminal and the like.
And the machine learning platform is used for learning the mapping relation between the equipment portrait tag and the sampling state value under each sampling task.
Referring to fig. 7 at the same time, in the embodiment of the present application, the cloud side and the intelligent terminal are connected and interconnected through the end cloud channel and the sampling channel. For example, the intelligent terminal can transmit data such as sample data, device information, sampling state values, state parameters and the like to the cloud side through the cloud end channel and the sampling channel. The cloud side can send down sampling tasks to the intelligent terminal through the sampling channel and the cloud end channel.
It should be understood that the embodiments shown in fig. 2A to 6 above are each described by way of example with a single end side. In practical applications, the number of end sides is often plural, and in this case, the interaction between each end side and the cloud side may refer to the description of the embodiments shown in fig. 2A to fig. 6, so that the description is omitted here. Meanwhile, as each end side is mutually independent, the details and the results of the distribution operation of the sampling task are mutually independent in the interaction process of each end side and the cloud side.
Corresponding to the task allocation method described in the above embodiments, fig. 8 shows a schematic structural diagram of the task allocation device provided in the embodiment of the present application, and for convenience of explanation, only the portion relevant to the embodiment of the present application is shown.
Referring to fig. 8, the task assigning apparatus includes:
The sampling capability obtaining module 81 is configured to obtain a first processing capability of the sampling device for a first sampling task. The first sampling task is a sampling task in the execution of the sampling device.
The sampling task allocation module 82 is configured to adjust the sampling task allocated to the sampling device according to the first processing capability. Adjusting the sampling tasks assigned to the sampling device includes: deleting part or all of the first sampling tasks of the sampling device and/or assigning a second sampling task to the sampling device that is different from the first sampling task.
As an alternative embodiment of the present application, the task allocation device may also be used to perform the method of the foregoing embodiments shown in fig. 2A to fig. 6, so as to implement allocation of sampling tasks, and improve sampling efficiency of the overall sampling task.
The process of implementing respective functions by each module in the task allocation device provided in the embodiment of the present application may refer to the foregoing embodiments shown in fig. 2A to fig. 6 and descriptions of other related method embodiments, which are not repeated herein.
It should be noted that, because the content of information interaction and execution process between the above devices/units is based on the same concept as the method embodiment of the present application, specific functions and technical effects thereof may be referred to in the method embodiment section, and will not be described herein.
It should be understood that the sequence number of each step in the foregoing embodiment does not mean that the execution sequence of each process should be determined by the function and the internal logic, and should not limit the implementation process of the embodiment of the present application.
It should be understood that the terms "comprises" and/or "comprising," when used in this specification and the appended claims, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
It should also be understood that the term "and/or" as used in the present specification and the appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes such combinations.
As used in the present description and the appended claims, the term "if" may be interpreted as "when..once" or "in response to a determination" or "in response to detection" depending on the context. Similarly, the phrase "if a determination" or "if a [ described condition or event ] is detected" may be interpreted in the context of meaning "upon determination" or "in response to determination" or "upon detection of a [ described condition or event ]" or "in response to detection of a [ described condition or event ]".
Furthermore, the terms "first," "second," "third," and the like in the description of the present specification and in the appended claims, are used for distinguishing between descriptions and not necessarily for indicating or implying a relative importance. It will also be understood that, although the terms "first," "second," etc. may be used herein in some embodiments of the application to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another element. For example, a first table may be named a second table, and similarly, a second table may be named a first table without departing from the scope of the various described embodiments. The first table and the second table are both tables, but they are not the same table.
Reference in the specification to "one embodiment" or "some embodiments" or the like means that a particular feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the application. Thus, appearances of the phrases "in one embodiment," "in some embodiments," "in other embodiments," and the like in the specification are not necessarily all referring to the same embodiment, but mean "one or more but not all embodiments" unless expressly specified otherwise. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless expressly specified otherwise.
The task allocation method provided by the embodiment of the application can be applied to electronic equipment such as mobile phones, tablet computers, wearable equipment, vehicle-mounted equipment, augmented reality (augmented reality, AR)/Virtual Reality (VR) equipment, notebook computers, ultra-mobile personal computer (UMPC), netbooks, personal digital assistants (personal DIGITAL ASSISTANT, PDA), servers, personal computers and the like, and the embodiment of the application does not limit the specific types of the electronic equipment. The electronic device according to the embodiment of the present application may refer to an electronic device that is used as a distribution device, or refer to an electronic device that is used as a sampling device.
For example, the electronic device may be a Personal digital assistant (Personal DIGITAL ASSISTANT, PDA) device, a handheld device with wireless communication capabilities, a computing device or other processing device connected to a wireless modem, a server, a computer, a laptop computer, a handheld communication device, a handheld computing device, and a next generation communication system, e.g., an electronic device in a 5G network or an electronic device in a future evolved public land mobile network (Public Land Mobile Network, PLMN) network, etc.
Fig. 9 is a schematic structural diagram of an electronic device according to an embodiment of the present application. As shown in fig. 9, the electronic apparatus 9 of this embodiment includes: at least one processor 90 (only one is shown in fig. 9), a memory 91, said memory 91 having stored therein a computer program 92 executable on said processor 90. The processor 90, when executing the computer program 92, performs the steps of the various task allocation method embodiments described above, such as steps 4031 to 4034 shown in fig. 4D. Or the processor 90, when executing the computer program 92, performs the functions of the modules/units of the apparatus embodiments described above, such as the functions of the modules 81 to 82 shown in fig. 8.
The electronic device 9 may be a computing device such as a desktop computer, a notebook computer, a palm computer, a cloud server, etc. The electronic device may include, but is not limited to, a processor 90, a memory 91. It will be appreciated by those skilled in the art that fig. 9 is merely an example of the electronic device 9 and does not constitute a limitation of the electronic device 9, and may include more or fewer components than shown, or may combine certain components, or different components, e.g., the electronic device may further include an input transmitting device, a network access device, a bus, etc.
The Processor 90 may be a central processing unit (Central Processing Unit, CPU), other general purpose Processor, digital signal Processor (DIGITAL SIGNAL Processor, DSP), application SPECIFIC INTEGRATED Circuit (ASIC), off-the-shelf Programmable gate array (Field-Programmable GATE ARRAY, FPGA) or other Programmable logic device, discrete gate or transistor logic device, discrete hardware components, or the like. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory 91 may in some embodiments be an internal storage unit of the electronic device 9, such as a hard disk or a memory of the electronic device 9. The memory 91 may also be an external storage device of the electronic device 9, such as a plug-in hard disk, a smart memory card (SMART MEDIA CARD, SMC), a Secure Digital (SD) card, a flash memory card (FLASH CARD) or the like, which are provided on the electronic device 9. Further, the memory 91 may also include both an internal storage unit and an external storage device of the electronic device 9. The memory 91 is used for storing an operating system, application programs, boot loader (BootLoader), data, other programs, etc., such as program codes of the computer program. The memory 91 may also be used for temporarily storing data that has been transmitted or is to be transmitted.
In addition, it will be clearly understood by those skilled in the art that, for convenience and brevity of description, only the above-described division of the functional units and modules is illustrated, and in practical application, the above-described functional allocation may be performed by different functional units and modules according to needs, i.e. the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-described functions. The functional units in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The embodiment of the application also provides an electronic device, which comprises at least one memory, at least one processor and a computer program stored in the at least one memory and capable of running on the at least one processor, wherein the processor executes the computer program to enable the electronic device to realize the steps of distributing devices in any of the above method embodiments.
Embodiments of the present application also provide a computer readable storage medium storing a computer program which, when executed by a processor, implements steps for implementing the various method embodiments described above.
Embodiments of the present application provide a computer program product which, when run on an electronic device, causes the electronic device to perform the steps of the method embodiments described above.
The embodiment of the application also provides a chip system, which comprises a processor, wherein the processor is coupled with a memory, and the processor executes a computer program stored in the memory to realize the steps in the embodiments of the method.
The integrated modules/units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the present application may implement all or part of the flow of the method of the above embodiment, or may be implemented by a computer program to instruct related hardware, where the computer program may be stored in a computer readable storage medium, and when the computer program is executed by a processor, the computer program may implement the steps of each of the method embodiments described above. Wherein the computer program comprises computer program code which may be in source code form, object code form, executable file or some intermediate form etc. The computer readable storage medium may include: any entity or device capable of carrying the computer program code, a recording medium, a U disk, a removable hard disk, a magnetic disk, an optical disk, a computer Memory, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), an electrical carrier signal, a telecommunications signal, a software distribution medium, and so forth.
In the foregoing embodiments, the descriptions of the embodiments are emphasized, and in part, not described or illustrated in any particular embodiment, reference is made to the related descriptions of other embodiments.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of 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.
The above embodiments are only for illustrating the technical solution of the present application, and not for limiting the same; although the application has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present application, and are intended to be included in the scope of the present application.
Claims (19)
1. A task allocation method, applied to an allocation apparatus, comprising:
receiving state parameters sent by sampling equipment at a plurality of time points respectively, wherein the state parameters are used for indicating the power consumption, the electric quantity and the duration of a non-bright screen state of the sampling equipment;
When the number of the time points corresponding to the sampling task suitable for being executed by the sampling equipment is larger than the preset number according to the state parameter, the sampling equipment is instructed to execute a first sampling task; wherein the sampling device is adapted to perform a sampling task including one or more of the power consumption being lower than or equal to a preset power consumption threshold, the power being higher than a preset power threshold, the duration in a non-screen-on state being less than a preset duration threshold;
Acquiring a first processing capacity of sampling equipment to a first sampling task; the first sampling task is a sampling task in the execution of the sampling device; the processing capacity of the sampling equipment for the sampling task at different time points is different;
Dynamically adjusting the sampling task allocated to the sampling equipment according to the first processing capacity, wherein the adjusted sampling task is matched with the processing capacity of the sampling task of the sampling equipment; the dynamically adjusting the sampling tasks allocated to the sampling device includes: dynamically deleting part or all of the first sampling tasks of the sampling device and/or dynamically allocating second sampling tasks different from the first sampling tasks to the sampling device.
2. The task allocation method according to claim 1, wherein the obtaining a first processing capability of the sampling device for the first sampling task includes:
and acquiring a first sampling state value of the sampling equipment for the first sampling task, wherein the sampling state value is a quantized value of the processing capacity, and the height of the sampling state value is positively correlated with the intensity of the processing capacity.
3. The task allocation method according to claim 2, wherein the adjusting the sampling task allocated to the sampling device according to the first processing capability includes:
Acquiring a mapping relation, wherein a plurality of sampling tasks and the association relation between the equipment portrait tag and the sampling state value under each sampling task are recorded in the mapping relation;
Acquiring an equipment portrait label of the sampling equipment;
And adjusting the sampling task allocated to the sampling equipment according to the equipment portrait tag of the sampling equipment, the first sampling state value and the mapping relation.
4. A task allocation method according to claim 2 or 3, wherein adjusting the sampling task allocated to the sampling device according to the sampling state comprises:
and deleting part or all of the first sampling task of the sampling equipment when the first sampling state value is lower than a first state threshold value.
5. The task allocation method according to claim 4, wherein the number of the first sampling tasks is one or more, and each of the first sampling tasks has a corresponding first sampling state value;
And deleting part or all of the first sampling task of the sampling device when the first sampling state value is lower than a first state threshold value, including:
and deleting the sampling task with the first sampling state value lower than the first state threshold value from the first sampling tasks of the sampling device.
6. The task allocation method according to claim 4, wherein the first sampling state value includes a second sampling state value, the second sampling state value being a quantized value of a total processing capacity of the sampling device for all the first sampling tasks;
And deleting part or all of the first sampling task of the sampling device when the first sampling state value is lower than a first state threshold value, including:
Deleting all the first sampling tasks of the sampling equipment when the second sampling state value is lower than a second state threshold value, and stopping distributing the sampling tasks to the sampling equipment; wherein the second state threshold is lower than the first state threshold.
7. The task allocation method according to claim 3, wherein said adjusting the sampling task allocated to the sampling device according to the device portrait tag of the sampling device, the first sampling state value, and the mapping relation includes:
When the first sampling state value is higher than or equal to a first state threshold value, or when deleting the first sampling task of the sampling equipment part, acquiring the second sampling task matched with the sampling equipment according to the equipment portrait label of the sampling equipment and the mapping relation;
and distributing the second sampling task to the sampling equipment.
8. The task allocation method according to claim 7, wherein said obtaining the second sampling task matched with the sampling device according to the device portrait tag of the sampling device and the mapping relation includes:
acquiring the second sampling task according to the mapping relation; in the mapping relation, a sampling state value associated with the equipment portrait tag of the sampling equipment under the second sampling task is higher than or equal to the first state threshold value.
9. A task allocation method according to any one of claims 1 to 3 and claims 5 to 8, further comprising:
Acquiring state parameters of the sampling equipment;
identifying a device state of the sampling device based on the state parameter;
If the identified equipment state is that the sampling equipment is not suitable for executing the sampling task, deleting all the first sampling tasks of the sampling equipment, and stopping distributing the sampling tasks to the sampling equipment.
10. The task allocation method according to claim 7, wherein said obtaining the second sampling task matched with the sampling device according to the device portrait tag of the sampling device and the mapping relation includes:
determining all third sampling tasks matched with the sampling equipment according to the equipment portrait label of the sampling equipment and the mapping relation;
and screening part or all of sampling tasks from the third sampling tasks to serve as the second sampling tasks.
11. The task allocation method according to claim 10, wherein the operation of screening part or all of the third sampling tasks as the second sampling tasks includes any one or more of the following screening operations:
Screening out sampling tasks with the requirement amount of sample data higher than a requirement amount threshold value in the third sampling tasks;
Screening out the sampling tasks with the number of the allocated electronic devices being less than the threshold value of the number of the devices in the third sampling tasks;
And screening out the sampling tasks which are eliminated from the electronic equipment except the sampling equipment in the third sampling tasks.
12. The task allocation method according to claim 2, wherein the first sampling state value is: any one of a first state value, a second state value and a third state value, and the first processing capacity corresponding to the first state value, the second state value and the third state value is reduced in sequence.
13. A task allocation method according to any one of claims 1 to 3, wherein said obtaining a first sampling state value of the sampling device for the first sampling task includes:
Receiving the first sampling state value of the first sampling task sent by the sampling equipment; or alternatively
And evaluating the first processing capacity of the sampling equipment to obtain the first sampling state value.
14. The task allocation method according to claim 13, wherein said evaluating the first processing capability of the sampling device to obtain the first sampling state value comprises:
Acquiring the first sampling task of the sampling equipment, and determining the first sampling state value of the sampling equipment to the first sampling task according to a mapping relation and equipment portrait labels of the sampling equipment, wherein a plurality of sampling tasks and association relations between the equipment portrait labels and the sampling state values under each sampling task are recorded in the mapping relation; or alternatively
And acquiring sample data of the first sampling task uploaded by the sampling equipment, and evaluating the sampling state of the first sampling task based on the sample data of the first sampling task to obtain the first sampling state value.
15. A task allocation method according to any one of claims 1 to 3, further comprising, prior to said obtaining the first processing capability of the sampling device for the first sampling task:
when a request of the sampling device for a sampling task is received, identifying whether the sampling device has the first sampling task in execution;
when the sampling device has the first sampling task, executing the operation of acquiring the first processing capacity of the sampling device for the first sampling task;
When the sampling equipment does not have the first sampling task, acquiring a mapping relation, wherein a plurality of sampling tasks and the association relation between the equipment portrait tag and the sampling state value under each sampling task are recorded in the mapping relation;
Acquiring an equipment portrait label of the sampling equipment;
and matching the sampling task of the sampling equipment according to the equipment portrait label of the sampling equipment and the mapping relation, and distributing the matched sampling task to the sampling equipment.
16. A dispensing device, characterized in that it comprises a memory, a processor, on which a computer program is stored which is executable on the processor, the processor executing the computer program to carry out the steps of the method according to any one of claims 1 to 15.
17. A task distribution system, comprising: a plurality of sampling devices and a dispensing device according to claim 16.
18. The task distribution system of claim 17, further comprising, before the distribution device obtains the first processing capability of the sampling device for the first sampling task:
The sampling device evaluates a first processing capability of the first sampling task according to at least one index data of the quantity, the speed and the quality of the sample data of the first sampling task.
19. A computer readable storage medium storing a computer program, characterized in that the computer program, when executed by a processor, implements the task allocation method according to any one of claims 1 to 15.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211293323.5A CN116720645B (en) | 2022-10-21 | 2022-10-21 | Task distribution method, distribution equipment and task distribution system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211293323.5A CN116720645B (en) | 2022-10-21 | 2022-10-21 | Task distribution method, distribution equipment and task distribution system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116720645A CN116720645A (en) | 2023-09-08 |
CN116720645B true CN116720645B (en) | 2024-07-26 |
Family
ID=87870309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211293323.5A Active CN116720645B (en) | 2022-10-21 | 2022-10-21 | Task distribution method, distribution equipment and task distribution system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116720645B (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110866167A (en) * | 2019-11-14 | 2020-03-06 | 北京知道创宇信息技术股份有限公司 | Task allocation method, device, server and storage medium |
CN114358633A (en) * | 2022-01-11 | 2022-04-15 | 平安消费金融有限公司 | Task allocation method and device, computer equipment and storage medium |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098645B (en) * | 2009-12-10 | 2013-06-12 | 中国移动通信集团公司 | Method, system and device for acquiring user state information |
CN101984640B (en) * | 2010-10-28 | 2014-11-05 | 浙江大学 | Energy consumption measuring method of Android mobile phone platform based on Intel Atom |
CN102739775B (en) * | 2012-05-29 | 2017-11-07 | 宁波东冠科技有限公司 | The monitoring of internet of things data acquisition server cluster and management method |
CN102780933B (en) * | 2012-06-18 | 2015-12-02 | Tcl集团股份有限公司 | A kind of method and television set gathering user profile |
US9418348B2 (en) * | 2014-05-05 | 2016-08-16 | Oracle International Corporation | Automatic task assignment system |
CN105577718A (en) * | 2014-10-15 | 2016-05-11 | 卓望数码技术(深圳)有限公司 | Intelligent network information acquisition method and network information acquisition system |
CN105868021A (en) * | 2016-03-23 | 2016-08-17 | 浪潮通信信息系统有限公司 | Task allocation method and apparatus |
CN106126346B (en) * | 2016-07-05 | 2019-02-26 | 东北大学 | A kind of large-scale distributed data collection system and method |
JP7080033B2 (en) * | 2017-11-07 | 2022-06-03 | 株式会社日立製作所 | Task management system, task management method, and task management program |
CN108234623B (en) * | 2017-12-29 | 2021-04-27 | 长园深瑞继保自动化有限公司 | Automatic balance management method for data acquisition link of distribution network master station |
CN108828445B (en) * | 2018-04-16 | 2021-11-09 | Oppo广东移动通信有限公司 | Information processing method, device, mobile terminal and computer readable storage medium |
CN108882347B (en) * | 2018-04-26 | 2020-09-22 | Oppo广东移动通信有限公司 | Fall data processing method and related device |
CN109376053B (en) * | 2018-09-20 | 2022-11-08 | Oppo广东移动通信有限公司 | Data processing method and device and mobile terminal |
CN111796924A (en) * | 2019-04-09 | 2020-10-20 | Oppo广东移动通信有限公司 | Service processing method, device, storage medium and electronic equipment |
US10996993B2 (en) * | 2019-06-20 | 2021-05-04 | Western Digital Technologies, Inc. | Adaptive work distribution in distributed systems |
CN112988339B (en) * | 2019-12-16 | 2024-06-07 | 深圳云天励飞技术有限公司 | Data management method and device |
CN113709298A (en) * | 2020-05-20 | 2021-11-26 | 华为技术有限公司 | Multi-terminal task allocation method |
CN113766611B (en) * | 2020-06-02 | 2023-08-11 | 深圳市万普拉斯科技有限公司 | Low-power consumption control optimization method and device, mobile terminal and storage medium |
CN112003930A (en) * | 2020-08-21 | 2020-11-27 | 深圳柏成科技有限公司 | Task allocation method, device, equipment and storage medium |
CN112150023A (en) * | 2020-09-29 | 2020-12-29 | 壹链盟生态科技有限公司 | Task allocation method, device and storage medium |
CN113342665B (en) * | 2021-06-17 | 2023-10-20 | 北京百度网讯科技有限公司 | Task allocation method and device, electronic equipment and computer readable medium |
CN114661480B (en) * | 2022-05-23 | 2022-09-02 | 阿里巴巴(中国)有限公司 | Deep learning task resource allocation method and system |
-
2022
- 2022-10-21 CN CN202211293323.5A patent/CN116720645B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110866167A (en) * | 2019-11-14 | 2020-03-06 | 北京知道创宇信息技术股份有限公司 | Task allocation method, device, server and storage medium |
CN114358633A (en) * | 2022-01-11 | 2022-04-15 | 平安消费金融有限公司 | Task allocation method and device, computer equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN116720645A (en) | 2023-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108337358B (en) | Application cleaning method and device, storage medium and electronic equipment | |
CN111506498A (en) | Automatic generation method and device of test case, computer equipment and storage medium | |
CN110377804A (en) | Method for pushing, device, system and the storage medium of training course data | |
JP2020507135A (en) | Exclusive agent pool distribution method, electronic device, and computer-readable storage medium | |
WO2019062405A1 (en) | Application program processing method and apparatus, storage medium, and electronic device | |
CN110874604A (en) | Model training method and terminal equipment | |
CN109636433A (en) | Feeding card identification method, device, equipment and storage medium based on big data analysis | |
CN112085076A (en) | Decision-making method and device based on smart street lamp big data and terminal | |
CN109445884B (en) | Function label display method and terminal equipment | |
CN111158828A (en) | User interface determining method and device of application program APP and storage medium | |
CN113055877A (en) | Cloud card distribution method and device, electronic equipment and storage medium | |
CN111385598A (en) | Cloud device, terminal device and image classification method | |
CN115543577A (en) | Kubernetes resource scheduling optimization method based on covariates, storage medium and equipment | |
CN108985048A (en) | Simulator recognition methods and relevant apparatus | |
WO2019062404A1 (en) | Application program processing method and apparatus, storage medium, and electronic device | |
CN109086289A (en) | A kind of media data processing method, client, medium and equipment | |
CN109062947A (en) | User's portrait tag queries method, equipment and computer readable storage medium | |
CN110196805B (en) | Data processing method, data processing apparatus, storage medium, and electronic apparatus | |
CN116720645B (en) | Task distribution method, distribution equipment and task distribution system | |
CN113033938B (en) | Method, device, terminal equipment and storage medium for determining resource allocation strategy | |
CN113055423B (en) | Policy pushing method, policy execution method, device, equipment and medium | |
US8913838B2 (en) | Visual information processing allocation between a mobile device and a network | |
CN108810916A (en) | Wi-Fi Hotspot recommends method, apparatus and storage medium | |
CN111311393A (en) | Credit risk assessment method, device, server and storage medium | |
CN109819024A (en) | Information-pushing method, device, storage medium and terminal based on data analysis |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |