|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjason.architecture.AgArch
jmadem.MADeMAgArch
public class MADeMAgArch
Basic architecture for a Jason agent performing MADeM decisions.
| Nested Class Summary | |
|---|---|
(package private) class |
MADeMAgArch.BidTimeout
Handles bid timeout for a specific decision making. |
| Field Summary | |
|---|---|
private java.lang.String |
agName
Agent name |
private java.util.logging.Logger |
logger
Class logger |
private java.util.concurrent.ConcurrentMap<java.lang.Integer,DecisionData> |
mademData
Data managed by MADeM for every decision being performed: id_decision, agents involved, allocations, utility functions considered, bids... |
private java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> |
personalWeights
Personal weights representing the internal attitude of the agent towards other individuals. |
private int |
tout
Maximum waiting time for bids (in milliseconds). |
private java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,UtilityFunctionInt> |
utilityFunctions
Utility functions repository |
private java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> |
utilityWeights
Utility weights representing the importance given to each point of view in the multi-modal agent decision making. |
private Cuf |
welfare
Social welfare considered by the agent |
| Constructor Summary | |
|---|---|
MADeMAgArch()
|
|
| Method Summary | |
|---|---|
boolean |
addUtilityFunction(java.lang.String uFuncName)
Registers a new utility function in the MADeM agent. |
void |
bid(java.lang.String auctioneer,
jason.asSyntax.Literal madem_auction)
Bids over a set of allocations coming from an auctioneer according to the specified utility function. |
void |
checkMail()
Filters MADeM messages out of the agent Mailbox. |
java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> |
getPersonalWeights()
Gets the personal weights of the MADeM agent. |
int |
getTimeout()
Gets bid timeout (in milliseconds). |
float |
getUtility(java.lang.String auctioneer,
Allocation allocation,
jason.asSyntax.Atom uFunc)
Obtains the utility value given by a specific utility function. |
java.util.Set<jason.asSyntax.Atom> |
getUtilityFunctionNames()
Gets the names of the utility functions previously registered in the MADeM agent. |
java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> |
getUtilityWeights()
Gets the utility weights of the MADeM agent. |
java.lang.String |
getWelfare()
Gets the social welfare of the MADeM agent. |
void |
initAg(java.lang.String agClass,
jason.mas2j.ClassParameters bbPars,
java.lang.String asSrc,
jason.runtime.Settings stts)
MADeM agent initiator. |
void |
processBid(java.lang.String bidder,
jason.asSyntax.Literal madem_bid)
Process an external bid related to a certain decision. |
boolean |
removeUtilityFunction(java.lang.String uFuncName)
Removes a utility function previously registered in the MADeM agent. |
boolean |
setPersonalWeights(java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> new_pw)
Changes the personal weights of the MADeM agent towards the other agents. |
boolean |
setTimeout(int new_tout)
Changes bid timeout to a new positive value. |
boolean |
setUtilityWeights(java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> new_uw)
Changes the utility weights of the MADeM agent. |
void |
setWelfare(Cuf new_sw)
Changes social welfare of the MADeM agent. |
int |
startMADeMDecision(jason.asSyntax.ListTermImpl ags,
jason.asSyntax.ListTermImpl allocs,
jason.asSyntax.ListTermImpl uFuncs)
Starts a MADeM decision using the internal parameters of the agent. |
int |
startMADeMDecision(jason.asSyntax.ListTermImpl ags,
jason.asSyntax.ListTermImpl allocs,
jason.asSyntax.ListTermImpl uFuncs,
java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> pW,
java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> uW,
Cuf sw,
int tout)
Starts a MADeM decision by specifying all its parameters. |
void |
winnerDeterminationProblem(int id_decision)
Solves the winner determination problem for a specific decision. |
| Methods inherited from class jason.architecture.AgArch |
|---|
act, broadcast, canSleep, getAgName, getArchInfraTier, getCycleNumber, getTS, isRunning, perceive, sendMsg, setArchInfraTier, setCycleNumber, setTS, sleep, stopAg |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private java.util.logging.Logger logger
private java.lang.String agName
private java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,UtilityFunctionInt> utilityFunctions
private java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> utilityWeights
private java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> personalWeights
private Cuf welfare
private int tout
private java.util.concurrent.ConcurrentMap<java.lang.Integer,DecisionData> mademData
| Constructor Detail |
|---|
public MADeMAgArch()
| Method Detail |
|---|
public void initAg(java.lang.String agClass,
jason.mas2j.ClassParameters bbPars,
java.lang.String asSrc,
jason.runtime.Settings stts)
throws jason.JasonException
initAg in class jason.architecture.AgArchagClass - agent class definitionbbPars - agent class parametersasSrc - AgentSpeak source codestts - MAS Runtime Settings for an Agent
jason.JasonExceptionpublic boolean addUtilityFunction(java.lang.String uFuncName)
uFuncName - name of the utility function to be added
public boolean removeUtilityFunction(java.lang.String uFuncName)
uFuncName - name of the utility function to be removed
public java.util.Set<jason.asSyntax.Atom> getUtilityFunctionNames()
public int startMADeMDecision(jason.asSyntax.ListTermImpl ags,
jason.asSyntax.ListTermImpl allocs,
jason.asSyntax.ListTermImpl uFuncs)
ags - names of the agents involved in the decisionallocs - allocations being considered as solutions for the decision problemuFuncs - names of the different utility functions to pay attention to
public int startMADeMDecision(jason.asSyntax.ListTermImpl ags,
jason.asSyntax.ListTermImpl allocs,
jason.asSyntax.ListTermImpl uFuncs,
java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> pW,
java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> uW,
Cuf sw,
int tout)
ags - names of the agents involved in the decisionallocs - allocations being considered as solutions for the decision problemuFuncs - names of the different utility functions to pay attention topW - personal weights to be applied over external preferencesuW - utility weights in the multi-modal decisionsw - type of social welfare being consideredtout - timeout for getting bids (in milliseconds)
public void checkMail()
checkMail in class jason.architecture.AgArchpublic boolean setTimeout(int new_tout)
new_tout - new timeout value (in milliseconds)
public int getTimeout()
public void setWelfare(Cuf new_sw)
new_sw - new social welfarepublic java.lang.String getWelfare()
public boolean setPersonalWeights(java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> new_pw)
new_pw - new personal weights
public java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> getPersonalWeights()
public boolean setUtilityWeights(java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> new_uw)
new_uw - new utility weights
public java.util.concurrent.ConcurrentMap<jason.asSyntax.Atom,java.lang.Float> getUtilityWeights()
public void bid(java.lang.String auctioneer,
jason.asSyntax.Literal madem_auction)
auctioneer - agent asking for preferencemadem_auction - allocations and utility functions being considered
public void processBid(java.lang.String bidder,
jason.asSyntax.Literal madem_bid)
bidder - name of the agent who sent the bidmadem_bid - bid containing bidder's preferences
public float getUtility(java.lang.String auctioneer,
Allocation allocation,
jason.asSyntax.Atom uFunc)
auctioneer - agent asking for preferenceallocation - allocation being evaluateduFunc - name of the utility function being considered
public void winnerDeterminationProblem(int id_decision)
id_decision - Identifier of the decision being solved
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||