For a autonomous or semi-autonomous robot to navigate in a crowded environment safely, having a prediction of future behaviors of surrounding agents is unavoidable. Hence the Crowd Prediction module is in charge of estimating plausible future locations of these agents by considering possible interactions with each other and with environment as well. The output of the system is a set of predicted trajectories and could be considered in the navigation process in certain situations.
In CrowdBot we have designed and implemented a data-driven prediction system that can learns from the observed trajectories in the environment to improve the prediction. This system that is called “Social Ways” uses generative adversarial networks to map a given input of N observed trajectories corresponding to N detected agents into K various sets of N predicted trajectories.
We use recurrent neural networks to encode the agents’ trajectories. In parallel 3 simple interaction features between pairs of agents are computed, including euclidean distance, bearing angle and the distance of closest approach (i.e. the smallest distance two agents would reach in the future if both maintain their current velocity). The interaction features pass through a attention-pooling layer, where they are assigned weight values between zero and one, that indicate how much each interaction is impactful in prediction of a certain agent.
How Virtual Reality can help robots navigating crowds?
It is crucial to evaluate the capacity of robots to move safely in close proximity with humans. But testing such capacities in real conditions may raise risks of collisions between the robot and the experimenters or the participants of tests. To avoid such risk, CrowdBot is exploring the use of Virtual Reality to perform such tests. The principle is illustrated above: whilst the robot and the human remain physically separated, both the robot and the human perceive one another as if they were face to face, as illustrated on the right image.