Uniwersytet Warszawski, Wydział Nauk Ekonomicznych - Centralny System Uwierzytelniania
Strona główna

Algorithms for Data Science

Informacje ogólne

Kod przedmiotu: 2400-DS1AL
Kod Erasmus / ISCED: 14.3 Kod klasyfikacyjny przedmiotu składa się z trzech do pięciu cyfr, przy czym trzy pierwsze oznaczają klasyfikację dziedziny wg. Listy kodów dziedzin obowiązującej w programie Socrates/Erasmus, czwarta (dotąd na ogół 0) – ewentualne uszczegółowienie informacji o dyscyplinie, piąta – stopień zaawansowania przedmiotu ustalony na podstawie roku studiów, dla którego przedmiot jest przeznaczony. / (0311) Ekonomia Kod ISCED - Międzynarodowa Standardowa Klasyfikacja Kształcenia (International Standard Classification of Education) została opracowana przez UNESCO.
Nazwa przedmiotu: Algorithms for Data Science
Jednostka: Wydział Nauk Ekonomicznych
Grupy: Anglojęzyczna oferta zajęć WNE UW
Przedmioty kierunkowe do wyboru - studia II stopnia IE - grupa 1 (6*30h)
Przedmioty kierunkowe do wyboru - studia II stopnia IE - grupa 2 (2*30h)
Przedmioty obowiązkowe dla I roku Data Science and Business Analytics
Punkty ECTS i inne: 6.00 Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.
Język prowadzenia: angielski
Rodzaj przedmiotu:

obowiązkowe

Skrócony opis:

Celem kursu jest nauka podstawowych algorytmów i struktur danych. Każdy temat będzie omawiany zarówno teoretycznie jak i aplikacyjnie (w popularnych językach programowania, takich jak C++ czy Python).

Ocena końcowa zależna jest od wyników uzyskanych w zadaniach programistycznych, kartkówkach i pisemnym egzaminie.

Pełny opis:

Poniżej przedstawiamy listę poruszanych zagadnień. Istnieje możliwość jej modyfikacji (szerszego omówienia tematu, bądź skróconego) w zależności od zainteresowań grupy. Gwiazdki sugerują, które tematy zamierzamy omówić mniej szczegółowo.

1. Wprowadzenie

-- Języki programowania, których będziemy używać

-- Jak samemu się uczyć algorytmiki

-- Przykładowy algorytm

2. Podstawowe definicje

-- model obliczeniowy: maszyna RAM

-- definicja problemu obliczeniowego

-- złożoność algorytmiczna i notacja asymptotyczna

3. Prawidłowość algorytmów: niezmienniki i niezmienniki pętli

4. Klasyczne algorytmy sortowania

5. Programowanie dynamiczne

6. Słowniki

– listy i tablice

– zrównoważone drzewa binarne *

– tablice haszujące *

7. Inne struktury danych

– kopce

– drzewa przedziałowe

– Find&Union *

8. Grafy

– definicje i zastosowania

– BFS

– DFS

– Algorytm Dijkstry

– skojarzenia i przepływy

9. NP-zupełność

– najważniejsze klasy złożoności: P, NP

– Redukcje i NP-trudność

– Przykłady problemów NP-trudnych

10. Poza klasyczną algorytmiką: symulowane wyżarzanie

Literatura:

Obowiązkowa:

- Cormen T.H, Leiserson Ch.E, Rivest R.L, Stein C. Introduction to algorithms. The MIT Press.

Dodatkowa:

- Banachowski L., Diks K., Rytter W. Algorytmy i struktury danych. WNT, 2011.

Efekty uczenia się:

Dzięki kursowi, student:

– Zna podstawy teorii algorytmów i struktury danych

– Wie, jak zaprojektować własne algorytmy, dowieść ich poprawności i oszacować ich złożoność obliczeniową

– Jest w stanie zastosować wiedzę w praktyce: rozpoznaje typowe obszary, w których standardowe struktury danych i algorytmy mogą być zastosowane lub stosuje je w swoich projektach

– Rozumie istotność korzystania z właściwych struktur danych i efektywnych algorytmów w swojej pracy

Metody i kryteria oceniania:

Ocena końcowa jest ważoną średnią ocen uzyskanych z egzaminu końcowego, zadań programistycznych oraz kartkówek. Egzamin pisemny składa się z części teoretycznej i praktycznej. Zadania programistyczne i kartkówki są obowiązkowe. Nalezy uzyskać co najmniej połowę punktów z zadań programistycznych i kartkówek, połowę punktów z części teoretycznej egzaminu oraz połowę punktów z części praktycznej egzaminu.

Zajęcia w cyklu "Semestr letni 2021/22" (zakończony)

Okres: 2022-02-21 - 2022-06-15
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć:
Ćwiczenia, 15 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Krzysztof Fleszar
Prowadzący grup: Krzysztof Fleszar
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Egzamin
Ćwiczenia - Zaliczenie na ocenę
Wykład - Egzamin

Zajęcia w cyklu "Semestr letni 2022/23" (jeszcze nie rozpoczęty)

Okres: 2023-02-20 - 2023-06-18
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć:
Ćwiczenia, 15 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Krzysztof Fleszar
Prowadzący grup: Krzysztof Fleszar
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Egzamin
Ćwiczenia - Zaliczenie na ocenę
Wykład - Egzamin
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Warszawski, Wydział Nauk Ekonomicznych.
ul. Długa 44/50
00-241 Warszawa
tel: +48 22 55 49 126 https://www.wne.uw.edu.pl/
kontakt deklaracja dostępności USOSweb 6.8.0.0-2 (2022-08-11)