A Nomadicity-driven Negotiation Protocol, Tactics and Strategies for Interacting Software Agents