Represents a comprehensive survey of the field of rational agency. This work covers the philosophical foundations of rational agency, logical and decision-theoretic approaches to rational agency, multi-agent aspects of rational agency, and describes a number of approaches to programming rational agents.