1. A method for maintaining objects within a camera field of view, the method comprising: identifying constraints to be enforced, each constraint relating to an attribute of the viewed objects; identifying a priority rank for the constraints such that more important constraints have a higher priority than less important constraints; and determining the set of solutions that satisfy the constraints relative to the order of their priority rank such that solutions that satisfy lower ranking constraints are only considered viable if they also satisfy any higher ranking constraints, each solution providing an indication as to how to control the camera to maintain the objects within the camera field of view.