A method and apparatus for determining a robot home position

CN123029929APending Publication Date: 2026-11-03BEIJING CHUANGRUI HONGKE TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611204843.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-10
Publication Date
2026-11-03

AI Technical Summary

Technical Problem

In existing technologies, the methods for determining robot dwell points do not take into account the actual distance between the user and the robot, resulting in instruction delays and failing to effectively prevent entry into the user's privacy area and interference with the user, thus affecting the user experience.

Method used

By acquiring information about the space where the robot and the user are located, a semantic map is constructed, candidate dwelling points are generated based on various constraints, line-of-sight quality is evaluated, and target dwelling points are dynamically selected to ensure safety and without infringing on privacy areas.

Benefits of technology

It improves the rationality and effectiveness of robot deployment locations, enhances user experience, solves distance and privacy issues, and enables more efficient deployment point selection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123029929A_ABST
    Figure CN123029929A_ABST
Patent Text Reader

Abstract

The application discloses a kind of method and device for determining the residence position of robot, it is related to intelligent robot technical field.The specific embodiment of the application includes: the information of robot and the space where user is located can be acquired, according to the constraint condition corresponding to space information, generate multiple candidate residence points for robot;Obtain the current position of user, detect the obstacle information in space environment, evaluate the line-of-sight quality of robot at each candidate residence point relative to the current position of user;According to the line-of-sight quality, select target residence point for robot from multiple candidate residence points, the architecture of the application embodiment is screened by multiple layers, first, determine the candidate residence point of robot according to multiple constraint conditions, which is safe and does not involve user privacy area, then real-time acquisition user position and obstacle condition, further determine the final residence point for robot, improve the rationality and effectiveness of robot residence site, greatly improve user experience.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of intelligent robot technology, and in particular to a method and apparatus for determining the stationary position of a robot. Background Technology

[0002] With the widespread application of home intelligent robots (such as home service robots and home security inspection robots), determining the standby points for robots is directly related to customer experience.

[0003] Currently, the robot's resting point is mainly fixed at the charging location or a preset location. It moves after being summoned by the user via button or voice. This method does not take into account the actual distance between the user and the robot. When the actual distance is far, it may cause problems such as command delay. Furthermore, the existing method of determining the resting point does not take into account the problem of preventing the robot from entering the user's preset privacy area or interfering with the user, which affects the user experience. Summary of the Invention

[0004] In view of this, embodiments of the present invention provide a method and apparatus for determining the dwelling position of a robot. This method and apparatus can acquire information about the space in which the robot and the user are located, generate multiple candidate dwelling points for the robot based on constraints corresponding to the spatial information, acquire the user's current position, detect obstacle information in the spatial environment, evaluate the line-of-sight quality of the robot at each candidate dwelling point relative to the user's current position based on the obstacle information, and select a target dwelling point for the robot from the multiple candidate dwelling points based on the line-of-sight quality. Through a multi-layered screening architecture, embodiments of the present invention first determine safe candidate dwelling points for the robot that do not involve user privacy areas based on multiple constraints, and then acquire the user's position and obstacle conditions in real time to further determine the final dwelling point for the robot. This improves the rationality and effectiveness of the robot's dwelling location and greatly enhances the user experience.

[0005] To achieve the above objectives, according to one aspect of the present invention, a method for determining a robot's dwelling position is provided, comprising: acquiring information about the space in which the robot and a user are located; generating a plurality of candidate dwelling points for the robot based on one or more constraints corresponding to the space information; acquiring the user's current position; detecting obstacle information in the spatial environment while controlling the robot to move from the current position to any candidate dwelling point; evaluating the line-of-sight quality of the robot at each candidate dwelling point relative to the user's current position based on the obstacle information; selecting a target dwelling point for the robot from the plurality of candidate dwelling points based on the line-of-sight quality; and controlling the robot to move to the target dwelling point.

[0006] Optionally, before acquiring information about the space where the robot and the user are located, the method further includes: constructing a semantic map of the space where the robot and the user are located, and using the semantic map to indicate the layout, terrain, and item tags in one or more areas of the space; acquiring information about the space where the robot and the user are located further includes: identifying one or more user rest spaces in the space based on the item tags included in the semantic map, filtering out preset privacy spaces from the user rest spaces to obtain target rest spaces, and determining the initial candidate dwelling points covered by the target rest spaces.

[0007] Optionally, generating multiple candidate resting points for the robot based on one or more constraints corresponding to the information of the space includes: generating multiple candidate resting points for the robot from initial candidate resting points based on one or more constraints corresponding to the target resting space; wherein the constraints include one or more of the robot's motion capability constraints, motion range constraints, and user line-of-sight constraints.

[0008] Optionally, when the constraint is a motion capability constraint, generating multiple candidate resting points for the robot from the initial candidate resting points based on one or more constraints corresponding to the spatial information includes: for the target resting space, selecting multiple first candidate resting points from the multiple initial candidate resting points based on the following one or more motion capability constraints: constraint 1: determining the motion distance constraint based on the sensing range of the robot's sensors; constraint 2: determining the motion safety constraint based on the detected robot's fall-prone areas; constraint 3: determining the motion space constraint based on the robot's minimum turning radius and emergency obstacle avoidance buffer space.

[0009] Optionally, when the constraint is a motion range constraint, generating multiple candidate resting points for the robot from the initial candidate resting points based on one or more constraints corresponding to the spatial information includes: determining the item layout of the target resting space based on the semantic map; constructing a passageway heatmap of the target resting space based on the item layout; determining one or more target passageways for the user based on the passageway heatmap; and using the range outside the range of one or more target passageways as a motion range constraint to select multiple second candidate resting points from the multiple initial candidate resting points.

[0010] Optionally, when the constraint is a user line-of-sight constraint, generating multiple candidate resting points for the robot from the initial candidate resting points based on one or more constraints corresponding to the spatial information includes: determining the user's line-of-sight angle and line-of-sight range in the target resting space; determining a non-direct line-of-sight constraint for the robot based on the line-of-sight angle and line-of-sight range; and selecting multiple third candidate resting points from the multiple initial candidate resting points based on the user line-of-sight constraint.

[0011] Optionally, evaluating the robot's line-of-sight quality relative to the user's current position at each candidate stopping point based on the obstacle information includes: determining, based on the obstacle information, the range of the obstruction of the user's line of sight by the obstacle at a certain candidate stopping point, the distance from the obstacle to the candidate stopping point, and the timeliness of the obstruction; calculating the line-of-sight obstruction coefficient of the candidate stopping point based on the obstruction range, the distance, and the timeliness of the obstruction; and evaluating the robot's line-of-sight quality relative to the user's current position at each candidate stopping point based on the line-of-sight obstruction coefficient.

[0012] Optionally, if it is determined that the line-of-sight quality of the candidate dwelling point does not meet the line-of-sight quality requirements, the robot is controlled to dynamically switch to other candidate dwelling points.

[0013] Optionally, based on the line-of-sight quality, a target resting point is selected for the robot from a plurality of candidate resting points, including: for any candidate resting point, obtaining the Euclidean distance from the candidate resting point to the user's current position, and obtaining the line-of-sight orientation angle of the resting point relative to the target resting space; determining the line-of-sight quality score of the candidate resting point using the weighted calculation result of the Euclidean distance, the line-of-sight occlusion coefficient, and the line-of-sight orientation angle; and determining the candidate resting point with the higher line-of-sight quality score as the target resting point of the robot.

[0014] To achieve the above objectives, according to a second aspect of the present invention, an apparatus for determining the dwelling position of a robot is provided, comprising: a module for determining an initial dwelling point, a module for acquiring dynamic information, and a module for determining a target dwelling point; wherein, The module for determining the initial dwelling point is used to acquire information about the space where the robot and the user are located, and generate multiple candidate dwelling points for the robot based on one or more constraints corresponding to the space information. The dynamic information acquisition module is used to acquire the user's current position, detect obstacle information in the spatial environment while controlling the robot to move from the current position to any candidate stopping point, and evaluate the line of sight quality of the robot relative to the user's current position at each candidate stopping point based on the obstacle information. The target dwelling point determination module is used to select a target dwelling point for the robot from multiple candidate dwelling points based on the line of sight quality, and control the robot to move to the target dwelling point.

[0015] Optionally, the apparatus for determining the robot's dwelling location, before acquiring information about the space where the robot and the user are located, further includes: constructing a semantic map of the space where the robot and the user are located, and using the semantic map to indicate the layout, terrain, and item tags in one or more areas of the space; the acquisition of information about the space where the robot and the user are located further includes: identifying one or more user rest spaces contained in the space based on the item tags included in the semantic map, filtering out preset privacy spaces from the user rest spaces to obtain target rest spaces, and determining initial candidate dwelling points covered by the target rest spaces.

[0016] Optionally, the device for determining the robot's dwelling position is used to generate multiple candidate dwelling points for the robot based on one or more constraints corresponding to the information of the space, including: generating multiple candidate dwelling points for the robot from initial candidate dwelling points based on one or more constraints corresponding to the target resting space; wherein the constraints include one or more of the robot's motion capability constraints, motion range constraints, and user line-of-sight constraints.

[0017] Optionally, the device for determining the robot's dwelling position is used to generate multiple candidate dwelling points for the robot from initial candidate dwelling points when the constraint is a motion capability constraint. This includes generating multiple candidate dwelling points for the robot from initial candidate dwelling points based on one or more constraints corresponding to the spatial information, for the target resting space, selecting multiple first candidate dwelling points from multiple initial candidate dwelling points based on one or more motion capability constraints: constraint 1: determining a motion distance constraint based on the sensing range of the robot's sensors; constraint 2: determining a motion safety constraint based on the detected robot's fall-prone area; constraint 3: determining a motion space constraint based on the robot's minimum turning radius and emergency obstacle avoidance buffer space.

[0018] Optionally, the device for determining the robot's dwelling position is configured to, for cases where the constraint is a movement range constraint, generate multiple candidate dwelling points for the robot from initial candidate dwelling points based on one or more constraints corresponding to the spatial information, including: determining the item layout of the target rest space based on the semantic map; constructing a passageway heatmap of the target rest space based on the item layout; determining one or more target passageways for the user based on the passageway heatmap; and using the range outside the range of one or more target passageways as a movement range constraint to select multiple second candidate dwelling points from multiple initial candidate dwelling points.

[0019] Optionally, the device for determining the robot's dwelling position is configured to, for cases where the constraint is a user's line-of-sight constraint, generate multiple candidate dwelling points for the robot from initial candidate dwelling points based on one or more constraints corresponding to the spatial information, including: determining the user's line-of-sight angle and line-of-sight range in the target rest space; determining a user's line-of-sight constraint for the robot that is not directly in sight of the user based on the line-of-sight angle and the line-of-sight range; and selecting multiple third candidate dwelling points from multiple initial candidate dwelling points based on the user's line-of-sight constraint.

[0020] Optionally, the device for determining the robot's dwelling position is configured to evaluate the robot's line-of-sight quality relative to the user's current position at each candidate dwelling point based on the obstacle information, including: determining, based on the obstacle information, the range of the obstruction of the user's line of sight by the obstacle at a certain candidate dwelling point, the distance from the obstacle to the candidate dwelling point, and the timeliness of the obstruction; calculating the line-of-sight obstruction coefficient of the candidate dwelling point based on the obstruction range, the distance, and the timeliness of the obstruction; and evaluating the robot's line-of-sight quality relative to the user's current position at each candidate dwelling point based on the line-of-sight obstruction coefficient.

[0021] Optionally, the device for determining the robot's dwelling position is used to control the robot to dynamically switch to other candidate dwelling points when it is determined that the line-of-sight quality of the candidate dwelling point does not meet the line-of-sight quality requirements.

[0022] Optionally, the device for determining the robot's dwelling position is used to select a target dwelling point for the robot from a plurality of candidate dwelling points based on the line-of-sight quality, including: for any candidate dwelling point, obtaining the Euclidean distance from the candidate dwelling point to the user's current position, and obtaining the line-of-sight orientation angle of the dwelling point relative to the target rest space; determining the line-of-sight quality score of the candidate dwelling point using a weighted calculation result of the Euclidean distance, the line-of-sight occlusion coefficient, and the line-of-sight orientation angle; and determining the candidate dwelling point with the higher line-of-sight quality score as the target dwelling point of the robot.

[0023] To achieve the above objectives, according to a third aspect of the present invention, an electronic device for determining the dwell position of a robot is provided, characterized in that it includes: one or more processors; and a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors perform any of the methods described above for determining the dwell position of a robot.

[0024] To achieve the above objectives, according to a fourth aspect of the present invention, a computer-readable medium is provided having a computer program stored thereon, characterized in that, when the program is executed by a processor, it implements any of the methods described above for determining the robot's dwell position.

[0025] To achieve the above objectives, according to a fifth aspect of the present invention, a computer program product is provided, comprising a computer program, characterized in that, when executed by a processor, the computer program implements any of the methods described above for determining the robot's dwell position.

[0026] One embodiment of the above invention has the following advantages or beneficial effects: it can acquire information about the space where the robot and the user are located, and generate multiple candidate dwelling points for the robot based on the constraints corresponding to the space information; it acquires the user's current position and detects obstacle information in the spatial environment; it evaluates the line-of-sight quality of the robot at each candidate dwelling point relative to the user's current position based on the obstacle information; and it selects a target dwelling point for the robot from multiple candidate dwelling points based on the line-of-sight quality. This embodiment of the invention, through a multi-layered screening architecture, first determines safe candidate dwelling points for the robot that do not involve user privacy areas based on multiple constraints, and then acquires the user's position and obstacle situation in real time to further determine the final dwelling point for the robot, thereby improving the rationality and effectiveness of the robot's dwelling location and greatly enhancing the user experience.

[0027] The further effects of the aforementioned unconventional alternative methods will be explained below in conjunction with specific implementation methods. Attached Figure Description

[0028] The accompanying drawings are provided to better understand the invention and are not intended to unduly limit the scope of the invention. Wherein: Figure 1 This is a flowchart illustrating a method for determining the dwell position of a robot according to an embodiment of the present invention; Figure 2 is a schematic diagram of a semantic map provided in an embodiment of the present invention; Figure 3 This is a schematic diagram of a process for determining the robot's dwell position according to an embodiment of the present invention; Figure 4This is a schematic diagram of a device for determining the stationary position of a robot according to an embodiment of the present invention; Figure 5 This is an exemplary system architecture diagram in which embodiments of the present invention can be applied; Figure 6 This is a schematic diagram of the structure of a computer system suitable for implementing electronic devices or servers of the present invention. Detailed Implementation

[0029] The following description, in conjunction with the accompanying drawings, illustrates exemplary embodiments of the present invention, including various details to aid understanding. These details should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the invention. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.

[0030] It should be noted that the collection, use, storage, sharing and transfer of user personal information involved in the technical solution of the present invention all comply with the provisions of relevant laws and regulations, and require notification to users and obtaining their consent or authorization. When applicable, user personal information is subjected to de-identification and / or anonymization and / or encryption technical processing.

[0031] In this embodiment of the invention, the terms "dwelling location" and "dwelling point" have the same meaning, both representing the physical location where the robot performs user monitoring and stands by when it is not moving.

[0032] like Figure 1 As shown, this embodiment of the invention provides a method for determining the stationary position of a robot, which may include the following steps: Step S101: Obtain information about the space where the robot and the user are located, and generate multiple candidate dwelling points for the robot based on one or more constraints corresponding to the space information.

[0033] Step S102: Obtain the user's current position; while controlling the robot to move from the current position to any candidate stopping point, detect obstacle information in the spatial environment; based on the obstacle information, evaluate the quality of the robot's line of sight relative to the user's current position at each candidate stopping point.

[0034] Step S103: Based on the line of sight quality, select a target dwelling point for the robot from multiple candidate dwelling points, and control the robot to move to the target dwelling point.

[0035] Specifically, in this embodiment of the invention, the robot's dwell position is determined in two stages. In the first stage, multiple candidate dwell points are identified using offline data. In the second stage, the optimal dwell point is determined in real time from the candidate dwell points based on the user's dynamic location. It is understood that in this embodiment of the invention, the dwell point represents the physical location (i.e., the duty point) where the robot monitors the user and stands by when it is not moving.

[0036] The following sections describe the specific methods for identifying multiple candidate dwell points and determining the optimal dwell point (target dwell point) from among them: For methods that identify multiple candidate dwelling points: First, determine the space where the robot and user are located, and construct a semantic map of the space where the robot and user are located (e.g., a 3D semantic map constructed using SLAM technology). The semantic map is used to indicate the layout, terrain, and item labels in one or more areas of the space. The semantic map is an enhanced map representation that overlays semantic labels of environmental objects (such as furniture type and room functional zoning) on ​​top of the occupancy grid map (a map representation method that discretizes the spatial environment into grid cells, each cell recording the probability of being occupied by obstacles).

[0037] Figure 2 This document presents a semantic map of a house space, including: an entryway, bathroom, kitchen, dining room, balcony, master bedroom, secondary bedroom 1, secondary bedroom 2, and walk-in closet. The bathroom includes a toilet, each bedroom includes a bed, the living room includes a sofa and television, the kitchen includes a refrigerator and stove, and the dining room includes a dining table and television. It is understood that the semantic map can be a 3D semantic map, a 2D semantic map, etc.

[0038] Furthermore, based on the prior knowledge base and semantic tags contained in the semantic map, item tags related to "user rest space" are identified, such as furniture semantic tags (bed, sofa, recliner, dining table and chairs, etc.), to construct potential user rest spaces; further, based on the room type semantic tags, preset private spaces such as bedrooms and bathrooms are automatically excluded, so that the robot's dwell point is outside the preset private spaces. For example, through filtering, the user's target rest space is obtained as the living room or kitchen; that is, before obtaining information about the robot and the user's space, it further includes: constructing a semantic map of the robot and the user's space, and using the semantic map to indicate the layout, terrain, and item tags in one or more areas of the space; obtaining information about the robot and the user's space further includes: based on the item tags included in the semantic map, identifying one or more user rest spaces contained in the space, filtering out preset private spaces from the user rest spaces to obtain the target rest space, and determining the initial candidate dwell points covered by the target rest space.

[0039] In this embodiment of the invention, the identified semantic tags such as user rest space and preset privacy space can also be added to the semantic map. Figure 2 (Not shown in the image).

[0040] Based on the initial candidate resting points covered by the target rest space, multiple candidate resting points are generated for the robot according to one or more constraints corresponding to the spatial information. This includes generating multiple candidate resting points for the robot from the initial candidate resting points according to one or more constraints corresponding to the target rest space. The constraints include one or more of the robot's motion capability constraints, motion range constraints, and user line-of-sight constraints.

[0041] 1) When the constraint is a motion capability constraint, the step of generating multiple candidate resting points for the robot from the initial candidate resting points based on one or more constraints corresponding to the spatial information includes: for the target resting space, selecting multiple first candidate resting points from the multiple initial candidate resting points based on the following one or more motion capability constraints: constraint 1: determining the motion distance constraint based on the sensing range of the robot's sensors; constraint 2: determining the motion safety constraint based on the detected robot's fall-prone area; constraint 3: determining the motion space constraint based on the robot's minimum turning radius and emergency obstacle avoidance buffer space. Specifically, for each selected target rest space, candidate dwelling points can be selected based on the radius (e.g., 1.5-2.5 meters) of the location where the user is likely to be, i.e., the radius of objects such as "sofa" or "recliner". These points can be filtered using an occupancy grid map to find those that satisfy one or more of the following constraints: Constraint 1 ensures that the robot's sensor movement is within its sensing range and that communication signal strength is maintained, improving the real-time control and command effectiveness of the robot. For example, when using the robot's millimeter-wave radar to detect heart rate and respiration, the distance is within 2 meters; if using rPPG (remote photoplethysmograph) to measure heart rate, 1.5 meters is required; and if waiting for a voice command, 2.5 meters is acceptable. Constraint 2 ensures that the robot is in a safe terrain (not a fall-prone area). For example, visual cliff detection (ground edge detection) or slope detection using a fisheye camera close to the ground can be used. Slope detection and cliff detection eliminate fall-prone areas such as step edges and carpet edges. By using constraint three: based on the robot's minimum turning radius and emergency obstacle avoidance buffer space, the motion space constraint can be determined to ensure that the robot has sufficient motion space to meet the robot's minimum turning radius and emergency obstacle avoidance buffer space. Furthermore, based on the above constraints one through three, the initial candidate stopping points are screened, and stopping points that do not meet the constraints are eliminated. This allows us to determine that each first candidate stopping point is a stopping point where the robot can safely arrive. Multiple first candidate stopping points are labeled as set A1.

[0042] 2) When the constraint is a motion range constraint, the step of generating multiple candidate resting points for the robot from the initial candidate resting points according to one or more constraints corresponding to the spatial information includes: determining the item layout of the target resting space according to the semantic map; constructing a passage heatmap of the target resting space based on the item layout; determining one or more target passages for the user according to the passage heatmap; and using the range outside the range of one or more target passages as a motion range constraint to select multiple second candidate resting points from the multiple initial candidate resting points.

[0043] Specifically, embodiments of the present invention can construct a heat map of passageways in the target rest space based on the layout of items (e.g., the location of doors, the placement of furniture, etc.). For example, the heat map can determine that the passageway from the living room to the balcony (and also the passageway from the living room to the bathroom, and the passageway from the living room to the entrance hall) is the main passageway frequently used by users (i.e., the target passageway). Candidate stopping points located within the width W (W≥1.2 meters) of the main passageway can then be eliminated to ensure that the robot's stopping points do not obstruct normal user passage. Multiple second candidate stopping points are marked as set A2.

[0044] 3) In the case where the constraint is a user line-of-sight constraint, the step of generating multiple candidate resting points for the robot from the initial candidate resting points based on one or more constraints corresponding to the spatial information includes: determining the user's line-of-sight angle and line-of-sight range in the target resting space; determining a user line-of-sight constraint for the robot that is not in direct view of the user based on the line-of-sight angle and the line-of-sight range; and selecting multiple third candidate resting points from the multiple initial candidate resting points based on the user line-of-sight constraint.

[0045] In this embodiment of the invention, considering the need to avoid the robot looking directly at the user and causing psychological pressure, and to avoid obstructing the user's view of the TV / window, specifically, based on the viewing angle and the viewing range, the robot is given a user viewing constraint condition that is not directly in sight of the user. For example, a fan-shaped (or rectangular) area directly in front of the target rest space is designated as a restricted area. For the fan-shaped restricted area, the viewing angle and the viewing range are, for example, a fan-shaped area within 3m of -60 degrees to 60 degrees directly in front of the sofa. Multiple third candidate dwelling points are marked as set A3.

[0046] Preferably, A2 is selected from set A1, and A3 is selected from set A2, such that set A3 includes candidate dwell points that satisfy all constraints.

[0047] Furthermore, an initial visual field score is calculated for each candidate resting point in A3. Specifically, based on the relative positional relationship between the candidate resting point and the target resting space, an initial visual field score is calculated to select the optimal and suitable candidate resting point that can provide user services (e.g., health monitoring) with minimal disruption. The scoring criteria include: distance score: the reciprocal of the distance between the candidate resting point and the center of the target resting space, prioritizing a moderate distance (neither too close causing oppression nor too far leading to decreased perception accuracy); angle score: the offset angle of the candidate resting point relative to the front of the target resting space, with lateral positions scoring higher than direct positions to reduce the user's psychological discomfort from being directly looked at, achieving minimal disruption for health monitoring. Health monitoring refers to the robot's function of collecting user physiological or behavioral data (such as heart rate, respiration, posture, etc.) through sensors such as vision and radar, and continuously observing under non-contact and low-disruption conditions; minimal disruption means that while completing functional tasks, the robot minimizes physical interference and psychological intrusion into the user's normal activities through spatial location selection, motion trajectory planning, and posture adjustment.

[0048] Furthermore, the candidate docking points in set A3 are sorted in descending order of their initial field-of-view scores, and used as input data for the next stage. After the above multi-level offline screening, a set of candidate robot docking points that meet the constraints of safety, etiquette, and accessibility is obtained.

[0049] A method for determining the optimal stopping point (i.e., the target stopping point) from candidate stopping points involves: obtaining the user's current position; detecting obstacle information in the spatial environment while controlling the robot to move from the current position to any candidate stopping point; and evaluating the robot's line of sight quality relative to the user's current position at each candidate stopping point based on the obstacle information.

[0050] Specifically, the method for obtaining the user's current location can be to determine the user's current actual location through technologies such as ultra-wideband, millimeter wave, or sound source localization. Further, while controlling the robot to select target candidate dwelling points sequentially from its current location according to the initial field-of-view scores in set A3 from high to low, during the process of moving to the candidate dwelling point with the highest initial field-of-view score, obstacle information in the spatial environment can be detected. Specifically, an obstruction map can be constructed simultaneously, and temporary obstacles along the way (such as suddenly placed cardboard boxes, pets, moved furniture, etc.) can be detected using the robot's depth camera or LiDAR. Further, the line-of-view occlusion coefficient of the robot at each candidate dwelling point relative to the user's current location can be calculated in real time. The line-of-view occlusion coefficient is a parameter used to quantify the degree to which the line of sight between the candidate dwelling point and the user's current location is blocked by obstacles, with a value range of [0,1]. For example, the expression for calculating the line-of-view occlusion coefficient is: θocc(Pi) = a1 A1+a2 A2+ a3 A3, where θocc(Pi) represents the line-of-sight occlusion coefficient at the i-th candidate dwell point; the indicators related to the line-of-sight occlusion coefficient include: occlusion angle A1, which represents the visual range of the user's field of vision obstructed by the obstacle (i.e., the range of obstructed line of sight); occlusion distance A2, which represents the distance from the obstacle to the candidate dwell point, the closer the distance, the greater the occlusion effect; occlusion type A3, which is used to distinguish between temporary occlusion and permanent occlusion (i.e., the timeliness of occlusion), and is assigned different weights a1, a2, and a3. That is, the step of evaluating the robot's line of sight quality relative to the user's current position at each candidate stopping point based on the obstacle information includes: determining, based on the obstacle information, the range of the line of sight obstructed by the obstacle at a certain candidate stopping point, the distance from the obstacle to the candidate stopping point, and the timeliness of the obstruction; calculating the line of sight obstruction coefficient of the candidate stopping point based on the obstruction range, the distance, and the timeliness of the obstruction; and evaluating the robot's line of sight quality relative to the user's current position at each candidate stopping point based on the line of sight obstruction coefficient.

[0051] Preferably, if during movement it is found that the visual quality of the current target candidate dwell point has significantly decreased due to dynamic occlusion, while the visual quality of other candidate dwell points in the A3 set along the way is better, then the robot is dynamically switched to another candidate dwell point. That is, if it is determined that the visual quality of the candidate dwell point does not meet the visual quality requirements, the robot is controlled to dynamically switch to another candidate dwell point.

[0052] Furthermore, a visual field quality evaluation function is established to calculate the visual field quality score.

[0053] Score(Pi) = w1 1 / d(Pi, U2) + w2 (1 - θocc(Pi)) + w3 forient(Pi)

[0054] Where: Pi represents the i-th candidate station; U2 represents the user's current position; d(Pi, U2) represents the Euclidean distance from the candidate station Pi to the user's current position U2; θocc(Pi) represents the line-of-sight occlusion coefficient of the candidate station Pi relative to U2 (0 for no occlusion, 1 for complete occlusion); forient(Pi) represents the orientation etiquette factor, defined as forient(Pi) = |sin(Φ)|, where Φ is the yaw angle of the candidate station relative to the front of the target rest space; w1, w2, w3 are the weight coefficients of each item, satisfying w1 + w2 + w3 = 1, and each weight coefficient can be dynamically adjusted according to the application scenario.

[0055] In this invention, the orientation etiquette factor is used to evaluate whether the robot's azimuth angle when observing a user conforms to social etiquette. Lateral observation scores higher than direct observation. The orientation etiquette factor can also be |cos(Φ)|, or it can be replaced by a Gaussian decay function forient(Pi) = exp(-Φ² / 2σ²) to make the score decay smoother for direct observation. The orientation etiquette factor allows the robot to be in a preferred lateral observation position relative to the user rather than a direct facing position, reducing intrusion while maintaining monitoring effectiveness.

[0056] Furthermore, in addition to basic etiquette constraints, it is possible to add recognition of the user's current activity status (such as watching TV, reading, or resting), and dynamically adjust the range of the line of sight restriction and the weight of the orientation etiquette factor according to different activity types.

[0057] Based on the line-of-sight quality score, the candidate dwelling point that maximizes the Score(Pi) value is selected as the optimal dwelling point (i.e., the target dwelling point). Specifically, based on the line-of-sight quality, a target dwelling point is selected for the robot from multiple candidate dwelling points, including: for any candidate dwelling point, obtaining the Euclidean distance from the candidate dwelling point to the user's current position, and obtaining the line-of-sight orientation angle of the dwelling point relative to the target resting space; determining the line-of-sight quality score of the candidate dwelling point using the weighted calculation result of the Euclidean distance, the line-of-sight occlusion coefficient, and the line-of-sight orientation angle; and determining the candidate dwelling point with the higher line-of-sight quality score as the robot's target dwelling point.

[0058] The method of steps S101 to S103 in the embodiments of the present invention has the following beneficial effects: 1) This invention features a two-stage decoupled dwell point determination architecture. Unlike existing "single-time calculation to the target" models, this embodiment first utilizes an offline semantic coarse screening layer: based on a prior semantic map, it quickly eliminates high-risk / high-interference candidate dwell points (privacy areas, dangerous terrain, main passageways); then, it utilizes an online dynamic refinement layer: during the robot's physical movement, it collects environmental change information in real time and dynamically corrects the final dwell point location. This architecture reduces the online computational load while solving the inconsistency between the static semantic map and the actual environment through a "movement-as-aware" closed-loop mechanism.

[0059] 2) A multi-dimensional spatial constraint model based on social etiquette (behavioral constraint innovation) encodes human social spatial etiquette into computable filtering rules, forming a progressive constraint chain, including: privacy ethics constraints: an absolute no-go zone mechanism based on semantic tags (Bedroom / Bathroom); passage efficiency constraints: passage occupancy avoidance based on indoor topological heatmaps; and psychological line-of-sight constraints: a fan-shaped line-of-sight no-go zone model centered on the target resting space (avoiding psychological pressure caused by the robot looking directly at the user, and blocking the TV / view outside the window). This method breaks through the traditional robot's single-minded focus on "accessibility" and introduces "social acceptability," solving the user experience pain points of robot dwelling points.

[0060] 3) For dynamic occlusion perception and online field of view optimization during movement (perception decision innovation), when the robot moves from its current position to a candidate stopping point, it does not simply perform navigation, but simultaneously performs the task of "occlusion mapping": Specifically, it uses sensor data streams during movement to detect temporary occlusions in real time (such as suddenly placed cardboard boxes, pets, or moved chairs); it establishes a line-of-sight occlusion angle map of "candidate stopping point - user position"; and it allows changing stopping points along the way (if the field of view of the original candidate stopping point P1 is found to be occluded during movement, while the field of view of the passing point P2 is better, it can be dynamically switched to P2). This method can solve the defects of static map matching in being unable to cope with dynamic obstacles and the limitations of observation perspective, and achieve "what you see is what you get" field of view quality assurance.

[0061] like Figure 3 As shown, this embodiment of the invention provides a process for determining the robot's dwell position, which may include the following steps; Step S301: Select multiple third candidate rest areas based on the user's target rest space.

[0062] Specifically, this step may include the following sub-steps: Step 1: Determine the user's target rest space and initial candidate rest locations.

[0063] Step 2: Based on one or more motion capability constraints, select multiple first candidate dwell points from multiple initial candidate dwell points.

[0064] Step 3: Based on the motion range constraint, select multiple second candidate dwell points from multiple first candidate dwell points.

[0065] Step 4: Based on the user's line-of-sight constraints, select multiple third candidate dwell points from multiple second candidate dwell points.

[0066] Through the progressive screening in steps 1-4, each candidate dwell point in the third candidate dwell point can satisfy all the constraints in steps 2-4. That is, information about the space where the robot and the user are located is obtained, and multiple candidate dwell points are generated for the robot based on one or more constraints corresponding to the space information.

[0067] Step S302: Calculate the initial field of view score for each candidate dwell point in the third candidate dwell point and sort them from high to low.

[0068] Step S303: Based on the third candidate dwell point, determine the robot's target dwell point according to the real-time current user location and detected obstacle information.

[0069] Specifically, this step may include the following sub-steps: Step 1: Obtain the user's current location in real time.

[0070] Step 2: Evaluate the quality of the robot's line of sight relative to the user's current location at each candidate dwell point.

[0071] Specifically, as the robot moves towards the candidate stopping point with the highest initial visual field score, sorting the candidate stopping points from high to low, the robot acquires the user's current position and detected obstacle information in real time; based on the obstacle information, the robot evaluates the visual quality of the robot at each candidate stopping point relative to the user's current position. Step 3: Select a target dwelling point for the robot from multiple candidate dwelling points based on the quality of the line of sight.

[0072] The specific methods described for steps S301 to S303 are consistent with those for steps S101 to S103, and will not be repeated here.

[0073] Optionally, in this embodiment of the invention, without generating candidate dwell points, a target dwell point that meets the constraints can be searched in real time with the real-time acquired user location as the center. This method consumes high computational resources and is suitable for scenarios where the semantic map of spatial information is incomplete or the environment changes frequently.

[0074] Alternatively, in this embodiment of the invention, a neural network can be used to directly output the optimal target dwell point coordinates based on the semantic map and the user's current location. This method requires the prior collection of a large amount of labeled data for training.

[0075] Optionally, in embodiments of the present invention, in multi-robot scenarios, a collaborative mechanism is introduced, with the server responsible for scheduling, or the main robot responsible for close-range fine monitoring and the auxiliary robot responsible for long-range wide-angle coverage, and the task allocation algorithm avoids conflicts in the dwelling positions.

[0076] like Figure 4 As shown, this embodiment of the invention provides a device 400 for determining the dwelling position of a robot, including: a module 401 for determining an initial dwelling point, a module 402 for acquiring dynamic information, and a module 403 for determining a target dwelling point; wherein, The module 401 for determining the initial dwelling point is used to acquire information about the space where the robot and the user are located, and generate multiple candidate dwelling points for the robot based on one or more constraints corresponding to the information about the space. The dynamic information acquisition module 402 is used to acquire the user's current position, detect obstacle information in the spatial environment during the process of controlling the robot to move from the current position to any candidate stopping point; and evaluate the line of sight quality of the robot at each candidate stopping point relative to the user's current position based on the obstacle information. The target dwelling point determination module 403 is used to select a target dwelling point for the robot from multiple candidate dwelling points based on the line of sight quality, and control the robot to move to the target dwelling point.

[0077] This invention also provides an electronic device for determining the stationary position of a robot, comprising: one or more processors; and a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the method provided in any of the above embodiments.

[0078] This invention also provides a computer-readable medium having a computer program stored thereon, which, when executed by a processor, implements the method provided in any of the above embodiments.

[0079] This invention also provides a computer program product, including a computer program that, when executed by a processor, implements any of the methods described above for determining the robot's dwell position.

[0080] Figure 5 An exemplary system architecture 500 is shown, which can be applied to a method or apparatus for determining a robot's dwell position according to embodiments of the present invention.

[0081] like Figure 5 As shown, system architecture 500 may include robots 501, 502, and 503, a network 504, and a server 505. Network 504 serves as the medium for providing communication links between robots 501, 502, and 503 and server 505. Network 504 may include various connection types, such as wired or wireless communication links, or fiber optic cables, etc.

[0082] Users can use robots 501, 502, and 503 to interact with server 505 via network 504 to receive or send messages, etc.

[0083] Server 505 can be a server that provides various services, such as a back-end management server that supports users in utilizing robots 501, 502, and 503. The back-end management server can calculate the target dwell point for the robot and send commands to control the robot to move to the target dwell point.

[0084] It should be noted that the method for determining the robot's dwell position provided in the embodiments of the present invention is generally executed by robots 501, 502, and 503, or by server 505. Accordingly, the device for determining the robot's dwell position is generally located in robots 501, 502, and 503 or server 505.

[0085] It should be understood that Figure 5 The number of robots, networks, and servers shown is merely illustrative. Any number of robots, networks, and servers can be used depending on implementation needs.

[0086] The following is for reference. Figure 6 It shows a schematic diagram of the structure of a computer system 600 suitable for implementing an electronic device according to embodiments of the present invention. Figure 6 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments of the present invention.

[0087] like Figure 6 As shown, the computer system 600 includes a central processing unit (CPU) 601, which can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) 602 or programs loaded from storage section 608 into random access memory (RAM) 603. The RAM 603 also stores various programs and data required for the operation of the system 600. The CPU 601, ROM 602, and RAM 603 are interconnected via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0088] The following components are connected to I / O interface 605: an input section 606 including a keyboard, mouse, etc.; an output section 607 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 608 including a hard disk, etc.; and a communication section 609 including a network interface card such as a LAN card, modem, etc. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to I / O interface 605 as needed. A removable medium 611, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on drive 610 as needed so that computer programs read from it can be installed into storage section 608 as needed.

[0089] In particular, according to the embodiments disclosed in this invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this invention include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 609, and / or installed from removable medium 611. When the computer program is executed by central processing unit (CPU) 601, it performs the functions defined above in the system of this invention.

[0090] It should be noted that the computer-readable medium shown in this invention can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this invention, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.

[0091] 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 invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated 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 a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0092] The modules and / or units described in the embodiments of this invention can be implemented in software or hardware. The described modules and / or units can also be housed in a processor; for example, a processor can be described as including a module for determining an initial dwell point, a module for acquiring dynamic information, and a module for determining a target dwell point. The names of these modules do not necessarily limit the module itself; for example, the module for determining the initial dwell point can also be described as "a module that generates multiple candidate dwell points for the robot based on constraints corresponding to spatial information."

[0093] In another aspect, the present invention also provides a computer-readable medium, which may be included in the device described in the above embodiments; or it may exist independently and not assembled into the device. The computer-readable medium carries one or more programs that, when executed by the device, cause the device to include: the ability to acquire information about the space in which the robot and the user are located; to generate multiple candidate dwelling points for the robot based on constraints corresponding to the space information; to acquire the user's current position and detect obstacle information in the spatial environment; to evaluate the quality of the robot's line of sight relative to the user's current position at each candidate dwelling point based on the obstacle information; and to select a target dwelling point for the robot from the multiple candidate dwelling points based on the line of sight quality. The embodiments of the present invention, through a multi-layered screening architecture, first determine safe candidate dwelling points for the robot that do not involve user privacy areas based on multiple constraints, and then acquire the user's position and obstacle conditions in real time to further determine the final dwelling point for the robot, thereby improving the rationality and effectiveness of the robot's dwelling location and greatly enhancing the user experience.

[0094] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can occur depending on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.

Claims

1. A method for determining the dwell position of a robot, characterized in that, include: Obtain information about the space where the robot and the user are located, and generate multiple candidate dwelling points for the robot based on one or more constraints corresponding to the space information; The system obtains the user's current location and detects obstacle information in the spatial environment while controlling the robot to move from the current location to any candidate stopping point. Based on the obstacle information, the quality of the robot's line of sight relative to the user's current position at each candidate stopping point is evaluated; Based on the line-of-sight quality, a target dwelling point is selected for the robot from a plurality of candidate dwelling points, and the robot is controlled to move to the target dwelling point.

2. The method according to claim 1, characterized in that, Before acquiring information about the robot and the user's location, the following further steps are included: Construct a semantic map of the space where the robot and the user are located, and use the semantic map to indicate the layout, terrain and item labels of different areas in the space; The acquisition of information about the robot and the user's location further includes: Based on the item tags included in the semantic map, identify one or more user rest spaces contained in the space, filter out preset privacy spaces from the user rest spaces to obtain target rest spaces, and determine the initial candidate dwelling points covered by the target rest spaces.

3. The method according to claim 2, characterized in that, The step of generating multiple candidate dwelling points for the robot based on one or more constraints corresponding to the information in the space includes: Based on one or more constraints corresponding to the target rest space, multiple candidate resting points are generated for the robot from the initial candidate resting points; wherein, the constraints include one or more of the robot's motion capability constraints, motion range constraints, and user line-of-sight constraints.

4. The method according to claim 3, characterized in that, When the constraint is a motion capability constraint, the step of generating multiple candidate stopping points for the robot from the initial candidate stopping points based on one or more constraints corresponding to the spatial information includes: For the target rest space, based on one or more of the following movement capacity constraints, multiple first candidate resting points are selected from multiple initial candidate resting points: Constraint 1: Determine the motion distance constraint based on the sensing range of the robot's sensors; Constraint 2: Determine motion safety constraints based on the detected areas where the robot is prone to falling; Constraint 3: Determine the motion space constraints based on the robot's minimum turning radius and emergency obstacle avoidance buffer space.

5. The method according to claim 3, characterized in that, When the constraint is a range of motion constraint, the step of generating multiple candidate stopping points for the robot from the initial candidate stopping points based on one or more constraints corresponding to the spatial information includes: The layout of items in the target rest space is determined based on the semantic map; Construct a heat map of passageways in the target rest space based on the layout of the items; Based on the channel traffic heatmap, one or more target passageways for the user are determined; Using the range outside one or more of the target passageways as a movement range constraint, multiple second candidate dwelling points are selected from multiple initial candidate dwelling points.

6. The method according to claim 3, characterized in that, When the constraint is a user line-of-sight constraint, the step of generating multiple candidate stopping points for the robot from the initial candidate stopping points based on one or more constraints corresponding to the spatial information includes: Determine the user's line of sight angle and line of sight range in the target rest space; Based on the line of sight angle and the line of sight range, determine the user line of sight constraints for the robot that are not in direct eye contact with the user; Based on the user line-of-sight constraints, multiple third candidate dwell points are selected from multiple initial candidate dwell points.

7. The method according to claim 1, characterized in that, The step of evaluating the robot's line-of-sight quality relative to the user's current position at each candidate stopping point based on the obstacle information includes: Based on the obstacle information, determine the obstruction range of the user's line of sight at a certain candidate stopping point, the distance from the obstacle to the candidate stopping point, and the timeliness of the obstruction; based on the obstruction range, the distance, and the timeliness of the obstruction, calculate the line of sight occlusion coefficient of the candidate stopping point; based on the line of sight occlusion coefficient, evaluate the line of sight quality of the robot at each candidate stopping point relative to the user's current position.

8. The method according to claim 7, characterized in that, Further includes: If the line-of-sight quality of the candidate dwelling point does not meet the line-of-sight quality requirements, the robot is controlled to dynamically switch to another candidate dwelling point.

9. The method according to claim 7, characterized in that, Based on the line-of-sight quality, a target stopping point is selected for the robot from a plurality of candidate stopping points, including: For any candidate resting point, obtain the Euclidean distance from the candidate resting point to the user's current location and obtain the line-of-sight orientation angle of the resting point relative to the target resting space; use the weighted calculation result of the Euclidean distance, the line-of-sight occlusion coefficient and the line-of-sight orientation angle to determine the line-of-sight quality score of the candidate resting point; The candidate dwelling point with the higher line-of-sight quality score is determined as the target dwelling point of the robot.

10. A device for determining the stationary position of a robot, characterized in that, include: The system comprises a module for determining the initial dwell point, a module for acquiring dynamic information, and a module for determining the target dwell point; among which, The module for determining the initial dwelling point is used to acquire information about the space where the robot and the user are located, and generate multiple candidate dwelling points for the robot based on one or more constraints corresponding to the space information. The dynamic information acquisition module is used to acquire the user's current position and detect obstacle information in the spatial environment while controlling the robot to move from the current position to any candidate dwelling point. Based on the obstacle information, the quality of the robot's line of sight relative to the user's current position at each candidate stopping point is evaluated; The target dwelling point determination module is used to select a target dwelling point for the robot from multiple candidate dwelling points based on the line of sight quality, and control the robot to move to the target dwelling point.

11. An electronic device, characterized in that, include: One or more processors; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the method as described in any one of claims 1-9.

12. A computer-readable medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the method as described in any one of claims 1-9.

13. A computer program product, comprising a computer program, characterized in that, When the program is executed by the processor, it implements the method as described in any one of claims 1-9.