34
Agents in Grid

Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

  • View
    228

  • Download
    3

Embed Size (px)

Citation preview

Page 1: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

Agents in Grid

Page 2: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

The Grid

Page 3: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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!

Page 4: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 5: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 6: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 7: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 8: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

Use Case of the System

Page 9: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 10: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

Agents in Grid

Ontologies

Page 11: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 12: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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.

Page 13: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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".

Page 14: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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)}

Page 15: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

Agents in Grid

Finding team to do the job

Page 16: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 17: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

FIPA Contract Net Protocol Interactions

Page 18: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

Example (1)

Page 19: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

Example(2)

Page 20: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

Agents in Grid

Finding team to join

Page 21: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 22: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational
Page 23: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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 ) .}

Page 24: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

FIPA Contract Net Protocol Interactions

Page 25: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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)

Page 26: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 27: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

Running the system “today”

Page 28: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 29: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 30: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 31: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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

Page 32: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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)

Page 33: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

Testing aliveness of team members

Page 34: Agents in Grid. The Grid Grid – introduction Power grid – plug the appliance and use electric power pay for used “units of electricity” Computational

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