dc.description.abstract | There is a large body of research into finding short (if not shortest) paths in a wide variety of environments including graphs, polygons and the two dimensional plane with polygonal obstacles, to name just a few. Much of this research has been focussed on moving a single (possibly complex) entity through the environment under a variety of cost metrics. In recent years, relatively inexpensive robots have become more accessible, ranging from basic kits to complete units such as the Sony AiboTM. At the same time, virtual environments have been increasing in sophistication. For the past decade or so, there has been research interest (for example RoboCup) in robots or agents (in both real and virtual environments) acting in teams rather than in isolation. In most cases, team members will need to communicate in some way in order to complete their tasks. While a variety of communication mechanisms exist, an easy to understand abstraction for communication is line-of-sight. If two entities can see each other they can communicate. For example, infra-red or gesture based communication. In this thesis, we examine a question which combines teams of agents, visibility and short paths. Consider a number of agents (moving entities) which need to move from one location (a start point) to another (a target point), while keeping each other in sight. For example, two people wish to travel from their places of work, to their homes, while keeping an eye on each other for safety reasons. We wish to minimise the distance the agents travel, but preserve visibility. We abstract this situation to have the agents moving inside a simple polygon. A problem instance in this domain consists of a simple polygon as well as start and target points for each of the agents. A solution to an instance consists of a path for each of the agents and a schedule for moving along those paths such that visibility is preserved. An ideal solution is one which uses the shortest paths between each start and target point. The start sightline S is the line segment joining the start points, while the target sightline T is the line joining the target points. When agents move at the same constant speed, we will show that ideal solutions always exist if S and T do not cross. If S and T do cross, then we show how to determine if an ideal solution exists. For cases where an ideal solution exists, we show how to produce it. We term an instance with two agents represented by points, moving inside a polygon in R2, an MVPP(Mutually Visible Path Problem). We provide algorithms to produce schedules in time linear in the number of vertices of the polygon and the size of the schedule. In cases where an ideal solution does not exist, we show how to produce a solution with length arbitrarily close to that of the ideal solution. We also show that a small modification is enough to allow all instances to have ideal solutions. Specifically, allowing the agents to choose two movement speeds is sufficient to allow ideal solutions for the few pathological cases where visibility is normally too constrained to allow a solution. An MVPP-n is an instance containing n agents where the start points for the agents are collinear (the same applies to the target points). We consider two forms of visibility constraint: the complete constraint and the connected constraint. Under these conditions we show that the majority of instances admit either an ideal solution or one which approximates the ideal. We show how to produce solutions in these cases. We do not know if all instances which do not admit an ideal solution will admit an approximation instead. However, we describe properties with instances which do not admit approximations must have if they are to exist. We also discuss n-agent instances where the start points are not collinear. Here we require that the hulls of the start and target points can be separated by non-crossing chords. For the complete visibility constraint, we show how to compute ideal solutions in all cases. Under the connected constraint, we show how to produce ideal solutions, provided a constraint is met on the visibility graph formed by the start (and target) points. Finally, we examine problem instances where agents are not represented by points. We consider agents represented by circles in the plane and give sufficient conditions for ideal solutions to exist. We also discuss a discrete form of MVPP, the DMVPP. A DMVPP is a two agent MVPP in a discrete polygon (a polygon composed of cells rather than points). We give efficient algorithms for computing ideal solutions in such cases (where they exist). | |