Software Agents & Agent-Based Systems Sverker Janson Intelligent Systems Laboratory Swedish Institute of Computer Science
A somewhat trite vision... Intelligent agents... understand what we mean find and use relevant information automate routine tasks adapt to our needs and desires cooperate with other assistants et c, et c Cf. Knowledge Navigator ’87, featuring Phil
Can we make it real? When we have solved the ”AI problem”... But we don’t need to A computer can play a fair game of chess Agents may (should) address specific tasks
Common characteristics... Agents are... situated autonomous reactive pro-active social rational et c, et c Cf. Jennings, Sycara, Wooldridge, A Roadmap of Agent Research and Development, JAAMAS, 1998
Common metaphore? Agent-based systems Systems & information integration Multiagent systems Resource markets Internet commerce Recommender systems Software agents Agents Assistant agents Believable agents Simulated agents Economics People... Sociology Robots Mobile agents Artificial life
Personal assistant agents Reducing work and information overload Examples –Apple’s Knowledge Navigator –MIT Media Lab (various) –Microsoft Paper Clip –Office of Naval Research Tactical Picture Agent
Mobile agents Moving running software between computers Purpose –overcome network latency (e.g. interact in real time) –use located resources (e.g. computing power, storage, special hardware) –see e.g. Seven Good Reasons for Mobile Agents by Lange and Oshima, CACM 3(42) Problems –Security, trust, performance
Mobile agents, unique selling point…
Agent-based systems
How communicate? Sharing information & bridging data models High level speech act based protocols –KQML / FIPA ACL –Cf. SOAP Expressive logic based content formats –KIF / FIPA SL –Cf. semantic web Systems and information integration TELL p(a)
How coordinate? Coordinating different interests and goals Agent: locus of self-interest Market based interaction –Contract net –Combinatorial markets Combination with organization –Coalition formation Multiagent systems, e.g. automated markets
Objects vs agents Objects –state –methods –control –method invocation Agents –goals –knowledge –planning –negotiation
Agents address software complexity Complex functionality? –“mechanistic” explanation too complex? –replace direct manipulation with dialogue –from understanding to trust –Cf. assistant agents Complex interrelationships? –let components be “selfish” –interaction through negotiation –global properties by mechanism design –Cf. agent-based systems
Whose agent?