Agent-based Computing course - Student projects

1. Re-considering of integration of log4j, Chainsaw and JADE in purpose of debugging agents runtime work

As proved in [1] log4j is popular and well tested environment for debugging Java-based applications. In Log4JADE project the author managed to integrate log4j enviroment with JADE agents providing intuitive and colourful way of delivering current results of debugging. Unfortunately one crucial point was missed: loggers used in log4j are static objects to avoid duplicating instances of the same class, whereas agents, even if are instances of the same class, require non-static loggers, mainly due to their mobility. The aim of the project is to design and implement an aid to this problem.

Literature:

  1. Maciej Gawinecki (2006), "Agent-based logging system." In 18th Mountain Summer School of the Polish Information Processing Society. Polish Information Processing Society. Szczyrk, Poland.
    ...and references inside
  2. Log4JADE site, http://log4jade.sourceforge.net/.
  3. Re: static logger and instances with names, http://www.mail-archive.com/log4j-dev@logging.apache.org/msg06565.html
  4. Logging/StaticLog: The Static Problem, http://wiki.apache.org/jakarta-commons/Logging/StaticLog
  5. Giovanni Caire and Alois Reitbauer, JADE Kernel-level services, , http://jade.tilab.com/papers/2005/JADEWorkshopAAMAS/Jade-the-services-architecture.pdf
  6. The service-based architecture of the new JADE Kernel, Giovanni Caire, September 2004. http://jade.tilab.com/papers/Jade-the-services-architecture.pdf

2. Developing blackboard approach in an auction for agent-based e-commerce system

The blackboard is classical abstraction for exchaning information in distributed environment. Once single entity puts a piece of data on the black, it is either delivered to subscribed receivers (push approach) or interested entities must check the blackboard for a new data (pull approach). The aim of the project is to design implement both approaches in chosen type of auction (Dutch auction, English auction, etc.), where blackboard would be devoted to inform participants of negotiations about current status of the negotiation (e.g. the highest active bid). Comparision and conlusion are welcome.

Literature:

  1. Literature at: http://agentlab.swps.edu.pl/agents_ECOM.html

3. Designing eLearning environment with three different agent-oriented methodologies

In [1] authors proposes a learning provisioning system for an agent-based virtual organization. The system would be responsible for flexible delivery of learning content is based on matching of ontologically demarcated user profiles, domain specific knowledge and learning modules. The aim of the project would be designing (but not implementing !) architecture of the system with three different methologies: MaSE [3], Thropos [4] and JADE-based [5] one. The design should goes through all points from definig software requirements to external architecture of the system. The results should contain conslusions made from comparisions of those three approaches.

Literature:

  1. Maria Ganzha, Marcin Paprzycki, Elvira Popescu i Costin Badica, Maciej Gawinecki, �Agent-Based Adaptive Learning Provisioning in a Virtual Organization�. In: Proceedings of AWIC 2007 (to appear, call us to get it)
  2. Claudiu Anghel, and Ioan Salomie. (2003) "JADE based solutions for knowledge assessment in eLearning environments", http://jade.tilab.com/papers/EXP/Anghel.pdf
  3. Scott A. DeLoach, Mark F. Wood and Clint H. Sparkman, Multiagent Systems Engineering, The International Journal of Software Engineering and Knowledge Engineering, Volume 11 no. 3, June 2001, http://www.cis.ksu.edu/~sdeloach/publications/Journal/MaSE%20-%20IJSEKE.pdf
  4. . Perini, P. Bresciani, F. Giunchiglia, P. Giorgini, and J. Mylopoulos. A knowledge level software engineering methodology for agent oriented programming. Autonomous Agents, Montreal CA, May 2001, http://www.auml.org/auml/supplements/Bresciani-Agents2001.pdf
  5. Magid Nikraz1a, Giovanni Caireb, Parisa A. Bahri (2006), "A Methodology for the Analysis and Design of Multi-Agent Systems using JADE", http://jade.tilab.com/doc/JADE_methodology_website_version.pdf

4. Comparision of agents and multi-threaded application utilized in parallel computing

It has been recently established that while there exist high quality methods for solving single nonlinear algebraic equations, the situation changes when a system of such equations is considered. The aim of the project is adapt to method from parallel computing for solving such problems into domain of both (a) agents and (b) multi-threaded application (single hosted) and comparing difference in design.

Literature:

  1. Concurrency in JDK 5.0, http://www.few.vu.nl/~tzolov/links/java1.5-concurrency-IBM-tutorial.pdf
  2. "Recent Advances in Solvers for Nonlinear Equations,� D. Dent, M. Paprzycki, and A. Kucaba-Piętal, Computer Assisted Mechanics and Engineering Sciences, Vol. 7, 2000, 493-505
  3. "Solvers for Nonlinear Algebraic Equations; Whre are We Today?� D. Dent, M. Paprzycki A. Kucaba-Piętal, in: R. Wyrzykowski et. al. (eds.), Proceedings of the 4th International Conference on Parallel Processing and Applied Mathematics, Springer-Verlag, Berlin, LNCS, vol. 2328, 2002, 719-728
  4. "Studying the Performance of Nonlinear Systems Solvers Applied to the Random Vibration Test,� D. Dent, A. Kucaba-Piętal M. Paprzycki and L. Laudański, in: S. Margenov et. al. (eds.), Large Scale Scientific Computing, Proceedings of the Third International Conference, Springer-Verlag, Berlin, Germany, 2001, 471-478
  5. "Solvers for Systems of Nonlinear Algebraic Equations � Their Sensitivity to Starting Vectors,� D. Dent, M.Paprzycki and A. Kucaba-Piętal, in: L. Vulkov et. al. (eds.) Proceedings of Second Conference on Numerical Analysis and Applications, Springer Velag, Berlin, 2001, 230-237
  6. "Studying the Numerical Properties of Solvers for Systems of Nonlinear Equations,� D. Dent, M.Paprzycki and A. Kucaba-Piętal, in: D. Bainov (ed.) Proceedings of the 9th Colloquium on Difference Equations, VSP, Utrecht, 1999, 113-118
  7. "Performance of Solvers for Systems of Nonlinear Equations,� D. Dent, M. Paprzycki and A. Kucaba-Piętal, Proceedings of the 15th Annual Conference on Applied Mathematics, University of Central Oklahoma, Edmond, OK, 1999, 67-77

5. Utilization of an agent and Web Service as wrappers for existing legacy software

"Giving external�or internal�clients direct access to existing applications isn't always practical, secure, or flexible. Instead, it iss often better to provide Web Service wrapper around existing applications. Such wrappers let you safely expose existing systems to both internal and external customers and can work with a variety of communication methods via configurable protocols." On the other hand, Genesereth and Ketchpel pointed [2] that software agents can be used as wrappers for legacy software to support interoperability in heteregenous environment. Finally, wrappers as design pattern in software engineery are used to extend functionality of the objects they wrap, as in example of Observer or Adaptor patterns. The aim of the project would be creating Web Service wrapper and agent-based wrapper for the same application and comparing what different addiional functionality could (a) agent and (b) Web Service bring to the wrapped application.

Literature:

  1. Maciej Gawinecki, Mateusz Kruszyk, Marcin Paprzycki, Maria Ganzha (2007) "Pitfalls of agent system development o the basis of a Travel Support System." In Proceedings of the BIS 2007 Conference (to appear), http://agentlab.swps.edu.pl/agent_papers/BIS_2007.pdf
  2. Micheal R. Genesereth, Steven P. Ketchpel (1994), "Software Agents." In Communication of the ACM, Vol. 37, No. 7 July. http://citeseer.ist.psu.edu/genesereth94software.html
  3. S.Srivatsa Sivan and R. Venkatavaradan (2005), "Design Guidelines: Building Web Service Wrappers for an XML-based System", http://www.devx.com/enterprise/Article/27882

6. Agent as data provider in Content Management System

Content Managements Systems, provides authomated way for developing web sites. Great part of CMSs is based on Model-View-Controller (e.g. Spring [2]) approach giving sharp seperation between data and their layout. In [1] authors proposed agents as one of data provider in site generated with CMS. The aim of the project is to design and implement simple example of integration one of CMSs systems (known by a student(s)) with JADE agent, without breaking agent autonomy.

Literature:

  1. Maciej Gawinecki, Mateusz Kruszyk, Marcin Paprzycki, Maria Ganzha (2007) "Pitfalls of agent system development o the basis of a Travel Support System." In Proceedings of the BIS 2007 Conference (to appear), http://agentlab.swps.edu.pl/agent_papers/BIS_2007.pdf
  2. Spring Application Framework, http://www.springframework.org/

7. Comparing efficiency of ACL messaging with HTTP and RMI communication

General insight presented in [2] shows utilization ACL message for inter-communication consumes times and local resources. The aim of the project would be proposing and implementing real expirements which compare efficiency (in terms of spent memory and time): (a) agent's intra-platform communication with RMI communication utilized by remote objects an (b) agent's inter-platform communication with HTTP (TCP/IP) communication utilized by remote objects. Suggested literature as examples of similar experiments.

Literature:

  1. Analysis and benchmark of Scalability and Performance of JADE�s: Agent Management System, Directory Facilitator, Containers, In JADE Tutorial at International Conference on Systems, Man and Cybernetics 2004. The Hague, The Netherlands. http://jade.tilab.com/papers/PerformanceTestsNov2004.zip
  2. Elisabetta Cortese, Filippo Quarta, Giosue Vitaglione (2002). "Scalability and Performance of JADE Message Transport System," In: AAMAS Workshop, Bologna, Italy, http://citeseer.ist.psu.edu/vitaglione02scalability.html
  3. Maciej Gawinecki, Mateusz Kruszyk, Marcin Paprzycki, Maria Ganzha (2007) "Pitfalls of agent system development o the basis of a Travel Support System." In Proceedings of the BIS 2007 Conference (to appear), http://agentlab.swps.edu.pl/agent_papers/BIS_2007.pdf
  4. Krzysztof Chmiel, Maciej Gawinecki, Pawel Kaczmarek, Michal Szymczak, Marcin Paprzycki (2005) "Efficiency of JADE Agent Platform", In Scientific Programming vol. 13, no. 2, 2005, 159-172, http://agentlab.swps.edu.pl/agent_papers/SP_13_2005.pdf
  5. Krzysztof Chmiel, Dominik Tomiak, Maciej Gawinecki, Paweł Kaczmarek, Michał Szymczak, Marcin Paprzycki (2004) "Testing the Efficiency of JADE Agent Platform." In: Proceedings of the ISPDC 2004 Conference, IEEE Computer Society Press, Los Alamitos, CA, 49-57, http://agentlab.swps.edu.pl/CORK_2004.pdf

8. Modelling logistic company with holonic multi-agent system

A holon (from the Greek holos, "whole") is something that is simultaneously a whole and a part. The term was coined by Arthur Koestler on p. 48 of his book The Ghost in the Machine (1967). In multiagent systems the modelling of holonic agents can be realised by commitments of the subagents to cooperate and work towards a common goal in a corporated way. For example in [1] authors propos logistics systems in which there are agents representing truck, trailers, company and drivers. Agents organize in holons with respect to defined protocols; each holon stands for a particular delivery order. The aim of the project would be of course very limited version of solution presented in [1], including (a) definitions of different agents, (2) definition of interaction protocols among them, (3) defining which agents (representatives) can constitute a holon together and what is the role of each of them in the holon, (4) implementing simple scenario in JADE.

Literature:

  1. Hans-Jürgen Bürckert, Klaus Fischer, Gero Vierke, Transportation Scheduling with Holonic MAS The TeleTruck Approach, http://citeseer.ist.psu.edu/28787.html

9. BDI agents in erderly people hospitalization

One of promising domains in which agents can be engaged each hospitalization. In this project we propose the system with the following agents: (a) an agent which observe its patient, measure his blood pressure, check whether she needs a water etc and acts upon her condition asking for help the rest of agents, e.g. (b) nurse agent, which makes and injection according to a diagnose, (c) air conditioning agent which adapt temperature of the room according to whether patient sleeps or not. The students may add as many supporting agents as they which. The main purpose of the project is utilization of BDI architecture either by use of Jadex framework or JADE Semantic Add-On.

Literature:

  1. Jadex BDI Agent System, http://vsis-www.informatik.uni-hamburg.de/projects/jadex/
  2. JADE Semantics Add-on, http://jade.tilab.com/papers/2005/JADEWorkshopAAMAS/AAMAS-JADE-WS-29-july-2005.pdf

edited by: Maciej Gawinecki