AFAS::Migration

From Agent Factory

Jump to: navigation, search

This is lesson 10 of the AF-AgentSpeak language guide.

Introduction

Agent Factory provides integrated support for weak migration of agents between agent platforms. Migration is implemented as a combination of a service together with a set of hooks that are built into the agent interpreter. Migration can only occur at the end of an iteration of the interpreter cycle and involves the transfer of just the agent program state (it does not support transfer of the execution context).

The main advantage of weak migration over strong migration is that the execution environment of the agent does not need to be recreated on the destination agent platform. Strong migration requires that migration be invisible to the agent, and as a result requires that the environment (platform services, available API's) be identical on both the source and destination agent platforms. Weak migration, on the other hand, deals only with the capture and transfer of the agent state and does not require consistency of agent platform configuration or require that the agent be unaware of the platform it is residing on.

The main consequence of enforcing only weak migration is that there is no requirement for consistency of functionality across agent platforms. As a result, there are no guarantees that the platform services and API's used by the agent will be available on the destination agent platform. This, in turn means that there are no guarantees that it can continue to achieve its existing goals. Also, it motivates a migration model in which the agent must manually rebind itself to any required platform services.

In our mind, the form of migration is most appropriate for heterogeneous environments where different agent platforms have different configurations and agents migrate to access resources that are not available on (or through) their own agent platform.