Software Agents and Multi-Agent Systems

This assessment, through its various tasks, has the following learning outcomes
• Knowledge and understanding of specific topics covered in the course
• Communication skills
• Problem solving
• Critical thinking and evaluation

a) Provide the protocol as an AUML diagram. Solutions to this item should be a PDF document
of at most 2 pages. (2 marks)
b) Provide the pseudo-code for the initiator. Your solution must clearly indicate any input
parameters required. Solutions to this item should be a PDF document of at most 2 pages.
(4 marks)
c) Provide the pseudo-code for the participants. Your solution must clearly indicate any input
parameters required. Solutions to this item should be a PDF document of at most 2 pages.
(4 marks)
d) Implement a multi-agent system based on your answer to items a-c above. Your simulation
should have 12 participants or more (and one initiator). Your solution to this item must use
Python as a programming language; implementations in other programming languages will
merit 0 marks. Solutions to this item should be Python source code and instructions on how
to run/execute it. (8 marks)
e) Evaluate your system using runoff and Borda count as the social choice functions (which you
should implement as part of item d). You should use a population of participants in which
25% prefer a higher cost over the number of days, 25% prefer a higher number of days over
the cost, 25% use a weighted function (which you must design/define) combining cost and
number of days, and 25% have random preferences. Your evaluation should measure any
advantage/difference between the two social choice functions (you should define these
measures/metrics). Solutions to this item should be the code for experiments, instructions
to run the code, and a PDF document of at most 3 pages (1,500 words, approximately)
explaining the evaluation. (7 marks)