Students

COMP333 – Algorithm Theory and Design

2016 – S2 Day

General Information

Download as PDF
Unit convenor and teaching staff Unit convenor and teaching staff Lecturer/Convenor
Franck Cassez
Contact via email
E6A 313
Lecturer
Tahiry Rabehaja
Contact via email
E6A 373
Tutor
David Lewis
Contact via email
Credit points Credit points
3
Prerequisites Prerequisites
39cp including (COMP225 and DMTH237)
Corequisites Corequisites
Co-badged status Co-badged status
Unit description Unit description
This unit covers general issues of the theory of computation and algorithm design, including computability and complexity. The general principles are illustrated by designing several very efficient algorithms with applications in telecommunication networks, cryptography and other important fields.

Important Academic Dates

Information about important academic dates including deadlines for withdrawing from units are available at https://www.mq.edu.au/study/calendar-of-dates

Learning Outcomes

On successful completion of this unit, you will be able to:

  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions
  • Possess relevant technical skills
  • Communicate clearly and effectively
  • Work collaboratively in small teams

Assessment Tasks

Name Weighting Due
Weekly exercises 10% Week 1 to week 12
In class tests 20% Weeks 7 & 12
Assignment 1 20% weeks 5 & 7
Assignment 2 20% weeks 9 & 12
Final Examination 30% During Exam period

Weekly exercises

Due: Week 1 to week 12
Weighting: 10%

Each week, a set of exercises will be made available online. All the questions (except the last one) will be discussed during your workshop class. You are expected to address the last question and you must submit your solution electronically (in the form of a PDF file) before the deadline (usually 11pm every Sunday).  Feedback will be given the following week on the submitted questions; a selection of these questions will be used as a basis for the class tests.

The mark will be computed based on the 10 best (out of 12) submissions.

To pass the unit, you must get a mark of 2 or above (out of 5) for at least 8 weekly submissions. No late submissions.


On successful completion you will be able to:
  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions
  • Possess relevant technical skills

In class tests

Due: Weeks 7 & 12
Weighting: 20%

In class tests (typically 40 mins) will assess the understanding of the course material. Questions in the tests will be closely based on a selection of the submitted weekly exercises.

 


On successful completion you will be able to:
  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions

Assignment 1

Due: weeks 5 & 7
Weighting: 20%

This assignment is organised into two sub-tasks. So there are two submission deadlines for this assignment. Both parts will be submitted online. The first part is to be done individually, whereas the second part will be completed both individually and collaboratively in a team in order to mimic a real software development project and to give you a chance to fully appreciate the advantages of System Design. A short (5-7 minutes) presentation will be a part of the assessment.


On successful completion you will be able to:
  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions
  • Possess relevant technical skills
  • Communicate clearly and effectively
  • Work collaboratively in small teams

Assignment 2

Due: weeks 9 & 12
Weighting: 20%

This assignment is organised into two sub-tasks. So there are two submission deadlines for this assignment. Both parts wil be submitted online. The first part is to be done individually, whereas the second part will be completed in a team in order to mimic a real software development project and to give you a chance to fully appreciate the advantages of System Design. A short (5-7 minutes)  presentation will be a part of the assessment.


On successful completion you will be able to:
  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions
  • Possess relevant technical skills
  • Communicate clearly and effectively
  • Work collaboratively in small teams

Final Examination

Due: During Exam period
Weighting: 30%

The final examination will be a two-hour examination (closed book) held during the usual University examination period and will cover all topics.

You must get a mark of at least 40% in the final examination to pass the unit.


On successful completion you will be able to:
  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions
  • Communicate clearly and effectively

Delivery and Resources

CLASSES

Each week you should attend three hours of lectures, a two hour mixed class (a tutorial and a practical combined in a single session). For details of days, times and rooms consult the timetables webpage.

A snapshot of the timetables webpage for COMP333 as of July 16, 2015 is:

  • 13 lectures: Monday 2-4pm, weeks 31--37 and 41--45, E5A 150 Tutorial Rm (week 40, October 3rd is a holiday)
  • 13 lectures: Tuesday 10-11am, weeks 31--37 and 40--45, E5A 150 Tutorial Rm
  • 12 workshop: Tuesday 11am-1pm, weeks 32--37 and 40--45, E6A 119 Faculty PC Lab

Please note that Workshops commence in Week 1 and that you are required to attend the Workshops and hand in prepared work each week. Failure to do so may result in you being excluded from the exam.  Indeed the Executive Dean of the Faculty or delegated authority has the power to refuse permission to attend the final examination.

We recommend that during Week 1 you make sure that you can successfully login into your account, and also access unit's materials via iLearn .

REQUIRED AND RECOMMENDED TEXTS AND/OR MATERIALS

Textbooks

The following textbooks are recommend but not required  for COMP333:

  • [1] S. S. Skiena, The Algorithm Design Manual, Springer, 2nd  edition, 2008, ISBN: 978-1-84800-069-8. Electronic version may be available from the library.
  • [2] T. H. Cormen, C. E. Leiserson, R. L. Rivest, & C. Stein, Introduction to Algorithms (MIT Press) 3rd edition. ISBN 0-262-53305-7.

They should be available from the University Co-op Bookshop and/or library.

UNIT WEBPAGE AND TECHNOLOGY USED AND REQUIRED

Echo360

http://mq.edu.au/iLearn/student_info/lecture_recordings.htm

Digital recordings of lectures are available. Please follow these instructions to access the recordings.

Technology

Object-oriented technology & languages: Java 

Version control: git/mercurial

Websites

This unit will use iLearn to distribute materials and for submission of work.

Discussion Boards

The unit makes use of discussion boards hosted within iLearn. Please post questions there, they are monitored by the staff on the unit.

Late submissions

No late submissions.

Unit Schedule

Week  Topic Reading
1 Introduction to Design and Correctness Chap. 1 in [1]
2 Algorithm analysis, big-oh notation Chap. 2 in [1], Chap 3 in [2]
3 Greedy Algorithms Chap. 8 in [1], Chap. 16 in [2]
4 Dynamic Programming Chap 8 in [1], Chap 15 in [2]
5 String algorithms Chap. 18 in [1], Chap 32 in [2]
6 Graph algorithms I

Chap 5 and 6 in [1], Chap. 6 in [2]

7

In-class test. Sep. 13, 10am--11am

Revision questions & answers

 
 

Recess 19-30 September

 
8 Labour day, no lecture and no workshop  
9

Graphs algorithms II

Chap 5 and 6 in [1], Chap. 6 in [2]
10

Complexity I. Proving hardness

Chap. 9 in [1]
11

Complexity II. Hard problems

Chap. 9 in [1], chap. 34 in [2]
12

In-class test. Nov 1st, 10am--11am.

Complexity III. Approximating NP-complete problems

Chap. 9 and 16 in [1], chap. 34 and 35 in [2]
13

Complexity IV. Introduction to space complexity

Revision.

 

Policies and Procedures

Macquarie University policies and procedures are accessible from Policy Central. Students should be aware of the following policies in particular with regard to Learning and Teaching:

Academic Honesty Policy http://mq.edu.au/policy/docs/academic_honesty/policy.html

New Assessment Policy in effect from Session 2 2016 http://mq.edu.au/policy/docs/assessment/policy_2016.html. For more information visit http://students.mq.edu.au/events/2016/07/19/new_assessment_policy_in_place_from_session_2/

Assessment Policy prior to Session 2 2016 http://mq.edu.au/policy/docs/assessment/policy.html

Grading Policy prior to Session 2 2016 http://mq.edu.au/policy/docs/grading/policy.html

Grade Appeal Policy http://mq.edu.au/policy/docs/gradeappeal/policy.html

Complaint Management Procedure for Students and Members of the Public http://www.mq.edu.au/policy/docs/complaint_management/procedure.html​

Disruption to Studies Policy http://www.mq.edu.au/policy/docs/disruption_studies/policy.html The Disruption to Studies Policy is effective from March 3 2014 and replaces the Special Consideration Policy.

In addition, a number of other policies can be found in the Learning and Teaching Category of Policy Central.

Student Code of Conduct

Macquarie University students have a responsibility to be familiar with the Student Code of Conduct: https://students.mq.edu.au/support/student_conduct/

Results

Results shown in iLearn, or released directly by your Unit Convenor, are not confirmed as they are subject to final approval by the University. Once approved, final results will be sent to your student email address and will be made available in eStudent. For more information visit ask.mq.edu.au.

Student Support

Macquarie University provides a range of support services for students. For details, visit http://students.mq.edu.au/support/

Learning Skills

Learning Skills (mq.edu.au/learningskills) provides academic writing resources and study strategies to improve your marks and take control of your study.

Student Services and Support

Students with a disability are encouraged to contact the Disability Service who can provide appropriate help with any issues that arise during their studies.

Student Enquiries

For all student enquiries, visit Student Connect at ask.mq.edu.au

IT Help

For help with University computer systems and technology, visit http://www.mq.edu.au/about_us/offices_and_units/information_technology/help/

When using the University's IT, you must adhere to the Acceptable Use of IT Resources Policy. The policy applies to all who connect to the MQ network including students.

Graduate Capabilities

Creative and Innovative

Our graduates will also be capable of creative thinking and of creating knowledge. They will be imaginative and open to experience and capable of innovation at work and in the community. We want them to be engaged in applying their critical, creative thinking.

This graduate capability is supported by:

Learning outcome

  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions

Assessment tasks

  • Assignment 1
  • Assignment 2

Capable of Professional and Personal Judgement and Initiative

We want our graduates to have emotional intelligence and sound interpersonal skills and to demonstrate discernment and common sense in their professional and personal judgement. They will exercise initiative as needed. They will be capable of risk assessment, and be able to handle ambiguity and complexity, enabling them to be adaptable in diverse and changing environments.

This graduate capability is supported by:

Learning outcome

  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions

Assessment tasks

  • Assignment 1
  • Assignment 2

Commitment to Continuous Learning

Our graduates will have enquiring minds and a literate curiosity which will lead them to pursue knowledge for its own sake. They will continue to pursue learning in their careers and as they participate in the world. They will be capable of reflecting on their experiences and relationships with others and the environment, learning from them, and growing - personally, professionally and socially.

This graduate capability is supported by:

Learning outcomes

  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions
  • Possess relevant technical skills
  • Communicate clearly and effectively
  • Work collaboratively in small teams

Assessment task

  • In class tests

Discipline Specific Knowledge and Skills

Our graduates will take with them the intellectual development, depth and breadth of knowledge, scholarly understanding, and specific subject content in their chosen fields to make them competent and confident in their subject or profession. They will be able to demonstrate, where relevant, professional technical competence and meet professional standards. They will be able to articulate the structure of knowledge of their discipline, be able to adapt discipline-specific knowledge to novel situations, and be able to contribute from their discipline to inter-disciplinary solutions to problems.

This graduate capability is supported by:

Learning outcomes

  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions
  • Possess relevant technical skills
  • Work collaboratively in small teams

Assessment tasks

  • Weekly exercises
  • In class tests
  • Assignment 1
  • Assignment 2
  • Final Examination

Critical, Analytical and Integrative Thinking

We want our graduates to be capable of reasoning, questioning and analysing, and to integrate and synthesise learning and knowledge from a range of sources and environments; to be able to critique constraints, assumptions and limitations; to be able to think independently and systemically in relation to scholarly activity, in the workplace, and in the world. We want them to have a level of scientific and information technology literacy.

This graduate capability is supported by:

Learning outcome

  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions

Assessment tasks

  • Assignment 1
  • Assignment 2
  • Final Examination

Problem Solving and Research Capability

Our graduates should be capable of researching; of analysing, and interpreting and assessing data and information in various forms; of drawing connections across fields of knowledge; and they should be able to relate their knowledge to complex situations at work or in the world, in order to diagnose and solve problems. We want them to have the confidence to take the initiative in doing so, within an awareness of their own limitations.

This graduate capability is supported by:

Learning outcomes

  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions
  • Possess relevant technical skills
  • Work collaboratively in small teams

Assessment tasks

  • Weekly exercises
  • In class tests
  • Assignment 1
  • Assignment 2
  • Final Examination

Effective Communication

We want to develop in our students the ability to communicate and convey their views in forms effective with different audiences. We want our graduates to take with them the capability to read, listen, question, gather and evaluate information resources in a variety of formats, assess, write clearly, speak effectively, and to use visual communication and communication technologies as appropriate.

This graduate capability is supported by:

Learning outcomes

  • Have advanced algorithmic knowledge in order to tackle concrete problems and provide adapted algorithmic solutions
  • Communicate clearly and effectively
  • Work collaboratively in small teams

Assessment tasks

  • Assignment 1
  • Assignment 2
  • Final Examination

Engaged and Ethical Local and Global citizens

As local citizens our graduates will be aware of indigenous perspectives and of the nation's historical context. They will be engaged with the challenges of contemporary society and with knowledge and ideas. We want our graduates to have respect for diversity, to be open-minded, sensitive to others and inclusive, and to be open to other cultures and perspectives: they should have a level of cultural literacy. Our graduates should be aware of disadvantage and social justice, and be willing to participate to help create a wiser and better society.

This graduate capability is supported by:

Learning outcomes

  • Communicate clearly and effectively
  • Work collaboratively in small teams

Socially and Environmentally Active and Responsible

We want our graduates to be aware of and have respect for self and others; to be able to work with others as a leader and a team player; to have a sense of connectedness with others and country; and to have a sense of mutual obligation. Our graduates should be informed and active participants in moving society towards sustainability.

This graduate capability is supported by:

Learning outcomes

  • Communicate clearly and effectively
  • Work collaboratively in small teams

Changes from Previous Offering

The second part of the unit now focuses on complexity rather than Number Theory algorithms.

Grading

At the end of the session, you will receive a mark that reflects your achievement in the unit. The final mark for the unit will be calculated by combining the marks for all assessment tasks according to the percentage weightings shown in the assessment summary.

The final examination in this unit is a hurdle requirement. You must get a mark of at least 40% in the examination to pass the unit. 

If you get a mark of at least 30% in your first attempt at the final examination you will be given a second and final attempt.

The weekly exercise submissions in this unit are a hurdle requirement: to pass the unit, you must get a mark of 2 or above (out of 5) for at least 8 weekly submissions.  No late submissions.