1. A system for managing mobile workers, comprising: a plurality of clients, each corresponding to a mobile worker to be managed, each client including a communications device for receiving messages detailing work schedules for tasks to be performed as jobs on target objects in a job environment; a server in communication with each of said plurality of clients, said server including a database having a plurality of target objects that are classified corresponding to facilities assets to be worked on by a mobile worker, and attributes of each target object, including any tasks to be performed on target objects, said server including a rule engine operative for determining algorithms based on a utility function for partitioned jobs and mobile workers wherein different algorithms are selected and used for different partitions to schedule jobs and mobile workers in selected different regions, wherein an algorithm is selected based on a weighted sum that is calculated from a possible number of work schedules, jobs and mobile workers for each partition, wherein a selected policy for a job environment determines how mobile workers, jobs and work schedules are partitioned, said server further comprising a plurality of system agents that automate supervision including work planning, scheduling, dispatching, stores management job state management and end-of-shift management; and a communications device operative with said server for communicating calculated work schedules and jobs as messages to said clients.