Matematyczne podstawy informatyki

Transkrypt

Matematyczne podstawy informatyki
Uniwersytet Śląski w Katowicach
Wydział Matematyki, Fizyki i Chemii
str. 1
Kierunek i poziom studiów: Matematyka, studia II stopnia, rok 1
Sylabus modułu: Matematyczne podstawy informatyki (03-MO2S-12-MPIn)
1. Informacje ogólne
koordynator modułu
rok akademicki
semestr
forma studiów
sposób ustalania
oceny końcowej
modułu
dr hab. Michał Baczyński ([email protected])
2012/2013
zimowy
stacjonarne
Maksymalnie za wszystkie sposoby weryfikacji efektów kształcenia student
może otrzymać 50 punktów (10 za aktywność, 5 za sprawdziany praktyczne oraz
35 za kolokwium).
Ocena końcowa zależy od sumy otrzymanych punktów w każdym ze sposobów
weryfikacji efektów kształcenia modułu:
<50% możliwych do zdobycia punktów otrzymuje ocenę 2,
[50%,60%] ocena 3,
(60%,70%] ocena 3,5,
(70%,80%] ocena 4,
(80%,90%] ocena 4,5,
(90%,100%] ocena 5.
informacje
dodatkowe
2. Opis zajęć dydaktycznych i pracy studenta
nazwa
Wykład
prowadzący
grupa(-y)
treści zajęć
Kod
MPln_fns_1
dr hab. Michał Baczyński
Wszyscy studenci 1 roku
Przewiduje się realizację następujących treści programowych:
metody
1. Elementy analizy algorytmów. Rozmiar danych, złożoność obliczeniowa (czasowa
i pamięciowa). Typy złożoności: pesymistyczna, optymistyczna, średnia. Notacja
asymptotyczna, rzędy wielkości funkcji. Algorytmy rekurencyjne.
2. Podstawy teorii informacji: pojęcie entropii, przykład uniwersalnego algorytmu
kompresji danych - kodowanie Huffmana tzn. tworzenie optymalnego kodu
prefiksowego (drzewa kodowego) oraz kodowanie Shannona-Fano.
3. Podstawy metod numerycznych. Algorytmy numeryczne i podstawy analizy
błędów.
4. Przybliżone rozwiązywanie równań nieliniowych (metoda bisekcji, metoda
Newtona, metoda siecznych).
5. Metody iteracyjne rozwiązywania układu równań liniowych (metoda najprostsza,
metoda Jacobiego, metoda Gaussa-Seidla).
6. Matematyczne podstawy kryptografii i jej zastosowania. Omówienie pojęcia
klucza jawnego i klucza tajnego.
Jak w opisie modułu. (Pierwsze trzy tematy po 3 godziny a ostatnie trzy tematy po 2
Uniwersytet Śląski w Katowicach
Wydział Matematyki, Fizyki i Chemii
prowadzenia
zajęć
liczba godzin
dydaktycznych
(kontaktowych)
liczba godzin
pracy własnej
studenta
opis pracy
własnej
studenta
organizacja
zajęć
literatura
obowiązkowa
literatura
uzupełniająca
adres strony
www zajęć
informacje
dodatkowe
nazwa
Laboratorium
prowadzący
grupa(-y)
treści zajęć
str. 2
godziny).
15
15
Samodzielne studiowanie notatek sporządzonych na wykładzie oraz literatury
wymienionej w sylabusie.
2 godzin co dwa tygodnie (łącznie 15 godzin)
1. T.H. Cormen, Ch.E. Leiserson, R.L. Rivest i C. Stein, Wprowadzenie do
algorytmów, PWN, Warszawa 2012 (wyd. I w PWN).
2. D. Harel, Rzecz o istocie informatyki, WNT, Warszawa 2009.
3. N. Wirth, Algorytmy + Struktury danych = Programy, WNT, Warszawa 2004
(wyd. 7).
4. D. Kincaid, W. Cheney, Analiza numeryczna, WNT, Warszawa 2006.
5. A. Bjorck, G. Dahlquist, Metody numeryczne, PWN, Warszawa 1987.
1. A. Drozdek, Wprowadzenie do kompresji danych, WNT, Warszawa 1999
http://www.math.us.edu.pl/michal/wyklady/2012_2013/01_zima/MPI_Matematyka/
MPI-mat-2012-2013_zima.html
Kod
MPln_fs_2
dr Andrzej Biela ([email protected])
4 grupy
Przewiduje się realizację następujących treści programowych realizowanych w
wymiarze 2 godzin (co dwa tygodnie) oraz ostatnich zajęć w wymiarze 1 godziny.
1. Zaprezentowanie na komputerze zaimplementowanych czterech różnych
sortowań: sortowania szybkiego Quicksort, przez wstawiane, przez proste
wybieranie, bąbelkowego oraz dokonania pomiaru czasu sortowań. Omówienie
definicji asymptotycznej granicy górnej i dolnej dla danej funkcji oraz podanie
asymptotycznego dokładnego oszacowania dla danej funkcji. Związki między
tymi oszacowaniami.
2. Wyznaczanie złożoności obliczeniowej różnych algorytmów. Podział na
algorytmy efektywne i nieefektywne i przykłady takich algorytmów.
Zaimplementowanie algorytmu nieefektywnego Wieże Hanoi. Wyznaczenie
złożoności obliczeniowej problemu Wież Hanoi i empiryczne potwierdzenie
nieefektywności tego algorytmu dla dużych liczb.
3. Wykorzystanie twierdzenia o rekurencji uniwersalnej do wyznaczania złożoności
obliczeniowej różnych algorytmów rekurencyjnych. Wskazanie optymalnego
Uniwersytet Śląski w Katowicach
Wydział Matematyki, Fizyki i Chemii
4.
5.
6.
7.
8.
metody
prowadzenia
zajęć
liczba godzin
dydaktycznych
(kontaktowych)
liczba godzin
pracy własnej
studenta
opis pracy
własnej
studenta
organizacja
zajęć
literatura
obowiązkowa
literatura
uzupełniająca
str. 3
algorytmu sortującego Merge-Sort sortowanie przez scalanie (metoda dziel i
zwyciężaj) o złożoności obliczeniowej nlg(n) i uzasadnienie tego faktu.
Zaimplementowanie tego algorytmu.
Tworzenie kodu Huffmana - optymalnego kodu prefiksowego. Stabilność
algorytmów na przykładzie pierwiastków równania kwadratowego, zaokrąglanie
do kilku cyfr i wyznaczanie błędu przybliżenia. Zaimplementowanie procedur
obliczających pierwiastki i sprawdzenie ich różnicy z dokładną wartością.
Rozwiązanie układu dwóch równań liniowych (wykonanie implementacji) i
porównanie ich wyników z obliczeniami dokładnymi. Przykłady wskazujące, że
różne zaokrąglenia liczb doprowadzają do różnych wyników obarczonych dużymi
błędami. Przykłady ułatwiające zrozumienie pojęcia algorytmów stabilnych i
niestabilnych, tłumienie błędów.
Metody iteracyjne wyznaczania pierwiastków równania nieliniowego.
Wyznaczanie wartości funkcji ciągłych we wskazanym przedziale z ustalonym
krokiem i wyznaczanie pierwiastka.
Przykład zastosowania iteracyjnej metody Newtona za pomocą prostej stycznej
do krzywej w danym punkcie. Zależność liczby iteracji od wskazanej dokładności
wyniku. Zastosowanie metody siecznych w przykładach.
Omówienie metody systemu kryptograficznego z kluczem jawnym RSA i kluczem
tajnym, przepływu informacji i uniemożliwienie jej przechwycenia.
Sprawdzian pisemny.
Jak w opisie modułu
15
30
Samodzielne rozwiązywanie zadań z zestawów zadań podanych przez wykładowcę i
prowadzącego zajęcia związanych z omawianą problematyką oraz samodzielna
implementacja w języku C++ wskazanych przez prowadzącego zajęcia problemów,
kształtowanie umiejętności jasnego formułowania rozumowań będących
rozwiązaniami zadań bądź prowadzących do poprawnej implementacji ustalonego
zagadnienia.
2 godziny 7 zajęć co dwa tygodnie w pracowni komputerowej oraz ostatnia 1 godzina
zajęć.
1. T.H. Cormen, Ch.E. Leiserson, R.L. Rivest i C. Stein, Wprowadzenie do
algorytmów, PWN, Warszawa 2012 (wyd. I w PWN).
2. D. Harel, Rzecz o istocie informatyki, WNT, Warszawa 2009.
3. N. Wirth, Algorytmy + Struktury danych = Programy, WNT, Warszawa 2004
(wyd. 7).
4. D. Kincaid, W. Cheney, Analiza numeryczna, WNT, Warszawa 2006.
5. A. Bjorck, G. Dahlquist, Metody numeryczne, PWN, Warszawa 1987.
Uniwersytet Śląski w Katowicach
Wydział Matematyki, Fizyki i Chemii
str. 4
adres strony
www zajęć
informacje
dodatkowe
3. Opis sposobów weryfikacji efektów kształcenia modułu
Nazwa
kod
Aktywność na zajęciach
MPln_w_1
kod(-y) zajęć
osoba(-y)
Andrzej Biela
przeprowadzająca(
-e) weryfikację
grupa(-y)
4 grupy.
wymagania
Znajomość pojęć dotyczących treści wykładu oraz realizowanej partii materiału.
merytoryczne
Umiejętność przedstawienia poprawnego rozwiązania zadań wskazanych przez
prowadzącego.
kryteria oceny
Za aktywność na zajęciach będzie można zdobyć maksymalnie 10 punktów co
stanowi 20% pełnej puli punktów możliwych do uzyskania w czasie laboratoriów.
Ocenie podlega stopień opanowania umiejętności oraz wiedzy sprecyzowanych w
efektach kształcenia modułu dotyczących odpowiedniego zakresu materiału a
także umiejętność implementacji wskazanych problemów.
przebieg procesu
Weryfikacja odbywa się poprzez analizę liczby i poprawności udzielonych
weryfikacji
odpowiedzi oraz zaliczenie kolokwium. Punkty za aktywność będą przyznawane za
poprawne rozwiązania zadań domowych lub zadań wskazanych przez
prowadzącego zajęcia w czasie trwania laboratorium. Ilość punktów przyznanych
za rozwiązania będzie uzależniona od stopnia trudności zadań.
informacje
dodatkowe
Nazwa
kod
Kolokwium
MPln_w_2
kod(-y) zajęć
osoba(-y)
Michał Baczyński, Andrzej Biela
przeprowadzająca(
-e) weryfikację
grupa(-y)
4 grupy
wymagania
Znajomość pojęć dotyczących treści wykładu oraz zadania podobnego typu do
merytoryczne
zadań rozwiązywanych na laboratoriach.
kryteria oceny
Ocenie podlega stopień opanowania umiejętności oraz wiedzy zawartej w
efektach kształcenia modułu. 35 punktów jest możliwych do uzyskania w sumie za
kolokwium co stanowi 70% pełnej puli punktów możliwych do uzyskania.
przebieg procesu
Jedno kolokwium pisemne.
weryfikacji
Weryfikacja odbywa się poprzez analizę liczby i poprawności rozwiązanych zadań.
Uniwersytet Śląski w Katowicach
Wydział Matematyki, Fizyki i Chemii
str. 5
Ilość punktów przyznanych za rozwiązania będzie uzależniona od stopnia trudności
zadań.
informacje
dodatkowe
Nazwa
kod
Sprawdziany praktyczne
MPln_w_3
kod(-y) zajęć
osoba(-y)
Andrzej Biela
przeprowadzająca(
-e) weryfikację
grupa(-y)
4 grupy.
wymagania
Umiejętność implementacji z wykorzystaniem komputera wskazanych
merytoryczne
algorytmów umożliwiająca rozwiązanie zadań problemowych z określonego
zakresu a także weryfikacja umiejętności oceny np. złożoności obliczeniowej na
podstawie analizy rozwiązań.
kryteria oceny
Łącznie za implementacje wskazanych problemów można otrzymać 5 punktów co
stanowi 10% pełnej puli punktów. Ocenie podlega stopień opanowania
umiejętności implementacji oraz wiedzy zawartej w efektach kształcenia modułu
związanej z implementacją.
przebieg procesu
Weryfikacja odbywa się poprzez analizę liczby i poprawności zrealizowanych
weryfikacji
implementacji. Ostateczna ocena z przedmiotu została podana w tabeli aktywność na zajęciach – kryteria oceny.
informacje
dodatkowe