Information processing system and information processing apparatus

Provided is an information processing system that includes a first information processing apparatus that estimates a self-position of a first mobile body, and a second information processing apparatus that estimates a self-position of a second mobile body. The first information processing apparatus includes a movement control unit that performs control for moving, based on observation target information indicating a probability of the first mobile body being observed from the second mobile body, the first mobile body to a position where the second mobile body is capable of observing the first mobile body, an acquiring unit that acquires correction information capable of specifying relative positions of the first mobile body and the second mobile body from the second mobile body that has observed the first mobile body, and a correcting unit that corrects the self-position of the first mobile body based on the correction information.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a U.S. National Phase of International Patent Application No. PCT/JP2020/030497 filed on Aug. 7, 2020, which claims priority benefit of Japanese Patent Application No. JP 2019-167146 filed in the Japan Patent Office on Sep. 13, 2019. Each of the above-referenced applications is hereby incorporated herein by reference in its entirety.

FIELD

The present disclosure relates to an information processing system, an information processing apparatus, and an information processing program.

BACKGROUND

As a technology related to a mobile body such as an automobile and a robot, a technology called simultaneous localization and mapping (SLAM) in which a mobile body performs map creation of the surroundings and self-position estimation has been developed. In addition, Patent Literature 1 discloses a technique of guiding a work robot to a work point using a measurement robot, the work robot, and a remote control device capable of remotely controlling the robots from the outside of a work area.

CITATION LIST

Patent Literature

Patent Literature 1: JP 2014-203146 A

SUMMARY

Technical Problem

In the prior art, there is a possibility that an error occurs in an estimated self-position according to the movement of the mobile body. In addition, in Patent Literature 1, even if the measurement robot is used or the position of the work robot is detected, an error may occur in the position. For this reason, in the related art, it is desired to correct an error generated at a self-position of a mobile body without using a device other than the mobile body in an environment where a plurality of mobile bodies operate.

Therefore, the present disclosure provides an information processing system, an information processing apparatus, and an information processing program that enable information processing apparatuses mounted on a plurality of mobile bodies to support correction of self-positions of the other mobile bodies.

Solution to Problem

To solve the problems described above, an information processing system according to an embodiment of the present disclosure includes: a first information processing apparatus that estimates a self-position of a first mobile body; and a second information processing apparatus that estimates a self-position of a second mobile body, wherein the first information processing apparatus includes: a movement control unit that performs control for moving, based on observation target information indicating a probability of the first mobile body being observed from the second mobile body, the first mobile body to a position where the second mobile body is capable of observing the first mobile body; an acquiring unit that acquires correction information capable of specifying relative positions of the first mobile body and the second mobile body from the second mobile body that has observed the first mobile body; and a correcting unit that corrects the self-position of the first mobile body based on the correction information, and the second information processing apparatus includes: an observing unit that observes the first mobile body around the second mobile body; and a providing unit that provides the correction information capable of specifying relative positions of the observed first mobile body and the second mobile body to the first information processing apparatus of the first mobile body.

To solve the problems described above, an information processing apparatus according to an embodiment of the present disclosure includes: an estimating unit that estimates a self-position of a first mobile body on which an own apparatus is mounted; a movement control unit that performs control for moving, based on observation target information indicating a probability of the first mobile body being observed from a second mobile body, the first mobile body to a position where the second mobile body is capable of observing the first mobile body; an acquiring unit that acquires correction information capable of specifying relative positions of the first mobile body and the second mobile body from the second mobile body that has observed the first mobile body; and a correcting unit that corrects the self-position of the first mobile body based on the correction information.

To solve the problems described above, an information processing apparatus according to an embodiment of the present disclosure includes: an estimating unit that estimates a self-position of a first mobile body on which an own apparatus is mounted; a movement control unit that performs control for moving, based on observation target information indicating a probability of the first mobile body being observed from a second mobile body, the first mobile body to a position where the second mobile body is capable of observing the first mobile body; an acquiring unit that acquires correction information capable of specifying relative positions of the first mobile body and the second mobile body from the second mobile body that has observed the first mobile body; and a correcting unit that corrects the self-position of the first mobile body based on the correction information.

To solve the problems described above, an information processing program according to an embodiment of the present disclosure causes a computer to realize: estimating a self-position of a first mobile body on which an own apparatus is mounted; performing control for moving, based on observation target information indicating a probability of the first mobile body being observed from a second mobile body, the first mobile body to a position where the second mobile body is capable of observing the first mobile body; acquiring correction information capable of specifying relative positions of the first mobile body and the second mobile body from the second mobile body that has observed the first mobile body; and correcting the self-position of the first mobile body based on the correction information.

To solve the problems described above, an information processing program according to an embodiment of the present disclosure causes a computer to realize: estimating a self-position of a second mobile body on which an own apparatus is mounted; observing a first mobile body around the second mobile body; and providing correction information capable of specifying relative positions of the observed first mobile body and the second mobile body to a first information processing apparatus of the first mobile body.

DESCRIPTION OF EMBODIMENTS

An embodiment of the present disclosure is explained in detail below based on the drawings. Note that, in the embodiment explained below, redundant explanation is omitted by denoting the same parts with the same reference numerals and signs.

EMBODIMENT

[Overview of an Information Processing System According to an Embodiment]

FIG.1is a diagram for explaining an example of an information processing system according to an embodiment. An information processing system1illustrated inFIG.1includes a plurality of information processing apparatuses10. Each of the plurality of information processing apparatuses10is mounted on each of a plurality of mobile bodies100. In other words, the information processing system1includes the plurality of mobile bodies100on which the information processing apparatuses10are mounted.

The mobile body100is, for example, a mobile body capable of autonomously moving. The mobile body100includes, for example, a robot, a vehicle (a motorcycle, an automobile, and a bicycle), a bogie, a ship, a flying object (an airplane and an unmanned aerial vehicle (UAV)), and a drone. The mobile body100is a mobile body driven according to operation by a human or a mobile body capable of automatically moving (autonomously moving) not via operation by a human. The mobile body100capable of autonomously moving is, for example, an automatic driving vehicle or an autonomous driving robot. A case in which the mobile body100in the present embodiment is an autonomously drivable robot is explained as an example.

The mobile body100includes the information processing apparatus10. The information processing apparatus10is, for example, a dedicated or general-purpose computer. The information processing apparatus10is, for example, a dedicated or general-purpose computer. The information processing apparatus10has a function of estimating a self-position based on a detection result of a sensor unit, a movement result of the mobile body100, and the like. The self-position means, for example, the position of the information processing apparatus10and the mobile body100on which the information processing apparatus10is mounted. The information processing apparatus10further has a function of planning a route of the mobile body100, a function of re-planning the route, a function of controlling movement of the mobile body100to move along the route, and the like.

In the example illustrated inFIG.1, the information processing system1includes three information processing apparatuses10. When an error occurs in a self-position of a mobile body100A, the information processing system1includes one information processing apparatus10A and two information processing apparatuses10B. The information processing apparatus10A is an apparatus mounted on the mobile body100A that needs correction of an estimated self-position. That is, the information processing apparatus10A is an example of a first information processing apparatus that needs correction of a self-position. In this case, the mobile body100A is equivalent to a first mobile body.

Furthermore, the information processing apparatuses10B are apparatuses mounted on a mobile body100B and a mobile body100C that do not need correction of self-positions and support correction of self-positions of other mobile bodies. That is, the information processing apparatus10B is an example of a second information processing apparatus that does not need correction of a self-position. In this case, the mobile body100B and the mobile body100C are equivalent to a second mobile body.

The mobile body100A, the mobile body100B, and the mobile body100C are mobile bodies movable on the inside of a region E for a predetermined time. The mobile body100B has a configuration capable of observing an observation region V at certain time. The observation region V may be, for example, a part of the periphery such as the front of the mobile body100or may be the entire periphery. The example illustrated inFIG.1is based on a premise that an error occurs in a self-position of the mobile body100A but no error occurs in self-positions of the mobile body100B and the mobile body100C.

Note that, in the following description, the information processing apparatus10A and the information processing apparatus10B are sometimes explained as information processing apparatus10when the information processing apparatus10A and the information processing apparatus10B are not distinguished. Furthermore, the mobile body100on which the information processing apparatus10is mounted is sometimes explained as “own vehicle” and the information processing apparatus10is sometimes explained as “own apparatus”.

The information processing apparatus10has a function of correcting the estimated self-position of the mobile body100based on an observation result of another mobile body100. For example, when determining that the estimated self-position of the mobile body100A is invalid, the information processing apparatus10A moves the mobile body100A to cause the other mobile bodies100B,100C, and the like around the mobile body100A to observe the mobile body100A. Then, the information processing apparatus10A corrects the self-position based on the observation results of the other mobile bodies100B,100C, and the like. For example, the information processing apparatus10A corrects the self-position of the mobile body100A based on a positional relation between the mobile body100A and the mobile body100B observed by the other information processing apparatus10B.

For example, in an environment in which a plurality of mobile bodies100of an autonomous mobile type coexist, each of the plurality of mobile bodies100moves along a route while executing an individually set moving task. In the related art, since it is necessary to provide dedicated instrument, equipment, or the like that always observes the plurality of mobile bodies100, it has been desired to simplify a system configuration. In the present disclosure, the self-position can be corrected only by the plurality of mobile bodies100without complicating the configuration and environment of the system.

[Configuration Example of the Mobile Body According to the Embodiment]

FIG.2is a diagram for explaining an example of the mobile body100A and the information processing apparatus10A on an observed side according to the embodiment.

As illustrated inFIG.2, the mobile body100(100A) includes a sensor unit110, a communication unit120, a driving unit130, and an information processing apparatus10(10A). The sensor unit110, the communication unit120, the driving unit130, and the information processing apparatus10A are connected to be capable of exchanging data and signals.

The sensor unit110includes various sensors that detect sensor data used for processing of the mobile body100and supplies the detected sensor data to the information processing apparatus10and the like. In the present embodiment, the sensor unit110includes, for example, a camera111, a light detection and ranging (laser imaging detection and ranging (LiDAR))112, an inertial measurement unit (IMU)113, and odometry114.

The camera111simultaneously senses an image around the own vehicle and distance information. In the present embodiment, a case where the camera111is a depth camera is explained, but the camera may include other cameras such as a time of flight (ToF) camera, a stereo camera, a monocular camera, and an infrared camera. The camera111may be, for example, a combination of a plurality of types of cameras. The camera111supplies captured image data to the information processing apparatus10and the like. The image data includes items such as time, a frequency, an image, and depth information. In the item of the time, time when the data is generated is set. In the item of the frequency, an output function of depth information is set. In the item of the image, a two-dimensional RGB image is set. In the item of the depth information, depth information of an image is set. The depth information may be output in a point group format.

The LiDAR112senses two-dimensional/three-dimensional point group distance data around the own vehicle. The LiDAR112supplies the point group distance data to the information processing apparatus10and the like. The point group distance data includes items such as time, a frequency, and point Cloud. In the item of the time, time when the data is generated is set. In the item of the frequency, an output frequency of the point Cloud is set. As the item of the point group, a two-dimensional/three-dimensional point group (coordinates of each point) and a generation time of each point are set.

The IMU113detects angles, accelerations, and the like of three axes that govern the operation of the mobile body100. The IMU113includes various sensors such as an acceleration sensor, a gyro sensor, and a magnetic sensor. The IMU113supplies state data of the mobile body100to the information processing apparatus10and the like. The state data includes items such as time, a frequency, a direction, angular velocity, and acceleration. In the item of the time, time when the data is generated is set. In the item of the frequency, an output frequency of the IMU is set. In the items of the direction, the angular velocity, and the acceleration, values obtained by detecting a direction, angular velocity, and acceleration are set.

The odometry114estimates a movement amount and a speed at which the mobile body100actually moves. For example, when the mobile body100moves on wheels, the odometry114measures and accumulates a rotation amount of the wheels or the like to estimate a movement amount of the own vehicle. In addition, the odometry114may estimate the movement amount of the own vehicle from a temporal change amount of a feature value in a camera image. The odometry114supplies movement data of the mobile body100to the information processing apparatus10and the like. The movement data includes, for example, items such as time, a posture, and speed. In the item of the time, time when the data is generated is set. In the item of the posture, a position, a direction, and the like indicating the posture of the mobile body100in an origin coordinate of a track are set.

The communication unit120communicates with the mobile body100and another mobile body100and various electronic devices, information processing servers, base stations, and the like on the outside. The communication unit120outputs data received from another information processing apparatus10, an information processing server, or the like to the information processing apparatus10and transmits data from the information processing apparatus10to the other information processing apparatus10, the information processing server, or the like. Note that the communication protocol supported by the communication unit120is not particularly limited. The communication unit120can support a plurality of types of communication protocols.

The driving unit130drives a moving mechanism that moves the mobile body100. The moving mechanism includes a mechanism for driving wheels, legs, propellers, and the like. The driving unit130drives the moving mechanism according to an operation command or the like output from the information processing apparatus10. As a result, the mobile body100is moved by driving of the moving function.

[Configuration Example of the Information Processing Apparatus on the Observed Side]

The information processing apparatus10A is, for example, a dedicated or general-purpose computer mounted on the mobile body100A on the observed side. The information processing apparatus10A includes a storing unit11and a control unit12. The storing unit11and the control unit12are connected to be capable of exchanging data and information. In the following explanation, the information processing apparatus10A is sometimes explained as an “observed apparatus”.

The storing unit11stores various data and programs. The storing unit11is realized by, for example, a semiconductor memory element such as a RAM or a flash memory or a storage device such as a hard disk or an optical disk. Note that the storing unit11may be provided on the outside of the mobile body100. Specifically, the storing unit11may be provided in a Cloud server connected to the information processing apparatus10A via a network.

The storing unit11stores information such as self-position information11A, determination information11B, observation target information11C, observation information11D, plan information11E, mobile body list information11F, sensor model information11G, and correction information11H.

The self-position information11A includes, for example, information indicating the self-position of the mobile body100in time series. The determination information11B includes information indicating a condition for determining the validity of the self-position. The observation target information11C includes information indicating a probability of the mobile body100having a certain posture being observed from the peripheral mobile body100at certain time. The peripheral mobile body100includes, for example, a predetermined range centered on the own vehicle. The observation target information11C includes a probability of being observed map represented as a probability field of a moving point where the own vehicle is observed from the peripheral mobile body100. An example of the probability of being observed map is explained below. The observation information11D includes information indicating a probability of the mobile body100in a certain position being able to observe the peripheral mobile body100at certain time. The observation information11D includes an observation probability map indicating a probability of the own vehicle observing the peripheral mobile body100. An example of the observation probability map is explained below.

The plan information11E includes information indicating routes L, movement plans, and the like of the plurality of mobile bodies100. The movement plan includes, for example, time of movement in a certain position, and speed and a posture of the mobile body100in the certain position. The plan information11E includes, for example, information indicating a route L and a movement plan for each of the plurality of information processing apparatuses10(mobile bodies100) included in the information processing system1. The mobile body list information11F includes information indicating a list of mobile bodies100on which the information processing apparatuses10included in the information processing system1are mounted. For example, the mobile body list information11F includes identification information or the like for managing the mobile body100.

The sensor model information11G includes information of a sensor model of the mobile body100on which the information processing apparatus10included in the information processing system1is mounted. For example, the sensor model information11G includes information such as a range, a direction, and specifications that can be observed by the sensor unit110of the mobile body100. The correction information11H includes information acquired from the mobile body100on the observing side and capable of specifying relative positions of the mobile body100on the observed side and the mobile body100on the observing side. The relative positions means positional relations such as a direction of the mobile body100and a distance between the plurality of mobile bodies100. The correction information11H may be erased according to an end of correction of a self-position.

Note that not all of the plan information11E, the mobile body list information11F, and the sensor model information11G need to be stored in the storing unit11. The plan information11E, the mobile body list information11F, and the sensor model information11G may be stored in, for example, an information processing server, a storage device, or the like accessible by the information processing apparatus10.

The control unit12includes functional units such as an estimating unit12A, a movement control unit12B, an acquiring unit12C, a correcting unit12D, and a first generating unit12E. The functional units of the control unit12is realized by, for example, a central processing unit (CPU), a micro control unit (MCU), or the like executing a program stored inside the information processing apparatus10using a random access memory (RAM) or the like as a work area. Furthermore, the functional units may bae realized by, for example, an integrated circuit such as an application specific integrated circuit (ASIC) or a field-programmable gate array (FPGA).

The estimating unit12A estimates a self-position of the mobile body100based on data from the sensor unit110. The estimating unit12A estimates a self-position including, for example, a position and a posture of the mobile body100. The posture of the mobile body100includes, for example, a direction (traveling direction) and a pose of the mobile body100. The estimating unit12A may estimate the self-position based on, for example, information acquired from the outside of the mobile body100. For example, the estimating unit12A may estimate the self-position using a highly accurate map obtained by using a technique such as SLAM. The estimating unit12A estimates a self-position (a current position) of the mobile body100in a specific coordinate system and stores the self-position in the storing unit11as self-position information11A including the self-position.

The movement control unit12B performs control for moving, based on the observation target information11C indicating a probability of the own vehicle being observed from the mobile body100around the own vehicle, the own vehicle to a position where the mobile body100around the own vehicle is capable of observing the own vehicle. The movement control unit12B has a function of planning the route L of the mobile body100and changing the route L. The movement control unit17outputs an operation command and the like for realizing the plan information11E in the storing unit11to the driving unit130. The movement control unit12B controls, based on the self-position and the route L of the own vehicle indicated by the plan information11E, driving of the driving unit130such that the own vehicle moves along the route L. As a result, the moving mechanism operates according to the driving of the driving unit130, whereby the mobile body100moves along the route L.

The movement control unit12B performs control for moving, based on the observation target information11C of the storing unit11, the own vehicle to a position observable by another mobile body100. For example, the movement control unit12B changes, based on the probability of being observed map of the observation target information11C, the route L such that the own vehicle reaches a target position (a destination) while being observed by another mobile body100. A method of changing the route is explained below. The movement control unit12B controls driving of the driving unit130such that the own vehicle moves along the changed route L.

The movement control unit12B determines whether a self-position of the own vehicle is valid. The movement control unit12B determines, based on the self-position and the determination information11B, whether the self-position is valid. For example, the movement control unit12B compares the self-position and a position in the past, a target position, or the like and, when a difference between the positions is equal to or more than a determination threshold, determines that the self-position is invalid. The determination threshold includes, for example, a value indicating a distance that the own vehicle can move per unit time, a deviation degree from the route L, or the like.

When determining that the self-position of the own vehicle is valid, the movement control unit12B performs control for moving the own vehicle to a position observable by another mobile body100. In addition, when determining that the self-position of the own vehicle is invalid, the movement control unit12B performs control for moving the own vehicle to a position observable by the other mobile body100.

The acquiring unit12C acquires the correction information11H capable of specifying a relative positional relation between the own vehicle and the other mobile body100from the other mobile body100that observes the own vehicle. The acquiring unit12C acquires the correction information11H from the other mobile body100, for example, by communication via the communication unit120and stores the correction information11H in the storing unit11. When the own vehicle is observed at different times by the plurality of other mobile bodies100, the acquiring unit12C acquires the correction information11H from the plurality of other mobile bodies100and stores a plurality of kinds of correction information11H in association with one another in the storing unit11.

The correcting unit12D corrects the self-position of the own vehicle based on the correction information11H. For example, the correcting unit12D specifies the position (position coordinates) of the own vehicle observed by another mobile body100based on the correction information11H, and corrects the self-position information11A of the storing unit11such that the position becomes the self-position. That is, the correcting unit12D changes the self-position to the position of the own vehicle observed by the other mobile body100. When the correction information11H is acquired from the plurality of mobile bodies100, the correcting unit12D specifies the position of the own vehicle from each of a plurality of kinds of correction information11H and corrects the self-position based on a plurality of positions.

The first generating unit12E generates, based on the movement plan of the other mobile body100, the observation target information11C indicating a relation between a probability of the own vehicle being observed from the other mobile body100and the position of the own vehicle. The first generating unit12E dynamically generates the observation target information11C based on the plan information11E indicating a time-added movement plan of the other mobile body100and the sensor model information11G of the other mobile body100. For example, the first generating unit12E calculates a probability of the other mobile body100being able to observe the own vehicle based on the sensor model when the own vehicle is present in a posture c at time t in a terrain map. The first generating unit12E generates the observation target information11C including the probability of being observed map indicating the calculated probability and stores the observation target information11C in the storing unit11.

The functional configuration example of the information processing apparatus10A on the observed side according to the present embodiment is explained above. Note that the configuration explained above with reference toFIG.2is merely an example, and a functional configuration of the information processing apparatus10A on the observed side according to the present embodiment is not limited to such an example. The functional configuration of the information processing apparatus10A on the observed side according to the present embodiment can be flexibly modified according to specifications and operations.

[Example of the Observation Target Information]

FIG.3is a diagram for explaining an example of the observation target information11C according to the embodiment. As illustrated inFIG.3, the observation target information11C includes a plurality of maps11Cm corresponding to a plurality of times different from one another. The map11Cm is an example of the probability of being observed map. The map11Cm includes, for example, a terrain map. The observation target information11C includes information indicating a positional relation between the mobile bodies100on the observing side and the observed side in time series in the terrain map. The observation target information11C includes information indicating the plurality of maps11Cm in time series. The plurality of maps11Cm are maps indicating the position of the mobile body100at each time.

For example, the map11Cm at certain time t is a map showing the positions of the mobile body100A on the observed side and the mobile body100B and the mobile body100C on the observed side and terrain. The map11Cm distinguishably shows, for example, a movable area and an obstacle. The map11Cm shows the positions of the mobile body100B and the mobile body100C capable of observing the mobile body100A, a route Lb and a route Lc, and a target position Gb and a target position Gc. The map11Cm shows a sensor model Mc of the mobile body100B and the mobile body100C at the time t. The sensor model Mc includes a sensor field of view and a region that can be observed by the sensor unit110of the mobile body100. The map11Cm indicates an area E where the mobile body100A is movable. In the map11Cm, the movable region E and a part overlapping the sensor model Mc are regions highly probably observed by the mobile body100B and the mobile body100C.

The observation target information11C can define a probability of the peripheral mobile body100B and mobile body100C in the periphery having the sensor model being able to observe the mobile body100A when the mobile body100A is present in the posture C at the time t on the map11Cm.

For example, the observation target information11C can represent an observed probabilitys(c, t) that a peripheral mobile body k having SensorModelkplaced in pk(t) can observe a target mobile body s when the target mobile body s is present in the posture c at the time t on the map11Cm by Formula (1).

t: time

s: target mobile body

c: posture of the target mobile body in a global coordinate system (corresponding to a cell position and a direction of a grid)

n: number of peripheral mobile bodies

pk(t): posture distribution probability of the k-th peripheral mobile body at the time t

ps(c, t): probability of the target mobile body being present in the posture c at the time t

SensorModelk: view angle information of a sensor mounted on the k-th peripheral mobile body

map: terrain map

Observablek(pk, c, SensorModelk, map): probability of SensorModelkbeing able to be mounted and the target mobile body having the posture pkbeing able to be observed on the terrain map map.

For example, the observed probabilitys(c, t) can represent, based on information on an obstacle shown by the terrain map map, a probability of observation not being able to be performed because of the obstacle on the terrain map map. For example, the observed probabilitys(c, t) can represent, based on the viewing angle information, that the probability of observation not being able to be performed increases due to a sensor having a narrow viewing angle. For example, the observed probabilitys(c, t) can represent that relative postures between the mobile bodies is calculated from the probability pk(t) and the posture c and the probability of observation not being able to be performed increases because the relative postures are excessively separated.

[Configuration Example of the Information Processing Apparatus on the Observing Side]

FIG.4is a diagram for explaining an example of the mobile body and the information processing apparatus on the observing side according to the embodiment. As illustrated inFIG.4, the mobile body100(100B,100C) includes the sensor unit110, the communication unit120, the driving unit130, and the information processing apparatus10(10B). That is, in the present embodiment, the mobile body100A, the mobile body100B, and the mobile body100C have the same configuration. However, the mobile body100A, the mobile body100B, and the mobile body100C may have different configurations.

The information processing apparatus10B is mounted on, for example, the mobile body100B and the mobile body100C on the observing side and is a dedicated or general-purpose computer. The information processing apparatus10B includes the storing unit11and the control unit12. The storing unit11and the control unit12are connected to be capable of exchanging data and information. In the following explanation, the information processing apparatus10is sometimes explained as an “observing side apparatus”.

Similarly to the information processing apparatus10A on the observed side, the storing unit11stores, for example, information such as the self-position information11A, the determination information11B, the observation target information11C, the observation information11D, the plan information11E, the mobile body list information11F, the sensor model information11G, and the correction information11H.

The control unit12includes functional units such as the estimating unit12A, the movement control unit12B, an observing unit12F, a providing unit12G, and a second generating unit12H.

The movement control unit12B performs control for moving, based on the observation information11D of the storing unit11, the second mobile body to a position where the second mobile body is capable of observing the mobile body100A (first mobile body). The movement control unit12B has a function of planning the route L of the second mobile body and changing the route L. The movement control unit17outputs an operation command and the like for realizing the plan information11E in the storing unit11to the driving unit130. The movement control unit12B controls, based on the self-position and the route L of the own vehicle indicated by the plan information11E, driving of the driving unit130such that the own vehicle moves along the route L. As a result, the moving mechanism operates according to the driving of the driving unit130, whereby the mobile body100B and the mobile body100C move along the route L.

The movement control unit12B performs control for moving, based on the target position of the second mobile body on the observed side and the observation information11D in the storing unit11, the own vehicle to a position where the own vehicle is capable of observing the mobile body100A on the observed side. For example, the movement control unit12B changes, based on the observation probability map of the observation information11D the route L such that the own vehicle reaches a target position (a destination) while observing the observation target mobile body100A. A method of changing the route L is explained below. The movement control unit12B controls driving of the driving unit130such that the own vehicle moves along the changed route L.

When acquiring an observation request from the mobile body100A on the observed side, the movement control unit12B performs control for moving the second mobile body on the observing side to a position where the second mobile body is capable of observing the mobile body100A on the observed side. In addition, when the movement control unit12B does not acquire the observation request from the mobile body100A on the observed side, the movement control unit12B does not perform control for moving the second mobile body on the observing side to a position where the second mobile body is capable of observing the mobile body100A on the observed side.

The observing unit12F observes the mobile body100around the second mobile body on which the information processing apparatus10B is mounted. For example, when the second mobile body is the mobile body100B, the peripheral mobile body100includes, for example, the mobile body100A and another mobile body100C. The observing unit12F observes, for example, based on the sensor data supplied from the sensor unit110, the observation region V of the mobile body100on which the observing side apparatus is mounted. When observing that the mobile body100is present in the observation region V, the observing unit12F stores position information indicating a relation between relative positions of the observed mobile body100and the own vehicle in the storing unit11. The position information includes, for example, information such as a self-position of the own vehicle and a distance and a direction from the self-position to the observed mobile body100.

The providing unit12G provides, to the information processing apparatus10A of the mobile body100A on the observed side, the correction information11H capable of specifying a relation between relative positions of the observed mobile body100A on the observed side and the mobile body100B or100C on the observing side. The providing unit12G generates, for example, the correction information11H including position information observed by the observing unit12F and identification information of the observing side apparatus, and stores the correction information11H in the storing unit11. The providing unit12G transmits the correction information11H to the information processing apparatus10at observation request source via the communication unit120.

The second generating unit12H generates, based on a movement plan of another mobile body100, the observation information11D indicating a relation between a probability of observing the other mobile body100around the own vehicle and the position of the other mobile body100. The second generating unit12H generates the observation information11D based on the plan information11E indicating the time-added movement plan of the other mobile body100and the sensor model information11G. The second generating unit12H generates the observation information11D indicating, as a map or the like, a probability of the observing side apparatus observing the peripheral mobile body100when the own vehicle is present in the posture c at the time t. The second generating unit12H stores the generated observation information11D in the storing unit11.

The functional configuration example of the information processing apparatus10B on the observing side according to the present embodiment is explained above. Note that the configuration explained above with reference toFIG.4is merely an example and the functional configuration of the information processing apparatus10B on the observing side according to the present embodiment is not limited to such an example. The functional configuration of the information processing apparatus10B on the observing side according to the present embodiment can be flexibly modified according to specifications and operations.

[Example of the Observation Information]

FIG.5is a diagram for explaining an example of the observation information11D according to the embodiment. As illustrated inFIG.5, the observation information11D includes a plurality of maps11Cm corresponding to a plurality of times different from one another. The observation information11D includes information indicating a positional relation between the mobile body100B on the observing side and the peripheral mobile body100in time series on the terrain map. The observation information11D includes information indicating the plurality of maps11Cm in time series. The plurality of maps11Cm are maps indicating the position of the mobile body100at each time and an observation region of the mobile body100B on the observing side.

For example, the map11Cm at certain time t is a map indicating the positions of the mobile body100B on the observing side and the peripheral mobile body100, and terrain. The map11Cm indicates the position of the mobile body100that can be observed by the mobile body100B and the route L and the target position G of the peripheral mobile body100. The map11Cm indicates the sensor model Mc of the mobile body100B on the observing side at the time t. The map11Cm indicates the position of the mobile body100B on the observing side and the region E where the mobile body100around the position can move. The map11Cm represents, as an establishment field, a moving point where the mobile body100B on the observing side can observe the peripheral mobile body100.

The observation information11D can define a probability of the peripheral mobile body100being able to be observed when the mobile body100A having the sensor model Mc is present in the posture C at the time t on the map11Cm.

For example, the observation information11D can represent a point where it is highly likely that the peripheral mobile body100can be observed more at the time when the viewing angle is moved in the movable region E of the mobile body100B on the observing side. That is, the observation information11D can represent the observation probabilitys(c, t) with Expression (2) by reversing the relation between the observing side and the observed side in Expression (1) explained above indicated by the observation target information11C.

t: time

s: target mobile body

c: posture of the target mobile body in a global coordinate system (corresponding to a cell position and a direction of a grid)

n: number of peripheral mobile bodies

pk(t): posture distribution probability of the k-th peripheral mobile body at the time t

ps(c, t): probability of the target mobile body being present in the posture c at the time t

Sensor Models: View angle information of a sensor mounted on the mobile body100on the observing side

map: terrain map

Observablek(c, pk, Sensor Models, map): probability of the mobile body100mounted with SensorModelsand having the posture pkbeing able to the peripheral mobile body100on the terrain map map

[Processing Procedure of the Information Processing Apparatus on the Observed Side According to Embodiment]

Subsequently, an example of a processing procedure of the information processing apparatus10A on the observed side according to the embodiment is explained.FIG.6is a flowchart illustrating an example of a processing procedure executed by the information processing apparatus10A on the observed side according to the embodiment. The processing procedure illustrated inFIG.6is realized by the control unit12of the information processing apparatus10A on the observed side executing a program. The processing procedure illustrated inFIG.6is repeatedly executed by the control unit12on the observed side.

As illustrated inFIG.6, the control unit12of the information processing apparatus10A determines whether an estimated self-position is valid (step S101). For example, the control unit12determines the validity of the self-position based on a comparison result obtained by comparing the self-position estimated by the estimating unit12A and the self-position in the past. For example, when the compared change amount is larger than a threshold, the control unit12determines that the self-position is invalid. When the change amount is equal to or smaller than the threshold, the control unit12determines that the self-position is valid. The control unit12may determine the validity of the self-position based on continuity of the self-position estimated by the estimating unit12A and the self-position in the past. When determining that the estimated self-position is valid (Yes in step S101), the control unit12ends the processing procedure illustrated inFIG.6.

When determining that the estimated self-position is invalid (No in step S101), the control unit12advances the processing to step S102. The control unit12acquires the position of the peripheral mobile body100(step S102). For example, the control unit12acquires the self-position estimated by another mobile body100via the communication unit120or acquires the position of the other mobile body100from the plan information11E. After storing an acquisition result of the position in the storing unit11, the control unit12advances the processing to step S103.

The control unit12determines, based on the acquisition result of the storing unit11, whether the position of the peripheral mobile body100is acquired (step S103). When determining that the position of the peripheral mobile body100is not acquired (No in step S103), the control unit12returns the processing to step S101explained above. On the other hand, when determining that the position of the peripheral mobile body100is acquired (Yes in step S103), the control unit12advances the processing to step S104.

The control unit12specifies a sensor model of the peripheral mobile body100(step S104). For example, the control unit12specifies a sensor model of the peripheral mobile body100based on the sensor model information11G. After specifying the sensor model, the control unit12advances the processing to step S105.

The control unit12generates and updates the observation target information11C (step S105). For example, the control unit12generates, based on the movement plan of the other mobile body100, the observation target information11C indicating a relation between a probability of the own vehicle from being observed from the other mobile body100and the position of the own vehicle and updates the observation target information11C stored in the storing unit11. For example, the control unit12generates the observation target information11C by executing observation target information generation processing explained below. The control unit12functions as the first generating unit12E explained above by executing the processing in step S105. When the processing in step S105ends, the control unit12advances the processing to step S106.

Based on the plan information11E and the observation target information11C of the own vehicle, the control unit12plans the route L of the own vehicle which is directed to a target position and on which the peripheral mobile body100is capable of observing the own vehicle (step S106). For example, in the probability of being observed map of the observation target information11C, the control unit12plans the route L such that the own vehicle reaches the target position (a destination) while being observed by another mobile body100. After changing the movement plan of the own vehicle in the plan information11E based on the planned result, the control unit12advances the processing to step S107.

The control unit12controls movement of the mobile body100based on the changed plan information11E (step S107). For example, the control unit12controls driving of the driving unit130such that the own vehicle moves along the changed route L. As a result, the mobile body100moves along the changed route L and moves toward the target position. When the processing in step S107ends, the control unit12advances the processing to step S108.

The control unit12acquires correction information11H from peripheral mobile body100(step S108). For example, the control unit12transmits an observation request to the peripheral mobile body100via the communication unit120. Then, the control unit12acquires the correction information11H provided by the peripheral mobile body100via the communication unit120and stores the correction information11H in the storing unit11. When the correction information11H is not successfully acquired from the peripheral mobile body100within a predetermined time, the control unit12stores, in the storing unit11, an acquisition result indicating that the correction information is not successfully acquired. When the processing in step S108ends, the control unit12advances the processing to step S109.

Based on the acquisition result in the storing unit11, the control unit12determines whether the correction information11H is acquired from the peripheral mobile body100(step S109). When determining that the correction information11H is not acquired from the peripheral mobile body100(No in step S109), the control unit12returns the processing to step S101explained above. On the other hand, when determining that correction information11H is acquired from peripheral mobile body100(Yes in step S109), the control unit12advances the processing to step S110.

The control unit12corrects the self-position of the own vehicle based on the acquired correction information11H (step S110). For example, the control unit12specifies the position (a position coordinate) of the own vehicle observed by another mobile body100based on the correction information11H and corrects the self-position information11A of the storing unit11such that the position becomes a self-position. When the processing in step S110ends, the control unit12advances the processing to step S111.

The control unit12plans the route L of the own vehicle moving from the corrected self-position toward the target position and updates the plan information11E (step S111). For example, the control unit12plans a new route L of the own vehicle based on the corrected self-position, the route L indicated by the plan information11E, the target position, and the like and reflects the new route L on the plan information11E in the storing unit11. When the processing in step S111ends, the control unit12advances the processing to step S112.

The control unit12controls the movement of the mobile body100based on the changed plan information11E (step S112). For example, the control unit12controls driving of the driving unit130such that the own vehicle moves along the changed route L. As a result, the mobile body100moves from the corrected self-position along the changed route L and moves toward the target position. When the processing in step S112ends, the control unit12ends the processing procedure illustrated inFIG.6.

[Example of the Observation Target Information Generation Processing]

FIG.7is a flowchart illustrating an example of observation target information generation processing executed by the information processing apparatus10on the observed side according to the embodiment. The processing procedure illustrated inFIG.7is executed by the control unit12of the information processing apparatus10A in the processing in step S105illustrated inFIG.6. The observation target information generation processing is, for example, processing of generating the observation target information11C corresponding to a preset time range.

As illustrated inFIG.7, the control unit12of the information processing apparatus10A calculates a probability distribution in a movable range from the self-position of the own vehicle (step S151). For example, the control unit12calculates a self-position of the own vehicle on the observed side for each future time and calculates a probability distribution in the case in which the own vehicle is movable from the self-position. The control unit12acquires the mobile body list information11F (step S152). Then, the control unit12executes the processing in step S153and step S154on each of the peripheral mobile bodies100indicated by the mobile body list information11F.

The control unit12calculates a probability distribution of the self-position of the own vehicle at the corresponding time based on the plan information11E (step S153). After storing the calculated probability distribution of the self-position of the own vehicle in the storing unit11in association with the time, the control unit12advances the processing to step S154.

The control unit12calculates a probability distribution of an observation success rate of the peripheral mobile body100based on the sensor model information11G (step S154). After storing the calculated probability distribution of the observation success rate of the peripheral mobile body100in the storing unit11in association with the identification information and the time of the peripheral mobile body100, the control unit12advances the processing to step S155.

The control unit12determines whether the processing for the peripheral mobile body100has ended (step S155). For example, when the processing for all the peripheral mobile bodies100indicated by the mobile body list information11F is executed, the control unit12determines that the processing for the peripheral mobile bodies100has ended. When determining that the processing for the peripheral mobile body100has not ended (No in step S155), the control unit12advances the processing to step S156. The control unit12sets another peripheral mobile body100as a processing target (step S156) and returns the processing to step S153explained above.

In addition, when determining that the processing for the peripheral mobile body100has ended (Yes in step S155), the control unit12advances the processing to step S157. The control unit12calculates a probability of being observed map based on the probability distribution in the movable range of the own vehicle and the probability distribution of the observation success rate of the peripheral mobile body100(step S157). For example, the control unit12divides the space around the own vehicle into grids and scans the grids at each time, and calculates a probability of being observed map based on the probability distribution in the movable range of the own vehicle and the probability distribution of the observation success rate of the peripheral mobile body100. Then, after calculating the probability of being observed map at each time, the control unit12stores the corresponding time and the probability of being observed map in association with each other in the storing unit11. When the processing in step S157ends, the control unit12advances the processing to step S158.

The control unit12generates and updates the observation target information11C including the probability of being observed map (step S158). For example, the control unit12generates the observation information11D including a plurality of probability of being observed maps corresponding to a plurality of times different from one another, and updates the observation target information11C in the storing unit11. When the processing in step S158ends, the control unit12ends the processing procedure illustrated inFIG.7.

[Processing Procedure of the Information Processing Apparatus on the Observing Side According to the Embodiment]

Subsequently, an example of a processing procedure of the information processing apparatus10B on the observing side according to the embodiment is explained.FIG.8is a flowchart illustrating an example of a processing procedure executed by the information processing apparatus10on the observing side according to the embodiment.FIG.9is a diagram for explaining an example of the correction information11H according to the embodiment. The processing procedure illustrated inFIG.8is realized by the control unit12of the information processing apparatus10B on the observing side executing a program. The processing procedure illustrated inFIG.8is repeatedly executed by the control unit12on the observing side.

As illustrated inFIG.8, the control unit12of the information processing apparatus10B starts control of movement based on the plan information11E of the own vehicle (step S201). For example, the control unit12starts driving control of the driving unit130such that the own vehicle moves along the route L of the own vehicle indicated by the plan information11E. As a result, the mobile body100starts movement along the route L from the current position toward a target position. When the processing in step S201ends, the control unit12advances the processing to step S202.

The control unit12determines whether the own vehicle has arrived at the target position (step S202). For example, when the estimated self-position coincides with the target position, the control unit12determines that the own vehicle has arrived at the target position. When determining that the own vehicle has arrived at the target position (Yes in step S202), the control unit12ends the processing procedure illustrated inFIG.8. When determining that the own vehicle has not arrived at the target position (No in step S202), since the own vehicle is moving, the control unit12advances the processing to step S203.

The control unit12determines whether an observation request is received from the peripheral mobile body100via the communication unit120(step S203). When determining that the observation request is not received from the peripheral mobile body100(No in step S203), the control unit12returns the processing to step S202explained above. In addition, when determining that an observation request is received from the peripheral mobile body100(Yes in step S203), the control unit12advances the processing to step S204.

The control unit12specifies a sensor model of the peripheral mobile body100(step S204). For example, the control unit12specifies a sensor model of the peripheral mobile body100based on the sensor model information11G. After specifying the sensor model, the control unit12advances the processing to step S205.

The control unit12generates and updates the observation information11D (step S205). For example, the control unit12generates, based on the movement plan of the other mobile body100indicated by the plan information11E and the sensor model, the observation information11D indicating a relation between the probability of observing the other mobile body100around the own vehicle and the position of the own vehicle. For example, the control unit12generates the observation information11D by executing observation information generation processing explained below. The control unit12updates the observation information11D stored in the storing unit11to the generated observation information11D. The control unit12functions as the second generating unit12H explained above by executing the processing in step S205. When the processing in step S205ends, the control unit12advances the processing to step S206.

Based on the plan information11E and the observation information11D of the own vehicle, the control unit12plans the route L of the own vehicle moving to the target position and capable of observing the target mobile body100(step S206). For example, the control unit12plans the route L such that the own vehicle reaches the target position (a destination) while observing another mobile body100in the observation probability map of the observation information11D. After changing the movement plan of the own vehicle in the plan information11E based on the planned result, the control unit12advances the processing to step S207.

The control unit12starts control of movement based on the changed plan information11E (step S207). For example, the control unit12starts driving control of the driving unit130such that the own vehicle moves along the changed route L. As a result, the mobile body100starts movement along the route L with a high probability of the own vehicle reaching the target position (the destination) while observing the other mobile body100. When the processing in step S207ends, the control unit12advances the processing to step S208.

The control unit12observes the target mobile body100around the own vehicle (step S208). For example, the control unit12observes, based on the sensor data supplied from the sensor unit110, the observation region V of the mobile body100on which the observing side apparatus is mounted. When observing that the target mobile body100is present in the observation region V, the control unit12stores position information indicating a relation between relative positions of the observed mobile body100and the own vehicle in the storing unit11. When the processing in step S208ends, the control unit12advances the processing to step S209.

The control unit12determines, based on the observation result in step S208, whether the target mobile body100is detected (step S209). When determining that the target mobile body100is not observed (No in step S209), the control unit12advances the processing to step S210.

The control unit12determines whether the own vehicle has arrived at the target position (step S210). When determining that the own vehicle has not arrived at the target position (No in step S210), since the own vehicle is moving, the control unit12returns the processing to step S208explained above and continues the processing. When determining that the own vehicle has arrived at the target position (Yes in step S210), the control unit12ends the processing procedure illustrated inFIG.8.

Furthermore, when determining that the target mobile body100is observed (Yes in step S209), the control unit12advances the processing to step S211. The control unit12generates, based on the position of the observed target mobile body100and the self-position of the own vehicle, the correction information11H capable of specifying relative positions (step S211). For example, a scene illustrated inFIG.9illustrates the mobile body100B on which the observing side apparatus is mounted and the target mobile body100A on which the observed side apparatus is mounted. In this case, the control unit12specifies a global coordinate (X, Y) indicating the self-position of the own vehicle, a distance d from the own vehicle to the target mobile body100A, and an angle θ indicating a direction from the own vehicle to the target mobile body100A. The control unit12generates the correction information11H including position information including the global coordinates (X, Y), the distance d, and the angle θ and identification information of the observing side apparatus, and stores the correction information11H in the storing unit11. When the processing in step S211ends, the control unit12advances the processing to step S212.

The control unit12provides the correction information11H to the information processing apparatus10A of the target mobile body100via the communication unit120(step S212). For example, the correction information11H is provided to the information processing apparatus10A by transmitting the correction information11H from the communication unit120to the information processing apparatus10A at an observation request source. When the processing in step S212ends, the control unit12ends the processing procedure illustrated inFIG.8in a state in which the control of the movement of the own vehicle is continued.

[Example of the Observation Information Generation Processing]

FIG.10is a flowchart illustrating an example of observation information generation processing executed by the information processing apparatus10on the observing side according to the embodiment. A processing procedure illustrated inFIG.10is executed by the control unit12of the information processing apparatus10A in the processing in step S205illustrated inFIG.8. The observation information generation processing is, for example, processing for generating the observation information11D corresponding to a preset time range.

As illustrated inFIG.10, the control unit12of the information processing apparatus10B calculates a probability distribution in a movable range from a self-position of the own vehicle (step S251). For example, the control unit12calculates a self-position of the own vehicle on the observing side at each future time and calculates a probability distribution in the case in which the own vehicle is movable from the self-position. The control unit12calculates a probability distribution of an observation success rate of the peripheral mobile body100based on the sensor model information11G (step S252). The control unit12acquires the mobile body list information11F (step S253). Then, the control unit12executes the processing in step S254on each of the peripheral mobile bodies100indicated by the mobile body list information11F.

The control unit12calculates a probability distribution of the self-position of the peripheral mobile body100at the corresponding time based on the plan information11E (step S254). After storing the calculated probability distribution of the self-position of the peripheral mobile body100in the storing unit11in association with time, the control unit12advances the processing to step S255.

The control unit12determines whether the processing on the peripheral mobile body100has ended (step S255). For example, when the processing for all the peripheral mobile bodies100indicated by the mobile body list information11F is executed, the control unit12determines that the processing for the peripheral mobile bodies100has ended. When determining that the processing for the peripheral mobile body100has not ended (No in step S255), the control unit12advances the processing to step S256. The control unit12sets another peripheral mobile body100as a processing target (step S256) and returns the processing to step S254explained above.

In addition, when determining that the processing for the peripheral mobile body100has ended (Yes in step S255), the control unit12advances the processing to step S257. The control unit12calculates an observation probability map based on the probability distribution in the movable range of the own vehicle and the probability distribution in the movable range of the peripheral mobile body100(step S257). For example, the control unit12divides a space around the own vehicle into grids and scans the grids at each time, and calculates an observation probability map based on the probability distribution in the movable range of the own vehicle and the probability distribution in the movable range of the peripheral mobile body100. Then, after calculating the observation probability map at each time, the control unit12stores the corresponding time and the observation probability map in association with each other in the storing unit11. When the processing in step S257ends, the control unit12advances the processing to step S258.

The control unit12generates and updates the observation information11D including the observation probability map (step S258). For example, the control unit12generates the observation information11D including a plurality of observation probability maps corresponding to a plurality of times different from one another, and updates the observation information11D in the storing unit11. When the processing in step S258ends, the control unit12ends the processing procedure illustrated inFIG.10.

[Configuration of an Information Processing System According to the Embodiment]

FIG.11andFIG.12are diagrams for explaining an example of an operation of the information processing system1according to the embodiment.

In a scene ST1at time t1illustrated inFIG.11, the information processing system1includes the information processing apparatus10A mounted on the mobile body100A and the information processing apparatus10B mounted on the mobile body100B. The information processing apparatus10A plans a route La toward a target position Ga, and controls the movement of the mobile body100A to move along the route La. The information processing apparatus10B plans the route Lb toward the target position Gb and controls the movement of the mobile body100B such that the mobile body100B moves along the route Lb. Thereafter, the validity of an estimated self-position of the information processing apparatus10A has decreased and the information processing apparatus10A is functioning as an observed side apparatus. The validity of an estimated self-position of the information processing apparatus10B has not decreased and the information processing apparatus10B is functioning as an observing side apparatus.

In this case, the information processing apparatus10A on the observed side generates the observation target information11C indicating a probability of the own vehicle being observed from the peripheral mobile body100B. The information processing apparatus10A changes the route La based on the observation target information11C to move the own vehicle to a position where the peripheral mobile body100B is capable of observing the own vehicle. The information processing apparatus10A transmits an observation request to the peripheral information processing apparatus10B via the communication unit120.

When receiving the observation request from the information processing apparatus10A via the communication unit120, the information processing apparatus10B on the observing side generates observation information10D indicating a probability of observing the mobile body100A on which the information processing apparatus10A is mounted. The information processing apparatus10B changes, based on the observation information10D, the route Lb to move the mobile body100A to a position where the own vehicle is capable of observing the observation target mobile body100A. The information processing apparatus10B starts observation of the peripheral mobile body100.

Thereafter, in a scene ST2at time t2illustrated inFIG.12, the information processing apparatus10A on the observed side moves toward the target position Ga and along a changed route La-1on which the mobile body100B is capable of observing the own vehicle. The information processing apparatus10B on the observing side observes the peripheral mobile body100while moving toward the target position Gb and along a changed route Lb-1capable of observing the observation target mobile body100A. Then, after observing the target mobile body100A, the information processing apparatus10B generates the correction information11H capable of specifying relative positions of the observed mobile body100A and the mobile body100B, and provides the correction information11H to the information processing apparatus10A of the mobile body100A.

When acquiring the correction information11H from the information processing apparatus10B of the mobile body100B that has observed the own vehicle, the information processing apparatus10A on the observed side corrects the self-position of the own vehicle based on the correction information11H. Consequently, the information processing system1can move the mobile body100A of the information processing apparatus10A to be observed from the mobile body100B and correct the self-position of the mobile body100A with the information processing apparatus10A based on relative positions of the mobile body100B and the own vehicle. As a result, the information processing system1can support correction of estimated self-positions among the information processing apparatuses10mounted on the respective plurality of mobile bodies100. Therefore, a system configuration can be simplified without using an observation configuration.

In the information processing system1, the information processing apparatus10B on the observing side moves the mobile body100B to be capable of observing the mobile body100A. Consequently, the information processing system1can improve a probability of the mobile body100A on the observed side and the mobile body100B on the observed side encountering each other. Therefore, self-positions of the plurality of mobile bodies100can be quickly corrected.

[Example of Another Operation of the Information Processing System According to the Embodiment]

FIG.13andFIG.14are diagrams for explaining an example of another operation of the information processing system1according to the embodiment.

In a scene ST11at time t3illustrated inFIG.13, the information processing system1includes the information processing apparatus10A mounted on the mobile body100A, the information processing apparatus10B mounted on the mobile body100B, and the information processing apparatus10B mounted on the mobile body100C. The information processing apparatus10A plans a route La toward a target position Ga, and controls the movement of the mobile body100A to move along the route La. The information processing apparatus10B of the mobile body100B plans the route Lb toward the target position Gb and controls the movement of the mobile body100B to move along the route Lb. The information processing apparatus10B of the mobile body100C plans the route Lc toward the target position Gc and controls the movement of the mobile body100C to move along the route Lc.

Thereafter, the validity of an estimated self-position of the information processing apparatus10A has decreased and the information processing apparatus10A is functioning as an observed side apparatus. The validity of estimated self-positions of the information processing apparatuses10B of the mobile body100B and the mobile body100C has not decreased and the information processing apparatuses10B are functioning as observing side apparatuses.

In this case, the information processing apparatus10A on the observed side generates the observation target information11C indicating a probability of the own vehicle being observed from the peripheral mobile body100B and the mobile body100C. The information processing apparatus10A changes the route La to move, based on the observation target information11C, the own vehicle to a position where the peripheral mobile body100B and the peripheral mobile body100C are capable of observing the own vehicle. The information processing apparatus10A transmits an observation request to the information processing apparatus10B of each of the peripheral mobile body100B and the mobile body100C via the communication unit120.

When receiving the observation request from the information processing apparatus10A via the communication unit120, the information processing apparatus10B on the observing side generates observation information10D indicating a probability of observing the mobile body100A on which the information processing apparatus10A is mounted. The information processing apparatus10B of the mobile body100B changes, based on the observation information10D, the route Lb to move the own vehicle to a position where the own vehicle is capable of observing the observation target mobile body100A. The information processing apparatus10B of the mobile body100C changes, based on the observation information10D, the route Lc to move the own vehicle to a position where the own vehicle is capable of observing the observation target mobile body100A. The information processing apparatuses10B of the mobile body100B and the mobile body100C start observation of the peripheral mobile body100.

Thereafter, in a scene ST12at time t4illustrated inFIG.14, the information processing apparatus10A on the observed side moves toward the target position Ga and along the changed route La-2on which the mobile body100B is capable of observing the own vehicle. The information processing apparatus10B of the mobile body100B on the observing side observes the peripheral mobile body100while moving toward the target position Gb and along the changed route Lb-2capable of observing the observation target mobile body100A. The information processing apparatus10B of the mobile body100C on the observing side observes the peripheral mobile body100while moving toward the target position Gc and along the changed route Lc-2capable of observing the observation target mobile body100A.

In the scene ST12, the mobile body100A on the observed side is observed from both the mobile body100B and the mobile body100C. In this case, when observing the target mobile body100A, the information processing apparatuses10B of the mobile body100B and the mobile body100C generate the correction information11H capable of specifying relative positions of the observed mobile body100A and the own vehicle and provide the correction information11H to the information processing apparatus10A of the mobile body100A.

When acquiring the correction information11H from the information processing apparatuses10B of the mobile body100B and the mobile body100C that have observed the own vehicle, the information processing apparatus10A on the observed side corrects the self-position of the own vehicle based on the respective kinds of correction information11H. The information processing apparatus10A corrects the self-position of the own vehicle based on the self-positions of the mobile body100B and the mobile body100C. Consequently, the information processing system1can move the mobile body100A of the information processing apparatus10A to be observed from the mobile body100B and the mobile body100C and correct the self-position of the mobile body100A with the information processing apparatus10A based on the relative positions of the mobile body100B and the mobile body100C and the own vehicle. As a result, the information processing system1can support correction of estimated self-positions among the information processing apparatuses10mounted on the respective plurality of mobile bodies100. Therefore, a system configuration can be simplified without using an observation configuration.

In the information processing system1, the information processing apparatus10B on the observing side moves the mobile body100B to be capable of observing the mobile body100A. Consequently, the information processing system1can improve a probability of the mobile body100A on the observed side and the mobile body100B on the observed side encountering each other. Therefore, self-positions of the plurality of mobile bodies100can be quickly corrected.

[Modification (1) of the Embodiment]

For example, in the embodiment, the case in which the information processing apparatus10B on the observing side moves the own vehicle toward the observation target mobile body100A is explained. However, the present disclosure is not limited to this. For example, the information processing apparatus10B can be configured to provide the correction information11H without moving the own vehicle toward the observation target mobile body100A. Note that the information processing apparatus10A on the observed side is assumed to be the same as the embodiment.

[Processing Procedure of the Information Processing Apparatus on the Observing Side According to the Modification (1) of Embodiment]

FIG.15is a flowchart illustrating an example of a processing procedure executed by the information processing apparatus10on the observing side according to the modification (1) of the embodiment. The processing procedure illustrated inFIG.15is realized by the control unit12of the information processing apparatus10B on the observing side executing a program. The processing procedure illustrated inFIG.15is repeatedly executed by the control unit12on the observing side.

As illustrated inFIG.15, the control unit12of the information processing apparatus10B starts control of movement based on the plan information11E of the own vehicle (step S201). The control unit12determines whether the own vehicle has arrived at the target position (step S202). When determining that the own vehicle has arrived at the target position (Yes in step S202), the control unit12ends the processing procedure illustrated inFIG.15. When determining that the own vehicle has not arrived at the target position (No in step S202), since the own vehicle is moving, the control unit12advances the processing to step S203.

The control unit12determines whether an observation request is received from the peripheral mobile body100via the communication unit120(step S203). When determining that the observation request is not received from the peripheral mobile body100(No in step S203), the control unit12returns the processing to step S202explained above. In addition, when determining that the observation request is received from the peripheral mobile body100(Yes in step S203), the control unit12advances the processing to step S208.

The control unit12observes the target mobile body100around the own vehicle (step S208). The control unit12determines, based on the observation result in step S208, whether the target mobile body100is detected (step S209). When determining that the target mobile body100is not observed (No in step S209), the control unit12advances the processing to step S210.

The control unit12determines whether the own vehicle has arrived at the target position (step S210). When determining that the own vehicle has not arrived at the target position (No in step S210), since the own vehicle is moving, the control unit12returns the processing to step S208explained above and continues the processing. When determining that the own vehicle has arrived at the target position (Yes in step S210), the control unit12ends the processing procedure illustrated inFIG.15.

Furthermore, when determining that the target mobile body100is observed (Yes in step S209), the control unit12advances the processing to step S211. The control unit12generates, based on the position of the observed target mobile body100and the self-position of the own vehicle, the correction information11H capable of specifying relative positions (step S211). The control unit12provides the correction information11H to the information processing apparatus10A of the target mobile body100via the communication unit120(step S212). When the processing in step S212ends, the control unit12ends the processing procedure illustrated inFIG.15in a state in which the control of the movement of the own vehicle is continued.

[Example of an Operation of Information Processing System According to the Modification (1) of the Embodiment]

FIG.16andFIG.17are diagrams for explaining an example of the operation of the information processing system1according to the modification (1) of the embodiment.

In a scene ST21at time t5illustrated inFIG.16, the information processing system1includes the information processing apparatus10A mounted on the mobile body100A and the information processing apparatus10B mounted on the mobile body100B. The information processing apparatus10A plans a route La toward a target position Ga, and controls the movement of the mobile body100A to move along the route La. The information processing apparatus10B plans the route Lb toward the target position Gb and controls the movement of the mobile body100B such that the mobile body100B moves along the route Lb. Thereafter, the validity of an estimated self-position of the information processing apparatus10A has decreased and the information processing apparatus10A is functioning as an observed side apparatus. The validity of an estimated self-position of the information processing apparatus10B has not decreased and the information processing apparatus10B is functioning as an observing side apparatus.

In this case, the information processing apparatus10A on the observed side generates the observation target information11C indicating a probability of the own vehicle being observed from the peripheral mobile body100B. The information processing apparatus10A changes the route La based on the observation target information11C to move the own vehicle to a position where the peripheral mobile body100B is capable of observing the own vehicle. The information processing apparatus10A transmits an observation request to the peripheral information processing apparatus10B via the communication unit120.

When receiving the observation request from the information processing apparatus10A via the communication unit120, the information processing apparatus10B on the observing side, in a state in which the information processing apparatus10B moves along the route Lb, starts observation of the peripheral mobile body100without changing the route Lb along which the information processing apparatus10B moves.

Thereafter, in a scene ST22at time t6illustrated inFIG.17, the information processing apparatus10A on the observed side moves toward the target position Ga and along the changed route La-3on which the mobile body100B is capable of observing the own vehicle. The information processing apparatus10B on the observing side observes the peripheral mobile body100while moving along the route Lb. Then, after observing the target mobile body100A, the information processing apparatus10B generates the correction information11H capable of specifying relative positions of the observed mobile body100A and the mobile body100B, and provides the correction information11H to the information processing apparatus10A of the mobile body100A.

When acquiring the correction information11H from the information processing apparatus10B of the mobile body100B that has observed the own vehicle, the information processing apparatus10A on the observed side corrects the self-position of the own vehicle based on the correction information11H. Consequently, the information processing system1can move the mobile body100A of the information processing apparatus10A to be observed from the mobile body100B and correct the self-position of the mobile body100A with the information processing apparatus10A based on relative positions of the mobile body100B and the own vehicle. As a result, the information processing system1can support correction of estimated self-positions among the information processing apparatuses10mounted on the respective plurality of mobile bodies100. Therefore, a system configuration can be simplified without using an observation configuration.

The information processing system1can provide, to the information processing apparatus10A, the correction information11H based on an observation result of the mobile body100A without the information processing apparatus10B on the observing side changing a movement plan of the mobile body100B. As a result, the information processing system1can suppress an increase in the burden on the mobile body100B on the observing side and improve the probability of the mobile body100A on the observing side and the mobile body100B on the observing side encountering each other. Therefore, the self-positions of the plurality of mobile bodies100can be quickly corrected.

[Modification (2) of the Embodiment]

In the present embodiment, the case in which the information processing system1includes the information processing apparatus10A and the information processing apparatus10B in order to distinguish the observed side apparatus and the observing side apparatus is explained. However, the present disclosure is not limited this. For example, in the information processing system1, the observed apparatus and the observing side apparatus can be components of the same information processing apparatus10.

FIG.18is a diagram for explaining an example of the information processing apparatus10according to a modification (2) of the embodiment. As illustrated inFIG.18, the mobile body100includes the sensor unit110, the communication unit120, the driving unit130, and the information processing apparatus10(10A). The sensor unit110, the communication unit120, the driving unit130, and the information processing apparatus10A are connected to be capable of exchanging data and signals.

The information processing apparatus10includes the storing unit11and the control unit12. The storing unit11and the control unit12are connected to be capable of exchanging data and information. The control unit12includes functional units such as the estimating unit12A, the movement control unit12B, the acquiring unit12C, the correcting unit12D, the first generating unit12E, the observing unit12F, the providing unit12G, and the second generating unit12H. That is, the information processing apparatus10may be configured to operate as an observed side apparatus when an estimated self-position is invalid and operate as an observing side apparatus when the estimated self-position is valid.

The modification (1) and the modification (2) of the embodiment explained above are examples. Various changes and applications are possible.

The information processing apparatus10according to the embodiment explained above may be realized by, for example, a computer1000having a configuration illustrated inFIG.19. In the following explanation, the information processing apparatus10according to the embodiment is explained as an example.FIG.19is a hardware configuration diagram illustrating an example of the computer1000that realizes the functions of the information processing apparatus10. The computer1000includes a CPU1100, a RAM1200, a read only memory (ROM)1300, a hard disk drive (HDD)1400, a communication interface1500, and an input/output interface1600. The units of the computer1000are connected by a bus1050.

The CPU1100operates based on a program stored in the ROM1300or the HDD1400and controls the units. For example, the CPU1100develops a program stored in the ROM1300or the HDD1400in the RAM1200and executes processing corresponding to various programs.

The ROM1300stores a boot program such as a basic input output system (BIOS) to be executed by the CPU1100when the computer1000is started, a program relying on hardware of the computer1000, and the like.

The HDD1400is a computer-readable recording medium that non-transiently records a program to be executed by the CPU1100, data used by the program, and the like. Specifically, the HDD1400is a recording medium that records an information processing program according to the present disclosure, which is an example of program data1450.

The communication interface1500is an interface for the computer1000to be connected to an external network1550(for example, the Internet). For example, the CPU1100receives data from other equipment or transmits data generated by the CPU1100to the other equipment via the communication interface1500.

The input/output interface1600is an interface for connecting an input/output device1650and the computer1000. For example, the CPU1100receives data from an input device such as a keyboard or a mouse via the input/output interface1600. In addition, the CPU1100transmits data to an output device such as a display, a speaker, or a printer via the input/output interface1600. Furthermore, the input/output interface1600may function as a media interface that reads a program or the like recorded in a predetermined recording medium (a medium). The medium is, for example, an optical recording medium such as a digital versatile disc (DVD), a magneto-optical recording medium such as a magneto-optical disk (MO), a tape medium, a magnetic recording medium, or a semiconductor memory.

For example, when the computer1000functions as the information processing apparatus10according to the embodiment, the CPU1100of the computer1000executes a program loaded on the RAM1200to realize the functions of the estimating unit12A, the movement control unit12B, the acquiring unit12C, the correcting unit12D, the first generating unit12E, the observing unit12F, the providing unit12G, the second generating unit12H, and the like. In addition, the HDD1400stores a program according to the present disclosure and data in the storing unit11. Note that the CPU1100reads the program data1450from the HDD1400and executes the program data1450. However, as another example, the CPU1100may acquire these programs from other devices via the external network1550.

The preferred embodiment of the present disclosure is explained in detail above with reference to the accompanying drawings. However, the technical scope of the present disclosure is not limited to such an example. It is evident that those having the ordinary knowledge in the technical field of the present disclosure can arrive at various alterations or corrections within the category of the technical idea described in claims. It is understood that these alterations and corrections naturally belong to the technical scope of the present disclosure.

The effects explained in this specification are only explanatory or illustrative and are not limiting. That is, the technique according to the present disclosure can achieve other effects obvious to those skilled in the art from the description of this specification together with the effects or instead of the effects.

Furthermore, it is also possible to create a program for causing hardware such as a CPU, a ROM, and a RAM incorporated in a computer to exert functions equivalent to the components of the information processing apparatus10and a computer-readable recording medium recording the program can also be provided.

Furthermore, the steps relating to the processing of the information processing apparatus10of the present specification do not always need to be processed in time series according to the order explained in the flowcharts. For example, the steps relating to the processing of the information processing apparatus10may be processed in order different from the order described in the flowcharts or may be processed in parallel.

The information processing system1includes the information processing apparatus (the first information processing apparatus)100A that estimates a self-position of the mobile body (the first mobile body)10A and the information processing apparatus (the second information processing apparatus)100B that estimates a self-position of the mobile body (the second mobile body)10B. The information processing apparatus10A includes the movement control unit12B that performs control for moving, based on the observation target information11C indicating a probability of the mobile body100A being observed from the mobile body100B, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A, the acquiring unit12C that acquires the correction information11H capable of specifying relative positions of the mobile body100A and the mobile body100B from the mobile body100B that has observed the mobile body100A, and the correcting unit12D that corrects the self-position of the mobile body100A based on the correction information11H. The information processing apparatus10B includes the observing unit12F that observes the mobile body100A around the mobile body100B, and the providing unit12G that provides correction information11H capable of specifying relative positions of the observed mobile body100A and the mobile body100B to the information processing apparatus10A of the mobile body100A.

Consequently, in the information processing system1, the information processing apparatus10A moves, based on the observation target information11C indicating a probability of the mobile body100A being observed from the mobile body100B, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A. The information processing apparatus10A can correct the self-position of the mobile body100A based on the correction information11H acquired from the mobile body100B that has observed the mobile body100A. Furthermore, after observing the mobile body100A around the mobile body100B, the information processing apparatus10B can provide the correction information11H capable of specifying relative positions of the observed mobile body100A and the mobile body100B to the information processing apparatus10A of the mobile body100A. As a result, in the information processing system1, the information processing apparatus10A moves the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A. Therefore, the information processing apparatuses10mounted on the plurality of mobile bodies100can support correction of the self-positions of the other mobile bodies100one another.

The information processing apparatus10A of the information processing system1further includes the first generating unit12E that generates observation target information11C indicating a relation between a probability of the mobile body100A being observed from the mobile body100B and the position of the mobile body100A based on a movement plan of the mobile body100B. The movement control unit12B performs control for moving, based on the generated observation target information11C, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A.

Consequently, in the information processing system1, the information processing apparatus10A can generate the observation target information11C based on the movement plan of the peripheral mobile body100B and move, based on the observation target information11C, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A. As a result, in the information processing system1, the information processing apparatus10A moves the mobile body100A based on the movement plan of the mobile body100B, whereby a probability of the mobile body100B observing the mobile body100A can be improved. Furthermore, in the information processing system1, since the information processing apparatus10B on the observing side does not need to consider the position of the mobile body100on the observed side, it is possible to suppress a load concerning correction of a self-position.

In the information processing system1, the observation target information11C is information indicating, in time series, information indicating a relation between the probability of the mobile body100A being observed from the mobile body100B and the position of the mobile body100A.

Consequently, the information processing system1can move, based on the time-series relation between the probability and the position indicated by the observation target information11C, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A. As a result, the information processing system1can further improve the probability of the mobile body100B observing the mobile body100A. Therefore, the self-position of the mobile body100A can be quickly corrected.

In the information processing system1, the observation target information11C includes information indicating a probability of the mobile body100A being observed from each of the plurality of mobile bodies100B.

Consequently, the information processing system1can move, based on the probability of the mobile body100A being observed from each of the plurality of mobile bodies100B, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A. As a result, the information processing system1can further improve the probability of the mobile body100A being observed from the mobile body100B. Therefore, the self-position of the mobile body100A can be quickly corrected.

In the information processing system1, the movement control unit12B of the information processing apparatus10A performs control for moving, based on a target position of the mobile body100A and the observation target information11C, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A.

Consequently, the information processing system1can move, based on the target position of the mobile body100A and a probability of the information processing apparatus10A being observed from the peripheral mobile body100B, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A. As a result, the information processing system1can move the mobile body100A to a position where the mobile body100A is easily observed from the mobile body100B on the observing side while moving the mobile body100A toward the target position. Therefore, it is possible to correct the self-position by suppressing a decrease in efficiency of the mobile body100A on the observed side.

In the information processing system1, the movement control unit12B of the information processing apparatus10A does not perform, when it is determined that the self-position of the mobile body100A is valid, control for moving the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A and performs, when it is determined that the self-position of the mobile body100A is invalid, control for moving the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A.

Consequently, the information processing system1does not move, when the self-position of the mobile body100A is valid, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A and can move, when the self-position of the mobile body100A is invalid, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A. As a result, when the self-position of the mobile body100A is invalid, the information processing system1can move the mobile body100to a position where the mobile body100A is easily observed from the mobile body100B on the observing side. Therefore, it is possible to correct the self-position by suppressing a decrease in movement efficiency of the mobile body100on the observed side.

In the information processing system1, the information processing apparatus10B on the observing side further includes the second generating unit12H that generates the observation information11D indicating a probability of observing the mobile body100A around the mobile body100B, and the movement control unit12B that performs control for moving, based on the observation information11D, the second mobile body to a position where the second mobile body is capable of observing the mobile body100A.

Consequently, the information processing system1can generate the observation information11D indicating the probability of observing the mobile body100A around the mobile body100B and move, based on the observation information11D, the mobile body100B to a position where the mobile body100B is capable of observing the mobile body100A. As a result, the information processing system1can improve the probability of the mobile body100B observing the mobile body100A by the information processing apparatus10B moving the mobile body100B based on the observation probability. Furthermore, since the information processing system1does not need to change a moving route of the information processing apparatus10A on the observed side, it is possible to suppress a load concerning correction of a self-position.

In the information processing system1, the observation information11D is information indicating a relation among the probability of observing the mobile body100A around the mobile body100B, the position of the mobile body100A, and a map in time series.

Consequently, the information processing system1can move, based on the time-series relation between the probability and the position indicated by the observation information11D, the mobile body100B to a position where the mobile body100B is capable of observing the mobile body100A. As a result, the information processing system1can further improve the probability of the mobile body100B observing the mobile body100A. Therefore, the self-position of the mobile body100A can be quickly corrected.

In the information processing system1, the movement control unit12B of the information processing apparatus10B performs control for moving, based on the target position of the mobile body100B and the observation information11D, the mobile body100B to a position where the mobile body100B is capable of observing the mobile body100A.

Consequently, the information processing system1can move, based on the target position of the mobile body100B and the probability of the information processing apparatus10B observing the mobile body100A, the mobile body100B to a position where the mobile body100B is capable of observing the mobile body100A. As a result, the information processing system1can move the mobile body100B to a position where the mobile body100B can easily observe the mobile body100A on the observed side while moving the mobile body100B toward the target position. Therefore, it is possible to suppress a decrease in efficiency of the mobile body100B on the observing side and support correction of a self-position.

In the information processing system1, the movement control unit12B of the information processing apparatus10B performs, when the observation request from the mobile body100A is acquired, control for moving the mobile body100B to a position where the mobile body100B is capable of observing the mobile body100A and does not perform, when the observation request from the mobile body100A is not acquired, control for moving the mobile body100B to a position where the mobile body100B is capable of observing the mobile body100A.

Consequently, the information processing system1does not move, when the observation request from the mobile body100A is not acquired, the mobile body100B to a position where the mobile body100B is capable of observing the mobile body100A and can move, when the observation request from the mobile body100A is not acquired, the mobile body100B to a position where the mobile body100B is capable of observing the mobile body100A. As a result, when the observation request is acquired from the mobile body100A, the information processing system1can move the mobile body100B on the observing side to a position where the mobile body100A is capable of observing the mobile body100B. Therefore, it is possible to suppress a decrease in the movement efficiency of the mobile body100B on the observing side and support correction of a self-position.

The information processing apparatus10A includes the estimating unit12A that estimates a self-position of a mobile body100A on which the own apparatus is mounted, the movement control unit12B that performs control for moving, based on the observation target information11C indicating a probability of the mobile body100A being observed from the mobile body100B, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A, the acquiring unit12C that acquires the correction information11H capable of specifying relative positions of the mobile body100A and the mobile body100B from the mobile body100B that has observed the mobile body100A, and the correcting unit12D that corrects the self-position of the mobile body100A based on the correction information11H.

Consequently, the information processing apparatus10A moves, based on the observation target information11C indicating the probability of the mobile body100A being observed from the mobile body100B, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A. The information processing apparatus10A can correct the self-position of the mobile body100A based on the correction information11H acquired from the mobile body100B that has observed the mobile body100A. As a result, the information processing apparatus10A can correct a self-position in cooperation with the information processing apparatus10mounted on the mobile body100B by moving the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A.

The information processing apparatus10B includes the estimating unit12A that estimates a self-position of the mobile body100B on which the own apparatus is mounted, the observing unit12F that observes the mobile body100A around the mobile body100B, and the providing unit12G that provides the correction information11H capable of specifying relative positions of the observed mobile body100A and the mobile body100B to the information processing apparatus10A of the mobile body100A.

Consequently, when observing the mobile body100A around the mobile body100B, the information processing apparatus10B can provide the correction information11H capable of specifying relative positions of the observed mobile body100A and the mobile body100B to the information processing apparatus10A of the mobile body100A. As a result, the information processing apparatus10B provides the correction information11H to the information processing apparatus10A of the observed mobile body100A. Therefore, the information processing apparatuses10mounted on the plurality of mobile bodies100can support correction of the self-positions of the other mobile bodies100one another.

An information processing program is a program for realizing estimating a self-position of the mobile body100A on which the own apparatus is mounted, performing control for moving, based on the observation target information11C indicating a probability of the mobile body100A being observed from the mobile body100B, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A, acquiring the correction information11H capable of specifying relative positions of the mobile body100A and the mobile body100B from the mobile body100B that has observed the mobile body100A, and correcting the self-position of the mobile body100A based on the correction information11H.

Consequently, the information processing program moves, based on the observation target information11C indicating the probability of the mobile body100A being observed from the mobile body100B, the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A. The information processing program can correct the self-position of the mobile body100A based on the correction information11H acquired from the mobile body100B that has observed the mobile body100A. As a result, the information processing program can correct the self-position in cooperation with the information processing apparatus10mounted on the mobile body100B by moving the mobile body100A to a position where the mobile body100B is capable of observing the mobile body100A.

The information processing program is a program for realizing estimating a self-position of the mobile body100B on which the own apparatus is mounted, observing the mobile body100A around the mobile body100B, and providing the correction information11H capable of specifying relative positions of the observed mobile body100A and the mobile body100B to the information processing apparatus10A of the mobile body100A.

Consequently, when observing the mobile body100A around the mobile body100B, the information processing program can provide the correction information11H capable of specifying relative positions of the observed mobile body100A and the mobile body100B to the information processing apparatus10A of the mobile body100A. As a result, the information processing program provides the correction information11H to the information processing apparatus10A of the observed mobile body100A. Therefore, the information processing apparatuses10mounted on the plurality of mobile bodies100can support correction of the self-positions of the other mobile body100one another.

Note that the following configurations also belong to the technical scope of the present disclosure.

An information processing system comprising:

a first information processing apparatus that estimates a self-position of a first mobile body; and

a second information processing apparatus that estimates a self-position of a second mobile body, wherein

the first information processing apparatus includes:

a movement control unit that performs control for moving, based on observation target information indicating a probability of the first mobile body being observed from the second mobile body, the first mobile body to a position where the second mobile body is capable of observing the first mobile body;

an acquiring unit that acquires correction information capable of specifying relative positions of the first mobile body and the second mobile body from the second mobile body that has observed the first mobile body; and

a correcting unit that corrects the self-position of the first mobile body based on the correction information, and

the second information processing apparatus includes:

an observing unit that observes the first mobile body around the second mobile body; and

a providing unit that provides the correction information capable of specifying relative positions of the observed first mobile body and the second mobile body to the first information processing apparatus of the first mobile body.

The information processing system according to (1), wherein

the first information processing apparatus further includes: a generating unit that generates, based on a movement plan of the second mobile body, the observation target information indicating a relation between a probability of the first mobile body being observed from the second mobile body and a position of the first mobile body, and

the movement control unit performs control for moving, based on the generated observation target information, the first mobile body to the position where the second mobile body is capable of observing the first mobile body.

The information processing system according to (2), wherein

the observation target information is information indicating information indicating a relation between the probability and the position in time series.

The information processing system according to (3), wherein

the observation target information includes information indicating a probability of the first mobile body being observed from each of a plurality of the second mobile bodies.

The information processing system according to (4), wherein

the movement control unit performs control for moving, based on a target position of the first mobile body and the observation target information, the first mobile body to the position where the second mobile body is capable of observing the first mobile body.

The information processing system according to (5), wherein

the movement control unit

does not perform, when it is determined that the self-position of the first mobile body is valid, control for moving the first mobile body to the position where the second mobile body is capable of observing the first mobile body, and

performs, when it is determined that the self-position of the first mobile body is invalid, the control for moving the first mobile body to the position where the second mobile body is capable of observing the first mobile body.

The information processing system according to (1), wherein

the second information processing apparatus further includes:

a second generating unit that generates observation information indicating a probability of observing the first mobile body around the second mobile body; and

a second movement control unit that performs control for moving, based on the observation information, the second mobile body to a position where the second mobile body is capable of observing first mobile body.

The information processing system according to (7), wherein

the observation information is information indicating a relation among the probability, the position, and a map in time series.

The information processing system according to (8), wherein

the second movement control unit performs control for moving, based on a target position of the second mobile body and the observation information, the second mobile body to the position where the second mobile body is capable of observing the first mobile body.

The information processing system according to (9), wherein

the second movement control unit

performs, when an observation request from the first mobile body is acquired, control for moving the second mobile body to the position where the second mobile body is capable of observing the first mobile body, and

does not perform, when the observation request from the first mobile body is not acquired, the control for moving the second mobile body to the position where the second mobile body is capable of observing the first mobile body.

An information processing apparatus comprising:

an estimating unit that estimates a self-position of a first mobile body on which an own apparatus is mounted;

a movement control unit that performs control for moving, based on observation target information indicating a probability of the first mobile body being observed from a second mobile body, the first mobile body to a position where the second mobile body is capable of observing the first mobile body;

an acquiring unit that acquires correction information capable of specifying relative positions of the first mobile body and the second mobile body from the second mobile body that has observed the first mobile body; and

a correcting unit that corrects the self-position of the first mobile body based on the correction information.

An information processing apparatus comprising:

an estimating unit that estimates a self-position of a second mobile body on which an own apparatus is mounted;

an observing unit that observes a first mobile body around the second mobile body; and

a providing unit that provides correction information capable of specifying relative positions of the observed first mobile body and the second mobile body to a first information processing apparatus of the first mobile body.

An information processing program for causing a computer to realize:

estimating a self-position of a first mobile body on which an own apparatus is mounted;

performing control for moving, based on observation target information indicating a probability of the first mobile body being observed from a second mobile body, the first mobile body to a position where the second mobile body is capable of observing the first mobile body;

acquiring correction information capable of specifying relative positions of the first mobile body and the second mobile body from the second mobile body that has observed the first mobile body; and

correcting the self-position of the first mobile body based on the correction information.

An information processing program for causing a computer to realize:

estimating a self-position of a second mobile body on which an own apparatus is mounted;

observing a first mobile body around the second mobile body; and

providing correction information capable of specifying relative positions of the observed first mobile body and the second mobile body to a first information processing apparatus of the first mobile body.

An information processing method comprising:

estimating, by a computer, a self-position of a first mobile body on which an own apparatus is mounted;

performing control, by the computer, for moving, based on observation target information indicating a probability of the first mobile body being observed from the second mobile body, the first mobile body to a position where the second mobile body is capable of observing the first mobile body;

acquiring, by the computer, correction information capable of specifying relative positions of the first mobile body and the second mobile body from the second mobile body that has observed the first mobile body; and

correcting, by the computer, the self-position of the first mobile body based on the correction information.

An information processing method comprising:

estimating, by a computer, a self-position of a second mobile body on which an own apparatus is mounted;

observing, by the computer, a first mobile body around the second mobile body; and

providing, by the computer, correction information capable of specifying relative positions of the observed first mobile body and the second mobile body to a first information processing apparatus of the first mobile body.

REFERENCE SIGNS LIST