Course Title: Agent-Oriented Programming and Design

Part A: Course Overview

Course Title: Agent-Oriented Programming and Design

Credit Points: 12.00

Terms

Course Code

Campus

Career

School

Learning Mode

Teaching Period(s)

COSC1204

City Campus

Undergraduate

140H Computer Science & Information Technology

Face-to-Face

Sem 2 2006,
Sem 2 2007,
Sem 2 2008,
Sem 2 2009,
Sem 2 2010,
Sem 2 2011,
Sem 2 2012,
Sem 1 2015

COSC1204

City Campus

Undergraduate

171H School of Science

Face-to-Face

Sem 2 2018,
Sem 2 2020

COSC2048

City Campus

Postgraduate

140H Computer Science & Information Technology

Face-to-Face

Sem 2 2006,
Sem 2 2007,
Sem 2 2008,
Sem 2 2009,
Sem 2 2010,
Sem 2 2011,
Sem 2 2012,
Sem 1 2015

COSC2048

City Campus

Postgraduate

171H School of Science

Face-to-Face

Sem 2 2018,
Sem 2 2020

Course Coordinator: Dhirendra Singh

Course Coordinator Phone: N/A

Course Coordinator Email: dhirendra.singh@rmit.edu.au

Course Coordinator Location: 14.08.7B

Course Coordinator Availability: By appointment, by email


Pre-requisite Courses and Assumed Knowledge and Capabilities

You may not enrol in this course unless it is explicitly listed in your enrolment program summary.

Enforced Prerequisite: Advanced Programming OR Programming 1 OR Programming Techniques

Assumed Knowledge: algorithms, programming, basic mathematics and statistics.


Course Description

The course provides a foundation in agent-based modelling and simulation techniques for understanding complex systems. Agent-based models (ABMs) work by representing the entities (agents) of a system and their interactions from which system-level phenomena emerge. Examples of emergent phenomena that can be represented with ABMs include flocking in birds, traffic congestion on roads, and spread of infection in a population.

In this course you will learn how to design, implement, use, analyse, and critique agent-based models of complex systems. You will construct “what-if” scenarios, and implement “policy interventions”, to examine how exogenous changes can perturb the system, and use critical analysis to determine likely impacts of proposed changes.

This is a studio-style course, with a strong emphasis on learning by doing.

Please note that if you take this course for a bachelor honours program, your overall mark in this course will be one of the course marks that will be used to calculate the weighted average mark (WAM) that will determine your award level. This applies to students who commence enrolment in a bachelor honours program from 1 January 2016 onwards. See the WAM information web page for more information.(http://www1.rmit.edu.au/browse;ID=eyj5c0mo77631)


Objectives/Learning Outcomes/Capability Development

This course contributes to the following Program Learning Outcomes in BP094 Bachelor of Computer Science and BP096 Bachelor of Software Engineering:

1. Enabling Knowledge: You will gain skills as you apply knowledge effectively in diverse contexts. You will gain skills as you apply knowledge with creativity and initiative to new situations. In doing so, you will: Demonstrate mastery of a body of knowledge that includes recent developments in computer science and information technology; Recognise and use research principles and methods applicable to computer science and information technology.

2. Critical Analysis: You will learn to accurately and objectively examine and consider computer science and information technology (IT) topics, evidence, or situations, in particular to: (i) analyse and model requirements and constraints for the purpose of designing and implementing software artefacts and IT systems; (ii) evaluate and compare designs of software artefacts and IT systems on the basis of organisational and user requirements.

3. Problem Solving: Your capability to analyse problems and synthesise suitable solutions will be extended as you learn to: design and implement software solutions that accommodate specified requirements and constraints, based on analysis or modelling or requirements specification.

4. Communication: You will learn to communicate effectively with a variety of audiences through a range of modes and media, in particular to: interpret abstract theoretical propositions, choose methodologies, justify conclusions and defend professional decisions to both IT and non-IT personnel via technical reports of professional standard and technical presentations.

5. Responsibility: You will be required to accept responsibility for your own learning and make informed decisions about judging and adopting appropriate behaviour in professional and social situations. This includes accepting the responsibility for independent life-long learning and a high level of accountability. Specifically, you will learn to: effectively apply relevant standards, ethical considerations, and an understanding of legal and privacy issues to designing software applications and IT systems.

6. Research and Scholarship: You will have technical and communication skills to design, evaluate, implement, analyse and theorise about developments that contribute to professional practice or scholarship, specifically you will have cognitive skills: (i) to demonstrate mastery of theoretical knowledge and to reflect critically on theory and professional practice or scholarship; (ii) to plan and execute a substantial research-based project, capstone experience and/or piece of scholarship.

7. Team Work: You will learn to work as an effective and productive team member in a range of professional and social situations, in particular to: Work effectively in different roles, to form, manage, and successfully produce outcomes from teams whose members may have diverse cultural backgrounds and life circumstances and differing levels of technical expertise. 


The objective of this course is to develop an understanding of and gain experience with agent-based modelling and simulation concepts and technology. Upon successful completion of this course students should be able to:

CLO 1: Demonstrate an understanding of agent-based modelling and simulation concepts, and be able to apply these concepts for modelling different kinds of complex systems;

CLO 2: Design, implement, calibrate, and validate, agent-based models, as well as interpret and summarise their outputs;

CLO 3: use state of the art development environments to build agent-based models for practical use;

CLO 4: apply critical analysis and problem-solving skills to extend and enhance existing techniques;

CLO 5:  develop skills for further self-directed learning in the general context of agent-based modelling and simulation;

CLO 6: communicate scientific knowledge effectively, in both oral and written form.


Overview of Learning Activities

This course will be delivered in “studio” mode with no formal lectures.

Each week, prior to class, you will undertake preparatory work which will include reading recommended text, watching recommended videos, and completing homework tasks. Then during class this material will be reinforced in an interactive session through discussions, presentations, quizzes, and practical hands-on application. 

Throughout the semester, you will work both individually and in teams on designing and implementing agent-based models of complex systems.

Group discussions (including in online forums) focused on projects and problem solving will provide practice in the application of agent-based modelling concepts, allow exploration of concepts with teaching staff and other students, and give opportunities for receiving feedback on your progress and understanding.

Student-directed study will be fundamental in this course for consolidating your understanding of the theory and practice. You will also be expected to work collaboratively in teams for projects and presentations.

Total study hours

A total of 120 hours of study is expected during this course, comprising:

Teacher-directed hours (24 hours): Each week there will be a two hour class in “studio” mode where material will be reinforced through discussions, presentations, quizzes, and practical hands-on application.

Student-directed hours (96 hours): You will be expected to be self-directed, studying independently outside class. This will include completing study tasks each week, as well as working individually and in groups on due projects and presentations.


Overview of Learning Resources

The course will be supported via a variety of tools available online. You will be able to access course information, learning materials, and any recommended textbooks through the Canvas learning management system. Lists of relevant reference texts, resources in the library and freely accessible Internet sites will be provided.


Overview of Assessment

This course has no hurdle requirements.

The assessment for this course comprises:

 

Assessment Component 1: Assignment

Weighting 30%

This assessment task supports CLOs 1, 2, 3, 4

 

Assessment Component 2: Project

Weighting 50%

This assessment task supports CLOs 2, 3, 4, 5, 6

 

Assessment Component 3: Quizzes

Weighting 20% 

This assessment task supports CLOs 1, 5, 6

 

Please note that postgraduate students are expected to demonstrate deeper knowledge and a higher level of application of knowledge and skills than undergraduate students. Assessment tasks set for postgraduate students will be different and more challenging than for undergraduate students.