Skip to content

Video Script

Yohan John edited this page Sep 19, 2023 · 8 revisions

Intro/Motivation

Hello, my name is Yohan John, and I am excited to share our work on robotic surveillance in an adversarial setting. We introduce RoSSO, a Python package for optimizing Markov chains that represent stochastic patrol strategies. More details on the value proposition of this software are given in the manuscript. I'm currently on the landing page for the repository on GitHub. We can see the top level of the file structure and the README below. Documentation and examples for installing and using the package are provided. With that, I will jump to a demonstration of how the optimized strategies from RoSSO could be deployed.

Single-Robot Results

In the bottom-left, we have a heatmap of the optimized Markov chain from RoSSO using the Stackelberg game metric that is presented in the manuscript. This metric yields patrol strategies that balance unpredictability and speed of movement around the patrol area. We present results on a map that represents the central police district in downtown San Francisco. The 12 highlighted intersections are high crime areas that require patrolling. The mobile robot patroller starts at intersection 0, and therefore row 0 of the Markov chain is highlighted. The W matrix contains the travel times in minutes between all pairs of intersections. At the top, we have a random number generator and the current time step.

First, the robot generates a random number which can be mapped to a destination using the transition probabilities from row 0. In this case, intersection 7 is identified. If we skip forward in time 5 minutes, the robot arrives at intersection 7. Now the process is repeated and intersection 8 is chosen. The robot travels there in 9 minutes. Repeating the process, we see that the robot remains at intersection 8 for a minute before departing for intersection 5. Continuing the procedure, the robot eventually returns to intersection 0. We note that the patrol strategy is computed offline, and the robot simply needs to store it and generate random numbers to create patrols. This is a flexible approach that can be used to generate patrols of any length and with any starting point.

Multi-Robot Results

Now we present results from the novel multi-robot Stackelberg game formulation proposed in the manuscript. We can see that each robot has its own Markov chain and random number generator. This is a fully distributed approach that does not require any communication. Both robots start at intersection 0. Immediately, the green robot departs for the northern half of the district while the red robot remains in the south. Evolving forward in time, we notice a soft partitioning of the patrol area between the robots. Examining the patrol strategies, we can see that the red robot has a bias towards intersections 0-4, 6, and 7 while the green robot is biased towards intersections 5, and 8-11. This behavior arises naturally without a priori specification and takes the travel times into account. This formulation is an interesting alternative to cyclic or prescribed partition approaches to multi-robot patrolling. Thank you for your time and consideration.

Old

In this video, we will briefly walk through the codebase on GitHub and then demonstrate how the optimized strategies from RoSSO could be deployed in practice. With that, I will hand things over to my co-author Connor Hughes to talk more about RoSSO.

Clone this wiki locally