With increasing levels of intelligence and automation mobile robots are now an enabling technology for autonomous patrolling of indoor and outdoor environments. Patrolling is a repetitive and potentially dangerous task whose execution costs can be mitigated by deploying surveillance robots in the area of interest. Because these systems are designed to be autonomous, the high-level planning of the surveillance activities emerges as one of the most critical challenges to achieving good performance and, ultimately, detecting and preventing malicious activities in the environment. Issues like how to plan efficient paths, where and when to schedule surveillance actions, and how to coordinate with teammates have been tackled by models encoding some environment representation and assumptions on agents capabilities and behaviors. This dissertation itself addresses some of the challenges in computing patrolling schedules for an agent, or team of agents, working against an intruder with limited observablility of the environment. First, we present an overview of related literature associated with the specific types of problems discussed throughout. This includes: techniques for single agent instances, techniques for multi-robot instances, machine learning for patrolling, and common metrics used for gauging a defender’s performance. It is, then, divided into several chapters which each address different aspects of the aforementioned challenges.