Parking path planning method and device, medium and electronic equipment
By optimizing the acquisition order and list management of the target evaluation method of hybrid A-star algorithm, the problem of slow parking path planning speed under limited computing resources is solved, and the effect of quickly generating parking paths is achieved.
Patent Information
- Application Number
- CN202411424976.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-12
- Publication Date
- 2025-02-14
AI Technical Summary
When generating parking paths with mixed A-star algorithms, if the computing resources are limited, the computing speed is slow, making it difficult to quickly generate parking paths.
By obtaining the computing resources of the raster map and vehicle controller, determine the order of obtaining the target evaluation method from the cost function method and geometry method, optimize the management of open lists and closed lists, and improve the efficiency of node evaluation.
The parking path planning speed under limited computing resources is improved, and the target parking path can be quickly generated.
Smart Images

Figure CN119428641A_ABST
Abstract
Description
Background Art
[0002] The Hybrid A* algorithm is a motion planning algorithm that combines the traditional A* algorithm and the continuous state space path planning method. It is suitable for path planning for robots or vehicles with non-holonomic constraints.
[0003] However, when the hybrid A-star algorithm is used to generate a parking path, if the computing resources are limited, the computing speed is slow, which is not conducive to quickly generating a parking path. Summary of the invention
[0004] The embodiments of the present application provide a parking path planning method, device, medium, and electronic device for solving the technical problem that when the hybrid A-star algorithm is used to generate a parking path, the computing speed is slow if the computing resources are limited.
[0005] Other features and advantages of the present application will become apparent from the following detailed description, or may be learned in part by the practice of the present application.
[0006] According to a first aspect of the present application, a parking path planning method is provided, comprising:
[0007] Acquire a grid map and a first computing resource of a vehicle controller;
[0008] Create a blank open list and a closed list, and put the starting point into the open list;
[0009] Determining, according to the first computing resource, an order of obtaining a target evaluation method from a cost function method and a first geometric method;
[0010] Determine the target evaluation method for this acquisition according to the acquisition order, judge whether there is a node in the open list, and if so, apply the target evaluation method to determine the node with the smallest cost value in the open list as the first node, and put the first node into the closed list;
[0011] Determine whether the first node meets the node preset requirements. If not, expand the first node and return to the step of determining the target evaluation method acquired this time according to the acquisition order. If yes, generate a target parking path according to the grid map and the nodes of the closed list.
[0012] In some embodiments of the present application, based on the above solution, determining the order of obtaining the target evaluation method from the cost function method and the first geometric method according to the first computing resource includes:
[0013] determining, according to the first computing resource, an acquisition ratio of the cost function method and the first geometric method;
[0014] The acquisition order is determined according to an acquisition ratio of the cost function method and the first geometric method.
[0015] In some embodiments of the present application, based on the above solution, before applying the target evaluation method, it also includes:
[0016] Acquire a second computing resource of the vehicle controller;
[0017] The target evaluation method is retrieved according to the second computing resource.
[0018] In some embodiments of the present application, based on the above solution, before establishing the blank open list and the closed list, it also includes:
[0019] Processing the grid map using a second geometric method to generate an initial parking path;
[0020] It is determined whether the initial parking path meets the preset path requirement. If yes, the initial parking path is used as the target parking path without executing the step of establishing a blank open list and a closed list. If no, the step of establishing a blank open list and a closed list is executed.
[0021] In some embodiments of the present application, based on the above solution, the step of determining whether the initial parking path meets the preset path requirement includes:
[0022] The initial parking path is subjected to a collision detection. If there is no collision, the initial parking path meets the preset path requirement. If there is a collision, the initial parking path does not meet the preset path requirement.
[0023] In some embodiments of the present application, based on the foregoing solution, the determining whether the first node meets the node preset requirement includes:
[0024] If the first node can be extended to the end point or can generate a collision-free RS curve with the end point, then the first node meets the node preset requirements; if the first node can neither be extended to the end point nor can generate a collision-free RS curve with the end point, then the first node does not meet the node preset requirements.
[0025] In some embodiments of the present application, based on the above solution, the extending the first node includes:
[0026] Expanding the first node to obtain a plurality of second nodes, and using the first node as a parent node of the second nodes;
[0027] Performing collision detection on the plurality of second nodes, and taking the second nodes without collision as feasible nodes;
[0028] The feasible nodes that are not in the closed list are placed in the open list.
[0029] According to a second aspect of the present application, a parking path planning device is provided, comprising:
[0030] An acquisition unit, which acquires a grid map and a first computing resource of a vehicle controller;
[0031] Establish a unit, establish a blank open list and a closed list, and put the starting point into the open list;
[0032] A first determining unit determines, according to the first computing resource, an acquisition order of acquiring a target evaluation method from a cost function method and a first geometric method;
[0033] A first judgment unit determines the target evaluation method acquired this time according to the acquisition order, determines whether there is a node in the open list, and if so, uses the target evaluation method to determine the node with the smallest cost value in the open list as the first node, and puts the first node into the closed list;
[0034] The second judgment unit judges whether the first node meets the node preset requirements. If not, the first node is expanded and the step of determining the target evaluation method acquired this time according to the acquisition order is returned to execute. If yes, the target parking path is generated according to the grid map and the nodes of the closed list.
[0035] In some embodiments of the present application, based on the foregoing solution, the first determining unit is configured as follows:
[0036] determining, according to the first computing resource, an acquisition ratio of the cost function method and the first geometric method;
[0037] The acquisition order is determined according to an acquisition ratio of the cost function method and the first geometric method.
[0038] In some embodiments of the present application, based on the aforementioned scheme, it also includes a second determination unit, which is used to obtain a second computing resource of the vehicle controller before applying the target evaluation method, and re-acquire the target evaluation method based on the second computing resource.
[0039] In some embodiments of the present application, based on the aforementioned solution, a third judgment unit is further included, and the third judgment unit is used to process the grid map using a second geometric method to generate an initial parking path before establishing the blank open list and the closed list, and judge whether the initial parking path meets the preset path requirements. If so, the initial parking path is used as the target parking path, and the step of establishing the blank open list and the closed list is not executed. If not, the step of establishing the blank open list and the closed list is executed.
[0040] In some embodiments of the present application, based on the above solution, the third judgment unit is configured as follows:
[0041] The initial parking path is subjected to a collision detection. If there is no collision, the initial parking path meets the preset path requirement. If there is a collision, the initial parking path does not meet the preset path requirement.
[0042] In some embodiments of the present application, based on the above solution, the second judgment unit is configured as follows:
[0043] If the first node can be extended to the end point or can generate a collision-free RS curve with the end point, then the first node meets the node preset requirements; if the first node can neither be extended to the end point nor can generate a collision-free RS curve with the end point, then the first node does not meet the node preset requirements.
[0044] In some embodiments of the present application, based on the above solution, the second judgment unit is further configured to:
[0045] Expanding the first node to obtain a plurality of second nodes, and using the first node as a parent node of the second nodes;
[0046] Performing collision detection on the plurality of second nodes, and taking the second nodes without collision as feasible nodes;
[0047] The feasible nodes that are not in the closed list are placed in the open list.
[0048] According to the third aspect of the present application, a computer-readable storage medium is provided, on which a computer program is stored. The computer program includes executable instructions. When the executable instructions are executed by a processor, the method described in any embodiment of the first aspect of the present application is implemented.
[0049] According to the fourth aspect of the present application, an electronic device is provided, comprising: one or more processors; and a memory for storing executable instructions of the processors, wherein when the executable instructions are executed by the one or more processors, the one or more processors implement the method described in any embodiment of the first aspect of the present application.
[0050] The beneficial effects of this application are as follows:
[0051] According to the first computing resource, a target evaluation method is determined, the target evaluation method is matched with the first computing resource, and when the cost value of the node in the open list is evaluated using the target evaluation method, the operation speed is fast, which is conducive to quickly generating a parking path.
[0052] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0053] The drawings herein are incorporated into the specification and constitute a part of the specification, showing embodiments consistent with the present application, and together with the specification, are used to explain the principles of the present application. Obviously, the drawings described below are only some embodiments of the present application, and for ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work. In the drawings:
[0054] Figure 1 A flow chart of a parking path planning method in an embodiment of the present application is shown;
[0055] Figure 2 A block diagram of a parking path planning device in an embodiment of the present application is shown;
[0056] Figure 3 A schematic diagram showing a computer-readable storage medium in an embodiment of the present application is shown;
[0057] Figure 4 A schematic diagram showing the system structure of an electronic device in an embodiment of the present application is shown. DETAILED DESCRIPTION
[0058] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0059] In addition, described feature, structure or characteristic can be combined in one or more embodiments in any suitable manner. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present application. However, those skilled in the art will appreciate that the technical scheme of the present application can be put into practice without one or more of the specific details, or other methods, components, devices, steps, etc. can be adopted. In other cases, known methods, devices, realizations or operations are not shown or described in detail to avoid blurring the various aspects of the application.
[0060] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities may be implemented in software form, or in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.
[0061] The flowcharts shown in the accompanying drawings are only exemplary and do not necessarily include all the contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps can be decomposed, and some operations / steps can be combined or partially combined, so the actual execution order may change according to actual conditions.
[0062] In the description of this application, it should be understood that the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the feature. In the description of this application, unless otherwise specified, "plurality" means two or more.
[0063] Figure 1 A flowchart of a parking path planning method in an embodiment of the present application is shown. Figure 1 , provides a parking path planning method, including at least S1 to S5, which are described in detail as follows:
[0064] In step S1, a grid map and a first computing resource of a vehicle controller are obtained.
[0065] In some embodiments, the grid map includes a plurality of nodes, the nodes include obstacle nodes and traversable nodes, the traversable nodes include a starting point, an end point, and other nodes. The starting point is a parking starting point, the end point is a parking end point, or the starting point is a parking end point, and the end point is a parking starting point.
[0066] In step S2, a blank open list and a closed list are created, and the starting point is placed in the open list.
[0067] In step S3, according to the first computing resource, the order of acquiring the target evaluation method from the cost function method and the first geometric method is determined. The computing resource consumption of the first geometric method is less than that of the cost function method.
[0068] The cost function method is a node evaluation method of the existing hybrid A-star algorithm, that is, the cost function is used to evaluate the node cost value. The cost function is f(n)=g(n)+h(n), where n is the nth node, f(n) is the cost value of the nth node, g(n) is the actual cost from the starting point to the nth node, and h(n) is used to predict the expected cost of the optimal path from the nth node to the end point.
[0069] In step S4, the target evaluation method for this acquisition is determined according to the acquisition order to determine whether there is a node in the open list. If so, the target evaluation method is applied to determine the node with the smallest cost in the open list as the first node, and the first node is placed in the closed list.
[0070] In some implementations, determining the target evaluation method for this acquisition according to the acquisition order includes: determining the target evaluation method for this acquisition according to the current acquisition number and the acquisition order, and updating the current acquisition number, wherein the initial value of the current acquisition number is 1. Updating the current acquisition number can be understood as adding 1 to the current acquisition number.
[0071] In some embodiments, using the target evaluation method to determine that the node with the smallest cost value in the open list is the first node includes: using the target evaluation method to evaluate the cost values of the nodes in the open list, and determining that the node with the smallest cost value is the first node.
[0072] In step S5, it is determined whether the first node meets the preset requirements of the node. If not, the first node is expanded and the step of determining the target evaluation method acquired this time according to the acquisition order is returned to execute. If so, the target parking path is generated according to the grid map and the nodes of the closed list.
[0073] In this way, compared with the existing hybrid A-star algorithm, when evaluating the cost value of the nodes in the open list, the target evaluation method is used instead of the cost function method, so that the target evaluation method matches the first computing resource, the computing speed is fast, and it is conducive to quickly determining the first node, thereby quickly generating the target parking path.
[0074] It should be noted that the parking path planning method provided in the present application can be understood as an improved hybrid A-star algorithm.
[0075] In some implementations, after determining whether there is a node in the open list, the method further includes: if not, generating a target parking path according to the grid map and the nodes in the closed list.
[0076] In some implementations, determining the acquisition order of the target evaluation method from the cost function method and the first geometric method according to the first computing resource includes: determining the acquisition ratio of the cost function method and the first geometric method according to the first computing resource; and determining the acquisition order according to the acquisition ratio of the cost function method and the first geometric method. The acquisition order indicates which node evaluation method is used as the target evaluation method when the target evaluation method is acquired for the Nth time, where N is a positive integer greater than or equal to 1.
[0077] In some embodiments, the acquisition ratio of the cost function method and the first geometric method is determined based on the first computing resource, including: if the first computing resource is greater than the first computing resource threshold, the acquisition ratio of the cost function method is 100%, and the acquisition ratio of the first geometric method is 0%; if the first computing resource is less than or equal to the first computing resource threshold, and greater than or equal to the second computing resource threshold, then the acquisition ratio of the cost function method and the acquisition ratio of the first geometric method are not 0%; if the first computing resource is less than the second computing resource threshold, the acquisition ratio of the cost function method is 0%, and the acquisition ratio of the first geometric method is 100%, wherein the second computing resource threshold is less than the first computing resource threshold. When the first computing resource is greater than the first computing resource, that is, when the computing resources are sufficient, the cost function method can be fully adopted as the target evaluation method; when the first computing resource is less than or equal to the first computing resource threshold, and greater than or equal to the second computing resource threshold, that is, when the computing resources are relatively sufficient, according to the first computing resource, part of the cost function method is adopted as the target evaluation method, and part of the first geometric method is adopted as the target evaluation method; when the first computing resource is less than the second computing resource threshold, that is, when the computing resources are insufficient, the first geometric method can be fully adopted as the target evaluation method.
[0078] In some implementations, when the first computing resource is less than or equal to the first computing resource threshold and greater than or equal to a second computing resource threshold, the higher the first computing resource is, the higher the acquisition ratio of the cost function method is.
[0079] In some embodiments, determining the acquisition order based on the acquisition ratio of the cost function method and the first geometric method includes: acquiring the sorting times; determining the acquisition times of the cost function method and the first geometric method based on the sorting times and the acquisition ratio; determining the acquisition order based on the acquisition times of the cost function method and the first geometric method.
[0080] In some embodiments, determining the acquisition order according to the number of acquisitions of the cost function method and the first geometric method includes: constructing an acquisition sequence of the cost function method and the first geometric method according to the number of acquisitions of the cost function method and the first geometric method; arranging the acquisition sequences in sequence to obtain the acquisition order.
[0081] For example, the number of sorting times is 100 times, the acquisition ratio of the cost function method is 20%, and the acquisition ratio of the first geometric method is 80%, the number of acquisition times of the cost function method is 100*20%=20 times, and the number of acquisition times of the first geometric method is 100*80%=80 times. Construct the acquisition sequence of the cost function method and the acquisition sequence of the first geometric method, that is, 20 times of the acquisition sequence of the cost function method and 80 times of the acquisition sequence of the first geometric method. Arrange the acquisition sequences in sequence to obtain the acquisition order. The acquisition sequence of the cost function method 20 times can be placed in front and the acquisition sequence of the first geometric method 80 times can be placed in the back, or the acquisition sequence of the first geometric method 80 times can be placed in front and the acquisition sequence of the cost function method 20 times can be placed in the back.
[0082] In some embodiments, the acquisition order is determined according to the number of acquisitions of the cost function method and the first geometric method, including: constructing an acquisition sequence of the cost function method according to the number of acquisitions of the cost function method; and placing the first geometric method into the acquisition sequence of the cost function method according to the number of acquisitions of the first geometric method to obtain the acquisition order.
[0083] For example, the number of sorting times is 100, the acquisition ratio of the cost function method is 20%, the acquisition ratio of the first geometric method is 80%, the acquisition times of the cost function method is 100*20%=20 times, and the acquisition times of the first geometric method is 100*80%=80 times. Construct an acquisition sequence of the cost function method, that is, an acquisition sequence of the cost function method 20 times, and sequentially put the 80 times of the first geometric method into the acquisition sequence of the cost function method to obtain the acquisition order.
[0084] In some embodiments, before applying the target evaluation method, the method further includes: obtaining a second computing resource of the vehicle controller; and re-acquiring the target evaluation method based on the second computing resource. Each time a node evaluation is performed, the target evaluation method is re-acquired so that the target evaluation method and the computing resource of the vehicle controller are more matched.
[0085] In some embodiments, the target evaluation method is reacquired based on the second computing resource, including: if the second computing resource is greater than a third computing resource threshold, the target evaluation method is the cost function method; if the second computing resource is less than or equal to the third computing resource threshold and greater than or equal to a fourth computing resource threshold, the target evaluation method is the cost function method or the first geometric method; if the second computing resource is less than the fourth computing resource threshold, the target evaluation method is the first geometric method, wherein the fourth computing resource threshold is less than the third computing resource threshold.
[0086] In some embodiments, before the blank open list and closed list are established, the method further includes: using the second geometric method to process the grid map to generate an initial parking path; determining whether the initial parking path meets the path preset requirements, if so, using the initial parking path as the target parking path, and not executing the step of establishing the blank open list and closed list; if not, executing the step of establishing the blank open list and closed list. If the initial parking path meets the path preset requirements, the initial parking path generated by the second geometric method is used as the target parking path, that is, the target parking path is directly generated according to the second geometric method, and the target parking path is not generated by the improved hybrid A-star algorithm, thereby improving the parking path generation speed; if the initial parking path does not meet the path preset requirements, the target parking path is generated by the improved hybrid A-star algorithm.
[0087] In some embodiments, determining whether the initial parking path meets the preset path requirements includes: performing a collision detection on the initial parking path; if there is no collision, the initial parking path meets the preset path requirements; if there is a collision, the initial parking path does not meet the preset path requirements.
[0088] In some embodiments, the determining whether the first node meets the node preset requirements includes: if the first node can be extended to the end point or can generate a collision-free RS curve with the end point, then the first node meets the node preset requirements; if the first node can neither be extended to the end point nor generate a collision-free RS curve with the end point, then the first node does not meet the node preset requirements. The RS curve is a Reeds-Shepp curve.
[0089] In some embodiments, the expanding the first node includes: expanding the first node to obtain a plurality of second nodes, and using the first node as a parent node of the second nodes; performing collision detection on the plurality of second nodes, and using the second nodes without collision as feasible nodes; and placing the feasible nodes that are not in the closed list into the open list.
[0090] It should be noted that the first node can be extended to the end point, which can be understood as the end point is included in the plurality of second nodes obtained by extending the first node. At this time, the parent node of the end point is the current first node.
[0091] In some implementations, the expanding the first node to obtain a plurality of second nodes includes: obtaining a vehicle kinematics formula, and expanding the first node according to the vehicle kinematics formula to obtain a plurality of second nodes.
[0092] In some embodiments, generating the target parking path according to the grid map and the nodes of the closed list includes: acquiring a parent-child node relationship; and based on the grid map, backtracking in the reverse direction to generate the target parking path according to the nodes of the closed list and the parent-child node relationship, that is, based on the grid map, generating the target parking path from the parent node of the end point forward.
[0093] In the present application, when the first geometric method is used to replace the cost function method, on the one hand, the efficiency of generating a short path of round trip is better, and on the other hand, it is conducive to generating a reasonable parking path.
[0094] Figure 2 A block diagram of a parking path planning device in an embodiment of the present application is shown, see Figure 2According to a second aspect of the present application, a parking path planning device 100 is provided, comprising: an acquisition unit 101, which acquires a grid map and a first computing resource of a vehicle controller; an establishment unit 102, which establishes a blank open list and a closed list, and puts a starting point into the open list; a first determination unit 103, which determines, according to the first computing resource, an acquisition order of acquiring a target evaluation method from a cost function method and a first geometric method; a first judgment unit 104, which determines, according to the acquisition order, the target evaluation method acquired this time, and determines whether there is a node in the open list; if so, uses the target evaluation method to determine the node with the smallest cost value in the open list as the first node, and puts the first node into the closed list; a second judgment unit 105, which determines whether the first node meets the preset node requirements; if not, expands the first node, and returns to the step of determining the target evaluation method acquired this time according to the acquisition order; if so, generates a target parking path according to the nodes of the grid map and the closed list.
[0095] In some embodiments, the first determination unit is configured to: determine an acquisition ratio of the cost function method and the first geometric method according to the first computing resource; and determine the acquisition order according to the acquisition ratio of the cost function method and the first geometric method.
[0096] In some embodiments, a second determination unit is further included, and the second determination unit is used to obtain a second computing resource of the vehicle controller before applying the target evaluation method, and re-acquire the target evaluation method based on the second computing resource.
[0097] In some embodiments, a third judgment unit is further included, and the third judgment unit is used to process the grid map using a second geometric method to generate an initial parking path before establishing the blank open list and the closed list, and judge whether the initial parking path meets the preset path requirements. If so, the initial parking path is used as the target parking path, and the step of establishing the blank open list and the closed list is not executed. If not, the step of establishing the blank open list and the closed list is executed.
[0098] In some embodiments, the third judgment unit is configured to: perform a collision detection on the initial parking path; if there is no collision, the initial parking path meets the preset path requirement; if there is a collision, the initial parking path does not meet the preset path requirement.
[0099] In some embodiments, the second judgment unit is configured as follows: if the first node can be extended to the end point or can generate a collision-free RS curve with the end point, then the first node meets the node preset requirements; if the first node can neither be extended to the end point nor can generate a collision-free RS curve with the end point, then the first node does not meet the node preset requirements.
[0100] In some embodiments, the second judgment unit is further configured to: expand the first node to obtain several second nodes, and use the first node as the parent node of the second node; perform collision detection on the several second nodes, and use the second nodes without collision as feasible nodes; and put the feasible nodes that are not in the closed list into the open list.
[0101] Based on the same inventive concept, as a third aspect, the present application also provides a computer-readable storage medium on which is stored a program product capable of implementing the above-mentioned parking path planning method of the present specification. In some possible implementations, various aspects of the present application can also be implemented in the form of a program product, which includes a program code. When the program product is run on a terminal device, the program code is used to enable the terminal device to execute the steps according to various exemplary implementations of the present application described in the above-mentioned "Exemplary Method" section of the present specification.
[0102] refer to Figure 3 As shown, a program product 200 for implementing the above method according to an embodiment of the present application is described, which can adopt a portable compact disk read-only memory (CD-ROM) and include program code, and can be run on a terminal device, such as a personal computer. However, the program product of the present application is not limited thereto. In this document, a readable storage medium can be any tangible medium containing or storing a program, which can be used by or in combination with an instruction execution system, an apparatus or a device.
[0103] The program product may use any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable 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 above.
[0104] Computer readable signal media may include data signals propagated in baseband or as part of a carrier wave, in which readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Readable signal media may also be any readable medium other than a readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0105] The program code embodied on the readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the foregoing.
[0106] Program code for performing the operations of the present application may be written in any combination of one or more programming languages, including object-oriented programming languages such as Java, C++, etc., and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a separate software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., using an Internet service provider to connect through the Internet).
[0107] As another aspect, the present application also provides an electronic device capable of implementing the above method.
[0108] Those skilled in the art will appreciate that various aspects of the present application may be implemented as a system, method or program product. Therefore, various aspects of the present application may be specifically implemented in the following forms, namely: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software, which may be collectively referred to as "circuit", "module" or "system" herein.
[0109] Refer to the following Figure 4 The electronic device 300 according to this embodiment of the present application is described. Figure 4 The electronic device 300 shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0110] like Figure 4As shown, the electronic device 300 is in the form of a general computing device. The components of the electronic device 300 may include but are not limited to: at least one processing unit 310, at least one storage unit 320, and a bus 330 connecting different system components (including the storage unit 320 and the processing unit 310).
[0111] The storage unit stores program codes, which can be executed by the processing unit 310, so that the processing unit 310 executes the steps described in the above “Example Method” section of this specification according to various exemplary implementations of the present application.
[0112] The storage unit 320 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 321 and / or a cache memory unit 322 , and may further include a read-only memory unit (ROM) 323 .
[0113] The storage unit 320 may also include a program / utility 324 having a set (at least one) of program modules 325, such program modules 325 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.
[0114] Bus 330 may represent one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
[0115] The electronic device 300 may also communicate with one or more external devices 400 (e.g., keyboards, pointing devices, Bluetooth devices, etc.), one or more devices that enable a user to interact with the electronic device 300, and / or any device that enables the electronic device 300 to communicate with one or more other computing devices (e.g., routers, modems, etc.). Such communication may be performed through an input / output (I / O) interface 350. Furthermore, the electronic device 300 may also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) through a network adapter 360. Figure 4 As shown, the network adapter 360 communicates with other modules of the electronic device 300 via the bus 330. It should be understood that, although not shown in the figure, other hardware and / or software modules can be used in conjunction with the electronic device 300, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0116] The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored as one or more instructions or codes on a computer-readable medium or transmitted via a computer-readable medium. Other examples and implementations are within the scope and spirit of the present application and the appended claims. For example, due to the nature of software, the functions described above may be implemented using software executed by a processor, hardware, firmware, hard wiring, or a combination of any of these. In addition, each functional unit may be integrated into a processing unit, each unit may exist physically separately, or two or more units may be integrated into one unit.
[0117] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of the units can be a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.
[0118] The units described as separate components may or may not be physically separated, and the components of the control device may or may not be physical units, that is, they may be located in one place or distributed in multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0119] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly or all or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, server or network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or optical disk, etc., which can store program code.
[0120] The above description is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent substitution, improvement, etc. made within the spirit and principle of the present application shall be included in the scope of the claims of the present application.
Claims
1. A parking path planning method, characterized in that: include: Acquire a grid map and a first computing resource of a vehicle controller; For each target path node required for generating a parking path, obtaining a target evaluation method from a plurality of candidate node evaluation methods according to the first computing resource; Determine the target path node using the target evaluation method; A target parking path is generated according to the grid map and each of the determined target path nodes.
2. The method according to claim 1, characterized in that The step of using the target evaluation method to determine the target path node includes: Creating a blank open list and a closed list, and putting the parking starting point into the open list; Determine whether there is a node in the open list, if so, evaluate the cost value of the node in the open list according to the target evaluation method, determine the node with the smallest cost value as the target path node, and put the target path node from the open list into the closed list; Determine whether the target path node meets the node preset requirements; If not, the target path node is expanded to update the open list and the closed list, and the step of determining whether there is a node in the open list is returned to execute; If it is met, the step of generating a target parking path according to the grid map and each of the determined target path nodes is executed.
3. A parking path planning method according to claim 1, characterized in that: The obtaining a target evaluation method from a plurality of candidate node evaluation methods according to the first computing resource includes: Determining, according to the first computing resource, acquisition ratios of the plurality of candidate node evaluation methods; According to the acquisition ratio, the acquisition order of the multiple candidate node evaluation methods is determined.
4. A parking path planning method according to claim 2, characterized in that: Before the target evaluation method is used to determine the target path node, the method further includes: Acquire a second computing resource of the vehicle controller; According to the second computing resource, a new target evaluation method is obtained from a plurality of candidate evaluation methods.
5. A parking path planning method according to claim 2, characterized in that: Before acquiring a target evaluation method from a plurality of candidate node evaluation methods according to the first computing resource for each target path node required for generating a parking path, the method further includes: Processing the grid map using a second geometric method to generate an initial parking path; It is determined whether the initial parking path meets the preset path requirement, and if so, the initial parking path is used as the target parking path.
6. A parking path planning method according to claim 2, characterized in that: The determining whether the target path node meets the node preset requirement includes: If the target path node can be extended to the end point or can generate a collision-free RS curve with the end point, then the target path node meets the node preset requirements. If the target path node can neither be extended to the end point nor can generate a collision-free RS curve with the end point, then the target path node does not meet the node preset requirements.
7. A parking path planning method according to claim 2, characterized in that: The step of expanding the target path node to update the open list and the closed list includes: Expanding the target path node to obtain a plurality of extended nodes, and using the target path node as a parent node of the plurality of extended nodes; Performing collision detection on the plurality of extended nodes, and taking each of the plurality of extended nodes without collision as a feasible node; Each feasible node among the feasible nodes that is not in the closed list is put into the open list to update the open list and the closed list.
8. A parking path planning device, characterized in that: include: A first acquisition unit, an acquisition unit, acquires a grid map and a first computing resource of a vehicle controller; a second acquisition unit, for each target path node required for generating a parking path, acquiring a target evaluation method from a plurality of candidate node evaluation methods according to the first computing resource; A first determining unit, using the target evaluation method to determine the target path node; The first generating unit generates a target parking path according to the grid map and each of the determined target path nodes.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: The computer program includes executable instructions, and when the executable instructions are executed by a processor, the method described in any one of claims 1 to 7 is implemented.
10. An electronic device, characterized in that: include: one or more processors; A memory for storing executable instructions of the processor, wherein when the executable instructions are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 7.