Distributed on-line dynamic task assignment for multi-robot patrolling