Grid computing systems incorporate a pool of networked
heterogeneous, geographically disperse, and not
fully exploited resources that can be used to
execute tasks in a distributed manner. This is
achieved by middleware managing resources and
users, and scheduling jobs. A contract is an
agreement between a user and a resource to execute
a task in a set amount of time and other set
parameters. This is to ensure that if execution
fails, the job will be rescheduled and its user
will be notified.
A contract management module can be viewed as a
supervising agent that in cases of something
breaking down it determines the reasons of failure
and handles the problem itself or by notifying
agents that perform the needed services.
In the empirical model of contract management there
are three main agents, the manager explained above,
the users and the resources. Each user will
initiate a job and will expect some results from
it. The resource is the agent that will execute a
job or part of a job according to specific
requirements such as time and performance. Jobs are
mapped to resources by the broker, although this is
beyond the scope of this model.
Unfortunately there are cases where hardware breaks
down, or it is disconnected by its owner or the
network connection fails. This would interrupt the
execution of a process and would cause the contract
manager to attend to the case and resolve the
issue. A booking must have been made beforehand
determining jobs submitted by users to resources.
This element will be performed by the human user of
the model, as implementing a model of a broker is
beyond our scope.
Furthermore the model will take values for the
parameters of jobs such as priority, available
time, capacity needed etc. The execution of each
job thus depends on those parameters determined by
the user-owner of the job, thus in effect depends
on the user, also on the resource executing it and
the network connection.
Observables will be the speed with which a task is
executed, its state, the links between users and
resources which can be cut off, the resources
presence, and hardware components that can break
down. The model will be a demonstration of those
observables and their dependencies. The agents will
be laid out in a network with links and the jobs
will have progress bars determining the state of
the execution of the resource.
This model will be investigated to determine its
suitability in the area of grid computing and
contract management and how empirical modelling can
be useful in this area. The paper can be grouped
under the category of artificial intelligence as it
is not only the fact that grid middleware operates
as an agent system, but also contract management
involves artificial intelligence problems such as
the horizon problem, whereby a resource is cut off
before having enough time to store its state.