This research area explores the use of computational geometry to solve various kinds of robotics problems such as path planning, environment coverage, line formation and problems that are visibility-related.

Honours project Justin Laalo

Collision Avoidance in Dynamic Environments

This project investigated an algorithm to move a robot from one location to another as quickly as possible in an environment with predictable moving obstacles. The robot moved along a grid and needed to calculate when to wait, when to move forward, and when to backtrack based on the moving obstacles.

Simulation of many small cube-shaped robots reconstructing a 3D environment
Honours Project Lukas McClelland

Cooperative Path Finding With Swarm Robots

This project examined how to maximize the efficiency of a robot swarm for back-and-forth package delivery. Each robot searches for an unknown goal location as they take note of their exact path travelled. Once a robot finds the goal, it heads back to the start location to get items to transfer. It examines the path it traversed and shrinks it by talking note of shortcuts when it notices that it crossed its own path. Upon encountering other robots, it communicates the solution path to them and they compare path shortcuts to optimize ever further. Over time, all robots end up travelling the most optimal path that was found, thereby making the swarm more efficient in their back-and-forth travels.

A model formed from stero cameras
Ph.D. Thesis

Calculating Weighted Shortest Paths on Polyhedral Surfaces

Outdoor robots must be able to cope with various types of terrain (e.g., asphalt, grass, dirt, sand, snow). The terrain surface will affect the required time and energy for a robot to travel from one point to another. We have been investigating algorithms to compute efficient shortest paths between two points on various polyhedral surfaces.

Shortest Weighted Paths

Mobile robots must also take into account the slope of the terrain as it navigates along a path. Slopes too steep are either impossible or dangerous for most robots to climb. Therefore, in addition to computing paths that take into account the terrain type, we also developed algorithms that take into account the slope of the path solutions. Such paths are called shortest anisotropic paths. The solutions are quite different and allow the robot safer travel.

Anisotropic Shortest Paths

Finally, since terrain data is often quite large (e.g., potentially terabytes of data), it is extremely time-consuming to process the information with a single computer/processor. We therefore developed distributed computing algorithms for computing these terrain paths by allowing multiple computers/processors to share the workload in computing the solutions.

Parallel Computation of Shortest Paths
Research Project

Calculating an Efficient Meeting Location for a Team of Robots On a Weighted Terrain Surface

Mobile robots have a limited amount of energy (i.e., battery, gasoline, propane, etc...). Therefore, they are limited in the distance that they are able to travel before their energy runs out. Various factors such as terrain steepness and terrain type weigh heavily on energy usage. Consider a team of robots dropped into a terrain via parachute at various locations. Assume that these robots need to meet together in order to accomplish their task at hand. We have been developing algorithms to take into account the various terrain factors in order to compute an efficient meeting location for these robots that will minimize the total energy usage of the team, thereby maximizing the amount of remaining energy (e.g., battery power) at the meeting location.

Optimal meeting point in a terrain
Honours Project Frank Perks

An interactive Application for Demonstrating 2D Roadmap-Based Path Planning Algorithms

In robotics one common/complex navigation problem is to determine a safe and efficient path for a robot to travel along between two locations. 2D Roadmap-based path planning algorithms are a group of algorithms that are utilized when we have full knowledge of the robots environment. This project involved the creation of an interactive application for the purpose of demonstrating how various 2D roadmap-based path planning algorithms work. Various decomposition methods algorithms were tested based on triangulations, Voronoi diagram decomposition, grid sampling and probabilistic algorithms using rapidly exploring random trees.

Various roadmap-based shortest path algorithms
Honours project Mladen Gavrilovic

Heuristic Path Determination in Partially Known 3D Terrains

This project investigated algorithms for determining efficient paths from one location to another on a terrain surface based on limited knowledge of the terrain. That is, assume that a robot is standing at one location on a terrain and it has a kind of laser range finder that lets it map a small portion of the terrain nearby in all directions. The problem is to try and head efficiently towards a goal location by computing a "best guess" partial path based on the current limited terrain knowledge. As the robot moves towards the goal, it obtains new terrain readings and formulates additional "best-guess" paths.

Heuristic path planning for partially known terrain
Honours project Chang Huang

Polygon Path Coverage Algorithms

Assuming a fixed-width circular robot, we implemented an algorithm that will allow the robot to cover the interior of a polygon by making a lap around the polygon and then working itself inwards by computing recursively a smaller polygon(s) representing the uncovered areas. In the image below, the purple line indicates the path that the robot travelled, while the green lines represent the smaller recursive polygons that are covered in turn. The blue portions are unreachable areas of the environment, which is defined by the robot's thickness.

Polygon path-coverage simulation
Honours project Damien Dery

Partitioning Simple Polygons

This project investigated various strategies for determining efficient decomposition of a polygonal environment in order to evenly distribute the amount of environment that each robot is responsible for. In the image below, the environment (e.g., building schematic) is decomposed into 4 colored areas which would be assigned to individual robots for task purposes. Various techniques for decomposing the environment were investigated based on attempts to equalize the area, perimeter, maximum distance across or number of triangular regions that each robot would need to cover.

Path partioning algorithm snapshot
Honours project Brian Herron

Patrolling Polygons

This project incorporated two previous projects by first determining an efficient decomposition of a polygonal environment and then assigning portions of the environment to individual robots for them to cover their portion for security or cleaning tasks. In the image below, the environment (e.g., building schematic) is decomposed into 10 colored areas which would be assigned to individual robots.

Snapshot of polygon patrol paths
Honours Project Brett Melbourne

Simulation of Robots in a Line Formation Travelling over a 3D Landscape

In this project, we developed algorithms to allow groups of robots to travel on a 3D surface while maintaining line formation. While travelling, each robot needed to remain within "line-of-sight" with their neighbours on the line. This allows the team to ensure that any defective or malfunctioning robots are detected along the way so that no robot gets lost.

Snapshot of computed line formation paths
Honours Project Raymond Dang

Computing Efficient Locations for Guarding Treasures Among Simple Polygons

Consider an unbounded (i.e., open) environment with some obstacles. Imagine a "treasure" that must be guarded from anyone approaching. In this project, we developped an algorithm to compute efficient locations for guards to stand at in order to protect the treasure from any incoming robbers. The algorithm attempts to find a minimum amount of "imaginary fencing" lines that will enclose the treasure and then places a sufficient number of guards along the fence pieces at "arms-length" distance from one another so that they are able to prevent any access through the imaginary fence line.

Snapshot of guard placements
Honours Project Perry Manashe

Estimating the Geodesic Center of Guards in a Simple Polygons

This project dealt with trying to find the geodesic center of a group of robots (points) placed inside a simple polygon. The geodesic center is the point within the polygon where all the robots should move such that the maximum distance travelled (completely within the polygon) by each of the robots is minimized. This will be an optimal meeting point for a group or robots if the goal is to ensure that each robot arrives at the meeting location with the maximum amount of power still remaining in its battery or gas tank.

Snapshot showing calculated geodesic center
Graduate Research Project

Guard Placement in Rectilinear Polygons

This project involved implementing an algorithm for placing guards in a simple rectilinear polygon. I implemented this in the Computational Geometry Workbench which was organized by Prof. J-R. Sack. The algorithm involved performing a plane sweep to create a quadrileteralization of the polygon and then coloring the graph representing the dual tree of this newly created subdivision. The image above is a scan of a printout of a snapshot from the workbench showing a quadrilateralization of a rectilinear polygon.

Snapshot showing calculated geodesic center
← Back to Research