0% found this document useful (0 votes)
36 views

Algorithms: Lecturer (That's Me) : Gabriel Istrate

This document provides an overview of an algorithms course. It introduces the lecturer, Gabriel Istrate, and provides his contact information. It then discusses what the course will cover, including algorithms for searching, sorting, and other tasks. Example algorithms mentioned include PageRank, EdgeRank, and shortest path algorithms. The course aims to teach algorithm design and analysis beyond just programming. It will cover techniques like divide-and-conquer, greedy algorithms, dynamic programming, and backtracking. The syllabus lists 14 topics to be covered over the course. Students are expected to do homework and attend seminars and labs. The course material will draw from algorithm textbooks and online resources.

Uploaded by

Radu Tma
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views

Algorithms: Lecturer (That's Me) : Gabriel Istrate

This document provides an overview of an algorithms course. It introduces the lecturer, Gabriel Istrate, and provides his contact information. It then discusses what the course will cover, including algorithms for searching, sorting, and other tasks. Example algorithms mentioned include PageRank, EdgeRank, and shortest path algorithms. The course aims to teach algorithm design and analysis beyond just programming. It will cover techniques like divide-and-conquer, greedy algorithms, dynamic programming, and backtracking. The syllabus lists 14 topics to be covered over the course. Students are expected to do homework and attend seminars and labs. The course material will draw from algorithm textbooks and online resources.

Uploaded by

Radu Tma
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

ALGORITHMS

Lecturer (that's me): Gabriel Istrate

My office: e-Austria Research Institute, 045B (next door)


http: //gabrielistrate.weebly.com
e-mail: [email protected]
Schedule:
Lecture: every Thursday at 13:00 (room 045C)
Seminar: Thursdays, after lecture.
Lab: Marian Neagul,[email protected]

Algorithms - Lecture 1

What is this course about ?


Have you wondered how :

search engines (e.g. Google) quickly return reasonably


relevant answers to your queries ?
Spam filters detect unwanted messages ?
Travel sites e.g. travelocity, kayak, skyscanner give you travel
options, including multi-leg trips ?
What is behind these tools?
NOT ONLY PROGRAMMING !
Nave approaches won't work as fast/well as you want them
to.
(YES) SOME MATH
Algorithms - Lecture 1

What is this course about ?

What is behind these tools?


Algorithms for searching, keywords matching, sorting,
frequency computation, correlations identification etc.
Examples: PageRank (Google), EdgeRank (Facebook),
shortest path (Dijkstra, etc) - travel applications.
Analogy: cooking.
You all may have a basic idea on cooking. Being a master
chef takes more know-how.
Algorithms - Lecture 1

What is this course about ?


PageRank algorithm used by the
Google search engine to rank the web
pages [Larry Page, 1997]
Basic idea of ranking:
rank(P0)=(1-d)+d*(rank(P1)+rank(Pk ))
P0 current page

Web = graph
P1,, Pk pages which contain links
Ranking criteria = probabilistic
toward P0
scores
d in (0,1) damping factor (models the Rank computing = iterative
influence of time)
algorithm or algebraic
compution (solving as linear
Algorithms - Lecture 1 system)
4

What is this course about ?


EdgeRank algorithm used in Facebook
news feed (selection of news to be
posted on the wall of a user)
Basic idea:
The interaction between a user and a
facebook object (e.g. info, comment
etc) defines an edge
Each edge: 3 importance factors:
affinity (between the user and object
creator), weight, age.
More important edges are included in
News with higher probability.

http://techcrunch.com/2010/04/22/
facebook-edgerank/
http://www.youtube.com/watch?
v=kI4YIYInou0

Algorithms Lecture 1

Algorithmics more than a


university course
Classical research area in Computer Science. Some
modern directions :
-

Algorithmic game theory


Algorithms related to social networks
Online algorithms
Streaming algorithms
Randomized algorithms

If you want to know more/do something beyond this course feel


free to talk to me.

Algorithms Lecture 1

What is this course about ?


This course is about:
designing and analyzing algorithms
abstract thinking and solving problems
This course is NOT:
a programming course
(however we will use Python (http://www.python.org)
a math course
(however we need/use some basic math stuff: sets,
function, relation; some combinatorics; some
mathematical logic. Proof techniques e.g. mathematical
induction or proof by contradiction)

Algorithms - Lecture 1

Why such a course could be


useful for you?
A computer scientist must be prepared for tasks like:
This is the problem. Solve it ...
In such a situation it does not suffice to know
how to code a given algorithm
You must be able to find an adequate algorithm or even
develop a new one to solve the problem

Algorithms - Lecture 1

Why such a course could be


useful for you?
Technology changes. Some things are :
Content: fundamental problems and solutions
Method: Principles and techniques to solve the vast array of
unfamiliar problems that arise in a rapidly changing field

Algorithms - Lecture 1

Syllabus
Fourteen lectures on:
1.
2.
3.
4.
5.
6.

Introduction to algorithmic problem solving


Description of algorithms
Verification of algorithm correctness
Analysis of algorithm efficiency
Sorting and searching
Basic techniques in algorithm design:
a) divide and conquer, decrease and conquer
b) greedy
c) dynamic programming
d) backtracking, branch and bound

Algorithms - Lecture 1

10

Course webpage
Web page: http://gabrielistrate.weebly.com/algorithms.html

lectures files,slides, exercises for seminar/lab


homework
pointers to other video courses on algorithms. Feel free to use alternate
material !
If you find typos or other errors please let me know !
Algorithms - Lecture 1

11

Course material
Based mainly on:
1. T.H. Cormen, C.E. Leiserson, R. Rivest, C. Stein - Introduction to
algorithms, MIT Press, third edition 2009.
2. J. Kleinberg, E. Tardos Algorithm Design, Addison Wesley, 2005

Various course slides/lecture notes due to


Daniela Zaharie (UVT)
Jeff Edmonds (York University, Canada),
David Luebke (Virginia University, USA),
Steven Rudich (Carnegie Mellon University, USA) ...

Algorithms - Lecture 1

12

Rules & expectations


Homework should be returned by the due date; late homework does not
count.
Course attendance: recommended, not enforced.
However seminars/labs are (by university policy) mandatory. More than
2 absences at seminar/lab lead to failing the course.
Sharing ideas is fine, and encouraged. Sharing solutions solutions is
not.
Plagiarism of homework or written test is punishable by educational
regulation and will be punished harshly.
To my mind: university education not primarily about grading. But
grades should reflect your effort
Good grades will require significant amount of effort.
Algorithms - Lecture 1

14

Rules & expectations


In return:
- approachable. Suggested call: Gabi.
- will try to respond to your questions. Convenient time for office hours ?
Preferably not Monday/Friday, generally in the afternoon.
- will try my best to be fair/objective.
- I am teaching this course for the first time (was a TA for it in the States)
Mistakes/typos may appear in slides. You're welcome to tell me about it
(in public too)
- Welcome to interrupt me in class, provided you exercise judgement in
using this (e.g. know required material when asking questions)
- Please let me know how I can make this more enjoyable/interactive.

Algorithms - Lecture 1

15

You might also like