Task allocation method, device, equipment, medium and product

Through cloud servers, the test bench status information of the test bench is centrally managed, and the test tasks are intelligently allocated according to the task attribute information, which solves the problems of high operation and maintenance costs in the existing technology and the inability to reuse the test equipment, achieving higher resource utilization and reduced operation and maintenance costs.

CN119761668APending Publication Date: 2025-04-04BEIJING CO WHEELS TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411367892.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-27
Publication Date
2025-04-04

AI Technical Summary

Technical Problem

In the prior art, the high operation and maintenance costs and the inability to reuse the test equipment between each group, resulting in increased laboratories' operation and maintenance costs and low resource utilization.

Method used

The test bench status information of the test bench is centrally managed and controlled through the cloud server, and intelligently allocate the assigned test tasks to the target test bench based on the bench status information and task attribute information.

Benefits of technology

It effectively solves the problem that test benches cannot be reused, improves the usage rate of test benches, and reduces operation and maintenance costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119761668A_ABST
    Figure CN119761668A_ABST
Patent Text Reader

Abstract

The present invention discloses a task allocation method, device, equipment, medium and product. The method comprises: in response to a received test task to be allocated, obtaining the bench status information corresponding to each test bench in the associated test bench set and the task attribute information of the test task to be allocated; determining the corresponding target test bench according to the bench status information and the task attribute information; allocating the test task to be allocated to the target test bench to execute the test task to be allocated on the target test bench. The present invention centrally manages and controls the bench status information of the test bench, and dynamically allocates the corresponding target test bench to the test task to be allocated according to the bench status information and the task attribute information, thereby effectively solving the technical problems of the inability to reuse each test bench in the prior art and the increasing operation and maintenance costs, thereby improving the utilization rate of the test bench and reducing the operation and maintenance costs.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of vehicle technology, and in particular to a task allocation method, device, equipment, medium and product. Background Art

[0002] In the field of intelligent control of vehicles, different functional modules of the vehicle need to be continuously tested to ensure the normal operation of each functional module in the vehicle.

[0003] Figure 1 This is a schematic diagram of test task allocation provided by the prior art. In the automation execution process of the prior art, each group only needs to maintain the test equipment within the group and can only send automated test tasks to the test equipment within the group.

[0004] However, as the functions of smart cockpits become increasingly complex and the types of tests continue to grow, the laboratories have generated a large number of test equipment of various types through large-scale layout, which increases the complexity of equipment maintenance, task scheduling, and cabinet hardware management. Traditional management means that the number of test benches continues to grow and the laboratory area continues to expand, which increases the laboratory's operation and maintenance costs; in addition, the test equipment between groups cannot be reused. Summary of the invention

[0005] The present invention provides a task allocation method, device, equipment, medium and product to solve the technical problems in the prior art of high operation and maintenance cost and inability to reuse test equipment between groups.

[0006] According to one aspect of the present invention, there is provided a task allocation method, comprising:

[0007] In response to the received test task to be assigned, acquiring the test bench status information corresponding to each test bench in the associated test bench set and the task attribute information of the test task to be assigned;

[0008] Determine a corresponding target test bench according to the bench status information and the task attribute information;

[0009] The test task to be assigned is assigned to the target test bench, so as to execute the test task to be assigned on the target test bench.

[0010] According to another aspect of the present invention, there is provided a task allocation device, comprising:

[0011] A first acquisition module, configured to, in response to a received test task to be assigned, acquire the test bench status information corresponding to each test bench in the associated test bench set and the task attribute information of the test task to be assigned;

[0012] A determination module, used to determine a corresponding target test bench according to the bench status information and the task attribute information;

[0013] The allocating module is used to allocate the test task to be allocated to the target test bench, so as to execute the test task to be allocated on the target test bench.

[0014] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:

[0015] at least one processor; and

[0016] a memory communicatively connected to the at least one processor; wherein,

[0017] The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the task allocation method described in any embodiment of the present invention.

[0018] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the task allocation method described in any embodiment of the present invention when executed.

[0019] According to another aspect of the present invention, a computer program product is provided. The computer program product includes a computer program. When the computer program is executed by a processor, the task allocation method described in any embodiment of the present invention is implemented.

[0020] The technical solution of the embodiment of the present invention centrally manages and controls the test bench status information of the test bench through a cloud server, and intelligently allocates the corresponding target test bench to the test task to be assigned based on the test bench status information and task attribute information, so that the test task to be assigned can be executed on the target test bench, thereby effectively solving the technical problems in the prior art that each test bench cannot be reused and the operation and maintenance cost continues to increase, thereby improving the utilization rate of the test bench and reducing the operation and maintenance cost.

[0021] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0023] Figure 1 It is a schematic diagram of the distribution of a test task provided by the prior art;

[0024] Figure 2 is a flow chart of a task allocation method provided by an embodiment of the present invention;

[0025] Figure 3 is a configuration diagram of a basic test type provided by an embodiment of the present invention;

[0026] Figure 4 is a flow chart of another task allocation method provided by an embodiment of the present invention;

[0027] Figure 5 is a task allocation diagram of a shared test bench provided by an embodiment of the present invention;

[0028] Figure 6 is a structural diagram of a task allocation device provided by an embodiment of the present invention;

[0029] Figure 7 It is a structural block diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0030] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0031] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0032] In one embodiment, Figure 2 is a flowchart of a task allocation method provided by an embodiment of the present invention. This embodiment is applicable to the case of centralized management of test benches. The method can be executed by a task allocation device, which can be implemented in the form of hardware and / or software. The task allocation device can be configured in a cloud server or a local server. Figure 2 As shown, the method includes:

[0033] S110 . In response to the received test task to be assigned, acquiring test bench status information corresponding to each test bench in the associated test bench set and task attribute information of the test task to be assigned.

[0034] Among them, the test bench is a physical carrier on which multiple test devices can be installed. It should be noted that a smart cockpit laboratory may include one or more cabinets; a cabinet may include one or more test benches; a test bench may include one or more test devices; each test device is a hardware device divided according to different test types or different functions. The test bench set refers to all test benches with communication capabilities contained in a smart cockpit laboratory. Multiple test devices of basic test types and optimized test types can be included on a test bench. Of course, each test bench includes at least test equipment corresponding to the basic test type. In addition, in order to ensure that each test bench can establish a communication connection with the cloud server, each test bench needs to have communication capabilities. For example, at least a vehicle computer (also called a terminal-side computer) can be included on each test bench, so that each test bench can perform communication control. Figure 3 FIG. 1 is a schematic diagram of a basic test type configuration provided by an embodiment of the present invention. Figure 3As shown, the basic test types include at least the following functional categories: upgrade, communication, radio frequency, inter-domain communication, interaction, sound, multi-screen and vision; among them, upgrade functions include: OTA upgrade HU, OTA upgrade vehicle and OTA upgrade ECU; communication functions include: communication CAN, communication LIN, communication Ethernet and communication 5G; radio frequency functions include: Bluetooth and WiFi; inter-domain communication functions include: inter-domain communication XCU and inter-domain communication FSD; interaction functions include: HIMI interaction, language interaction and gesture interaction; sound functions include: audio, full audio function and sound zone; multi-screen functions include: rear screen projection, multi-screen display RACP, multi-screen display Touchbar, multi-screen display HUD, multi-screen display SMM and multi-screen display Roofbar; visual functions include: in-cabin vision and out-of-cabin vision.

[0035] Among them, the test tasks to be assigned refer to the test tasks that need to be executed on the test bench. Each test task is a combination of one or more test cases. In the actual operation process, one or more test cases can be packaged into a test task to be assigned through the client, and the test task to be assigned can be reported to the cloud server.

[0036] In one embodiment, the bench status information includes: the bench operation status; the support capability label; the bench reservation status; wherein the bench operation status includes: idle state and running; the task attribute information includes: task urgency and operating environment requirements. Among them, the bench operation status is used to characterize the current state of each test bench. If the bench operation status is idle, it means that the test bench is not currently executing a test task; if the bench operation status is running, it means that the test bench is currently in the process of executing a test task. The support capability label is used to characterize the hardware capabilities and software capabilities that each test bench can support. In actual operation, the hardware capabilities and software capabilities that each test bench can support complement each other, that is, when a test bench contains a test device, it is necessary to install the corresponding driver of the test device in the end-side computer of the test bench to ensure that the test bench can support the corresponding software capabilities. The test bench reservation status refers to the reservation usage time information of each test bench in the smart cockpit laboratory, which can be represented by the number of unexecuted test tasks of each test bench. That is, the larger the number of unexecuted test tasks a test bench contains, the longer the reservation usage time of the test bench.

[0037] Among them, the task urgency is used to characterize the degree of emergency allocation and emergency execution of a test task to be assigned; the task urgency can include sudden urgency or non-sudden urgency; the operating environment requirements refer to the hardware environment and software environment required to execute a test task to be assigned.

[0038] In an embodiment, the cloud server may obtain the test bench status information of each test bench with which a communication connection is established in the smart cockpit laboratory in real time; or, when receiving a test task to be assigned, the cloud server may obtain the test bench status information of each test bench with which a communication connection is established in the smart cockpit laboratory, and receive the task attribute information of the test task to be assigned. Of course, the cloud server may also obtain the test bench status information of each test bench with which a communication connection is established in the smart cockpit laboratory at regular intervals, and this is not limited.

[0039] S120. Determine a corresponding target test bench according to the bench status information and the task attribute information.

[0040] Among them, the target test bench refers to the test bench that is about to be assigned to the test task to be assigned. In an embodiment, the cloud server or the local server obtains the operating environment requirements required for the test task to be assigned, and selects multiple test benches that match the operating environment requirements and have the hardware capabilities and / or software capabilities corresponding to the support capability tags; then selects a test bench with the best test bench operating status and test bench reservation from multiple test benches that meet their own operating environment requirements as the corresponding target test bench. Preferably, a test bench with the best test bench operating status and test bench reservation status can be a test bench with an idle test bench operating status; if the test bench operating status is in operation, the test bench with the shortest reservation usage time is preferably used as the best test bench. The cloud server can pre-configure a task scheduling model, input the test bench status information and task attribute information into the task scheduling model, and output the corresponding target test bench through the task scheduling model. Among them, the task scheduling model can be a machine learning model. In one example, the training process of the task scheduling model includes: first, obtaining the test bench status information and task attribute information of multiple test benches to form a corresponding training data set; then, initializing the parameters of the task scheduling model, that is, initializing the model parameters of the model based on a benchmark learning model; then, defining a loss function, which is used to measure the difference between the predicted value and the true value of the model; finally, iteratively training the model using the training data in the training data set, and in each iteration, the training data as training samples are input into the value model, and the loss function is calculated based on the difference between the predicted target test bench and the actually adopted target test bench, and the model parameters are updated according to the gradient of the loss function until the loss value output by the loss function is minimized, or the predicted output target test bench matches the actually adopted target test bench.

[0041] S130: Allocate the test task to be allocated to the target test bench, so as to execute the test task to be allocated on the target test bench.

[0042] In an embodiment, the cloud server may send the test task to be assigned to the target test bench through a wired communication method or a wireless communication method, so that the test task to be assigned is executed by the test equipment on the target test bench. Among them, the wired communication method may include: Ethernet communication; the wireless communication method may include: WiFi communication, Bluetooth communication or mobile network communication, which is not limited. Of course, in the actual operation process, the cloud server can also use a dedicated communication protocol to communicate with the test bench.

[0043] The technical solution of this embodiment centrally manages and controls the test bench status information of the test bench through a cloud server, and intelligently assigns the corresponding target test bench to the test task to be assigned based on the test bench status information and task attribute information, so that the test task to be assigned can be executed on the target test bench, thereby effectively solving the technical problems of the non-reuse of various test benches in the prior art and the increasing operation and maintenance costs, thereby improving the utilization rate of the test bench and reducing the operation and maintenance costs.

[0044] In one embodiment, Figure 4 FIG. 1 is a flowchart of another task allocation method provided by an embodiment of the present invention. This embodiment further illustrates the process of determining the target test bench based on the above embodiment. Figure 4 As shown, the method includes:

[0045] S210 . In response to the received test task to be assigned, obtain test bench status information corresponding to each test bench in the associated test bench set and task attribute information of the test task to be assigned.

[0046] S220. Filter and obtain a corresponding set of configurable racks according to the operating environment requirements and the support capability labels.

[0047] Among them, the adjustable test bench set refers to a set of test benches that can meet the operating environment requirements of the test tasks to be assigned. One or more adjustable test benches may be included in the adjustable test bench set. The cloud server can compare the support capability label of each test bench in the test bench set with the operating environment requirements to determine whether the support capability label of each test bench can meet the operating environment requirements of the test tasks to be assigned. If so, the test bench will be treated as an adjustable test bench and added to the adjustable test bench set; if not, the test bench will be filtered out until the comparison between the support capability labels of all test benches in the test bench set and the operating environment requirements is completed.

[0048] S230: Select a target test bench corresponding to the test task to be assigned from the set of deployable test benches according to the test bench operation status, the test bench reservation status and the task urgency.

[0049] In one embodiment, S230 includes S2301-S2303:

[0050] S2301. Determine the remaining execution time corresponding to each deployable rack according to the rack reservation status.

[0051] Among them, the adjustable bench refers to a test bench that meets the operating environment requirements of the test tasks to be assigned; the remaining execution time refers to the time required for the adjustable bench to complete all the unexecuted test tasks assigned to itself. Generally speaking, the number of unexecuted test tasks contained in the adjustable bench and the execution time of each unexecuted test task are first obtained, and then the sum of the execution times of all unexecuted test tasks is taken as the remaining execution time. Of course, the execution time of each unexecuted test task can be the same or different. In the case where the execution time of each unexecuted test task is the same, the execution time of an unexecuted test task and the product value of the number of tasks of the unexecuted test task can be taken as the remaining execution time. Of course, the larger the number of tasks of the unexecuted test tasks represented by the bench reservation situation, the larger the corresponding remaining execution time. It can also be understood that the remaining execution time is proportional to the number of tasks of the unexecuted test tasks contained in the adjustable bench.

[0052] S2302: When the task urgency is non-sudden emergency and the test bench operation status is in operation, the deployable test bench with the shortest remaining execution time is used as the target test bench corresponding to the test task to be assigned.

[0053] In the case where a test task to be assigned is not a sudden emergency task, the target test bench can be determined based on the bench operation status and remaining execution time of each adjustable bench in the adjustable bench set. If a test task to be assigned is not a sudden emergency task and the adjustable bench set contains an adjustable bench whose bench operation status is idle, then the adjustable bench in the adjustable bench set that is in idle state is directly used as the target test bench corresponding to the test task to be assigned; if the bench operation status is running, it is necessary to obtain the remaining execution time of each adjustable bench in the adjustable bench set, and use the adjustable bench with the shortest remaining execution time as the target test bench corresponding to the test task to be assigned. Of course, if the adjustable bench set contains at least two adjustable benches whose bench operation status is idle, the adjustable bench with a better support capability label can be used as the target test bench corresponding to the test task to be assigned.

[0054] S2303. When the task urgency is sudden and urgent, and the test bench operating status is running, the deployable test bench with the shortest remaining execution time and the running test task with a lower priority than the test task to be assigned is used as the target test bench corresponding to the test task to be assigned.

[0055] In the case where a test task to be assigned is a sudden emergency task, the target test bench can be determined based on the remaining execution time of each configurable bench in the set of configurable benches and the priority of the test task being executed on each configurable bench. If a test task to be assigned is a sudden emergency task, and the set of configurable benches contains an configurable bench whose bench operation status is idle, the configurable bench in the set of configurable benches that is idle is directly used as the target test bench corresponding to the test task to be assigned; if the bench operation status is running, it is necessary to obtain the remaining execution time of each configurable bench in the set of configurable benches and the priority of the test task being executed on each configurable bench, and then use the configurable bench with the shortest remaining execution time and the priority of the test task being executed lower than the priority of the test task to be assigned as the target test bench corresponding to the test task to be assigned, so as to ensure that after the test task to be assigned is assigned to the target test bench, the target test bench can directly execute the test task to be assigned with a sudden emergency urgency.

[0056] S240: Allocate the test task to be allocated to the target test bench, so as to execute the test task to be allocated on the target test bench.

[0057] When the priority of the test task to be assigned is higher than the priority of the test task being executed on the target test bench, the cloud server sends a task pause instruction to the target test bench to cause the target test bench to pause the test task being executed; then the cloud server assigns the test task to be assigned with an emergency urgency to the target test bench to start executing the test task to be assigned with a higher priority on the target test bench, and after completing the test task to be assigned with an emergency urgency, the target test bench reports a task completion instruction to the cloud server, so that after receiving the task completion instruction, the cloud server sends a task resume instruction to the target test bench to cause the target test bench to resume and continue executing the test task that was paused last time.

[0058] The technical solution of this embodiment, based on the above embodiment, obtains the test bench status information of each test bench in real time through the cloud server to know the test bench operation status and test bench reservation status of each test bench, and in the event of a sudden emergency task, it can suspend the test tasks with relatively low priority and trigger the automatic execution of the sudden emergency task on the test bench where the test task is located, thereby improving the deployment performance of the test bench and reducing the waiting time of sudden emergency tasks, thereby improving the test efficiency and the reuse rate of test bench resources.

[0059] In one embodiment, the task allocation method further includes: obtaining the bench type of each test bench in the associated test bench set, and the bench usage within the first preset time length; dynamically adjusting the number of benches corresponding to each bench type in the test bench set based on the bench usage. Wherein, the bench type is used to characterize the capability tags supported by each test bench. For example, the bench type may include but is not limited to one of the following: a full-function bench, an HMI interactive bench, an audio full-power amplifier bench, an underlying system bench, and a basic algorithm bench. It should be noted that the capability tags supported by different bench types are different. For example, a full-function bench can support all capability tags; a basic algorithm bench can support basic capabilities, surround visual verification, and in-cabin visual verification; an HMI interactive bench can support basic capabilities, audio verification, and Ethernet simulation; an audio full-power amplifier bench can support basic capabilities and audio verification; and an underlying system bench can support basic capabilities and surround visual verification. Of course, in actual operation, the number of capability tags supported by a bench type is proportional to the hardware cost, that is, the more capability tags a bench type supports, the higher the corresponding hardware cost. The first preset duration refers to a pre-configured time period for detecting the changing trend of the test bench usage of each bench type. For example, the first preset duration can be one week, 10 days, or one day, and there is no limitation on this. The bench usage refers to the number of test benches of each bench type that are in continuous operation within the first preset duration. In an embodiment, the cloud server can dynamically increase or decrease the number of benches corresponding to one of the bench types based on the bench usage within the first preset duration.

[0060] In one embodiment, dynamically adjusting the number of test benches corresponding to each test bench type in the test bench set based on the test bench usage includes:

[0061] Within the first preset time period, if the number of all test benches corresponding to one of the test bench types that are in continuous operation is all, increase the number of benches of one of the test bench types in the test bench set;

[0062] Within the first preset time period, if the number of test benches in continuous operation among all test benches corresponding to one of the bench types is a part, the number of benches of one of the bench types in the test bench set is reduced.

[0063] During actual operation, if all the test benches corresponding to one bench type are not always in operation, it means that there are fewer test tasks of this type. At this time, the number of benches corresponding to this bench type in the test bench set can be reduced; if all the test benches corresponding to one bench type are always in operation, it means that there are more test tasks of this type. At this time, the number of benches corresponding to this bench type in the test bench set can be increased.

[0064] Assume that the smart cockpit laboratory includes 100 test benches, and there are 10 full-function benches, 20 HMI interactive benches, 30 audio full-power amplifier benches, 25 underlying system benches, and 15 basic algorithm benches. If within a week, 20 HMI interactive benches are in continuous operation and 15 audio full-power amplifier benches are in continuous operation, then the number of HMI interactive benches included in the smart cockpit laboratory can be increased, and the number of audio full-power amplifier benches can be reduced, thereby saving the cost of repeated construction and improving the reuse rate of bench resources.

[0065] In one embodiment, the task allocation method further includes: obtaining the current environmental parameters and current operating parameters of each test bench in the associated test bench set; remotely controlling each test device in the test bench based on the current environmental parameters and current operating parameters. Among them, the current environmental parameters refer to the relevant parameters of the external environment in which the test bench is located. For example, the current environmental parameters may include but are not limited to: the current temperature and humidity in the smart cockpit laboratory. The current operating parameters refer to the relevant parameters of the test bench in operation. For example, the current operating parameters may include but are not limited to: current current and voltage, etc. In an embodiment, the temperature and humidity, as well as the current and voltage of the test bench can be remotely monitored through a cloud server to avoid safety hazards such as fire.

[0066] In one embodiment, the task allocation method further includes: issuing corresponding start-stop operations to each test bench in the associated test bench set; wherein the start-stop operation includes one of the following: power-on operation; power-off operation; restart operation; power-off operation. In actual operation, the cloud server can also issue different start-stop operations to the test bench to achieve remote control of the test bench. For example, the cloud server can remotely control the restart, power-off, re-power-on and emergency power-off related operations of the test bench.

[0067] In one embodiment, the task allocation method further includes: in response to a parameter adjustment operation of one of the test devices in the test bench, receiving the device adjustment parameters reported by the test device. The device adjustment parameters may include the hardware parameters and software parameters of the test device. For example, if a new driver is installed on the test device, it is necessary to report the driver adjustment status to the cloud server so that the cloud server updates the relevant parameters in its own repository based on the driver adjustment status. In the actual operation process, the device adjustment parameters of the test device can be obtained by scanning the code into the warehouse or real-time inventory (such as RFID radio frequency communication technology).

[0068] In one embodiment, the task allocation method further includes: displaying the test bench status information of each test bench and the test task information on each test bench on the display interface of the cloud server. The test task information refers to the relevant information of the test task being executed on the test bench and the relevant information of the test task waiting to be executed. In order to be able to intuitively see the task owner corresponding to the test task being executed by each test bench from the cloud server, the task owner corresponding to the test task being executed can be displayed on the display interface, thereby realizing visual monitoring of the test bench and the test task. In addition, the position of the key test equipment in the test bench can also be visualized to facilitate the search for equipment.

[0069] In one embodiment, the task allocation method further includes: regularly sending a self-diagnosis program to each test bench so that the test bench performs automatic detection of the operating environment based on the self-diagnosis program. Among them, the self-diagnosis program is used for use cases to detect whether the operating environment of each test bench is abnormal. In the actual operation process, in order to ensure the effective execution of the test task, the cloud server can regularly send a self-diagnosis program to each test bench so that the test bench performs automatic detection of the hardware environment and software environment based on the self-diagnosis program. Of course, in the actual operation process, the corresponding self-diagnosis programs for test benches of different bench types may be different. For the deployment of environmental software, it is necessary to ensure that each test case included in the test task can be correctly sent to the operating environment and executed according to the rules; and all operating environments can be configurably upgraded automatically, such as collecting the frequency of bench version updates, the method of bench version updates, the configuration of the computer software environment, and the collection of pre-test preparation and post-test recovery operations. Among them, the test bench version update frequency refers to the version update cycle of the vehicle computer in the test bench; if the test bench version is a release test and the release is carried out every day, the version needs to be updated every day; if the test bench version is an integrated test, that is, only this function needs to be verified, then it can be upgraded every few days. The test bench version update method can include OTA, USB cable flash or U disk and other update methods; computer software environment configuration refers to which drivers need to be installed to mobilize the corresponding hardware devices; pre-test preparation refers to the self-inspection and self-healing of the software environment and hardware and software. Generally speaking, each test bench is configured with a normal state corresponding to the relevant parameters on the cloud server, and a self-diagnosis program can be executed regularly to detect whether the hardware equipment is normal. For example, self-inspection can be performed after completing a test task, or in an idle state. There is no limitation on this.

[0070] In one embodiment, Figure 5 FIG. 1 is a schematic diagram of task allocation for a shared test bench provided by an embodiment of the present invention. Figure 5As shown, members of each group can send test tasks to be assigned to the gimbal server, so that the gimbal server can determine the matching target test bench based on the test bench status information of each test bench in the smart cockpit laboratory and the task attribute information of the test task to be assigned, so as to realize the process in which the gimbal server can dynamically assign tasks to all test benches, thereby improving the reuse rate of the benches.

[0071] In one embodiment, Figure 6 FIG. 1 is a schematic diagram of a task allocation device provided by an embodiment of the present invention. Figure 6 As shown, the device includes: a first acquisition module 510, a determination module 520 and an allocation module 530.

[0072] A first acquisition module 510 is used to obtain, in response to the received test task to be assigned, the test bench status information corresponding to each test bench in the associated test bench set and the task attribute information of the test task to be assigned;

[0073] A determination module 520, configured to determine a corresponding target test bench according to the bench status information and the task attribute information;

[0074] The allocating module 530 is used to allocate the test task to be allocated to the target test bench, so as to execute the test task to be allocated on the target test bench.

[0075] In one embodiment, the test bench status information includes: test bench operation status; support capability label; test bench reservation status; wherein the test bench operation status includes: idle state and running; the support capability label includes: hardware capability and software capability supported by each test bench; the test bench reservation status is used to characterize the reservation usage time information of each test bench;

[0076] Task attribute information includes: task urgency and operating environment requirements.

[0077] In one embodiment, the determination module includes:

[0078] A screening unit, used to screen and obtain a corresponding set of adjustable racks according to operating environment requirements and support capability labels;

[0079] The selection unit is used to select a target test bench corresponding to the test task to be assigned from the set of deployable benches according to the bench operation status, bench reservation status and task urgency.

[0080] In one embodiment, the selection unit includes:

[0081] The first determination subunit is used to determine the remaining execution time corresponding to each deployable rack according to the rack reservation situation;

[0082] The second determination subunit is used to, when the task urgency is non-sudden emergency and the test bench operation state is in operation, use the deployable test bench with the shortest remaining execution time as the target test bench corresponding to the test task to be assigned;

[0083] The third determination subunit is used to, when the task urgency is sudden emergency and the test bench operating status is running, select the deployable test bench with the shortest remaining execution time and the running test task with a lower priority than the test task to be assigned as the target test bench corresponding to the test task to be assigned.

[0084] In one embodiment, the task allocation device further includes:

[0085] A second acquisition module is used to acquire the test bench type of each test bench in the associated test bench set and the test bench usage within a first preset time period; wherein the test bench usage is used to characterize the number of test benches of each test bench type that are in continuous operation within the first preset time period;

[0086] The adjustment module is used to dynamically adjust the number of test benches corresponding to each test bench type in the test bench set based on the test bench usage.

[0087] In one embodiment, the adjustment module includes:

[0088] A first adjustment unit is used to increase the number of test benches of one test bench type in the test bench set if, within a first preset time period, the number of all test benches corresponding to one test bench type in continuous operation is all;

[0089] The second adjustment unit is used to reduce the number of test benches of one test bench type in the test bench set if, within the first preset time period, the number of test benches in continuous operation among all test benches corresponding to one test bench type is part.

[0090] In one embodiment, the task allocation device further includes:

[0091] A third acquisition module, used to acquire current environmental parameters and current operating parameters of each test bench in the associated test bench set;

[0092] The control module is used to remotely control each test device in the test bench based on current environmental parameters and current operating parameters.

[0093] In one embodiment, the task allocation device also includes: a sending module, used to send corresponding start-stop operations to each test bench in the associated test bench set; wherein the start-stop operation includes one of the following: power-on operation; power-off operation; restart operation; power-off operation.

[0094] In one embodiment, the task allocation apparatus further includes: a receiving module, configured to receive a device adjustment parameter reported by a test device in response to a parameter adjustment operation of one of the test devices in the test bench.

[0095] In one embodiment, the task allocation device further includes: a display module, which is used to display the test bench status information of each test bench and the test task information on each test bench on the display interface of the cloud server.

[0096] In one embodiment, the task allocation device further includes: a sending module, which is used to periodically send a self-diagnosis program to each test bench, so that the test bench automatically detects the operating environment based on the self-diagnosis program.

[0097] The task allocation device provided in the embodiment of the present invention can execute the task allocation method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.

[0098] In one embodiment, Figure 7 is a structural block diagram of an electronic device provided by an embodiment of the present invention, such as Figure 7 As shown, a schematic diagram of the structure of an electronic device 10 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.

[0099] like Figure 7 As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

[0100] A number of components in the electronic device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0101] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as the task allocation method.

[0102] In some embodiments, the task allocation method may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the task allocation method described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to perform the task allocation method in any other appropriate manner (e.g., by means of firmware).

[0103] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0104] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0105] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0106] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).

[0107] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.

[0108] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.

[0109] An embodiment of the present application also provides a computer program product, including a computer program, which, when executed by a processor, can implement the task allocation method provided in any embodiment of the present application.

[0110] In the process of implementation, the computer program product can be written in one or more programming languages ​​or a combination thereof to perform the computer program code of the present application, and the programming language includes an object-oriented programming language, such as Java, Smalltalk, C++, and also includes a conventional procedural programming language, such as "C" language or similar programming language. The program code can be executed entirely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer and partially on the remote computer, or completely on the remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (for example, using an Internet service provider to connect through the Internet).

[0111] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.

[0112] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims

1. A task allocation method, characterized in that: include: In response to the received test task to be assigned, acquiring the test bench status information corresponding to each test bench in the associated test bench set and the task attribute information of the test task to be assigned; Determine a corresponding target test bench according to the bench status information and the task attribute information; The test task to be assigned is assigned to the target test bench, so as to execute the test task to be assigned on the target test bench.

2. The method according to claim 1, characterized in that The test bench status information includes: test bench operation status; support capability label; test bench reservation status; wherein the test bench operation status includes: idle state and running; the support capability label includes: hardware capabilities and software capabilities supported by each test bench; the test bench reservation status is used to characterize the reservation usage time information of each test bench; The task attribute information includes: task urgency and operating environment requirements.

3. The method according to claim 2, characterized in that The determining a corresponding target test bench according to the bench status information and the task attribute information comprises: Filter and obtain a corresponding set of adjustable racks according to the operating environment requirements and the support capability labels; A target test bench corresponding to the test task to be assigned is selected from the set of deployable test benches according to the bench operation status, the bench reservation status and the task urgency.

4. The method according to claim 3, characterized in that The selecting a target test bench corresponding to the to-be-assigned test task from the set of deployable test benches according to the test bench operation status, the test bench reservation status and the task urgency comprises: Determine the remaining execution time corresponding to each deployable stand according to the stand reservation situation; When the task urgency is non-sudden emergency and the test bench operation state is in operation, the deployable test bench with the shortest remaining execution time is used as the target test bench corresponding to the test task to be assigned; When the task urgency is sudden and urgent and the test bench operating status is running, the deployable test bench whose remaining execution time is the shortest and whose priority is lower than the priority of the test task to be assigned is used as the target test bench corresponding to the test task to be assigned.

5. The method according to claim 1, characterized in that The method further comprises: Obtaining the test bench type of each test bench in the associated test bench set and the test bench usage within a first preset time period; wherein the test bench usage is used to characterize the number of test benches of each test bench type that are in continuous operation within the first preset time period; The number of test benches corresponding to each test bench type in the test bench set is dynamically adjusted based on the test bench usage.

6. The method according to claim 5, characterized in that The dynamically adjusting the number of test benches corresponding to each test bench type in the test bench set based on the test bench usage includes: Within a first preset time period, if the number of test benches corresponding to one of the test bench types in continuous operation is all, increase the number of test benches of the one of the test bench types in the test bench set; Within a first preset time period, if the number of test benches in continuous operation among all test benches corresponding to one of the bench types is a portion, the number of benches of the one of the bench types in the test bench set is reduced.

7. The method according to any one of claims 1 to 6, characterized in that: The method further comprises: Obtaining current environmental parameters and current operating parameters of each test bench in the associated test bench set; Each test device in the test bench is remotely controlled based on the current environmental parameters and the current operating parameters.

8. The method according to claim 7, characterized in that The method further comprises: A corresponding start / stop operation is issued to each test bench in the associated test bench set; wherein the start / stop operation includes one of the following: a power-on operation; a power-off operation; a restart operation; or a power-off operation.

9. The method according to any one of claims 1 to 6, characterized in that: The method further comprises: In response to a parameter adjustment operation of one of the test devices in the test bench, a device adjustment parameter reported by the test device is received.

10. The method according to any one of claims 1 to 6, characterized in that: The method further comprises: The test bench status information of each test bench and the test task information on each test bench are displayed on the display interface of the cloud server.

11. The method according to any one of claims 1 to 6, characterized in that: The method further comprises: A self-diagnosis program is sent to each of the test benches at a regular interval so that the test benches can automatically detect the operating environment based on the self-diagnosis program.

12. A task allocation device, characterized in that: include: A first acquisition module, configured to, in response to a received test task to be assigned, acquire the test bench status information corresponding to each test bench in the associated test bench set and the task attribute information of the test task to be assigned; A determination module, used to determine a corresponding target test bench according to the bench status information and the task attribute information; The allocating module is used to allocate the test task to be allocated to the target test bench, so as to execute the test task to be allocated on the target test bench.

13. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can perform the task allocation method according to any one of claims 1 to 11.

14. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the task allocation method according to any one of claims 1 to 11 when executed.

15. A computer program product, characterized in that The computer program product comprises a computer program, which, when executed by a processor, implements the task allocation method according to any one of claims 1 to 11.