View
228
Download
3
Category
Preview:
Citation preview
Agents in Grid
The Grid
Grid – introduction
Power grid – plug the appliance and use electric power pay for used “units of electricity”
Computational Grid – plug the computer and use available resources pay for used “units of computing”
Example: you do not need to buy MATLAB you pay “3 cents” for an hour of its usage
Sun wants $1 per hour – too much!
Local vs. global Grid Local Grid
company / laboratory / EU-project each node / group has administrator node existence “assured” no actual economical model involved
Global Grid collection of nodes
seti@home no (centralized) administration no assurances (existence / load of nodes)
how to facilitate SLA / QoS ? economical model necessary
Agents in Grids Today B. Di Martino and O. Rana
static and mobile agents in the system (MAGDA) static agents located within Grid nodes mobile agents visit nodes to find resources (services)
visits based on exchanges of messages with nodes execute a task or a part of it
AGLETS-based / no economic model
S. Manvi et. al. attempt at adding economic model single agent moves, negotiates, executes heavily based on mobility
Comments Single resource provider
“cleaning lady problem” difficult to assure QoS / SLA
More generally Grid is expected to be very dynamic
nodes appear and disappear node-loads change “fast”
economic model is necessary Mobility can be costly – what do you carry? Proposed solution agent teams
team based approaches seem to gain popularity
Assumptions Agents work in teams Each team has a team leader (local master –
LMaster) Incoming workers (LAgents) can join any team based
on their criteria of joining Teams can accept workers based on their own
criteria of acceptance Each LAgent can (if needed) play role of an LMaster Decisions about joining and accepting will utilize
multi-criterial analysis Yellow-page method for matchmaking (provided by
the CIC agent) other approaches possible
Use Case of the System
Finding Team to ... LAgent checks with the CIC who
it can join does the work it needs
LAgent negotiates with LMaster LAgent makes decision
which team to join which team will do the job
LAgent and LMaster collect data to be used to adapt behavior
Structure similar to the e-commerce system CIC plays critical role
Agents in Grid
Ontologies
Resource Ontology (1)
Lack of all agreed ontology of the Grid – work in progress Semantic Web Grid systems specific efforts (e.g. Unicore) domain specific efforts AGIO – Montpellier
Decision utilize a simplistic ontology when all-agree ontology will be created systems
will be easily adjustable
Resource Ontology (2)
:Computer :a owl:Class.:hasCPU :a owl:ObjectProperty; rdfs:range :CPU; rdfs:domain :Computer.:CPU :a owl:Class.:hasCPUFrequency :a owl:DataProperty; rdfs:comment "in GHz"; rdfs:range xsd:float; rdfs:domain :CPU.:hasCPUType :a owl:ObjectProperty; rdfs:range :CPUType; rdfs:domain :CPU.:CPUType :a owl:Class.Intel :a :CPUType.AMDAthlon :a :CPUType.
:hasMemory :a owl:DatatypeProperty; rdfs:comment "in MB"; rdfs:range xsd:float; rdfs:domain :Computer.:hasUserDiskQuota :a owl:DatatypeProperty; rdfs:comment "in MB"; rdfs:range xsd:float; rdfs:domain :Computer.:LMaster :a owl:Class;:hasContactAID :a owl:ObjectProperty; rdfs:range xsd:string; rdfs:domain :LMaster.:hasUserDiskQuota :a owl:DatatypeProperty; rdfs:comment "in MB"; rdfs:range xsd:float; rdfs:domain :Computer.
Resource Ontology Instance:LMaster3 :hasContactAID "monster@e-plant:1099/JADE"; :hasWorker :PC2929.
:PC2929 :a :Computer; :hasCPU [ a :CPU; :hasCPUType :Intel; :hasCPUFrequency "3.7"; ] ; :hasUserDiskQuota "4000"; :hasMemory "512".
SPARQL query – querying the CIC
PREFIX : <http://www.ibspan.waw.pl/mgrid#>SELECT ?contactWHERE{ ?lmaster :hasContactAID ?contact; :a :LMaster; :hasWorker [ :a :Computer; :hasCPU [ a :CPU; :hasCPUType :Intel; :hasCPUFrequency ?freq; ]; :hasUserDiskQuota ?quota; :hasMemory ?mem; ]. FILTER (?freq >= 3.2) FILTER (?quota >= 3500) FILTER (?mem >= 512)}
Agents in Grid
Finding team to do the job
Scenario User specifies requirements for job execution LAgent communicates with the CIC
obtains list of potential agent teams Utilizes FIPA Contract Net Protocol to obtain job
execution proposals Eliminates teams that submitted proposals
violating constraints Evaluates remaining proposals using a simple
linear additive model Submits the job to selected team
FIPA Contract Net Protocol Interactions
Example (1)
Example(2)
Agents in Grid
Finding team to join
Scenario User specifies requirements for team joining LAgent communicates with the CIC
obtains list of potential agent teams eliminates those that are not trustworthy
Utilizes FIPA Contract Net Protocol to obtain team joining proposals
Evaluates them using best price as criterion – now muticriterial analysis – in the future
Confirms team joining
SPARQL Query
PREFIX Grid: <http://Gridagents.sourceforge.net/Grid#>SELECT ?teamWHERE { ?team Grid:needs ?machine . ?machine Grid:hasCPU ?cpu ; Grid:hasMemory ?mem ; Grid:hasQuota ?quota . FILTER ( ?cpu <= "3.7"^xsd:float ) . FILTER ( ?mem <= “512"^xsd:integer ) . FILTER ( ?quota <= “4000"^xsd:integer ) .}
FIPA Contract Net Protocol Interactions
CFP structure and content(cfp :sender (agent-identifier :name proteus@bach:1099/JADE) :receiver (agent-identifier :name zerg@chopin:1099/JADE) :content ((action (agent-identifier :name zerg@chopin:1099/JADE) (take-me :configuration (hardware :cpu 3.7 :memory 512 :quota 4000) :conditions (condition :availability (every-day :when (period :from 00000000T23500000 :to 00000000T08150000)) :contract-duration +00000007T000000000)) :language fipa-sl0 :ontology joining-ontology :protocol fipa-contract-net)
LMaster response preparation
Similar to United Devices system scoring Base system price
processor speed Pb Pc
available memory Mb Mc
available disk space Db Dc
Bc = Pc + Mc + Dc
where α – overhead
Running the system “today”
Security, trust and reputation
Security ability to send, receive and process information without unauthorized entities having access to it
Trust Trust peer’s belief in another peer’s peer’s belief in another peer’s capabilities, honesty and reliability based on own capabilities, honesty and reliability based on own direct experiencesdirect experiences
Reputation as the above, but based on other peers believes
In the Grid given node can assure secure computational environment, but may not be trusted, and/or have a bad reputation
Trust in interactions user team (1)
Team evaluating potential User User that did not pay in the past should be
excluded like in e-commerce (e.g. eBay)proxy payment system as a natural solution
PayPalno further trust related issues necessary
Trust in interactions user team (2)
User evaluating team (x) based on satisfaction of contract (service level
agreement) fulfillment of contract and each violation of contract (ei)
has weight TA(ei) [-α , α] associated with it we can calculate trust score as follows
Tn(x) = (1 - α|TA(ei)|) Tn-1(x) + TA(ei)
α – “sensitivity” of a given User
Trust(x) = (Tn(x), n, # of “negative events”) Trust(x) used in evaluating offers from LMasters
Trust in interactions worker team (1)
Worker evaluating team based on contract (service level agreement)
worker sells time number of actual work does not matter money paid for contracted time as promised
may need PayPal-type solution overhead (α) to pay for non-working team members
based on work actually done complicated issues arise
workers cheating in reporting time used dynamic nature of incoming work-orders
one time a lot of work next time nothing to do
Team evaluating worker based on contract worker “sells time”
assumption within contract established acceptable violations e.g. network downtime cuts off a worker for 2 hours
three situations possible violated contract (vc) fulfilled contract (fc) did more than just fulfill it (ee)
worker score – triple
(#vc, #fc, #ee) used in reasoning to foresee worker “potential”
Trust in interactions worker team (2)
Testing aliveness of team members
Reputation – “under construction”
eBay model suggested reputation is shared information about performance of
worker / team all agents / agent teams have to be registered with the
CIC CIC as the central repository of evaluations reputation score – value from interval [0-5] reputation score can be a part of CIC response to the
LAgent P2P model possible
LAgent asks “friends” about reputation of teams
Recommended