Path planning method, control method, computing device, and storage medium

By generating and storing the set of computational parameters offline, and combining polynomial fitting and curve fitting methods, the problems of latency and storage overhead in path planning are solved, achieving efficient and accurate location point reachability judgment, and improving the efficiency and reliability of path planning.

CN122149449APending Publication Date: 2026-06-05CORECHENG (BEIJING) TECHNOLOGY CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
CORECHENG (BEIJING) TECHNOLOGY CO LTD
Filing Date
2026-01-15
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Existing technologies struggle to balance low latency and low storage overhead in path planning, resulting in insufficient efficiency and reliability.

Method used

The system generates and stores a set of computational parameters offline, including multiple preset attitudes and corresponding regional boundary computational parameters. It quickly calculates whether the planned location point is within the reachable area and generates regional boundary computational parameters by combining polynomial fitting and curve fitting.

Benefits of technology

This reduces the amount of stored data to the kilobyte level and the computation latency to the microsecond level in path planning, improving the efficiency and reliability of path planning and ensuring efficient and accurate determination of location reachability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122149449A_ABST
    Figure CN122149449A_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure provide a path planning method, a control method, a computing device and a storage medium, and relate to the technical field of automatic control. The path planning method comprises: determining a planning position point and a planning attitude of a movable device moving from a current position into a first region; obtaining region boundary operation parameters corresponding to the planning attitude from a pre-generated set of operation parameters according to the planning attitude; determining whether the planning position point is located in a second region according to the region boundary operation parameters; and in the case that the planning position point is located in the second region, performing path planning according to the planning position point to generate a target path of the movable device moving from the current position into the first region. The set of operation parameters comprises a plurality of preset attitudes and region boundary operation parameters corresponding to each preset attitude, the boundary of the second region is calculated based on the region boundary operation parameters, and the position points contained in the second region are first position points satisfying a first preset condition.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of automatic control technology, and more specifically, to a path planning method, a control method, a computing device, and a storage medium. Background Technology

[0002] For mobile devices such as vehicles, mobility control can be achieved based on driving automation technology. For example, mobile devices can perform path planning based on driving automation technology to control their movement along the planned path. During path planning, it's necessary to determine the reachability of a target location. For instance, based on the mobile device's dynamics model, it can be determined whether the mobile device can move from its current location to the target location. If the target location is reachable, it is used as a candidate location in the path planning process. Therefore, efficiently and accurately determining the reachability of locations is crucial for path planning of mobile devices. Summary of the Invention

[0003] In view of this, the present disclosure proposes a new technical solution for path planning.

[0004] According to a first aspect of the present disclosure, a path planning method is provided, the method comprising: determining a planned location point and a planned posture for a mobile device to move from its current location into a first region; wherein the first region is a region where the mobile device can dock; obtaining region boundary operation parameters corresponding to the planned posture from a pre-generated set of operation parameters based on the planned posture; wherein the set of operation parameters includes multiple preset postures and region boundary operation parameters corresponding to each preset posture; determining whether the planned location point is located within a second region based on the region boundary operation parameters; wherein the boundary of the second region is calculated based on the region boundary operation parameters, and the location points included in the second region are first location points that satisfy a first preset condition, the first preset condition including that the mobile device can move from its current location to the first location point and that the posture when moving to the first location point is the planned posture; and, if the planned location point is located within the second region, performing path planning based on the planned location point to generate a target path for the mobile device to move from its current location into the first region.

[0005] Optionally, the planned location point has a first planned coordinate in the direction of a first coordinate axis and a second planned coordinate in the direction of a second coordinate axis; determining whether the planned location point is located within the second region based on the region boundary operation parameters includes: calculating the first boundary coordinate and the second boundary coordinate in the direction of the second coordinate axis based on the region boundary operation parameters and the first planned coordinate; and determining whether the planned location point is located within the second region if the second planned coordinate of the planned location point is located between the first boundary coordinate and the second boundary coordinate.

[0006] Optionally, calculating the first boundary coordinates and the second boundary coordinates in the direction of the second coordinate axis based on the region boundary calculation parameters and the first planned coordinates includes: calculating the third boundary coordinates and the fourth boundary coordinates in the direction of the second coordinate axis based on the region boundary calculation parameters and the first planned coordinates, wherein the third boundary coordinates are greater than the fourth boundary coordinates; using the sum of the third boundary coordinates and a set offset as the first boundary coordinates; and using the difference between the fourth boundary coordinates and the set offset as the second boundary coordinates; wherein the set offset is a preset value; or, the set offset is an offset determined based on the status information of the mobile device, wherein the status information includes one or more of positioning accuracy, speed, or obstacle information.

[0007] Optionally, the region boundary operation parameter is a polynomial fitting parameter, which is used to calculate the boundary coordinates in the direction of the second coordinate axis based on any coordinate in the direction of the first coordinate axis.

[0008] Optionally, the set of operational parameters is generated based on the following method: determining multiple preset postures; wherein, the multiple preset postures include posture values ​​sampled from a preset minimum posture value to a preset maximum posture value according to a preset step size; for each preset posture, determining a set of boundary position points of a third region corresponding to the preset posture based on a preset path planning algorithm, and performing curve fitting based on the set of boundary position points to generate regional boundary operational parameters corresponding to the preset posture; wherein, the position points included in the third region are second position points that satisfy a second preset condition, the second preset condition including that the mobile device can move from the current position to the second position point and that the posture when moving to the second position point is the preset posture.

[0009] Optionally, the step of performing curve fitting based on the set of boundary position points to generate region boundary operation parameters corresponding to the preset posture includes: performing curve fitting based on the set of boundary position points to generate candidate operation parameters corresponding to the preset posture; generating candidate boundaries based on the candidate operation parameters; determining the proportion of the third region located outside the candidate boundaries; if the proportion of the region is less than or equal to a preset proportion threshold, using the candidate operation parameters as region boundary operation parameters corresponding to the preset posture; or, if the proportion of the region is greater than the preset proportion threshold, modifying the curve fitting parameters, and performing curve fitting on the set of boundary position points based on the modified curve fitting parameters to generate candidate operation parameters corresponding to the preset posture.

[0010] Optionally, the set of operational parameters is read from the memory by the mobile device during initialization.

[0011] According to a second aspect of the present disclosure, a control method is provided, the method comprising: determining a planned location point and a planned posture for path planning of a mobile device; obtaining region boundary calculation parameters corresponding to the planned posture from a pre-generated parameter set according to the planned posture; determining whether the planned location point is located within a second region according to the region boundary calculation parameters; wherein the boundary of the second region is calculated based on the region boundary calculation parameters, and the location point included in the second region is a first location point that satisfies the first preset condition, the first preset condition including that the mobile device can move to the first location point and the posture when moving to the first location point is the planned posture; and, if the planned location point is located within the second region, performing path planning based on the planned location point and performing movement control on the mobile device based on the planned path.

[0012] According to a third aspect of the present disclosure, a computing device is provided, including a memory and a processor, the memory being configured to store computer instructions, and the processor being configured to invoke the computer instructions from the memory to perform the method described in the first or second aspect.

[0013] According to a fourth aspect of the present disclosure, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the method described in the first or second aspect.

[0014] Based on the path planning method provided in this disclosure, the path planning can determine whether the planned location point is located within the reachable area by performing simple calculations based on the region boundary operation parameters. Compared with related technologies, this method reduces the amount of parameter storage data, for example, to the kilobyte level, and improves the operation efficiency through simple calculations, for example, reducing the operation latency to the microsecond level. Furthermore, the method based on operation parameters can achieve certain accuracy requirements, thereby efficiently and accurately determining the reachability of the location point in path planning. This achieves a balance between "accuracy, latency, and storage," improving the efficiency and reliability of path planning.

[0015] Other features and advantages of this disclosure will become clear from the following detailed description of exemplary embodiments with reference to the accompanying drawings. Attached Figure Description

[0016] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments of the present disclosure and, together with their description, serve to explain the principles of the present disclosure.

[0017] Figure 1 This is a schematic diagram of an intelligent connected system to which the methods provided in the embodiments of this disclosure can be applied.

[0018] Figure 2 It is based on Figure 1 The illustrated embodiment provides a schematic diagram of a mobile device.

[0019] Figure 3 This is a flowchart illustrating a path planning method provided in an embodiment of this disclosure.

[0020] Figure 4A This is a schematic diagram of a third region and its boundary location point set provided in an embodiment of this disclosure.

[0021] Figure 4B This is a schematic diagram of another third region and its boundary location point set provided in an embodiment of this disclosure.

[0022] Figure 4C This is a schematic diagram of a curve fitting method provided in an embodiment of this disclosure.

[0023] Figure 4D This is a schematic diagram of another curve fitting provided in an embodiment of this disclosure.

[0024] Figure 5 This is a flowchart illustrating a path planning method provided in an embodiment of this disclosure.

[0025] Figure 6 This is a flowchart illustrating a control method provided in an embodiment of this disclosure.

[0026] Figure 7 This is a schematic diagram of the structure of a computing device provided in an embodiment of this disclosure. Detailed Implementation

[0027] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps set forth in these embodiments do not limit the scope of the present disclosure.

[0028] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit this disclosure or its application or use.

[0029] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.

[0030] In all the examples shown and discussed herein, any specific values ​​should be interpreted as merely exemplary and not as limitations. Therefore, other examples of exemplary embodiments may have different values.

[0031] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.

[0032] The elements involved in the embodiments of this disclosure may represent part or all of an element. For example, the elements involved in the embodiments of this disclosure may be at least a part of an element or all of an element.

[0033] The elements involved in the embodiments of this disclosure may be one or more, such as "a", "the", "the above", "the foregoing", etc., which are used to indicate that the corresponding element is mentioned for the first time or is mentioned again, and do not have the meaning of limiting the number.

[0034] Figure 1 This is a schematic diagram of an intelligent connected system 100 to which the methods provided in the embodiments of this disclosure can be applied. Figure 1 As shown, the intelligent connected system 100 may include: a mobile device 101, a server 102, and a user terminal 103.

[0035] In some examples, the mobile device 101 can be a vehicle, robot, ship, aircraft, or other mobile device, such as a vehicle, ship, or aircraft with driving automation features, or an autonomously moving robot (e.g., a cargo robot, a detection robot, or a sweeping robot). Driving automation features can include advanced driver assistance functions (ADAS) and automated driving functions (AWD). Automated driving, also known as intelligent driving or driverless driving, allows vehicles with driving automation features to perform some or all of the driving tasks, including environmental perception, decision-making, planning, and control execution. The levels of driving automation features can refer to the automotive intelligence classification standards established by the Society of Automotive Engineers (SAE), for example, divided into six levels from L0 to L5, where L0 is emergency assistance, L1 is partial driving assistance, L2 is combined driving assistance, L3 is conditional automated driving, L4 is highly automated driving, and L5 is fully automated driving. The above classification of driving automation feature levels is only an example, and this disclosure does not limit the classification standards and levels of driving automation features.

[0036] In some examples, server 102 can be a single server or a distributed server cluster consisting of multiple servers, and its deployment method can include local servers or cloud servers. Server 102 can communicate with mobile device 101 and / or user terminal 103 via a communication network, providing various services to mobile device 101 and / or user terminal 103. For example, the server can receive sensing data sent by mobile device 101, provide services such as high-precision maps, data analysis, and decision planning for mobile device 101, or receive query commands or control commands sent by user terminal 102, providing corresponding services to the user.

[0037] In some examples, user terminal 103 can be any form of electronic device providing services to the user, such as a personal computer, laptop, smart tablet, smartphone, smart wearable device, etc. The user can interact with the mobile device or server through the human-computer interaction terminal configured on the mobile device 101, or through user terminal 103. For example, the user can query the status and / or parameters of the mobile device, or control the mobile device to perform set tasks and / or modify configuration parameters, etc. The user terminal runs an application based on the intelligent network system to achieve interaction with the mobile device or server. This application can be a local application, a web application, or a mini-program, etc., and is not limited thereto.

[0038] In some examples, the aforementioned application running on the user's terminal can provide authentication or authorization services to the user. The user who is successfully authenticated and granted the corresponding permissions can query and / or control the mobile device within the scope of the granted permissions.

[0039] The mobile device 101, server 102, and user terminal 103 can communicate via a communication link provided by communication network 104. This communication network 104 can include one or more networks of any type, such as the Internet, Local Area Network (LAN), Wide Area Network (WAN), Virtual Private Network (VPN), Public Switched Telephone Network (PSTN), satellite communication network, Wi-Fi, 2G, 3G, 4G, 5G, 6G, NB-IoT, eMTC, infrared, Bluetooth, NFC, or a combination of these networks. The communication networks between the mobile device 101 and server 102, between the user terminal 103 and server 102, and between the user terminal 103 and mobile device 101 can be the same or different.

[0040] It should be noted that, Figure 1 The structure of the intelligent connected system 100 shown is merely illustrative. The intelligent connected system in this embodiment is not limited to the above structure and may include more or fewer devices as needed, and the devices may be combined or split. For example, the intelligent connected system may not include user terminals and / or servers; as another example, user terminals and servers may be deployed together.

[0041] Figure 2 It is based on Figure 1 The illustrated embodiment provides a schematic diagram of a mobile device 101. As shown... Figure 2As shown, the mobile device 101 may include a sensing component 1011, a computing platform 1012, an execution component 1013, etc. The sensing component 1011, the computing platform 1012, and the execution component 1013 may be connected via a bus or other means.

[0042] In some examples, the sensing component 1011 can be used to collect information about the mobile device itself or externally. The sensing component 1011 may include at least one of a visual sensing unit, radar, positioning and navigation unit, inertial measurement unit (IMU) or other sensing unit. The visual sensor unit may include one or more cameras, the radar may include at least one of lidar, millimeter-wave radar, ultrasonic radar or other radar, and the positioning and navigation unit may include at least one of a GPS system, BeiDou system or other global positioning system.

[0043] In some examples, the computing platform 1012 may include a computing-capable device for processing the sensing information collected by the sensing component 1011 to obtain control information, and sending corresponding control commands to the execution component 1013 to cause the execution component 1013 to perform corresponding actions, thereby realizing the control of the mobile device 101. For example, the computing platform 1012 can perform one or more of the following actions on the mobile device: information collection and processing, positioning, decision-making, planning, and control, thereby realizing the autonomous control of the mobile device. The computing platform 1012 may include at least one processor and at least one memory, wherein each processor can individually or jointly execute instructions stored in the memory to implement the methods provided in the embodiments of this disclosure. The processor in this disclosure embodiment may include at least one of a Central Processing Unit (CPU), Graphics Processing Unit (GPU), Neural-network Processing Unit (NPU), Tensor Processing Unit (TPU), Data Processing Unit (DPU), Digital Signal Processor (DSP), Field Programmable Gate Array (FPGA), Programmable Logic Array (PLA), System on Chip (SOC), Application Specific Integrated Circuit (ASIC), Micro Controller Unit (MCU), or other processors. The memory may be implemented using any type of volatile or non-volatile computer-readable storage medium or a combination thereof. In addition to storing instructions, the memory may also store data, such as map data, image data, sound data, text data, configuration parameters of the mobile device, location, orientation, speed, etc. The data stored in the memory can be accessed and used by the processor.

[0044] In some examples, the computing platform of a mobile device can perform computing tasks independently or communicate with a server to complete computing tasks. For example, the computing platform of a mobile device can cooperate with a server to complete corresponding computing tasks. These computing tasks can include any task performed to achieve autonomous control of the mobile device, such as information collection and processing, positioning, decision-making, planning, or control of the mobile device.

[0045] The computing platform 1012 can be located in the mobile device 101. Some or all of the computing platform 1012 can also be located in the server corresponding to the mobile device. For example, some functions of the computing platform 1012 with high real-time requirements can be located in the mobile device, while other functions with low real-time requirements can be located in the server corresponding to the mobile device.

[0046] In some examples, the execution component 1013 is used to perform corresponding actions based on the control of the computing platform 1012, enabling the mobile device 101 to complete the movement task. The execution component 1013 may include, for example, a power component, a braking component, a transmission component, a steering component, etc.

[0047] It should be noted that, Figure 2 The structure of the mobile device 101 shown is merely illustrative. The mobile device in this embodiment is not limited to the above structure and may include more or fewer components as needed. The device may also be combined or disassembled. For example, the mobile device may not include the aforementioned computing platform. Furthermore, the mobile device may also include communication components, interface components, multimedia components, input components, output components, display components, etc.

[0048] In some embodiments of this disclosure, the mobile device may be configured with a control system, which may include some or all of the aforementioned sensing components, computing platform and execution components. The control system may, alone or in cooperation with the user, realize one or more of the functions of environmental perception, path planning and control execution of the mobile device.

[0049] During path planning, the control system of a mobile device can first determine whether a target location is within the reachability region. If the target location is within the reachability region, it can be considered as a candidate location for path planning. Conversely, if the target location is not within the reachability region, it can be excluded, and other locations can be searched for for path planning. The meaning of a target location being within the reachability region includes: the mobile device can reach the target location with the expected attitude (e.g., heading angle) under its own dynamic model constraints; that is, the mobile device can move from its current position to the target location and its attitude upon reaching the target location is the expected attitude. For example, if the mobile device can move from its current position to the target location and its attitude upon reaching the target location is the expected specific attitude, then the target location can be determined to be reachable (i.e., within the reachability region). Conversely, if the mobile device cannot move to the target location or its attitude upon reaching the target location cannot reach the expected specific attitude, then the target location can be determined to be unreachable (i.e., outside the reachability region).

[0050] In related technologies, the reachability of a target location can be determined through online real-time planning. For example, when determining the reachability of a target location, a planned path can be obtained by directly combining planning methods (such as search, sampling, optimization, etc.) with the dynamic model parameters of the mobile device, collision detection, path tracking, or reachability checker in real-time simulation or solution. However, online real-time planning requires running dynamic simulation or optimizers for each decision, resulting in a large computational load and a single decision time far exceeding the microsecond level. This makes it difficult to meet the real-time requirements of high-frequency path planning and is also not conducive to batch processing.

[0051] In related technologies, the reachability of a target location can also be determined by looking up a table. For example, during the offline phase, the coordinates or state space that a mobile device might reach under different conditions can be intensively sampled, and the reachability result of each sampled point can be stored in a lookup table or a high-resolution raster. The reachability of the sampled point can then be determined online using a lookup table. However, the storage overhead of the lookup table method is significant. For instance, a lookup table or high-resolution raster can generate hundreds of megabytes or even gigabytes of data, making it difficult to embed in resource-constrained control systems. Furthermore, due to the large data volume, when adjusting the parameters or strategies of the mobile device, this method requires rebuilding the lookup table or high-resolution raster, leading to inconvenient updates and high maintenance costs.

[0052] It is evident that the methods used in related technologies to determine the reachability of target locations during path planning fail to achieve a balance between low latency and low storage. To address these issues, this disclosure provides a path planning method with a two-stage architecture (offline and online). In the offline stage, a set of computational parameters for the mobile device can be pre-generated and stored. This set may include multiple preset postures and corresponding region boundary computational parameters. During the online stage, for a given planned location (e.g., a query point or target location) and a planned posture (e.g., a query posture or target posture), the region boundary computational parameters corresponding to that posture can be obtained from the computational parameter set. Based on these parameters, it is quickly calculated whether the planned location is within the reachable domain. If the planned location is within the reachable domain, path planning can be performed based on it. Thus, this method maintains a certain level of fitting accuracy while reducing query latency to the microsecond level and storage overhead to the kilobyte level. This enables efficient and accurate determination of location reachability during path planning, achieving a balance between accuracy, latency, and storage, and improving the efficiency and reliability of path planning.

[0053] Figure 3 This is a flowchart illustrating a path planning method provided in an embodiment of this disclosure. The path planning method can be... Figure 1 The illustrated mobile device and / or server can execute the command, but it can also be executed by any computing device. For example... Figure 3 As shown, the path planning method of this embodiment may include the following steps S310 to S340.

[0054] Step S310: Determine the planned location point and planned posture for the mobile device to move from its current location into the first area.

[0055] The first area can be an area where mobile devices can park. For example, if the mobile device is a vehicle, the first area can be a parking space, which can be a marked parking space or a space parking space.

[0056] In some examples, the planned location point can be a location point within the first area, such as the center point of the first area. It can also be any location point that the mobile device needs to pass through to move from its current location into the first area.

[0057] In some examples, the planned attitude can be the desired attitude of the mobile device when it moves to the planned location point. For instance, if the planned location point is the center point of a first area, the planned attitude can be an attitude determined based on that first area, such as an attitude parallel to a specific boundary of the first area. Taking a vehicle as the mobile device, a parking space as the first area, and a heading angle as the planned attitude, if the parking space is a parallel parking space parallel to the curb, then the heading angle of the vehicle moving to the parallel parking space needs to be parallel to the curb; if the parking space is a perpendicular parking space perpendicular to the curb, then the heading angle of the vehicle moving to the perpendicular parking space needs to be perpendicular to the curb. The planned attitude can include an attitude angle, which can be called a heading angle.

[0058] It should be noted that the planned location and planned attitude can be determined based on a path planning algorithm, such as a search-based method. There can be one or more planned locations, each corresponding to its own planned attitude. The planned attitudes for different planned locations can be the same or different.

[0059] Step S320: Obtain the region boundary operation parameters corresponding to the planned attitude from the pre-generated set of operation parameters.

[0060] The set of operational parameters may include multiple preset attitudes and the corresponding region boundary operational parameters for each preset attitude.

[0061] In some examples, the set of computational parameters can be pre-generated and stored in the memory corresponding to the mobile device. For example, the set of computational parameters can be generated offline based on relevant information such as the dynamic parameters of the mobile device and stored in non-volatile memory such as the hard drive of the mobile device. Different types of mobile devices can have different sets of computational parameters, while mobile devices of the same type can have the same set of computational parameters. Optionally, different sets of computational parameters can be generated for each mobile device.

[0062] In some examples, the aforementioned set of operational parameters can be read from memory by the mobile device during initialization. For instance, the mobile device can read the set of operational parameters from non-volatile memory such as a hard disk during power-on initialization and store it in volatile memory such as RAM, so that it can be retrieved directly from RAM when needed.

[0063] In this way, by pre-generating the set of operational parameters and reading it during initialization, the amount of online computation can be reduced and the efficiency of path planning can be improved.

[0064] In some examples, the region boundary calculation parameters corresponding to each preset posture can be used to calculate the boundary of the reachable region. The location points contained in the reachable region can be reachable location points that meet preset reachability conditions. The preset reachability conditions can include the ability of the mobile device to move from its current location to the reachable location point and the posture when moving to the reachable location point being the preset posture.

[0065] For example, the region boundary operation parameters corresponding to each preset pose may include one or more of the following parameters: fitting type, fitting parameters, effective coordinate range, and fitting evaluation result. Specifically: the fitting type may include any one of the following types: quadratic polynomial fitting, cubic polynomial fitting, linear fitting, constant fitting, or Bézier curve fitting; different fitting types may correspond to different fitting parameters. For example, quadratic polynomial fitting uses the polynomial y = a*x² + b*x + c, then its corresponding fitting parameters include the quadratic coefficient a, the linear coefficient b, and the constant term c. In this quadratic polynomial, x represents the first coordinate of the position point in the first coordinate axis direction, and y represents the second coordinate of the position point in the second coordinate axis direction. The effective coordinate range may be the effective range in the first coordinate axis direction, such as the range [x_min, x_max], where x_max is greater than or equal to x_min. The fitting evaluation result may include the coefficient of determination (R²) and / or the root mean square error (RMSE), based on which the reliability of the fitted region boundary operation parameters can be determined. Optionally, different preset poses can correspond to the same or different fitting types and fitting parameters under that fitting type. It should be noted that the third region can include at least two boundaries. The region boundary operation parameters corresponding to a preset pose can include the first region boundary operation parameters describing the first boundary (such as the upper boundary) of the third region and the second region boundary operation parameters describing the second boundary (such as the lower boundary) of the third region.

[0066] In some examples, the set of calculation parameters mentioned above can be preset by the user. For example, the user can preset the region boundary calculation parameters corresponding to different preset postures based on engineering experience.

[0067] In other examples, the aforementioned set of computational parameters can be pre-generated based on the following method: determining multiple preset attitudes; for each preset attitude, determining the set of boundary position points of the third region corresponding to the preset attitude based on a preset path planning algorithm, and performing curve fitting based on the set of boundary position points to generate region boundary computational parameters corresponding to the preset attitude; wherein, the multiple preset attitudes may include attitude values ​​sampled from a preset minimum attitude value to a preset maximum attitude value according to a preset step size; the position points contained in the third region may be second position points that satisfy a second preset condition, which may include that the mobile device can move to the second position point from its current position and that its attitude when moving to the second position point is a preset attitude. The second preset condition can characterize whether the position point is reachable; a second position point that satisfies the second preset condition is a reachable position point of the mobile device, and a second position point that does not satisfy the second preset condition is an unreachable position point of the mobile device.

[0068] Taking the heading angle (also known as attitude angle) as an example, the preset minimum attitude value can be 0 degrees and the preset maximum attitude value can be 360 ​​degrees. Multiple preset attitudes can be obtained by sampling within the range of [0 degrees, 360 degrees] according to a preset step size. The preset step size can be 0.5 degrees or 1 degree, which can be set by the user according to their needs or engineering experience.

[0069] The aforementioned preset path planning algorithm can be used to scan location points within a certain area to determine whether the location point meets the aforementioned second preset condition. For example, the preset path planning algorithm can be combined with the dynamic model parameters of the mobile device for simulation or solution to determine whether the location point meets the aforementioned second preset condition, i.e., whether the location point is reachable. This preset path planning algorithm can also be called a path planner or a path planning optimizer. For example, the preset path planning algorithm may include any one or more of the following: a path planning algorithm based on a hybrid A* search algorithm, a path generation algorithm based on Bézier curves, and a path generation algorithm based on polynomial curves. Among them, the Bézier curve may include a Bézier curve based on terminal curvature (BezierEndKappa) or a Bézier curve satisfying C1 continuity (first derivative continuity) (BezierC1Continuity), and the polynomial curve may include a fifth-order polynomial curve considering curvature (QuinticPathWithKappa) or a fifth-order polynomial curve considering minimum / maximum curvature constraints (QuinticPathMinMaxKappa).

[0070] In some examples, the aforementioned preset path planning algorithms may include multiple presets, and preset poses may also include multiple presets. The set of boundary position points of the third region corresponding to the same preset pose determined by different preset path planning algorithms may be different; similarly, the set of boundary position points of the third region determined by the same preset path planning algorithm for different preset poses may also be different. Thus, the aforementioned set of operation parameters may include combinations of multiple preset poses and multiple preset path planning algorithms, as well as the region boundary operation parameters corresponding to each combination. Different region boundary operation parameters correspond to different sets of boundary position points of the third region.

[0071] For example, a device coordinate system can be constructed based on the device center point of the mobile device as the origin, the direction of movement of the mobile device as the first coordinate axis direction (e.g., the X-axis direction), and the direction perpendicular to the first coordinate axis as the second coordinate axis direction (e.g., the Y-axis direction). The coordinates of any position point in this device coordinate system can be represented as (first coordinate, second coordinate), where the first coordinate is the coordinate of the position point in the first coordinate axis direction (e.g., the X-axis coordinate), and the second coordinate is the coordinate of the position point in the second coordinate axis direction (e.g., the Y-axis coordinate). Within this device coordinate system, a scan can be performed based on position points within a certain range along the first coordinate axis direction. A preset path planning algorithm is used to determine whether each position point meets the aforementioned second preset condition (i.e., whether it is reachable), thereby obtaining the set of boundary position points of the third region.

[0072] In some examples, the set of boundary point locations of a third region corresponding to a preset pose determined by a preset path planning algorithm may include a first set of boundary points (also known as the upper boundary point set or the maximum boundary point set) and a second set of boundary points (also known as the upper boundary point set or the maximum boundary point set).

[0073] The first set of boundary points can be boundary points on the boundary curve along the positive direction of the second coordinate axis for the third region in the device coordinate system. For example, if the coordinates of the first boundary point in the first set of boundary points are (first coordinate value, second coordinate value), then the second coordinate value of the first boundary point is the maximum value among all position points with the same first coordinate value in the third region.

[0074] The second set of boundary points can be the boundary points on the boundary curve along the negative direction of the second coordinate axis for the third region in the device coordinate system. For example, if the coordinates of the second boundary point in the second set of boundary points are (first coordinate value, second coordinate value), then the second coordinate value of the second boundary point is the minimum value among all the position points with the same first coordinate value in the third region.

[0075] Figure 4A This is a schematic diagram of a third region and its set of boundary location points provided in an embodiment of this disclosure. For example... Figure 4AAs shown, the origin of the device coordinate system is the center point of the mobile device. Based on the center point of the mobile device as the origin, the first coordinate axis direction (e.g., the X-axis) represents the movement direction of the mobile device. The second coordinate axis direction (e.g., the Y-axis) is perpendicular to the first coordinate axis. The preset attitude is a first attitude (e.g., a heading angle of 0 degrees). Different preset path planning algorithms can determine different third regions. For example, if the preset path planning algorithm is the first path planning algorithm, the third region determined based on this first path planning algorithm and the first attitude is the gray area 401 shown on the left. The set of boundary point locations of this third region can include the first boundary point set 411 and the second boundary point set 421. As another example, if the preset path planning algorithm is the second path planning algorithm, the third region determined based on this second path planning algorithm and the first attitude is the gray area 402 shown on the right. The set of boundary point locations of this third region can include the first boundary point set 412 and the second boundary point set 422.

[0076] Figure 4B This is a schematic diagram of another third region and its boundary point set provided in an embodiment of this disclosure. For example... Figure 4B As shown, also in the device coordinate system, with the preset attitude being the second attitude (e.g., a heading angle of 30 degrees), different third regions can be determined based on different preset path planning algorithms. For example, if the preset path planning algorithm is the first path planning algorithm, the third region determined based on the first path planning algorithm and the second attitude is the gray region 403 shown on the left. The set of boundary point locations of this third region can include the first boundary point set 413 and the second boundary point set 423. As another example, if the preset path planning algorithm is the second path planning algorithm, the third region determined based on the second path planning algorithm and the second attitude is the gray region 404 shown on the right. The set of boundary point locations of this third region can include the first boundary point set 414 and the second boundary point set 424.

[0077] It should be noted that the preset attitude can be the attitude of the mobile device when it moves to a position point in the third region. Taking the preset attitude as the heading angle as an example, this heading angle can be the angle relative to the first coordinate axis direction (X-axis direction). For example, with the first coordinate axis direction (X-axis direction) as 0 degrees, starting from the first coordinate axis direction (X-axis direction) and gradually increasing from 0 degrees in a counterclockwise direction, the heading angle when returning to the first coordinate axis direction can be 360 ​​degrees. The heading angle corresponding to the second coordinate axis direction (Y-axis direction) is 90 degrees. Furthermore, the first coordinate axis direction can be the positive direction of the first coordinate axis, i.e. Figure 4A The X-axis points from 0 to a positive value (e.g., 10), that is, from the origin to the right. The direction of the second coordinate axis can be the positive direction of the second coordinate axis, i.e. Figure 4AThe Y-axis shown points from 0 to a positive value (e.g., 10), that is, from the origin to the top.

[0078] There are various ways to fit curves, such as polynomial fitting, parametric Bézier curve fitting, spline fitting, etc.

[0079] In some examples, the curve fitting described above may include polynomial fitting, such as quadratic polynomial fitting or cubic polynomial fitting. For the acquired set of boundary location points, the goal of the fitting is to generate a set of region boundary operation parameters that can describe the complete boundary curve. For example, the method of generating region boundary operation parameters corresponding to a preset attitude by performing curve fitting based on the set of boundary location points may include: using a quadratic polynomial y = a*x² + b*x + c for curve fitting; during the fitting process, algorithms such as the least squares criterion can be used to solve for the fitting parameters a, b, and c that minimize the overall error between the fitted curve and the set of boundary location points; and the fitting type being quadratic polynomial and the corresponding fitting parameters [a, b, c] can be used as at least some of the parameters in the region boundary operation parameters corresponding to the preset attitude.

[0080] It should be noted that during the curve fitting process, the above curve fitting process can be performed independently for the first set of boundary points (such as the upper boundary) and the second set of boundary points (such as the lower boundary), so as to obtain the first region boundary operation parameters describing the first boundary (such as the upper boundary) and the second region boundary operation parameters describing the second boundary (such as the lower boundary) respectively.

[0081] In some examples, the fitting evaluation results of the above curve fitting process can be obtained. If the fitting evaluation results meet the preset evaluation conditions, the above-mentioned region boundary operation parameters can be used as the region boundary operation parameters corresponding to the preset attitude. If the fitting evaluation results do not meet the preset evaluation conditions, the fitting algorithm can be changed. For example, the quadratic polynomial fitting can be changed to a linear fitting, a constant fitting, or a cubic polynomial fitting. The region boundary operation parameters corresponding to the preset attitude are generated based on the changed fitting algorithm. For example, the fitting evaluation results may include the coefficient of determination and / or the root mean square error. If the number of boundary points in the boundary location point set is less than a preset number threshold (e.g., 100 or 500) or the coefficient of determination is lower than a preset coefficient threshold (e.g., 0.5 or 0.6), it can be automatically downgraded to a linear fitting y=b*x+c or a constant fitting y=c.

[0082] In some examples, the above-mentioned region boundary operation parameters may also include the effective range of the fitted curve, that is, the effective range of the first coordinate x. For example, the first coordinate is the X-axis coordinate, and the effective range of the coordinate can be [x_min, x_max]. In this way, the effective coordinate interval includes the maximum effective coordinate value and the minimum effective coordinate value. In this way, in the subsequent step S330, coordinates that are out of range can be quickly eliminated based on the effective coordinate interval, thereby improving the efficiency of online operation.

[0083] Figure 4C and Figure 4D This is a schematic diagram of curve fitting provided in an embodiment of this disclosure. Wherein, Figure 4C Is Figure 4A Based on the third region and its boundary point set shown in the left figure, curve fitting is performed on the boundary point set to obtain the fitted boundary curve. Here, red points represent the first boundary point set (e.g., the upper boundary), and blue points represent the second boundary point set (e.g., the lower boundary). The red line represents the first boundary curve obtained by fitting the first boundary point set, and the blue line represents the second boundary curve obtained by fitting the second boundary point set. Similarly, Figure 4D Is Figure 4B Based on the third region and its boundary point set shown in the left figure, curve fitting is performed on the boundary point set to obtain the fitted boundary curve. Among them, the red points are the first boundary point set (such as the upper boundary), the blue points are the second boundary point set (such as the lower boundary), the red line is the first boundary curve obtained by fitting the first boundary point set, and the blue line is the second boundary curve obtained by fitting the second boundary point set.

[0084] In this way, the above method can be used to generate region boundary calculation parameters corresponding to the preset posture based on curve fitting.

[0085] In other examples, the quality of fit of the generated region boundary operation parameters can be evaluated to determine whether the parameters are usable. For example, the methods for generating region boundary operation parameters may include: Curve fitting is performed based on the set of boundary location points to generate candidate operation parameters corresponding to the preset posture; candidate boundaries are generated based on the candidate operation parameters; the proportion of the third region located outside the candidate boundaries is determined; if the proportion of the region is less than or equal to a preset proportion threshold, the candidate operation parameters are used as the region boundary operation parameters corresponding to the preset posture; or, if the proportion of the region is greater than the preset proportion threshold, the curve fitting parameters are modified, and curve fitting is performed on the set of boundary location points based on the modified curve fitting parameters to generate candidate operation parameters corresponding to the preset posture.

[0086] One method for determining the proportion of the third region located outside the candidate boundary can be: taking the number of all location points in the third region located outside the candidate boundary as a first quantity, and using the total number of all location points in the third region that are within the first quantity to obtain the region proportion, which can also be called the violation point ratio. The preset proportion threshold can be set by the user based on engineering experience; for example, the preset proportion threshold can be 1%, 5%, or 10%.

[0087] Using this method, the fitting quality of the region boundary operation parameters can be evaluated based on the aforementioned region proportions, and more accurate and reliable region boundary operation parameters can be obtained based on the evaluation results.

[0088] Step S330: Determine whether the planned location point is located within the second region based on the region boundary calculation parameters.

[0089] The boundary of the second region can be calculated based on the region boundary operation parameters. The location points contained in the second region can be first location points that meet the first preset conditions. The first preset conditions can include the ability of the mobile device to move from the current location to the first location point and the attitude when moving to the first location point being the planned attitude.

[0090] In some examples, the planned location point described above may have a first planned coordinate in the direction of a first coordinate axis and a second planned coordinate in the direction of a second coordinate axis. For example, the first coordinate axis direction may be the X-axis, and the second coordinate axis direction may be the Y-axis.

[0091] In this step, the specific methods for determining whether the planned location point is located within the second region based on the region boundary calculation parameters may include: Based on the region boundary calculation parameters and the first planning coordinates, the first boundary coordinates and the second boundary coordinates in the direction of the second coordinate axis are calculated; if the second planning coordinates of the planned location point are between the first boundary coordinates and the second boundary coordinates, it is determined whether the planned location point is located within the second region.

[0092] For example, the boundary operation parameters corresponding to the planned attitude may include a first region boundary operation parameter and a second region boundary operation parameter. The first boundary operation parameter can be used to determine the first boundary coordinates, and the second boundary operation parameter can be used to determine the second boundary coordinates. The first boundary coordinates may be greater than or equal to the second boundary coordinates.

[0093] The first and second region boundary operation parameters can respectively include the aforementioned fitting type, fitting parameters, and valid coordinate range. First, it can be confirmed whether the first planned coordinate (e.g., X-axis coordinate) of the planned location point is within the valid coordinate range. If the first planned coordinate is not within the valid coordinate range, it can be determined that the planned location point is not located within the second region (e.g., the reachable domain), meaning the planned location point is unreachable. If the first planned coordinate is within the valid coordinate range, the first and second boundary coordinates corresponding to the first planned coordinate can be generated based on the fitting type and fitting parameters. For example, if the second planned coordinate (e.g., Y-axis coordinate) of the planned location point is within the first and second boundary coordinates (i.e., greater than or equal to the second boundary coordinate and less than or equal to the first boundary coordinate), it can be determined that the planned location point is within the second region (e.g., the reachable domain), meaning the planned location point is reachable. Conversely, if the second planned coordinate (e.g., Y-axis coordinate) of the planned location point is not within the first and second boundary coordinates, then the planned location point is not located within the second region (e.g., the reachable domain), meaning the planned location point is unreachable. It should be noted that the valid coordinate range of the first and second region boundary operation parameters can be the same. If the effective range of the coordinates of the first region boundary operation parameters and the second region boundary operation parameters are different, the intersection of the two effective ranges of coordinates can be taken as the effective range of the comprehensive coordinates, and then it can be determined that the first planning coordinates are located within the effective range of the comprehensive coordinates.

[0094] In some examples, the aforementioned region boundary operation parameters can be polynomial fitting parameters, which can be used to calculate the boundary coordinates in the direction of the second coordinate axis based on any coordinate in the direction of the first input coordinate axis.

[0095] For example, the polynomial fitting parameters can be quadratic polynomial fitting, and the fitting type in the region boundary operation parameters is quadratic polynomial. The fitting parameters include quadratic coefficients, linear coefficients, and constant terms. In this way, the first boundary coordinates and the second boundary coordinates in the direction of the second coordinate axis (e.g., the Y-axis direction) can be calculated based on the first planning coordinates (e.g., the X-axis coordinates).

[0096] This method allows for the determination of whether a planned location point is located within the second region through simple parameter calculations, enabling rapid location point reachability queries and meeting the low-latency requirements of path planning. Furthermore, because the amount of data storing the region boundary calculation parameters is far less than that storing lookup tables or high-resolution rasters, the amount of parameter storage data is significantly reduced, allowing for efficient and accurate determination of location point reachability in path planning, thus improving the efficiency and reliability of path planning.

[0097] In this embodiment, the first boundary coordinates and the second boundary coordinates can be calculated directly based on the region boundary operation parameters. Alternatively, a tolerance mechanism can be provided based on the calculated coordinate values ​​to improve the robustness, security, and flexibility of location reachability determination.

[0098] For example, the method described above for calculating the first boundary coordinates and the second boundary coordinates in the direction of the second coordinate axis based on the region boundary operation parameters and the first planning coordinates may include the following steps: First, based on the region boundary calculation parameters and the first planning coordinates, the third and fourth boundary coordinates in the direction of the second coordinate axis are calculated. The third boundary coordinates can be greater than the fourth boundary coordinates.

[0099] Secondly, the third boundary coordinates can be directly used as the first boundary coordinates, and the fourth boundary coordinates can be used as the second boundary coordinates; or, the offset can be added before obtaining the first and second boundary coordinates.

[0100] For example, the sum of the third boundary coordinates and the set offset can be used as the first boundary coordinates; the difference between the fourth boundary coordinates and the set offset can be used as the second boundary coordinates. This set offset can be called a safety redundancy boundary, which implements a tolerance mechanism, reduces misjudgments caused by positioning and sensing errors, and improves the robustness of the system.

[0101] In some examples, this offset setting can be a pre-defined value.

[0102] In other examples, the set offset can be an offset determined based on the status information of the mobile device, which may include one or more of positioning accuracy, speed, or obstacle information. This allows for adaptive offset calculations, further improving the robustness of location reachability determination.

[0103] The positioning accuracy can be determined based on the inherent measurement accuracy of the positioning sensors (such as GPS, RTK, and laser SLAM) on the mobile device, or their real-time estimation accuracy in the actual environment. For example, when a mobile device uses GPS for positioning, its horizontal positioning accuracy can be within 2 meters or 5 meters; if RTK-GPS is used, its positioning accuracy can be at the centimeter level. This accuracy value can be directly used to calculate the required set offset: the lower the positioning accuracy, the larger the set offset can be to improve the robustness of the system.

[0104] This speed can be the current speed of the mobile device. The higher the speed, the larger the offset (tolerance) can be set to improve the robustness of the system.

[0105] The obstacle information can include the distance or density of obstacles perceived by the mobile device. The closer the obstacle is to the mobile device and the higher the density, the larger the offset can be set to improve the robustness of the system.

[0106] Different adjustment coefficients can be set for different status information. These adjustment coefficients can be set by the user based on engineering experience, and the set offset can be calculated based on the adjustment coefficients and different status information.

[0107] Furthermore, a maximum and minimum offset can be preset for this set offset. If the offset determined based on the mobile device's status information is greater than the maximum offset, then the set offset is the maximum offset; if the offset determined based on the mobile device's status information is less than the minimum offset, then the set offset is the minimum offset. This avoids setting the offset to be too large or too small, thereby further improving system robustness.

[0108] Step S340: If the planned location point is located in the second area, perform path planning based on the planned location point to generate a target path for the mobile device to move from its current location into the first area.

[0109] It should be noted that the location points included in the second region can be first location points that satisfy the first preset condition. The first preset condition can include the ability of the mobile device to move from its current location to the first location point and the planned posture when moving to the first location point. Thus, the fact that the planned location point is located in the second region indicates that the planned location point is reachable, that is, the ability of the mobile device to move from its current location to the planned location point and the planned posture when moving to the planned location point.

[0110] For example, the planned location point can be used as a candidate location point, and a path can be planned based on a preset path planning algorithm to generate a target path for the mobile device to move from its current location into the first area. It should be noted that the specific implementation of the path planning can be found in descriptions in related technologies, and will not be repeated in this embodiment.

[0111] In some examples, if the planned location is not within the second region, i.e., the planned location is unreachable, other planned locations can be selected for route planning, or other regions outside the first region can be selected as the target region to re-plan the route.

[0112] In other examples, the above set of operational parameters may include a combination of multiple preset attitudes and multiple preset path planning algorithms, as well as the regional boundary operational parameters corresponding to each combination. By using the above steps S320 to S330, it can be determined whether the planned location point is located in the second region based on each preset path planning algorithm (i.e., whether the planned location point is reachable), so as to select a reasonable path planning algorithm from different preset path planning algorithms.

[0113] For example, step S320 above, which obtains the region boundary operation parameters corresponding to the planned posture from the pre-generated set of operation parameters, can be region boundary operation parameters corresponding to multiple different preset path planning algorithms. In step S330 above, it can be determined whether the planned location point is located in the second region (i.e., whether the planned location point is reachable) based on the region boundary operation parameters corresponding to different preset path planning algorithms. If the preset path planning algorithms include a first path planning algorithm and a second path planning algorithm, if the region boundary operation parameters corresponding to the first path planning algorithm determine that the planned location point is located in the second region, while the region boundary operation parameters corresponding to the second path planning algorithm determine that the planned location point is not located in the second region, then the first path planning algorithm can be used as the target path planning algorithm, and path planning can be performed based on the planned location point and the target path planning algorithm.

[0114] Using the methods described in steps S310 to S340, the planned location point and planned attitude of the mobile device moving from its current position into the first area are determined; based on the planned attitude, the corresponding area boundary calculation parameters are obtained from a pre-generated set of calculation parameters; based on the area boundary calculation parameters, it is determined whether the planned location point is located within the second area; if the planned location point is located within the second area, path planning is performed based on the planned location point to generate a target path for the mobile device to move from its current position into the first area. The first area is the area where the mobile device can dock; the set of calculation parameters includes multiple preset attitudes and corresponding area boundary calculation parameters for each preset attitude; the boundary of the second area is calculated based on the area boundary calculation parameters; the location points within the second area are first location points that satisfy a first preset condition, which includes that the mobile device can move from its current position to the first location point and that its attitude when moving to the first location point is the planned attitude. In this way, it is possible to determine whether a planned location point is within the reachable area by performing simple calculations based on the region boundary parameters in path planning. Compared with related technologies, this reduces the amount of parameter storage data, for example, to the kilobyte level, and improves the computational efficiency through simple calculations, for example, reducing the computational latency to the microsecond level. Furthermore, the method based on computational parameters can achieve certain accuracy requirements, thereby enabling efficient and accurate determination of the reachability of location points in path planning. This achieves a balance between "accuracy, latency, and storage," improving the efficiency and reliability of path planning.

[0115] Figure 5 This is a flowchart illustrating a path planning method provided in an embodiment of this disclosure. The path planning method can be... Figure 1 The illustrated mobile device and / or server execute. For example... Figure 5 As shown, the path planning method of this embodiment may include the following steps S510 to S520.

[0116] Step S510: Pre-generate a set of computational parameters for the mobile device.

[0117] The set of operational parameters may include multiple preset attitudes and the corresponding region boundary operational parameters for each preset attitude.

[0118] This step S510 can be performed offline. For example, the set of operation parameters can be generated in advance and stored in the non-volatile memory of the mobile device before it leaves the factory.

[0119] For example, dense sampling can be performed based on the model and operating conditions of the mobile device to obtain the set of reachable domain boundary points under different attitude angles of the mobile device; for each attitude angle, curve fitting is performed on the upper / lower boundary point set (preferably using a quadratic polynomial), and the fitting quality is evaluated, and the fitting parameters and effective range are exported as compact parameterized data. In some examples, step S510 may include steps S511 to S514.

[0120] Step S511: Offline sampling design to obtain the set of boundary position points corresponding to the preset posture.

[0121] In this step, multiple preset postures can be determined; and for each preset posture, the set of boundary position points of the third region corresponding to the preset posture is determined based on a preset path planning algorithm.

[0122] For example, offline sampling design can be performed from dimensions such as scene, pose resolution, and boundary sampling to obtain the set of boundary position points corresponding to each preset pose.

[0123] In terms of scenarios, taking a vehicle as the mobile device and a parking scenario (i.e., the first area is a parking space) as an example, it can cover target application scenarios such as vertical parking spaces, parallel parking spaces, and angled parking spaces, including different starting positions and postures of vehicles.

[0124] In terms of attitude resolution, taking the attitude as the heading angle (also known as the attitude angle) as an example, multiple preset attitudes can be obtained by sampling between the preset minimum attitude value (e.g., 0 degrees) and the preset maximum attitude value (e.g., 360 degrees) with a preset step size. The preset step size can be 0.5 degrees or 1 degree, which can be set by the user according to their needs or engineering experience.

[0125] In the boundary sampling dimension, for each preset posture, a large number of position points can be scanned within the possible x-axis range in the device coordinate system. A preset path planning algorithm (such as a hybrid A* search algorithm, Bézier curves, a fifth-order polynomial generator, etc.) is used to determine whether each position point is reachable, thereby obtaining the set of boundary position points of the third region, such as the upper boundary point set (y is the positive limit) and the lower boundary point set (y is the negative limit). The position points included in this third region can be second position points that satisfy a second preset condition. The second preset condition can include that the mobile device can move from the current position to the second position point and that the posture when moving to the second position point is a preset posture.

[0126] Step S512: Perform curve fitting based on the set of boundary location points to generate region boundary operation parameters corresponding to the preset posture.

[0127] For example, a quadratic polynomial y = a*x² + b*x + c can be used for fitting (preferably); the fitting process can be summarized by solving for parameters a, b, and c using the least squares criterion.

[0128] Furthermore, the coefficient of determination R² and RMSE can be evaluated. If there are insufficient data points or R² is below a threshold (e.g., 0.5), it is automatically downgraded to a first-order linear fit y=b*x+c or a constant fit y=c.

[0129] Furthermore, the effective x-interval [x_min, x_max] of each fitted curve can be recorded as the effective range of coordinates for the region boundary operation parameters, which can be used to quickly eliminate out-of-range queries online.

[0130] Step S513: Evaluate the fitting quality of the region boundary operation parameters.

[0131] For example, the fitting residuals can be calculated and "boundary violation points" can be counted: for the upper boundary, only the points located above the upper boundary are counted, such as the number of points where the second coordinate value y_actual of the actual point is greater than the upper boundary coordinate value (y_fitted1); for the lower boundary, only the number of points where the second coordinate value y_actual of the actual point is less than the lower boundary coordinate value (y_fitted2) is counted. This statistic better reflects whether the fitting has resulted in a dangerous underestimation. The violation point ratio is recorded according to a preset posture as a trigger condition for whether resampling or the use of a more complex model is needed.

[0132] In this way, candidate boundaries can be generated for candidate operation parameters generated by curve fitting based on the set of boundary position points; the proportion of the third region located outside the candidate boundaries can be determined; if the proportion of the region is less than or equal to a preset proportion threshold, the candidate operation parameters can be used as the region boundary operation parameters corresponding to the preset attitude; or, if the proportion of the region is greater than the preset proportion threshold, the curve fitting parameters can be modified, and the set of boundary position points can be curve fitted based on the modified curve fitting parameters to generate candidate operation parameters corresponding to the preset attitude.

[0133] Step S514: Export and compactly store the parameters for the region boundary operation.

[0134] For example, the region boundary operation parameters corresponding to each preset pose may include one or more of the following parameters: fitting type, fitting parameters (e.g., a, b, c above), effective coordinate range (e.g., x_min, x_max above), fitting evaluation results (e.g., R², RMSE above).

[0135] The parameters for region boundary operations can be exported and stored in the memory of a removable device.

[0136] In some examples, the storage format for region boundary operation parameters in a mobile device can be JSON, a binary table, or directly embedded in a C++ header file (static constant table). The typical total storage size for these region boundary operation parameters is in the kilobyte range (e.g., the storage size for 360 preset poses × 2 boundaries × several parameters).

[0137] This reduces the amount of data to be stored, and the reduction in data volume also facilitates parameter updates. Parameter updates can be achieved simply by refitting the corresponding data offline and then sending the corresponding parameters back to the vehicle.

[0138] Step S520: During the path planning process, the planned location point and planned attitude are determined, and the reachability of the planned location point is determined based on the set of calculation parameters.

[0139] The reachability of the planned location point indicates that the mobile device can move from its current location to the planned location point, and that its posture when moving to the planned location point is the planned posture. For example, the reachability of the planned location point indicates that the planned location point is located within a second region. The boundary of the second region can be calculated based on region boundary operation parameters. The location points included in the second region can be first location points that satisfy a first preset condition. The first preset condition can include that the mobile device can move from its current location to the first location point, and that its posture when moving to the first location point is the planned posture.

[0140] In some examples, the aforementioned set of computational parameters can be loaded during the initialization of the mobile device (e.g., when the mobile device's control system starts). During path planning, given a planned location point and a planned attitude (e.g., a planned heading angle), the reachability of the planned location point can be quickly determined through simple calculations (e.g., hash lookup, polynomial evaluation, tolerance judgment, etc.). Furthermore, if there are multiple planned location points, parameter caching and vectorized computation can be used to optimize computational efficiency.

[0141] This approach maintains high fitting accuracy while reducing query latency to the microsecond level and storage overhead to the kilobyte level.

[0142] The inputs for this step can include the planned location point and the planned attitude, and can also include setting an offset (as a tolerance).

[0143] In some examples, step S520 may include steps S521 to S524.

[0144] Step S521: Obtain the region boundary calculation parameters corresponding to the planned posture.

[0145] For example, the region boundary operation parameters corresponding to the planned posture can be obtained from the set of operation parameters based on hash lookup or other lookup algorithms.

[0146] Step S522: If the first planned coordinate of the planned location point in the first coordinate axis direction is outside the effective range of coordinates [x_min, x_max], then it can be directly determined that the planned location point is unreachable.

[0147] Step S523: If the first planned coordinate of the planned location point is within the effective coordinate range [x_min, x_max], then the first boundary coordinate (e.g., upper boundary coordinate) and the second boundary coordinate (e.g., lower boundary coordinate) in the direction of the second coordinate axis can be calculated based on the region boundary operation parameters and the first planned coordinate.

[0148] Step S524: Perform tolerance judgment to determine whether the planned location point is reachable.

[0149] For example, a tolerance judgment can be made based on a set offset. The sum of the first boundary coordinates and the set offset is used as the new first boundary coordinates; the difference between the second boundary coordinates and the set offset is used as the new second boundary coordinates. If the second planned coordinates of the planned location point in the second coordinate axis direction are greater than or equal to the new second boundary coordinates and less than or equal to the new first boundary coordinates, then the planned location point can be determined to be reachable; otherwise, the planned location point can be determined to be unreachable.

[0150] The set offset used in this tolerance determination can employ an adaptive mechanism. For example, the set offset can be determined based on the status information of the mobile device, which may include one or more of the following: positioning accuracy, speed, or obstacle information. This allows for adaptive offset determination, further improving the robustness of the location reachability assessment. The obstacle information can be the environmental dynamics of the mobile device, such as obstacle density.

[0151] In some examples, the above calculations can be completed through multiple multiplication and addition operations, further improving efficiency and reducing computational latency, for example, reducing the computational latency to the microsecond level.

[0152] In some examples, efficiency can be further improved for batch planning location point queries through performance optimization. For instance, for multiple planning location points with the same planning pose, parameter caching and vectorized computation can be used to optimize computational efficiency. For example, the region boundary calculation parameters corresponding to the planning pose can be cached in local variables to avoid repeated table lookups, and loop vectorization (e.g., Single Instruction Stream Multiple Data Stream, SIMD) or multi-threaded parallel computation can be used to further improve computational efficiency. Optionally, a batch interface can also be provided to reduce function call and table lookup overhead.

[0153] The method employed in steps S510 to S520 balances efficiency and storage requirements, improving online efficiency while reducing the amount of stored data. Furthermore, when the computational parameter set of the mobile device needs updating, it only requires re-fitting the corresponding data offline. Therefore, this reduces processing time, significantly improves the success rate and real-time performance of online planning, and, when applied to parking scenarios, enhances the ability for dynamic replanning and improves parking pose accuracy.

[0154] Figure 6 This is a flowchart illustrating a control method provided in an embodiment of this disclosure. The control method can be... Figure 1 The illustrated mobile device and / or server can execute the command, but it can also be executed by any computing device. For example... Figure 6 As shown, the control method of this embodiment may include the following steps S610 to S640.

[0155] Step S610: Determine the planning location points and planning attitude for path planning of the mobile device.

[0156] For example, mobile devices can generate planned location points and planned poses based on arbitrary path planning algorithms.

[0157] Step S620: Obtain the region boundary calculation parameters corresponding to the planned attitude from the pre-generated parameter set according to the planned attitude.

[0158] Step S630: Determine whether the planned location point is located within the second region based on the region boundary calculation parameters.

[0159] The boundary of the second region is calculated based on the region boundary operation parameters. The location points contained in the second region are first location points that meet the first preset conditions. The first preset conditions include that the mobile device can move to the first location point and that the attitude when moving to the first location point is the planned attitude.

[0160] Step S640: If the planned location point is located in the second area, perform path planning based on the planned location point, and perform motion control on the mobile device based on the planned path.

[0161] It should be noted that the specific implementation methods of steps S620 to S640 above can be found in [reference needed]. Figure 3 The descriptions in the illustrated embodiments will not be repeated in this embodiment.

[0162] Using this embodiment, in path planning, it is possible to determine whether a planned location point is within the reachable area by performing simple calculations based on the region boundary operation parameters. Compared with related technologies, this reduces the amount of parameter storage data, for example, to the kilobyte level, and improves the operation efficiency through simple calculations, for example, reducing the operation latency to the microsecond level. Furthermore, the operation parameter-based approach can achieve certain accuracy requirements, thereby enabling efficient and accurate determination of the reachability of location points in path planning. This achieves a balance between "accuracy, latency, and storage," improving the efficiency and reliability of path planning.

[0163] Figure 7 This is a schematic diagram of the structure of a computing device provided in an embodiment of this disclosure. Figure 7 As shown, the computing device 1000 may include a memory 1010 and a processor 1020. The memory 1010 may be used to store computer instructions, and the processor 1020 may be used to retrieve computer instructions from the memory 1010 to execute all or part of the steps of any of the methods in the foregoing embodiments of this disclosure. The processor may be one or more, and the one or more processors may execute instructions individually or jointly. Similarly, the memory may be one or more, and the one or more memories may store the aforementioned computer instructions individually or jointly.

[0164] In some examples, the computing device can be Figure 1 The computing device can be a server and / or a mobile device. In other examples, the computing device can also be any electronic device, such as a controller for a mobile device.

[0165] This disclosure also provides a mobile device that may include a memory and a processor. The memory may be used to store computer instructions, and the processor may be used to retrieve the computer instructions from the memory to perform all or part of the steps of any of the methods in the foregoing embodiments of this disclosure. The processor may be one or more processors, which may execute the instructions individually or jointly. Similarly, the memory may be one or more memories, which may store the aforementioned computer instructions individually or jointly.

[0166] The mobile device provided in this embodiment can be... Figure 1 or Figure 2 The mobile device shown is, in some examples, a vehicle that can be an electric vehicle, a hybrid vehicle, a fuel cell vehicle, or another type of vehicle. For example, the vehicle could be one equipped with autonomous driving features.

[0167] This disclosure also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements any of the methods in the foregoing embodiments of this disclosure. Optionally, the computer-readable storage medium may be a non-transitory storage medium, but is not limited thereto, and may also be a temporary storage medium.

[0168] This disclosure also provides a chip that may include a processing unit, which can be used to execute all or part of the steps of any of the methods in the foregoing embodiments of this disclosure. The chip may be in the form of an Application-Specific Integrated Circuit (ASIC), a System-on-Chip (SOC), a Field-Programmable Gate Array (FPGA), etc., and this embodiment is not limited to this. Optionally, the chip may further include a storage unit, which can be used to store computer instructions. The processing unit can be used to retrieve the computer instructions from the storage unit to execute all or part of the steps of any of the methods in the foregoing embodiments of this disclosure.

[0169] This disclosure also provides a computer program product that may include a computer program that, when executed by a processor, can implement any of the methods described in the foregoing embodiments of this disclosure.

[0170] This disclosure may be a system, method, and / or computer program product. A computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for causing a processor to implement any of the methods in the foregoing embodiments of this disclosure.

[0171] Computer-readable storage media can be tangible devices capable of holding and storing instructions for use by an instruction execution device. Computer-readable storage media may include, for example, electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), static random access memory (SRAM), compact disc-read-only memory (CD-ROM), digital versatile disc (DVD), memory sticks, floppy disks, mechanical encoding devices, such as punch cards or recessed protrusions storing instructions thereon, and any combination thereof. The computer-readable storage medium used herein is not to be interpreted as a transient signal itself, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.

[0172] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.

[0173] Computer program instructions used to perform the operations of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​(e.g., Smalltalk, C++, etc.) and conventional procedural programming languages ​​(e.g., the "C" language or similar programming languages). The computer-readable program instructions may execute entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network (e.g., a local area network or a wide area network), or it may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays, or programmable logic arrays, may execute computer-readable program instructions to implement various aspects of the embodiments of this disclosure by utilizing state information from the computer-readable program instructions.

[0174] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0175] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0176] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions that execute on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0177] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions. It should be noted that implementation in hardware, implementation in software, and implementation using a combination of software and hardware are all equivalent.

[0178] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, and are not limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or improvement of the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein. The scope of this disclosure is defined by the appended claims.

Claims

1. A path planning method, characterized in that, The method includes: Determine the planned location and planned posture for the mobile device to move from its current location into the first area; wherein, the first area is the area where the mobile device can dock; According to the planned posture, the region boundary operation parameters corresponding to the planned posture are obtained from the pre-generated set of operation parameters; wherein, the set of operation parameters includes multiple preset postures and the region boundary operation parameters corresponding to each preset posture; The planned location point is determined to be located within the second region based on the region boundary calculation parameters; wherein the boundary of the second region is calculated based on the region boundary calculation parameters, and the location point contained in the second region is a first location point that satisfies a first preset condition, the first preset condition including that the mobile device can move from the current position to the first location point and the posture when moving to the first location point is the planned posture. If the planned location point is located within the second area, path planning is performed based on the planned location point to generate a target path for the mobile device to move from its current location into the first area.

2. The method according to claim 1, characterized in that, The planned location point has a first planned coordinate along a first coordinate axis and a second planned coordinate along a second coordinate axis; determining whether the planned location point is located within the second region based on the region boundary calculation parameters includes: Based on the region boundary calculation parameters and the first planning coordinates, the first boundary coordinates and the second boundary coordinates in the direction of the second coordinate axis are calculated. If the second planned coordinates of the planned location point are located between the first boundary coordinates and the second boundary coordinates, it is determined whether the planned location point is located within the second region.

3. The method according to claim 2, characterized in that, Based on the region boundary calculation parameters and the first planning coordinates, the first boundary coordinates and the second boundary coordinates in the direction of the second coordinate axis are calculated, including: Based on the region boundary calculation parameters and the first planning coordinates, the third boundary coordinates and the fourth boundary coordinates in the direction of the second coordinate axis are calculated, wherein the third boundary coordinates are greater than the fourth boundary coordinates. The sum of the third boundary coordinates and the set offset is used as the first boundary coordinates; The difference between the fourth boundary coordinates and the set offset is used as the second boundary coordinates; Wherein, the set offset is a preset value; or, the set offset is an offset determined based on the status information of the mobile device, wherein the status information includes one or more of positioning accuracy, speed, or obstacle information.

4. The method according to claim 2, characterized in that, The region boundary operation parameters are polynomial fitting parameters, which are used to calculate the boundary coordinates in the direction of the second coordinate axis based on any coordinate in the direction of the first coordinate axis.

5. The method according to claim 1, characterized in that, The set of operational parameters is generated based on the following method: Determine multiple preset postures; wherein, the multiple preset postures include posture values ​​sampled from a preset minimum posture value to a preset maximum posture value according to a preset step size; For each preset posture, a set of boundary position points of the third region corresponding to the preset posture is determined based on a preset path planning algorithm, and curve fitting is performed based on the set of boundary position points to generate region boundary operation parameters corresponding to the preset posture; wherein, the position points included in the third region are second position points that satisfy a second preset condition, the second preset condition including that the mobile device can move from the current position to the second position point and the posture when moving to the second position point is the preset posture.

6. The method according to claim 5, characterized in that, The step of performing curve fitting based on the set of boundary location points to generate region boundary calculation parameters corresponding to the preset posture includes: The process involves curve fitting based on the set of boundary position points to generate candidate computational parameters corresponding to the preset posture. Candidate boundaries are generated based on the candidate operation parameters; Determine the proportion of the third region located outside the candidate boundary; If the proportion of the region is less than or equal to a preset proportion threshold, the candidate operation parameters are used as the region boundary operation parameters corresponding to the preset posture; or, if the proportion of the region is greater than the preset proportion threshold, the curve fitting parameters are modified, and the boundary position point set is curve fitted based on the modified curve fitting parameters to generate candidate operation parameters corresponding to the preset posture.

7. The method according to any one of claims 1 to 6, characterized in that, The set of operational parameters is read from the memory by the mobile device during initialization.

8. A control method, characterized in that, The method includes: Determine the planning location points and planning orientation for path planning of mobile devices; Based on the planned posture, the region boundary calculation parameters corresponding to the planned posture are obtained from the pre-generated parameter set; The planned location point is determined to be located within the second region based on the region boundary calculation parameters; wherein the boundary of the second region is calculated based on the region boundary calculation parameters, and the location point contained in the second region is a first location point that satisfies a first preset condition, the first preset condition including that the mobile device can move to the first location point and the posture when moving to the first location point is the planned posture. If the planned location point is located within the second area, a path is planned based on the planned location point, and the mobile device is controlled to move based on the planned path.

9. A computing device, characterized in that, The method includes a memory and a processor, the memory being used to store computer instructions, and the processor being used to retrieve the computer instructions from the memory to perform the method of any one of claims 1 to 8.

10. A computer-readable storage medium, characterized in that, It stores a computer program that, when executed by a processor, implements the method of any one of claims 1 to 8.