Algorithms Engineering

Postgraduate course

Course description

Objectives and Content

The course focuses on the ability to translate theoretical knowledge about algorithms, data structures, and complexity to efficiently be able to perform the complete process of analyzing a problem, estimate the running time of suggested solutions, and to implement a running program.

Learning Outcomes

On completion of the course the student should have the following learning outcomes defined in terms of knowledge, skills and general competence:

Knowledge

The student

  • knows algorithm design techniques, such as greedy algorithms, Dynamic Programming, Exhaustive Search (brute-force)

Skills

The student

  • is able to analyze the performance of a proposed algorithm in big-Oh notation, and use this to estimate the running time of a program on a given computer on a given data set.
  • is able to pick the right algorithm design technique and data structure for a given problem, and adapt these to new problems.
  • is able to implement algorithms based on the covered design techniques,
  • is able to recognize when one can use data structures for which standard library implementations exist, and make use of these data structures.
  • is able to implement efficient data structures.

General competence

The student

  • is able to go from an algorithmic problem to an implementation of an efficient and correct algorithm for the problem.

ECTS Credits

10

Level of Study

Bachelor/Master

Semester of Instruction

Spring.

This course has a limited capacity, enrolment is based on application. The application deadline is Wednesday in week 2 for the spring semester. You will receive confirmation of whether you received a seat in Studentweb no later than Monday the week after the deadline. More information about enrolement here: www.uib.no/en/nt/53431/admission-courses-limited-capacity

To keep your seat in the course, you must complete both of the following requirements:

Attend the first lecture/orientation meeting. The date and time are listed in the course schedule on the course website and on Mitt UiB.

Register for Kattis within the given deadline. The deadline will be announced during the first lecture and published on Mitt UiB.

Important Notes:

If you fail to meet both requirements, you risk losing your seat in the course.

If you cannot attend the first lecture, you must contact the Study Section at:

studieveileder@ii.uib.no

Following priority will give admission:

1. Students that have the course mandatory in their study programme

2. Students that have completed INF234.

3. Rest of the seats will be given students that not fulfill number 1 or 2.

Required Previous Knowledge
For incoming exchange students: At least 60 ECTS in Computer Science and at least 10 ECTS in mathematics
Recommended Previous Knowledge
The course builds on INF102. Having taken INF234 is helpful.
Access to the Course
Access to the course requires admission to a programme of study at The Faculty of Science and Technology
Teaching and learning methods
2 hours lectures per week throughout the entire semester. 2 hours group sessions per week.
Compulsory Assignments and Attendance
Compulsory exercises, and participation in compulsory programming competitions.
Forms of Assessment
Compulsory exercises which are assigned during the semester and compulsory programming contests assigned by the course instructor.
Grading Scale
Pass/Fail
Assessment Semester
Spring. With the consent of the lecturer, students who for some reason did not complete the course in the spring semester, can complete the course the following autumn semester. New exercises assigned in the autumn semester are valid only in the same autumn semester.
Reading List
The reading list will be available within July 1st for the autumn semester and December 1st for the spring semester
Course Evaluation
The course will be evaluated by the students in accordance with the quality assurance system at UiB and the department
Examination Support Material
None
Programme Committee
The Programme Committee is responsible for the content, structure and quality of the study programme and courses.
Course Coordinator
Course coordinator and administrative contact person can be found on Mitt UiB, or contact studieveileder@ii.uib.no
Course Administrator
The Faculty of Science and Technology represented by the Department of Informatics is the course administrator for the course and study programme.