Informatyka Stosowana
OPISY PRZEDMIOTÓW
1. Matematyka Dyskretna.............................................................................3
2. Algebra liniowa ........................................................................................4
3. Opracowanie danych pomiarowych .........................................................6
4. Elementy fizyki ........................................................................................7
5. Fizyka przetwarzania informacji ..............................................................8
6. Office (kurs wyrównawczy)...................................................................10
7. Programowanie proceduralne.................................................................11
8. Algorytmy i struktury danych ................................................................13
9. Systemy operacyjne................................................................................15
10. Wstęp do systemu operacyjnego Unix ...................................................16
11. Sieci komputerowe i Internet .................................................................17
12. Jezyki programowania............................................................................18
13. Programowanie obiektowe.....................................................................20
14. Narzędzia programistyczne ....................................................................21
15. Bazy danych I.........................................................................................22
16. Bazy danych II .......................................................................................23
17. Metody numeryczne I.............................................................................24
18. Wprowadzenie do grafiki komputerowej ...............................................25
19. Języki formalne i automaty ....................................................................27
20. MATLAB / SCILAB - wykorzystanie środowiska obliczeniowego......28
21. Fizyka w symulacji komputerowej i modelowaniu komputerowym......30
22. Podstawy elektroniki i elektrotechniki ...................................................31
23. Administrowanie sieciami lokalnymi i serwerami .................................33
24. Opracowywanie serwisów Web .............................................................34
25. Programowanie w środowisku Windows ...............................................36
26. Analiza i przetwarzanie obrazów cyfrowych .........................................37
27. Sztuczna inteligencja i systemy ekspertowe...........................................39
28. Metody Symulacji w Nanotechnologii...................................................40
29. Nauka i technika w społeczeństwie........................................................41
30. Programowanie urządzeń wirtualnych ...................................................42
31. Komputerowe wspomaganie projektowania (CAD) ..............................44
32. Mikroprocesory i procesory sygnałowe .................................................46
1
33. Transmisja Danych i Systemy Rozproszone ..........................................47
34. Teoria sygnałów .....................................................................................48
35. Sterowniki Programowalne PLC............................................................50
36. Multimedialne metody dydaktyki ..........................................................51
37. Algorytmy II...........................................................................................52
38. Kryptografia i bezpieczeństwo systemów informatycznych. .................54
39. Algorytmy optymalizacji........................................................................56
40. Systemy Symboliczne ............................................................................57
41. Perl dla administratorów systemów........................................................58
42. Technologie projektowania oprogramowania ........................................59
43. Programowanie komunikacyjne i sieciowe ............................................60
44. Akwizycja i przetwarzanie danych.........................................................61
45. Programowanie równoległe i rozproszone .............................................62
46. Programowanie serwisów Web ..............................................................64
47. Grafika i animacja komputerowa. ..........................................................65
48. System składu publikacji LATEX..........................................................66
49. Język Java...............................................................................................67
50. Język Fortran ..........................................................................................68
51. Zaawansowane programowanie obiektowe............................................69
52. Metody numeryczne II ...........................................................................70
53. Elementy informatyki kwantowej w zastosowaniach ............................71
54. Algorytmy kwantowe.............................................................................73
55. Administrowanie sieciami lokalnymi i serwerami .................................74
56. Inteligencja obliczeniowa.......................................................................75
57. Uczenie maszynowe, algorytmy i systemy data mining.........................76
58. Metody wizualizacji danych i Analiza danych tekstowych....................77
59. Przetwarzanie informacji przez mózgi ...................................................78
60. Neuropsychologia komputerowa............................................................79
61. Projektowanie układów scalonych .........................................................80
62. Systemy wbudowane i systemy czasu rzeczywistego ............................82
63. Język opisu sprzętu (VHDL)..................................................................83
64. Układy programowalne ..........................................................................85
65. Logika rozmyta ......................................................................................87
66. Wstęp do bioinformatyki........................................................................89
67. Modelowanie Molekularne.....................................................................90
68. Biofizyka ................................................................................................91
69. Programowanie urządzeń mobilnych .....................................................93
70. Metody obliczeniowe mechaniki płynów...............................................94
71. Biologiczne bazy danych........................................................................96
2
1. Matematyka Dyskretna
Autor: dr Grzegorz Pestka
Forma: Wykład: 30h, ćwiczenia: 30h
Program:
1. Wykład przedstawia podstawowe wiadomości z teorii liczb i algebry abstrakcyjnej.
2. W następnej części wiadomości te są podstawą do omówienia ich zastosowań
3. w kryptografii, konstrukcji ciał skończonych i kodów korygujących.
4. W wykładzie przedstawione są takie wiadomości jak: liczby pierwsze, kongruencje, chińskie
twierdzenie o resztach, fukcja Eulera, twierdzenie Eulera, małe twierdzenie
5. Fermata, niesymetryczny szyfr RSA, funkcja Mobiusa, pierścienie wielomianów i pierścienie
reszt (konstrukcja liczb zespolonych), algorytm Euklidesa, konstrukcja i klasyfikacja ciał
skończonych, kody korygujące błędy, zastosowanie ciał skończonych w kryptografii.
Literatura:
1. A. Kostrykin, Wstęp do algebry, PWN.
2. W. Mochnacki, Kody korekcyjne i kryptografia.
3. K. A. Ross, C. R. B. Wright, Matematyka dyskretna, PWN 2000.
4. R. Graham, D. Knuth, O. Patashnik, Matematyka konkretna, PWN 1996.
3
2. Algebra liniowa
Forma zajęć: Wykład: 30h, ćwiczenia: 30h
Autor: L. Meissner
Opis:
Zapoznanie się z podstawowymi pojęciami algebry liniowej dla przestrzeni skończenie wymiarowych
Program zajęć
1. Przestrzenie wektorowe
a. pojęcie grupy i ciała, przykłady
b. ciało liczb zespolonych
c. przestrzeń wektorowa, podprzestrzenie przestrzeni wektorowych
d. kombinacja liniowa wektorów, niezależność liniowa układu wektorów, baza, wymiar
przestrzeni, przestrzenie skończenie wymiarowe
2. Przekształcenia liniowe
a. przekształcenia liniowe i operacje na nich
b. jądro i obraz przekształcenia liniowego, rząd przekształcenia
c. przestrzeń dualna, baza dualna, przekształcenie dualne
3. Macierze
a. macierz, działania na macierzach
b. macierz odwzorowania liniowego, macierz złożenia przekształceń, macierz
przekształcenia dualnego
c. rzÄ…d macierzy
d. przekształcenie podobieństwa
e. wartości i wektory własne
4. Układy równań liniowych
a. twierdzenie Kroneckera-Capellego
b. zbiór rozwiązań układu liniowego
5. Wyznacznik
a. definicja wyznacznika, własności i metody obliczania wyznacznika
b. minory i rzÄ…d macierzy
c. wzory Cramera, wyznaczanie macierzy odwrotnej do danej
6. Formy dwuliniowe i kwadratowe
a. macierz i rzÄ…d odwzorowania dwuliniowego
b. twierdzenie Lagrange a i Sylwestra
7. Przestrzenie euklidesowe i unitarne
a. iloczyn wewnętrzny, norma wektora, bazy ortonormalne
b. przekształcenia samosprzężone, izometryczne i normalne
c. wartości własne i wektory przekształceń izometrycznych i samosprzężonych
8. Informacje o metodach numerycznych algebry liniowej
a. obliczanie wyznaczników
b. rozwiązywanie układu równań liniowych
c. wyznaczanie macierzy odwrotnej
9. wyznaczanie wielomianu charakterystycznego
10. iteracyjne obliczanie wartości własnych
4
Literatura
1. M. Gelfand, Wykłady z algebry liniowej, PWN, Warszawa 1974.
2. A. Białynicki-Birula, Algebra liniowa z geometrią, PWN, Warszawa 1979.
3. J. Gancarzewicz, Algebra liniowa z elementami geometrii, Wydawnictwo UJ, Kraków 2001.
4. F.W. Byron i R.W. Fuller, Matematyka w fizyce klasycznej i kwantowej, Tom I, PWN,
Warszawa 1975.
5
3. Opracowanie danych pomiarowych
Forma zajęć: Wykład: 15h, laboratorium: 15h
Autor: R Ciuryłło
Opis:
Celem tego przedmiotu jest zapoznanie studentów z podstawowymi pojęciami oraz metodami
wykorzystywanymi podczas oceny niepewności danych pomiarowych. Zostaną omówione:
podstawowe czynniki powodujące niepewność pomiaru wielkości fizycznych; metody oceny
niepewności pojedynczego pomiaru wraz z tak zwanym błędem maksymalnym; wielkości
charakteryzujące serię pomiarów o przypadkowym rozrzucie wyników wraz ze średnią i odchyleniem
standardowym serii; ocena niepewności w przypadku pomiarów bezpośrednich; ocena niepewności w
przypadku pomiarów pośrednich; pojęcia zmiennej losowej skokowej i ciągłej wraz z ich rozkładem
oraz dystrybuantą; pojęcia przedziału ufności i poziomu ufności; centralne twierdzenie graniczne;
rozkład dwumianowy; rozkład Poissona; rozkład Gaussa; rozkład t-Studenta; rozkład chi-kwadrat;
zasada największej wiarygodności wraz z metodą najmniejszych kwadratów; regresja liniowa;
współczynnik korelacji; kowariancja wielkości złożonej, wariancja Allana oraz planowanie
eksperymentu.
Uwagi:
Jeśli można sugerowałbym by wykład był prowadzony w wymiarze 30 godzin (oczywiście 15 godzin
jest również akceptowalne). Uważam że zajęcia te nie powinny odbywać sie wcześniej niż w II
semestrze i koniecznie równolegle lub tuż przed jakąś pracownią (np. laboratorium 45 godzin
Elementów Fizyki ale równie dobrze mogła by być to jakaś pracownia gdzie dokonuje się pomiarów
wspomaganych komputerowo). Wydaje mi się niecelowe prowadzenie ćwiczeń z tego przedmiotu
gdyż uważam że najlepszymi ćwiczeniami będzie właśnie jakaś pracownia w której doświadczenia
będą odpowiednio zaplanowane.
6
4. Elementy fizyki
Forma zajęć: Wykład 60h, , ćwiczenia 30h, laboratorium 45h
Autor: prof. dr hab. S. Chwirot
Opis:
Celem zajęć jest przybliżenie słuchaczom pojęciowej i metodologicznej bazy fizyki. Ze szczególnym
naciskiem potraktowana zostanie prostota wyjściowych założeń fizycznego opisu świata, pozwalająca
opisać świat w oparciu o zaskakująco niewielką liczbę podstawowych oddziaływań i reguł. Wykład
ma charakter elementarny, tym niemniej nie jest to wykład wyłącznie pojęciowy. Na ćwiczeniach
słuchacze mają okazję rozwiązywać proste problemy fizyczne - celem tych zajęć jest z jednej strony
wyrobienie intuicji fizycznej, z drugiej wyrobienie umiejętności posługiwania się prostym aparatem
matematycznym w rozwiązywaniu i modelowaniu problemów fizycznych. Zajęcia laboratoryjne
ukażą złożoność nawet prostych ilościowych pomiarów fizycznych, wyrobią podstawowe nawyki i
umiejętności planowania i wykonania doświadczenia fizycznego oraz wprowadzą do zagadnień
analizy błędów pomiarowych.
Program:
1. Świat oczami fizyka: rzędy wielkości długości, czasu, masy w makro- i mikroświecie; świat
doznań zmysłowych a świat realny itd.
2. Zagadnienie ruchu - od Arystotelesa do Einsteina.
3. Mechanika klasyczna.
4. Stany skupienia materii: atomowa struktura materii, prawa opisujące podstawowe własności i
zjawiska typowe dla róznych stanów skupienia.
5. Termodynamika i elementy fizyki statystycznej.
6. Drgania i fale z elementami akustyki.
7. Elektryczność i magnetyzm.
8. Fale elektromagnetyczne i optyka klasyczna.
9. Elementy fizyki mikroświata: budowa atomu i jądra atomowego, kwantowe własności
mikroświata.
Literatura:
1. D. Halliday, R. Resnick, J. Walker: Podstawy fizyki, PWN, Warszawa, 2006
2. P.G. Hewitt: Fizyka wokół nas, PWN, Warszawa, 2000
7
5. Fizyka przetwarzania informacji
Forma zajęć: Wykład 60 h
Autor: prof. W. Nowak
Program:
1. Oddziaływania fundamentalne.
2. Struktura fizyki
3. Fizyka klasyczna a kwantowa
4. Elektryczność i magnetyzm
a. Prawo zachowania Å‚adunku, Å‚adunki elementarne
b. Potencjał elektryczny
c. Prawo Coulomba
d. Elementy teorii ciała stałego
e. Przewodniki, półprzewodniki izolatory
f. Jak działają baterie i akumulatory w notebookach?
g. Prawo Ampera
h. Silnik elektryczny
i. Prawa zwiÄ…zane z prÄ…dem elektrycznym.
j. Zjawiska magnetyczne
k. Diamagnetyki, Paramagnetyki, Ferromagnetyki
l. Zapis magnetyczny informacji
m. Prawo indukcji Faradaya
n. Prawa Maxwella
o. Jak działają pamięci RAM, FLASH i podobne?
p. Zjawiska falowe
q. Drgania elektryczne, układy LC , RL, RLC
r. DrgajÄ…cy dipol elektryczny
s. Fale elektromagnetyczne
t. Widmo fal elektromagnetycznych
u. Propagacja fal EM
5. Optyka geometryczna podstawy
6. Optyka falowa podstawy
7. Zjawisko całkowitego wewnętrznego odbicia światłowody
8. Budowa czÄ…steczek, poziomy energetyczne, spektroskopia.
9. Podstawy działania laserów
10. Podstawowe pojęcia optoelelektroniki
11. Optyczny efekt Kerra.
12. Holografia.
13. Przetwarzanie światła.
14. Fizyczne podstawy działania ekranów LCD.
15. Główne materiały mikroelektroniki.
16. Entropia a informacja.
8
17. Transport ciepła, problemy chłodzenia.
18. Fizyczne granice szybkości działania procesorów.
19. Podstawy informatyki kwantowej. Pojęcie qbitu.
9
6. Office (kurs wyrównawczy)
Forma zajęć: Laboratorium 30h
Autor: Halina Małłek
Program zajęć
1. Przetwarzanie tekstów.
2. Zasady tworzenia dokumentów tekstowych. Formatowanie czcionki, akapitu i strony.
Wyszukiwanie i zamiana tekstu. Sprawdzanie pisowni. Tabele. Drukowanie dokumentu.
Korespondencja seryjna. Umieszczanie w dokumencie symboli i wyrażeń matematycznych
oraz obiektów graficznych.
3. Arkusze kalkulacyjne.
4. Wprowadzanie i formatowanie danych. Umieszczanie formuł w komórkach arkusza.
Adresowanie względne i bezwzględne. Tworzenie wykresów różnych typów. Przygotowanie
wydruku arkusza.
5. Bazy danych.
6. Tworzenie tabel. Wprowadzanie danych (formularze). Wyszukiwanie danych (filtry,
kwerendy). Przygotowanie wydruków z bazy danych (raporty).
7. Grafika menedżerska i prezentacyjna.
8. Umieszczanie w prezentacji pól tekstowych, obiektów graficznych, tabel, wykresów
i schematów organizacyjnych. Przygotowanie pokazu ustawianie czasów i efektów przejścia,
animacje.
9. Integracja danych z różnych aplikacji.
10. Wykorzystanie danych z innej aplikacji w różnych typach dokumentów.
Literatura
1. M. Kopertowska, Przetwarzanie tekstów (PWN).
2. M. Kopertowska, Arkusze kalkulacyjne (PWN).
3. M. Kopertowska, Bazy danych (PWN).
4. M. Kopertowska, Grafika menedżerska i prezentacyjna (PWN).
10
7. Programowanie proceduralne
Forma zajęć: Wykład 30h, ćwiczenia 30h
Autor: dr hab. Jan Wasilewski, prof. UMK, Katedra Informatyki Stosowanej
Program zajęć:
Wykład stanowi wprowadzenie do zasad poprawnego programowania, ilustrowane przykładami w
standardowych wersjach języków PASCAL i FORTRAN (77 i 9x), z włączeniem elementarnych
wiadomości o obiektach; stanowi także wstęp do szczegółowej nauki języków programowania.
Wymagana jest podstawowa znajomość systemu UNIX/LINUX.
Przegląd zagadnień:
1. Informacja i kodowanie: dane, bity, bajty.
2. Algorytm: podejście zstępujące a wstępujące, hierarchiczna a modularna budowa programu;
ogólna struktura modułu programowego: część deklaracyjna i operacyjna realizacja grafu
operacyjnego; interpretacja, kompilacja, kody pośrednie i konsolidacja.
3. Zmienne a stałe, zmienne proste a strukturalne, skalarne a wskazujące; zmienne arytmetyczne,
logiczne, znakowe, symboliczne; porządkowe a rzeczywiste; inicjowanie wartości.
4. Budowa wyrażeń: arytmetyka stało- a zmiennopozycyjna: uzupełnienie arytmetyczne,
mantysa, cecha; operatory multiplikatywne, addytywne, relacyjne; hierarchia operatorów,
wyrażenia pierwotne, czynniki, składniki, relacje; funkcje standardowe, konwersje typów.
5. Instrukcje proste a strukturalne: przypisania; sekwencje, nawiasy operacyjne; selekcje
dwuwartościowe, wielowartościowe; etykiety i instrukcje skoku; istota programowania
strukturalnego; pętle sterowane z góry i z dołu , pętle o znanej liczbie powtórzeń.
6. Struktury danych: tablice struktury homogeniczne, uporządkowanie elementów, obliczalność
adresu, algebra macierzowa; struktury heterogeniczne: adresowanie elementów przez nazwę;
zbiory: algebra mnogościowa, algorytmy zliczeń.
7. Podprogramy: funkcyjne a proceduralne, istota programowania proceduralnego; parametry
formalne a aktualne: komunikacja przez wartość i przez nazwę ; algorytmy rekursywne;
zasięgi nazw, wielkości globalne a lokalne; współdzielenie pamięci.
8. Obiekty elementarne wprowadzenie: dane i metody, poziomy dostępności nazw w obiektach,
dziedziczenie; funkcje o wartościach obiektowych; przeciążanie operatorów.
9. Pliki: trwałe zapisy struktur danych, aspekty techniczne i implementacyjne; pliki fizyczne a
logiczne; dostęp bezpośredni a sekwencyjny; podstawowe operacje na plikach; pliki binarne a
tekstowe; podstawowe operacje wejścia/wyjścia, formatowanie.
10. Struktury dynamiczne: wskazniki, operatory adresowe, kreacja i anihilacja; tablice
dynamiczne; listy i podstawowe działania na nich; stosy, kolejki, listy okrężne,
dwukierunkowe, drzewa.
Ćwiczenia prowadzone będą równolegle w językach:
PASCAL - w oparciu o system DELPHI (jako aplikacje konsolowe), na platformie WINDOWS;
FORTRAN - w oparciu o kompilatory GNU, na platformie UNIX/LINUX.
Literatura:
1. N. Wirth, Algorytmy + struktury danych = programy, WNT, Warszawa 1989;
2. M. Iglewski, J. Madey, S. Matwin, Pascal, WNT, Warszawa 1986;
3. R. K. Kott, Programowanie w języku Pascal, WNT, Warszawa 1988;
11
4. A. Struzińska-Walczak, K. Walczak, Nauka programowania dla już nie całkiem
poczÄ…tkujÄ…cych, W&W, Warszawa 2000;
5. T. M. Sadowski, Delphi, HELION, Gliwice 2003;
6. R. K. Kott, Fortran 77, WNT, Warszawa 1989;
7. R. K. Kott, K. Walczak, Programowanie w języku Fortran 77, WNT, Warszawa 1991;
8. D. Chrobak, Fortran. Praktyka programowania, MIKOM, Warszawa 2003;
9. A. Trykozko, Język Fortran, MIKOM, Warszawa 1999.
12
8. Algorytmy i struktury danych
Forma zajęć: Wykład 30h, ćwiczenia 30h, laboratorium 30h
Autor: dr Norbert Jankowski
Program zajęć
1. Algorytmy a struktury danych uwagi ogólne.
2. Dynamiczne struktury danych: Listy, stosy, kolejki, kolejki priorytetowe, listy cykliczne, listy
dwukierunkowe, wartownik. Budowa struktur i algorytmów operujące na różnych typach list.
3. Drzewa, drzewa binarne, drzewa przeszukiwań (z porządkiem), dwukierunkowe. Sposoby
wykorzystywania struktur drzewiastych.
4. Grafy, sposoby reprezentacji, terminologia. Podstawowe sposoby manipulacji na grafach.
5. Definicje złożoności i sposoby jej wyznaczania.
6. Uwagi o typach algorytmów.
7. Algorytmy sortowania:
" Analiza algorytmów sortowania O(n^2)
" Analiza algorytmów sortowania O(n log n)
" Analiza algorytmów sortowania O(n)
8. Statystyki pozycyjne
9. Metody mnożenia macierzy
10. Programowanie dynamiczne
11. Problem mnożenia ciągu macierzy
12. Algorytm wyznaczania najdłuższego wspólnego podciągu
13. Algorytm triangulacji wielokÄ…ta
14. Algorytmy przeszukiwania grafów
15. Sortowanie topologiczne
16. Algorytmy wyznaczania minimalnych drzew rozpinajÄ…cych
17. Algorytmy wyznaczania najkrótszych ścieżek w grafach:
" Elementy wspólne algorytmów
" Algorytm Dijkstry
" Algorytm Bellmana-Forda
" Algorytm Floyda-Warshalla
18. Analiza i algorytmy drzew zrównoważonych na przykładzie drzew czerwono-czarnych.
Literatura
1. A. V. Aho, J. E. Hopcroft, J. D. Ullman. Projektowanie i analiza algorytmów. Helion,
Warszawa, 2003.
2. A. V. Aho, J. E. Hopcroft, J. D. Ullman. Projektowanie i analiza algorytmów. Państwowe
Wydawnictwa Naukowe, Warszawa, 1983.
3. Niklaus Wirth. Algorytmy + Struktury Danych = Programy. Wydawnictwa Naukowo-
Techniczne, Warszawa, wydanie 2, 1989.
4. T. H. Cormen, C. E. Leiserson, R. L Rivest. Wprowadzenie do algorytmów. Wydawnictwa
Naukowo-Techniczne, Warszawa, 1997.
5. L. Banachowski, K. Diks, W. Rytter. Algorytmy i struktury danych. Wydawnictwa Naukowo-
Techniczne, Warszawa, 1996.
6. M. M. Sysło, N. Deo, J. Kowalik. Algorytmy optymalizacji dyskretnej. Państwowe
Wydawnictwa Naukowe, Warszawa, 1993.
7. D. Harel. Rzecz o istocie informatyki. Algorytmika. Wydawnictwa Naukowo-Techniczne,
Warszawa, 1992.
13
8. L. Banachowski, A. Kreczmar, W. Rytter. Analiza algorytmów i struktur danych.
Wydawnictwa Naukowo-Techniczne, Warszawa, 1989.
9. L. Banachowski, A. Kreczmar. Elementy analizy algorytmów. Wydawnictwa Naukowo-
Techniczne, Warszawa, 1982.
10. D. E. Knuth. Sztuka Programowania, wolumen I III. Wydawnictwa Naukowo-Techniczne,
2002.
14
9. Systemy operacyjne
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr hab. J. Kobus
Program zajęć:
Celem zajęć jest przedstawienie podstawowych zagadnień związanych z
działaniem systemu komputerowego i roli jaką odgrywa w nim system
operacyjny. Zagadnienia prezentowane są w kontekście potrzeb
zaawansowanego użytkownika lub administratora systemu komputerowego,
któremu znajomość funkcji i działania systemu operacyjnego jest
niezbędna do właściwej konfiguracji i eksploatacji dostępnego sprzętu
komputerowego. Prezentowane sÄ… techniki zarzÄ…dzania podstawowymi
zasobami sprzętowymi komputera: procesorem, pamięcią operacyjną oraz
wirtualną i urządzeniami wejściawyjścia. Omawiany jest także ich wpływ
na efektywność funkcjonowania systemu jako całości. Dyskutowane są
takie zagadnienia jak wieloprogramowość, systemy z podziałem czasu,
systemy z obsługą przerwań, dualny tryb pracy, przerwania programowe i
wywołania systemowe. W kontekście wykorzystania procesora omawiane są
pojęcia procesu i wątku oraz ich stanów, algorytmy przydziału
procesora (priorytety), a także problemy synchronizacji i
zakleszczeń. W odniesieniu do pamięci omawiane jest zagadnienie
zarządzania pamięcią operacyjną i wirtualną (stronicowanie na
żądanie), rola pamięci operacyjnej we współczenych systemach
operacyjnych (pamięci podręczne stron, buforów, wymiany), a także
dyskutowane są problemy związane z zarządzaniem pamięcią dyskową
(systemy plików, i-węzły, spójność systemu plików).
Literatura
1. M. J. Bach. Budowa systemu operacyjnego UNIX . Naukowo-Techniczne,Warszawa, 1995.
Wydawnictwo
2. R. Love. Linux kernel. Przewodnik programisty. Wydawnictwo Helion, Gliwice, 2004.
3. A. Silberschatz i P. B. Galvin. Podstawy systemów operacyjnych. Wydawnictwo Naukowo-
Techniczne, wyd.5, Warszawa, 2002.
4. William Stallings. Systemy operacyjne. Wydawnictwo Robomatic, Wrocław, 2004.
5. A. S. Tanenbaum. Modern Operating Systems. Prentice-Hall International, Upper Saddle
River, 1992.
15
10. Wstęp do systemu operacyjnego Unix
Forma zajęć: Wykład 15h, laboratorium 30h
Autor: dr N. Jankowski
Program zajęć:
Celem zajęć jest przedstawienie podstaw użytkowania systemu operacyjnego Unix.
1. Struktura systemu Unix (jÄ…dro, biblioteki, etc)
2. Unix sieć
3. Unix a inne systemy operacyjne, odmiany Linux
4. Użytkownicy, procesy, powłoki, interfejs graficzny
5. Struktura użądzreń i systemy plików. Montowanie urządzeń dyskowych. Nazwy plików i
katalogów, nazwy uogólniające, prawa dostępu i ich zmiana, etc.
6. Podstawowe operacje na strukturach plików
7. Przegląd przydatnych poleceń i programów systemu Unix i dodatków Linuxa
8. Edytory tekstowe
9. Wielozadaniowość, strukienie, kontrola procesów. Kontrola konstrukcji wywołania polecenia
10. Metody archiwizacji systemu Unix, metody instalacji pakietów w systemie Linux
11. Nauka pisania skryptów
16
11. Sieci komputerowe i Internet
Forma zajęć: wykład 30h, laboratorium 30h
Autor: dr hab. J. Kobus
Program zajęć:
Celem zajęć jest przedstawienie podstawowych zagadnień umożliwiających
zrozumienie funkcjonowania współczesnych lokalnych i rozległych sieci
komputerowych, głównie Internetu. Omówiony zostanie model OSI, a
szczegółowa charakterystyka najważniejszych protokołów z rodziny
TCP/IP (IP, ARP/RARP, ICMP, TCP, UDP, SSH, FTP) posłuży do wyjaśnienia
komunikacji host-host w sieci Internet. Komunikacja w lokalnych
sieciach komputerowych zostanie przedyskutowana na przykładzie sieci
Ethernet i Wi-Fi. Omówione zostana także usługi takie jak DHCP i DNS,
które wspomagają konfigurację i komunikację hostów w sieci
Internet. Komunikacja w sieciach rozległych zostanie przedstawiona
poprzez omówienie takich protokołów jak HDLC, PPP i Frame
Relay. Osobno zostanie przeanalizowany problem trasowania pakietów w
sieciach rozległych (protokoły routingu RIP, OSPF, BGP, routing
hierarchiczny). Przedstawione zostaną także media transmisyjne i ich
parametry, rodzaje okablowania oraz urzÄ…dzenia sieci lokalnej i
rozległej (przełączniki, punkty dostępowe, routery,
modemy). Bezpieczeństwo komunikacji sieciowej zostanie omówione w
kontekście filtrowania pakietów i tworzenia wirtualnych sieci
prywatnych.
Literatura
1. V. Amato, editor. Akademia Sieci Cisco. Pierwszy rok nauki. Wydawnictwo MIKOM,
Warszawa, 2001.
2. V. Amato, editor. Akademia Sieci Cisco. Drugi rok nauki. Wydawnictwo MIKOM, Warszawa,
2001.
3. D. E. Comer. Sieci komputerowe i intersieci. Wydawnictwo NaukowoTechniczne, Warszawa,
2000.
4. M. Sportack. Sieci komputerowe - Księga eksperta. Wydawnictwo Helion, Gliwice, 1999.
5. A. S. Tanenbaum. Sieci komputerowe. Wydawnictwo Helion, Gliwice, 2004.
17
12. Jezyki programowania
Forma zajęć
Wykład (30 godzin), Laboratorium (30 godzin)
Autor dr Antoine Naud
Program zajęć
1. Wprowadzenie:
2. Typy danych, stale i zmienne:
Uwagi wstępne
Typy podstawowe
Stale podstawowych typów
Deklaracja i inicjalizacja zmiennych
Klasy pamięci
Konwersje typów
Typy pochodne
3. Operatory i wyrażenia:
Budowa wyrażenia
Priorytety operatorów
Operatory indeksowania, wyboru i wywołania
Operatory jednoargumentowe
Operatory arytmetyczne
Przesunięcia bitowe
Operatory porównania i przyrównania
Bitowe operatory logiczne & ^ |
Operatory logiczne && ||
Operator warunkowy ?:
Operatory przypisania = *= /= %= += -= <<= >>= &= ^= |=
Operator połączenia ,
Uwagi ogólne
4. Instrukcje (printf i scanf):
Instrukcje wyrażeniowe
Instrukcje warunkowe lub selekcji
Instrukcje pętli
Pozostałe instrukcje sterujące
5. Funkcje:
Funkcje bibliotek standardowych
Przekazywanie argumentów przez wartość i zmienna
Funkcje rekurencyjne
Funkcja main
Wyniki w strukturze
Wyniki w strukturze c.d.
Funkcje ze zmienna liczba argumentów
Budowa funkcji
6. Tablice i wskazniki:
Podstawowe pojęcia
Tablice jednowymiarowe
Arytmetyka adresami i tablicami
Tablice wielowymiarowe
18
Wskazniki
Tablice wskazników
Argumenty funkcji w postaci tablic/wskazników
Wskazniki a funkcje
Tablice funkcji
Sortowanie elementów tablicy za pomocą funkcji qsort
Tablice struktur
Pytania kontrolne
7. Przydzielanie pamięci:
Wstęp: terminologia
Biblioteczne funkcje dynamicznego przydziału pamięci (alloc.h)
Przydzielanie pamięci dla tablic
Przydzielanie pamięci dla struktur
Pytania i zadania
8. Obsługa plików:
Strumienie, otwieranie i zamykanie plików
Znakowe wejście i wyjście
Formatowane wejście i wyjście
Binarne wejście i wyjście
Sterowanie buforem i pozycja pliku
Zadania kontrolne:
9. Dyrektywy preprocesora
10. Funkcje II
11. Tablice i wskazniki II
12. Argumenty funkcji main
13. Pliki nagłówkowe
14. Projekt
Literatura
1. Kernighan B. W., Ritchie D. M. Jezyk ANSI C. Warszawa, WNT 1988 (Norma)
2. Kisilewicz J. Jezyk C w srodowisku Borland C++, Wyd. 4, Oficyna Wydawnicza Politechniki
Wroclawskiej, Wroclaw 2003
3. Delannoy C. Cwiczenia z jezyka C. Warszawa, WNT 1993
4. Summit S. Programowanie w jezyku C FAQ, Helion, 2003
5. Loudon K. Algorytmy w C, Helion, 2003.
19
13. Programowanie obiektowe
Forma zajęć: Wykład 30h, laboratorium 30h
Opis
Celem przedmiotu jest przedstawienie metodologii projektowania i programowania obiektowego,
pewnych znanych technologii obiektowych oraz specyfiki popularnych języków obiektowych C++ i
C#.
Auto: dr Krzysztof GrÄ…bczewski
Wymagania wstępne
Kurs programowania strukturalnego w języku C
Program zajęć
1. Projektowanie obiektowe kapsułkowanie, ochrona danych
2. Klasy i obiekty, ochrona danych przez modyfikatory dostępu
3. Tworzenie i destrukcja obiektów i tablic obiektów
4. Polimorfizm przeciążanie operatorów
5. Dziedziczenie,
a. Klasy bazowe i pochodne, hierarchie klas
b. Dziedziczenie wielokrotne, dziedziczenie wirtualne
6. Abstrakcyjne typy danych
a. Metody wirtualne, klasy abstrakcyjne, wirtualne destruktory
b. Interfejsy a klasy abstrakcyjne
7. Wzorce (ang. templates) funkcji i klas
8. Obsługa wyjątków
9. Specyfika C++
a. l-wartości i r-wartości, efektywne przekazywanie argumentów itp.
b. Przestrzenie nazw
c. RTTI runtime type identification
d. Standard Template Library (STL)
e. Specyfika Borland C++ Buidera (__closure, __property etc.)
10. Środowisko .NET i język C#
a. Zarządzanie pamięcią
b. Assembly, delegate, serializacja i inne nowe konstrukcje językowe
c. Atrybuty i wykorzystanie meta-danych
d. Bogactwo funkcjonalne .NET: kolekcje, obsługa wątków, komunikacja
międzyprocesowa, szyfrowanie danych itd.
Literatura
1. Bjarne Stroustrup Język C++ , WNT 2002.
2. Stanley B. Lippman, Josee Lajoie Podstawy języka C++ , WNT 2001.
3. Specyfikacja standardu języka C++ draft 2.12.1996.
4. SGI Standard Template Library Programmer s Guide http://www.sgi.com/tech/stl/.
5. Jesse Liberty, Brian MacDonald, C#. Programowanie. Helion 2005.
6. Peter Drayton, Ben Albahari, Ted Neward, C# in a Nutshell, O'Reilly 2002.
20
14. Narzędzia programistyczne
Forma zajęć: wykład 15h, laboratorium 15h
Autor: dr. J. Matulewski
Cel zajęć:
zapoznanie studentów z najpopularniejszymi środowiskami programistycznymi, wykazanie korzyści
korzystania z IDE
Nabyte umiejętności: projektowanie wizualne/RAD, zdarzeniowy model programowania aplikacji,
skuteczne i szybkie debugowanie kodu, narzędzia testowania i udostępniania gotowych projektów,
omówione zostaną także wybrane szczegółowe zagadnienia platform z których będziemy korzystać
(m.in. kolekcje w .NET, wybrane funkcje WinAPI w Win32 itd.)
Wymagania: studenci powinni programować biegle w jednym z języków obiektowych: C++, C#,
Java, Delphi i znać przynajmniej pobieżnie pozostałe
W trakcie kursu studenci poznają środowiska
Nazwa Producent Licencja Platforma Uwagi
C++Builder i Delphi Borland Darmowe (Personal) Win32 może wersja Turbo
Visual C# Microsoft Darmowe (Express) .NET 3.5 biblioteki
Windows Forms i
WPF, ADO.NET
Visual Web Microsoft Darmowe (Express) .NET 3.5 ASP.NET
Developer
NetBeans Sun Darmowe JDK 6u3 alt. Eclipse
21
15. Bazy danych I
Forma zajęć Laboratorium (45 godzin)
Autor Halina Małłek
Program zajęć
1. Tworzenie aplikacji za pomocÄ… systemu zarzÄ…dzania relacyjnÄ… bazÄ… danych MS Access.
a. Rozmieszczanie danych w tabelach.
b. Definiowanie relacji.
c. Wyszukiwanie informacji filtry, kwerendy wybierające, krzyżowe, funkcjonalne
i SQL.
d. Wprowadzanie i przeglÄ…danie danych formularze.
e. Generowanie wydruków raporty.
f. Tworzenie wykresów.
g. Wymiana danych z innymi aplikacjami.
h. Współpraca z Internetem.
i. Automatyzacja aplikacji makra, moduły.
2. MS SQL Server i język manipulowania danymi T-SQL.
a. Pobieranie informacji z tabel (DQL).
b. Wprowadzanie i edycja danych (DML).
c. Tworzenie i modyfikowanie struktury baz danych (DDL).
d. Definiowanie uprawnień (DCL).
e. Tworzenie widoków, procedur przechowywanych i funkcji.
f. Więzy i wyzwalacze.
g. Transakcje.
h. Technologia XML.
3. Aplikacje klient-serwer.
a. Rozbudowa bazy danych Accessa do aplikacji o architekturze klient-serwer.
b. Tworzenie tzw. projektów Accessa.
Literatura
1. M. R. Irwin, C. N. Prague, J. Reardon, Access 2003 PL. Biblia (Wydawnictwo Helion, 2004).
2. S. S. Bagui, R.W. Earp, SQL dla SQL Server 2005. Wprowadzenie (Wydawnictwo Helion).
3. M. Zawadzki, SQL Serwer 2005 (Wydawnictwo Naukowe PWN, Warszawa 2006).
4. M. Otey, Microsoft SQL Server 2005. Nowe możliwości (Wydawnictwo Helion, 2005).
5. J. S. Bowman, S. L. Emerson, M. Darnovsky, Podręcznik języka SQL (Wydawnictwa
Naukowo-Techniczne, Warszawa 2001).
6. C. J. Date, H. Darwen, SQL. Omówienie standardu języka (Wydawnictwa Naukowo-
Techniczne, Warszawa 2000).
7. R. M. Riordan, Projektowanie systemów relacyjnych baz danych (Wydawnictwo RM,
Warszawa 2000).
22
16. Bazy danych II
Autor: dr hab. Piotr Pepłowski
Forma: Wykład: 30h, laboratorium: 45h
Wymagania wstępne
- Bazy danych I
- Znajomość algorytmów i struktur danych
Opis:
Celem kursu jest zapoznanie studentów z teoretycznymi podstawami systemów baz danych. Po
zakończeniu kursu studenci będą
1. rozumieli relacyjny model danych
2. znali standardowy język baz danych jakim jest SQL
3. umieli normalizować schematy baz danych
4. potrafili identyfikować warunki integralności i bezpieczeństwa danych
5. umieli stworzyć fizyczny model bazy danych uwzględniając ograniczenia nakładane przez
m.in. sprzęt, system operacyjny, sieci komputerowe
6. umieli optymalizować zapytania
Program:
1. Model encji związków
2. Relacyjny model danych (algebra relacyjna, rachunek relacyjny)
3. SQL i PL/SQL
4. Projektowanie baz danych (zależności funkcjonalne, postaci normalne)
5. Przetwarzanie transakcyjne i optymalizacja zapytań
6. Problemy bezpieczeństwa w bazach danych (schemat uprawnień, kopie bezpieczeństwa)
7. Fizyczna organizacja baz danych (organizacja plików, typy plików, indeksy, pamięci
zewnętrzne, RAID)
8. Data mining (eksploracja danych) oraz hurtownie danych
9. Obiektowo zorientowane i obiektowe relacyjne systemy bazy danych
10. Rozproszone i równoległe systemy baz danych
11. Kierunki rozwoju (genomiczne bazy danych bioinformatyka, mobilne bazy danych,
XML,...)
Literatura
1. Elmasri R., Navathe S., Wprowadzenie do systemów baz danych, Wyd. Helion, (4th Edition),
2005
2. Date C. J., An Introduction to Database System, Adison-Wesley Pub. Comp., również WNT
W-wa, (seria: Klasyka Informatyki), 2000
3. R. Ramakrishnan, J. Gehrke, Database Management Systems, 2nd edition, WCB/McGraw-
Hill, 2001
4. S. Sumathi, S. Esakkirajan, Fundamentals of Relational Database Management Systems,
Springer 2007
23
17. Metody numeryczne I
Forma zajęć: Wykład 30h, ćwiczenia 30h
Autor prof. dr hab. Włodzimierz Jaskólski
Opis przedmiotu
Zadaniem wykładu jest zapoznanie studentów z podstawowymi metodami numerycznymi używanymi
w praktyce i w zastosowaniach naukach informatycznych i przyrodniczych (np. w fizyce).
Szczegółowo omawiane są tylko wybrane, podstawowe metody numeryczne.
Pozostałe metody są omawiane informacyjnie.
Wymagania wstępne
1. Analiza matematyczna
2. Algebra
3. Język programowania (np. PASCAL)
Zawartość
1. Wprowadzenie: systemy liczenia i reprezentacja informacji w komputerze.
2. Zasady programowania strukturalnego i elementy języka Pascal.
3. Błędy obliczeń numerycznych.
4. Metody numeryczne.
a. Interpolacja.
b. Całkowanie numeryczne. Całki wielowymiarowe.
c. Różniczkowanie numeryczne.
d. Rozwiązywanie równań (znajdowanie zer funkcji). Układy równań nieliniowych.
e. Szukanie ekstremów. Metoda Brenta. Metody gradientowe.
f. Układy równań algebraicznych. Metoda eliminacji Gaussa. Wybór elementu głównego.
g. Równania różniczkowe.
h. Równania różniczkowe cząstkowe.
i. Diagonalizacja macierzy (rozwiązywanie zagadnienia własnego macierzy).
j. Transformata Fouriera.
k. Przegląd pozostałych zagadnień numerycznych.
Literatura
1. A. Marciniak, Turbo Pascal 7.0 (BUM).
2. J. Stoer, R. Bulirsch, Wstęp do analizy numerycznej (PWN, 1987).
3. A. Ralston, Wstęp do analizy numerycznej (PWN, 1975).
4. A. Marciniak, Podstawowe procedury numeryczne w języku Turbo Pascal.
5. W. H. Press et al., Numerical recipies (CUP, 1986).
6. Wykłady dostępne w lokalnej sieci komputerowej:
7. www.fizyka.umk.pl/~wj/EDU/PMN
24
18. Wprowadzenie do grafiki komputerowej
Forma zajęć: Wykład 15h, laboratorium 15h
Autor: dr M. Michalski
Program zajęć:
1. Zagadnienia wstępne
a. Fizjologia wzroku
b. Widzialne spektrum promieniowania elektromagnetycznego fizyka barw
c. ZÅ‚udzenia optyczne
d. Cyfrowe modele koloru (RGB, CMYK, HSV, Lab)
e. Konwersja między modelami koloru, niezupełność układu barw
2. Obrazy cyfrowe reprezentacja rastrowa
a. Rozdzielczość cecha urządzenia reprodukującego
b. Palety i głębia koloru
c. Ocena jakości obrazów rastrowych
d. Główne czynniki wpływające na jakość obrazu rastrowego
e. Urządzenia do pozyskania obrazów rastrowych
3. Narzędzia manipulacji obrazami rastrowymi
a. Histogramy i krzywe odpowiedzi balansowanie tonów i kolorów
b. Selekcje i maski
c. Retusz, klonowanie
d. Praca w oddzielnych kanałach barwnych
e. Warstwy i ich składanie
f. Kanał alfa
g. Technika balansowania kolorów neutralnych przykład
h. Filtracja obrazu
i. Przykład filtru unsharp mask
4. Przykładowe programy graficzne: GIMP, Adobe Photoshop
5. Formaty plików graficznych i kompresja obrazów cyfrowych
a. Formaty nieskompresowane, z kompresjÄ… bezstratnÄ… i z kompresjÄ… stratnÄ…
b. Przykład algorytmu kompresji bezstratnej
c. Anatomia formatu JPG
d. JPG czy GIF?
6. Elementy grafiki wektorowej
a. Reprezentacja i struktura prostych obiektów graficznych
b. Krzywe Bezier
c. Wypełnienia płaskie, gradientowe i teksturowe
d. Liternictwo
e. Hierarchizacja obiektów graficznych
f. Kolejność obiektów i warstwy
g. Efekty specjalne: perspektywa, deformacje, przezroczystość
h. Techniki wektoryzacji obrazów rastrowych
7. Przykład oprogramowania Corel Draw
8. PostScript i PDF
25
a. Język programowania PostScript
b. Stos i odwrotna notacja polska
c. Proste instrukcje języka PostScript
d. Makrogeneracja i proceduralność
e. Przetwarzanie: od programu PostScript do obrazu rastrowego
f. PDF postać półskompilowana
9. Oprogramowanie PostScriptowe
a. GhostScript i GhostView
b. Rodzina Adobe Acrobat
Wykład Podstawy grafiki komputerowej prowadzony był w dwóch częściach w latach 2003 2006
dla Podyplomowego Studium Programowania i Zastosowań Komputerów. W 2007 r. znalazł się w
programie studiów dziennych na kierunku fizyka techniczna jako wykład monograficzny.
26
19. Języki formalne i automaty
Forma zajęć: Wykład 30h, ćwiczenia 15h
Autor: dr M. Michalski
Program zajęć:
1. Podstawy matematyczne
a. Zbiory, relacje, grafy
b. Teoria mocy zbiory przeliczalne i nieprzeliczalne
c. Proste struktury algebraiczne
d. Indukcja matematyczna
e. Rekursja
2. Języki formalne
a. Alfabet i język nad nim
b. Różne metody definiowania języków
c. Operacje na językach
3. Gramatyki hierarchia Chomsky ego języków formalnych
a. Języki i gramatyki regularne, wyrażenia regularne
b. Języki i gramatyki bezkontekstowe
c. Języki i gramatyki kontekstowe
d. Języki i gramatyki typu 0
e. Języki rekursywne i rekursywnie przeliczalne
4. Automaty i ich relacje z hierarchiÄ… Chomsky ego
a. Skończone automaty deterministyczne
b. Automaty niedeterministyczne, równoważność z automatami deterministycznymi
c. Automaty ze stosem
d. Automaty liniowo ograniczone
e. Maszyny Turinga
5. Hipoteza Churcha
6. Niedeterministyczne i losowe maszyny Turinga
7. Modele obliczeń
a. Funkcje f : N N a języki formalne
b. Gramatyki, automaty i wyrażenia jako modele obliczeń
8. Teoria złożoności obliczeniowej i jej związki z teorią języków formalnych
a. Klasy P i NP
b. Redukcja, problemy NP-zupełne i NP-trudne
c. Przykłady problemów NP-zupełnych i redukcji między nimi
9. Języki formalne w zastosowaniach
10. Teoria parsingu: gramatyki LL(k) i LR(k)
11. Systemy Lindenmayera
27
20. MATLAB / SCILAB - wykorzystanie środowiska
obliczeniowego
Autor: dr hab. Piotr Pepłowski
Forma: Wykład: 15h, laboratorium: 30h
Opis:
Celem zajęć jest zapoznanie studentów z Matlabem, jednym z najbardziej zaawansowanych
środowisk służących do obliczeń numerycznych w badaniach naukowych i zastosowaniach
inżynierskich. Słuchacze
1. uzyskają umiejętności wywoływania i używania podstawowych funkcji Matlaba i konstrukcji
języka
2. będą potrafili budować własne złożone funkcje i je optymalizowć
3. zwiększą umiejętności rozwiązywania problemów obliczeniowych
4. będą potrafili stosować środowisko obliczeniowe do rozwiązywania praktycznych problemów
w badaniach i pracy inżynierskiej
Większość zagadnień będzie prezentowana równolegle w środowisku SCILAB
Program
1. Wprowadzenie do środowiska Matlab w systemie Unix i Windows.
2. Porównanie środowiska programistycznych MATLAB i SCILAB
3. Typy zmiennych, operatory, instrukcje sterujÄ…ce.
4. Tablice w Matlabie i notacja dwukropkowa.
5. Grafika w Matlabie, struktura obiektów figure, axes, line, ....
6. Zasady programowania w Matlabie funkcje, funkcje zagnieżdżone, prywatne, anonimowe
7. Optymalizacja funkcji i skryptów.
8. Przykłady zastosowań Matlaba do algebry liniowej, interpolacji i aproksymacji funkcji jednej
zmiennej i wielu zmiennych, rozwiązywania problemów dynamicznych (równania
różniczkowe)
9. Tablice wielowymiarowe i wizualizacja danych.
10. Budowa graficznego interfejsu użytkownika.
11. Dołączanie zewnętrznych funkcji do Matlaba (C/Java)
12. Obiekty w Matlabie
13. Przykłady zastosowań Matlaba do mechaniki kwantowej, analizy sygnałów, analizy układów
nieliniowych czy analizy obrazów
Literatura
1. B. Mrozek, Z. Mrozek, MATLAB i Simulink. Poradnik użytkownika, 2004, Helion
2. D. Higham, N.Higham, Matlab Guide, Second edition, 2005, SIAM
3. C. Moler, Numerical Computing with Matlab, SIAM, 2004 (książka w wersji elektronicznej
dostępna na stronie http://www.mathworks.com/moler/ )
28
4. W. Regel, Obliczenia symboliczne i numeryczne w MATLAB (wydanie 1).Wydawnictwo
MIKOM, Warszawa 2003.
5. W. Regel, Przykłady i ćwiczenia w programie Simulink (wydanie 1).Wydawnictwo MIKOM,
Warszawa 2004.
6. A. H. Register, A guide to MATLAB object oriented programming, 2007, Chapman and
Hall/CRC
29
21. Fizyka w symulacji komputerowej i
modelowaniu komputerowym
Forma zajęć: Wykład 60h
Autor: prof. dr hab. W. Nowak
Program zajęć:
1. Fizyczny opis ruchu
2. Równania różniczkowe rodzaje, metody rozwiązywania
3. Układy równań rózniczkowych
4. Równania ruchu metody całkowania.
5. Metody różnic skończonych w technice.
6. Pola skalarne i wektorowe, rola w modelowaniu.
7. Układy dynamiczne, modelowanie procesów czasowych.
8. Metody Monte Carlo obliczania wielkości średnich.
9. Zasady optyki geometrycznej.
10. Zasady optyki falowej.
11. Powstawanie obrazów.
12. Widzenie barwne i 3-D.
13. Percepcja obrazów, perspektywa.
14. Podstawy animacji.
15. Mechaniczny opis materiałów
16. Odkształcenia sprężyste i niesprężyste, opis fizyczny.
17. Modelowanie ośrodków ciągłych.
18. Modelowanie tarcia hydrodynamicznego, wirtualne tunele aerodynamiczne.
19. Fale, solitony, dynamika cieczy i gazów.
20. Fale uderzeniowe, drgania, analiza sygnałów sejsmicznych.
21. Interpolacje i ekstrapolacje w opisach procesów fizycznych.
22. Pakiety numeryczne do modelowania różnorodnych procesów, przykłady.
23. Modelowanie biomolekularne, przykłady: dynamika składników mięśni, dynamika wirusów.
30
22. Podstawy elektroniki i elektrotechniki
Autor: dr hab. Ryszard S. Trawiński, prof. UMK
Forma: wykład 30h, laboratorium 45h.
Program
Wykład jest wspomagany pokazami, materiał jest zsynchronizowany z zadaniami realizowanymi równolegle na pracowni
elektronicznej
1. Rys historyczny. Podstawowe pojęcia elektroniki i elektrotechniki.
2. Podstawy teorii obwodów prawo Ohma, prawa Kirchhoffa, zasada Thevenina i Nortona.
3. Obwody wykorzystujące elementy bierne dzielnik napięcia, mostek, filtry RC: górno- i
dolnoprzepustowy, filtr i mostek Wiena, filtr 2T, filtry RLC równoległy i szeregowy, krzywa
rezonansowa.
4. Obwody nieliniowe analiza Fourierowska sygnałów elektrycznych, powielanie i mieszanie
częstotliwości, modulacja i detekcja.
5. Elementy półprzewodnikowe: złącze PN, diody, tranzystory elementy teorii ciała stałego,
przewodniki, półprzewodniki i izolatory, złącze PN, dioda półprzewodnikowa, tranzystory
bipolarne: budowa (NPN, PNP) i działanie, rodziny charakterystyk tranzystora, ustalanie
punktu pracy tranzystora.
6. Wzmacniacze tranzystorowe klasy wzmacniaczy tranzystorowych, wzmacniacz w układzie
ze wspólnym emiterem (WE), kolektorem (WK) i bazą (WB), wzmacniacze mocy,
wzmacniacze rezonansowe z filtrami LC, wzmacniacz różnicowy.
7. Wzmacniacze operacyjne i ich zastosowania model idealny, wzmacniacz odwracajÄ…cy,
nieodwracający, wtórnik napięciowy, przetwornik prąd napięcie, wzmacniacz sumujący i
odejmujący, różniczkujący i całku-jący, logarytmujący i wykładniczy, filtry aktywne.
Komparatory.
8. Generatory drgań sinusoidalnych warunek generacji, generatory LC, kwarcowe, generatory
RC.
9. Generatory przebiegów niesinusoidalnych generator samodławny, bootstrap, funkcyjny.
10. Układy przerzutnikowe przerzutniki bistabilne, monostabilne i astabilne, z tranzystorami
nasyconymi i ze sprzężeniem emiterowym.
11. Układy cyfrowe Algebry Boole a, funkcje logiczne, bramki, multiwibratory, układy
monostabilne, prze-rzutniki RS, D, JK, liczniki binarne i BCD, multiplexery i demultiplexery,
transmisja danych, półsumator i sumator, przetworniki cyfrowo-analogowe (DAC) i
analogowo-cyfrowe (ADC), twierdzenie Shannona-Nyquista, aliasing.
12. Układy zasilające wytwarzanie energii elektrycznej, obwody prądu trójfazowego, układy
sieciowe, ochro-na przeciwporażeniowa, układy prostujące, stabilizatory napięcia (liniowe i
impulsowe), zasilacze regulo-wane.
13. Szumy i zakłócenia w układach elektronicznych, kompatybilność elektromagnetyczna zródła
i rodzaje szumów, zakłócenia i sposoby ich eliminacji, kompatybilność elektromagnetyczna.
14. Wybrane pomiary wielkości fizycznych przy pomocy przyrządów elektronicznych detektory
światła: fo-toopornik, fotodioda, fotopowielacz budowa i działanie, przykładowe układy
pomiarowe.
15. Wybrane maszyny elektryczne prądu przemiennego i stałego.
31
Zalecana literatura
1. P. Horowitz, W. Hill, Sztuka elektroniki.
2. U. Tietze, C. Schenk, Układy półprzewodnikowe.
3. S. Seely, Układy elektroniczne.
4. J. Watson, Elektronika.
5. R. Śledziewski, Elektronika dla fizyków.
6. T. Stacewicz, A. Kotlicki, Elektronika w laboratorium naukowym.
7. P. E. Gray, C. L. Searle, Podstawy elektroniki.
8. Z. Kulka, M. Nadachowski, Liniowe układy scalone.
9. M. Nadachowski, Z. Kulka, Analogowe układy scalone.
10. J. Pieńkos, J. Turczyński, Układy scalone TTL w systemach cyfrowych.
11. A. Filipkowski, Układy elektroniczne analogowe i cyfrowe.
12. M. Rusek, J. Pasierbiński, Elementy i układy elektroniczne w pytaniach i odpowiedziach.
13. R. Ćwirko, M. Rusek, W. Marciniak, Układy scalone w pytaniach i odpowiedziach.
14. J. Rydzewski, Pomiary oscyloskopowe.
15. Z. Majerowska, A. Majerowski, Elektrotechnika ogólna w zadaniach.
16. J. Maksymiuk, Aparaty elektryczne w pytaniach i odpowiedziach.
17. B. Miedziński, Elektrotechnika. Podstawy i instalacje elektryczne.
18. A. Charoy, Kompatybilność elektromagnetyczna, t. I-IV.
32
23. Administrowanie sieciami lokalnymi i serwerami
Forma zajęć: Wykład 15h, laboratorium 30h
Autor: dr hab. J. Kobus
Program zajęć:
Celem zajęć (wykład + laboratorium) jest przedstawienie zagadnień
związanych z administrowaniem serwerami i usługami dostępnymi w
lokalnej sieci komputerowej. Wykład poświęcony jest omówieniu
zagadnień dotyczących uruchamiania systemu komputerowego (programy
ładujące, fazy procesu bootowania, poziomy pracy systemu), działania
usług sieciowych takich jak DHCP, DNS, TFTP, SSH, NFS, a także
monitorowaniu funkcjonowania systemu komputerowego poprzez śledzenie
wykorzystania jednostki centralnej, pamięci operacyjnej oraz urządzeń
wejścia/wyjścia przy pomocy szeregu narzędzi diagnostycznych (ps, top,
sar, iostat, vmstat, pmap, slabtop, netstat, ntop). Zajęcia
laboratoryjne mają na celu praktyczne opanowanie takich umiejętności
jak instalacja systemu operacyjnego, konfiguracja interfejsów
sieciowych, administrowanie użytkownikami, tworzenie i montowanie
systemów plików, konfiguracja usług DHCP, TFTP, PXE, SSH oraz NFS.
Literatura
1. Strony podręcznika systemowego dotyczące narzędzi systemowych i konfiguracji usług
sieciowych.
2. Dokumentacja dotycząca instalacji i konfiguracji systemu komputerowego dostępna na
licznych stronach internetowych, np. http://docs.fedoraproject.org/install-guide/f7/pl/.
3. P. G. Ezolt. Optimizing Linux(R) Performance: A Hands-On Guide to Linux(R) Performance
Tools. HP Professional Series, 2005.
4. A. H. Majidimehr. Optymalizacja systemu UNIX. Naukowo-Techniczne, Warszawa, 1998.
Wydawnictwo
5. G. D. Musumeci and M. Loukides. Optymalizacja systemów komputerowych. Wydawnictwo
RM, Warszawa, 2002.
6. In Sanda K.Johnson, J. Gerrit Huizenga, and Badari Pulavarty, editors, Performance Tuning
for Linux Servers, New York, 2005. IBM Press, Pearson plc.
33
24. Opracowywanie serwisów Web
Forma zajęć wykład 60 h ćwiczenia 30 h
Autor: Mariusz Piwiński
Wymagania wstępne:
Znajomość zagadnień związanych z sieciami komputerowymi
Znajomość baz danych SQL, MySQL
Cel:
Celem zajęć jest zapoznanie studentów z wykorzystywanymi obecnie technologiami internetowymi
oraz różnymi językami skryptowymi umożliwiającymi tworzenie serwisów WWW.
W pierwszej części zajęć omówione zostaną podstawowe składniki architektury WWW, takie jak
przeglÄ…darka WWW, serwer HTTP, serwer aplikacji, warstwa aplikacji, warstwa bazy danych, czy
protokół HTTP. Uczestnicy poznają między innymi podstawy języka HTML, PHP, JavaScript, CSS.
Przedstawione zostaną również podstawowe zagrożenia dotyczące bezpieczeństwa aplikacji WWW.
Uczestnicy wykorzystując różne technologie będą samodzielnie tworzyć oraz publikować
interaktywne witryny internetowe.
W drugiej części zajęć omówione zostaną Systemy Zarządzania Treścią (ang. Content Management
System - CMS), będące zestawem różnych aplikacji internetowych posiadających wspólny interfejs
użytkownika. Uczestnicy zajęć będą wykorzystywać ten system jako narzędzie wspomagające
budowÄ™ i zarzÄ…dzanie stronÄ… WWW.
Ostatnim elementem zajęć jest wprowadzenie do systemów e-learningowych, wspomagających
nauczanie na odległość. Uczestnicy zapoznają się z systemem Moodle, jego obsługą od strony
studenta, nauczyciela oraz administratora.
Program zajęć:
1. prezentacja technik informatycznych,
2. podstawy języka HTML oraz innych języków skryptowych,
3. konstruowanie formularzy i przekazywanie danych do bazy,
4. tworzenie witryny internetowej z zastosowaniem różnych poznanych technik,
5. Systemy Zarządzania Treścią (ang. Content Management System - CMS) na przykładzie
systemu Drupal,
a. budowa i konfiguracja serwisu
b. zarządzanie oraz konfiguracja poszczególnych modułów
c. zarządzanie użytkownikami
d. zarządzanie treścią
6. systemy e-learningowe
a. Advanced Learning Interactive Systems On Line
b. Moodle
podstawy dotyczÄ…ce systemu Moodle,
tworzenie strony WWW w systemie Moodle,
konfiguracja oraz zarządzanie modułami,
34
administracja oraz tworzenie kursów,
sposoby uwierzytelniania i zarządzania użytkownikami,
wykorzystanie systemu Moodle w procesie dydaktycznym (quizy, zadania on-
line, głosowania, zadania opisowe, Wiki, lekcja).
Literatura:
1. Tworzenie stron WWW , Bartosz Czyżkowski, Wydawnictwo Mikom 2006
2. Tworzenie szkolnych stron WWW , Maria Sokół, Wydawnictwo Helion 2005
3. PHP, Podręcznik tworzenia stron WWW , Julie C. Meloni, Wydawnictwo Mikom 2001
4. Tworzenie stron WWW, PHP 4, ćwiczenia praktyczne , Andrzej Kierzkowski, Wydawnictwo
Helion 2001
5. PHP i MySQL, Aplikacje bazodanowe , Hugh E. Williams, David Lane, Wydawnictwo
Helion 2005
6. Java Script, Ćwiczenia praktyczne Marcin Lis, Wydawnictwo Helion 2002
7. www.moodle.org
8. www.drupal.pl
9. http://www.alison.com
35
25. Programowanie w środowisku Windows
Forma zajęć: Wykład 15h, laboratorium 30h
Autor: dr J. Matalewski
Cel zajęć:
zapoznanie studentów z interfejsem programistycznym Windows (a dokładniej platformy Win32)
Nabyte umiejętności: projektowanie aplikacji dla Windows (Win32) w Visual C++ i C++Builder na
poziomie pozwalającym kontrolę systemu Windows, dostęp do jego zasobów, korzystanie z
mechanizmów komunikatów i innych technologii wbudowanych w Win32
Wymagania: studenci powinni znać język C++ (nie jest wymagana znajomość programowania
obiektowego)
Program zajęć:
I. Kontrola stanu systemu
1. Zamykanie i wstrzymywanie systemu Windows
2. Kontrola trybu wyświetlania karty graficznej
II. Uruchamianie i kontrolowanie aplikacji oraz ich okien
1. Uruchamianie, zamykanie i zmiana priorytetu aplikacji
2. Kontrolowanie własności okien
3. Numery identyfikacyjne procesu i uchwyt okna
4. Okna o dowolnym kształcie
III. Systemy plików, multimedia i inne funkcje WinAPI
1. Pliki i system plików - funkcje powłoki
2. Odczytywanie informacji o dysku
3. Ikona w obszarze powiadamiania (zasobniku)
4. Internet
5. Multimedia (MCI)
IV. Komunikaty Windows
V. Biblioteki DLL
1. Funkcje w bibliotece DLL
2. Formy w bibliotece DLL
3. Aplet panelu sterowania
VI. Przechwytywanie komunikatów - mechanizm haków
VII. Automatyzacja i inne technologie bazujÄ…ce na COM
1. COM
2. Osadzanie obiektów OLE2
3. Automatyzacja
4. Projektowanie serwera automatyzacji
5. ActiveX
36
26. Analiza i przetwarzanie obrazów cyfrowych
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr M. Michalski
Program zajęć:
1. Próbkowanie i kwantyzacja obrazów
a. Elementy teorii próbkowania sygnałów
b. Aliasing i wzory Moire a
c. Urządzenia do pozyskiwania obrazów cyfrowych
d. Powiększanie i zmniejszanie obrazów cyfrowych
2. Histogram jasności obrazu cyfrowego i operacje na nim
a. Zakres tonalny
b. Wyrównywanie histogramu
c. Dopasowanie histogramu
d. Transformacje obrazu przy pomocy krzywych
e. Korekcja gamma
f. Kontrast
g. Dowolne transformacje jasności
3. Logiczne i arytmetyczne operacje na obrazach cyfrowych
4. Splot
5. Podstawy konstrukcji filtrów w reprezentacji przestrzennej
a. Proste filtry wygładzające
b. Filtry nieliniowe
c. Filtry gradientowe i Laplace owskie
d. Wykrywanie krawędzi i wyostrzanie obrazu
e. Składanie filtrów
6. Transformata Fouriera obrazu cyfrowego
a. Proste i odwrotne transformaty Fouriera 1D i 2D
b. Twierdzenie o splocie
c. Gradient i Laplacian w obrazie fourierowskim
d. Algorytm FFT
e. Wizualizacja transformaty obrazu
7. Filtry w dziedzinie częstotliwości
a. Filtry dolno- i górnoprzepustowe
b. Filtry idealne i gaussowskie
c. Wpływ gaussowskiego zmiękczenia filtru na jakość obrazu
d. Filtr Laplace a w dziedzinie częstotliwości
e. Zastosowanie unsharp mask
8. Szum i jego eliminowanie
a. Typy szumu i estymacja parametrów
b. Filtry odkłócające: średniujące i adaptatywne
c. Filtracja szumu w dziedzinie częstotliwości: zakłócenia periodyczne, filtry pasmowe
d. Rekonstrukcja obrazów poruszonych
37
9. Zagadnienia zaawansowane
a. Wykrywanie krawędzi, analiza kształtu
b. Rozpoznawanie obrazów
c. Wielorozdzielcza analiza obrazów i teoria falek
38
27. Sztuczna inteligencja i systemy ekspertowe
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: prof. dr hab. W. Duch
Program zajęć
1. Wstęp do metod AI:
2. kluczowe zagadnienia AI;
3. status AI;
4. piąta generacja komputerów i inne wielkie projekty.
5. Szukanie: reprezentacja problemu w przestrzeni stanów; reprezentacja redukcyjna; metody
szukania; przykłady programów opartych na szukaniu; szukanie a ludzkie myślenie.
6. Reprezentacja wiedzy: rodzaje wiedzy; reprezentacja stanów; reprezentacja logiczna logika
predykatów, rozmyta, przybliżona; reprezentacja proceduralna; sieci semantyczne; systemy
produkcyjne; ramki i skrypty.
7. Rozumienie języka naturalnego: tłumaczenie maszynowe; gramatyki; generacja tekstu;
przykłady programów.
8. Systemy doradcze: akwizycja wiedzy; konstrukcja systemów eksperckich; przykłady
zastosowań.
9. Modele umysłu i najbardziej ambitne projekty AI: system CyC; zunifikowane teorie poznania i
SOAR; architektura poznawcza człowieka.
10. Uczenie maszynowe i odkrywanie wiedzy w danych.
11. Filozoficzne problemy sztucznej inteligencji: filozofia umysłu a sztuczna inteligencja;
kognitywizm.
Zalecana literatura
1. G.F. Luger, Sztuczna inteligencja, 2007.
2. Jan Mulawka, Systemy ekspertowe, WNT, 1996.
3. Z. Hippe, Sztuczna inteligencja w chemii, PWN, 1991.
39
28. Metody Symulacji w Nanotechnologii
Forma zajęć: Wykad 30h, laboratorium 30h
Autor: dr hab. Wiesław Nowak, prof. dr hab. J. Wasilewski, prof. dr hab. W. Jaskólski)
Program zajęć:
4. Co to jest nanotechnologia?
5. Nowe układy w nanotechnologii nanorurki, maszyny molekularne, mikroelektronika
organiczna, kropki kwantowe, komputery DNA, biosensory, układy aktywowane światłem.
6. Cel symulacji komputerowych.
7. Podstawy mechaniki kwantowej.
8. Podstawy kwantowych metod opisu nanoukładow.
9. Równanie Schroedingera. Metody rozwiązywania.
10. Trudności z opisem kwantowym nanoukładów.
11. Opis empiryczny nanorurek i kropek kwantowych. Metoda TB.
12. Struktura energetyczna wybranych nanomateriałów.
13. Modelowanie dynamiki nanoukładów - metody.
14. Dynamika pojedynczych cząsteczek. obliczenia własności mechanicznych nanomateriałów.
15. Modelowanie nanomaszyn mięśni, ATPazy.
16. Wizualizacja wyników modelowania, problemy i rozwiązania.
Ćwiczenia
(30 godzin, prowadzÄ…cy, np. mgr Lukasz Peplowski, dr Karina Kubiak, P. Miszta, dr hab. W.Nowak,
prof. W. Jaskólski, prof. J. Wasilewski + doktoranci) będą prowadzone w systemie Linux, z dostępem
do Gaussiana i ArgusLaba, NAMD i VMD ora programów własnych.
Studenci sami zbudują modele prostych nanoukładów i obliczą ich podstawowe parametry fizyczne
wykorzystujÄ…c klastry obliczeniowe do modelowania.
40
29. Nauka i technika w społeczeństwie
Forma zajęć: Wykład 15h
Autor: prof. dr hab. W. Nowak
Cel:
Żywo prowadzony, interdyscyplinarny wykład prezentujący rolę nauki i techniki we współczesnym
społeczeństwie. Wykład ilustrowany jest przykładami najnowszych odkryć i wynalazków.
Prowadzone są dyskusje związane z problemami etycznymi nauki. Celem wykładu jest przedstawienie
struktury nauki, jej roli w społeczeństwie i metod popularyzowania. Chodzi też o głębsze
umotywowanie studentów do zajmowania się najnowocześniejszymi technologiami. Studenci
przyszli fachowcy, powinni nauczyć się jak sprawić, by nauka i technika były bardziej zrozumiała dla
przeciętnego obywatela.
Program zajęć:
1. Dlaczego zajmujemy się tym tematem, czyli o potrzebie publicznej świadomości roli nauki.
2. Co to jest nauka? (Rys historyczny, rozwój rozumienia, definicje współczesne elementy
historii nauki)
3. Na czym polega metoda naukowa? (Elementy filozofii nauki). Informacja naukowa.
4. yródła wiedzy naukowej a para-nauki.
5. Jak dzieci postrzegają naukowców?
6. Metody popularyzacji nauki i techniki, zródła, materiały pomocnicze, program SATIS.
7. Jak nauka i technologia zmieniały życie codzienne w latach 1870-1950
8. Najnowsze odkrycia naukowe przykłady.
9. Wynalazki techniczne. Nowoczesne technologie co to jest?
10. Hybrydyzacja nauki. Szczególna rola fizyki wśród nauk przyrodniczych.
11. Zagadnienia etyczne i prawne w nauce (pierwszeństwo odkryć, plagiaty, skutki cywilizacyjne
efektów badań - bomba atomowa, zagadnienia bioetyki klonowanie, manipulacje na
zarodkach, doświadczenia na zwierzętach, genetycznie modyfikowana żywność).
12. Współczesne odkrycia naukowe próba opisu i analizy percepcji społecznej.
Bibliografia:
1. P. Dehart Hurd, Scientific Literacy: New Minds for a Changing World ., Wiley, 1998.
2. Derek Hodson Philosophy of Science, Science and Science Education , w Studies in Science
Education 12 (1985) 25-57.
3. R. Miller, Towards a science curriculum for public understanding , School Science Review
77 (1996) 7-18:]
4. G.J.Kelly, C.Chen, T.Crawford, Methodological Considerations For Studying Science-in-the-
making In Educational Settings , Research in Scince Education, 1998, 82(1), 23-49.
5. Solomon, J. (1993). Teaching science, technology and society. Buckingham, U.K.: Open
University Press.
6. Liczne inne artykuły i strony WWW podawane na wykładzie.
41
30. Programowanie urządzeń wirtualnych
Forma zajęć: Wykład 15, laboratorium 30h
Autor: dr hab. Piotr Targowski, prof. UMK
Program zajęć:
Przedmiotem zajęć jest praktyczne opanowanie pakietu LabView (Laboratory Virtual Instrument
Engineering Workbench) opracowanego i rozwijanego przez firmę National Instruments i służącego
do szybkiego tworzenia aplikacji działających w różnych środowiskach, na przykład Windows.
LabView jest oparte o graficzny język programowania G i zawiera w pełni zintegrowane procedury
komunikacji z urządzeniami zewnętrznymi takie jak: GPIB, VXI, PXI, RS-232 oraz z układami na
kartach w standardzie ISA i PCI. Zawiera również zintegrowane procedury dla aplikacji
internetowych (TCP/IP) oraz ActiveX.
LabVIEW zostało stworzone przede wszystkim jako narzędzie do tworzenia urządzeń pomiarowo-
kontrolnych sterowanych komputerowo tak zwanych instrumentów wirtualnych, może jednak być
też wykorzystywane jako wygodny i szybki sposób tworzenia dowolnych aplikacji w środowisku
Windows.
Tematem zajęć będą metody tworzenia programów (instrumentów wirtualnych) w środowisku
LabVIEW oraz ich zastosowanie do sterowania urządzeń zewnętrznych. Zaliczenie następuje na
podstawie samodzielnie opracowanego programu.
Zagadnienia szczegółowe:
1. Wprowadzenie, opis środowiska LabVIEW:
a. definicja instrumentu wirtualnego (VI),
b. struktura aplikacji - interfejs użytkownika i diagram, ikony procedur, kolejność
działań,
c. własności środowiska.
2. Elementy diagramu aplikacji VI:
d. proste i złożone rodzaje danych,
e. struktury: pętle, case, while, for, sekwencje, registers, formula node,
f. tworzenie podprogramów,
g. obsługa zapisu i odczytu z plików,
h. procedury zwiÄ…zane z przebiegami w czasie,
i. wielozadaniowość i synchronizacja,
j. korzystanie z bibliotek procedur Å‚Ä…czonych dynamicznie (DLL).
3. Zawansowane elementy interfejsu użytkownika VI:
k. graficzna prezentacja wyników,
l. modyfikowanie własności elementów interfejsu,
m. tworzenie własnego menu dla programu,
n. obsługa zdarzeń (Event).
4. przykłady instrumentów wirtualnych:
o. proste VI nie komunikujÄ…ce siÄ™ z otoczeniem komputera,
p. obsługa urządzeń zewnętrznych poprzez VISA na przykładzie RS-232,
q. obsługa kart pomiarowych na przykładzie karty dzwiękowej komputera,
r. współpraca z innymi aplikacjami (ActiveX),
s. transmisja danych w sieci (DataSocket).
42
Literatura:
1. Wiesław Tłaczała, Środowisko LabView w eksperymencie wspomaganym komputerowo,
WNT, Warszawa 2002
2. http://www.ni.com/labview
3. materiały pomocnicze (przykłady programów) umieszczone na stronie:
http://www.phys.uni.torun.pl/~ptarg
43
31. Komputerowe wspomaganie projektowania
(CAD)
Forma zajęć: Wykład 15h, laboratorium 30h
Autor: mgr inż. Andrzej Korcala
Program zajęć:
Przedmiot ma na celu zapoznanie studentów ze współczesnymi technikami projektowania urządzeń
mechanicznych i elektromechanicznych w oparciu o systemy wspomagania komputerowego. Na
wykładzie studenci posiądą wiedzę na temat zasad i reguł sporządzania rysunków technicznych,
poznają też aktualne normy prawne obowiązujące na terenie Polski i Unii Europejskiej. Celem
nadrzędnym przedmiotu jest przygotowanie przyszłej kadry inżynierskiej do tworzenia dokumentacji
konstrukcyjnej ze szczególnym uwzględnieniem praw autora projektu.
Wykład:
1. Wiadomości wprowadzające (znaczenie rysunku w technice, rodzaje i nazwy rysunków)
2. Zasady odwzorowywania obiektów na płaszczyznie rysunku (rodzaje rzutów i rzutowania,
bryły ścięte i przenikające się)
3. Odwzorowanie zewnętrznego i wewnętrznego zarysu przedmiotu
4. Wymiarowanie rysunkowe
5. Tolerancje kształtu i położenia
6. Dokumentacja konstrukcyjna (wymagania, podstawowe elementy, zasady opisu i numeracji)
7. Reguły projektowania systemów: człowiek-obiekt techniczny (ergonomia)
8. Projektowanie ukierunkowane na kompleksowe metody ochrony środowiska naturalnego
(recycling)
9. Normy, akty prawne, znaki jakości (PN, ISO, B, Q, EKO)
10. Prawa własności intelektualnej (znaki towarowe, licencje, prawo nowych technologii)
Laboratorium:
1. Standardy i rozwiÄ…zania alternatywne oprogramowania CAD dla potrzeb rysunku
technicznego
2. Realizacja rysunkowych zadań projektowych z zakresu rysunku maszynowego
3. Sporządzanie schematów ideowych, blokowych i logicznych urządzeń elektronicznych i
elektromechanicznych
4. Komputerowe wspomaganie projektowania obwodów drukowanych
Literatura:
1. Mazur J., Kosiński k., Polakowski K. Grafika inżynierska z wykorzystaniem metod CAD.
Oficyna Wydawnicza Politechniki Warszawskiej. Warszawa 2004 r.
2. Pikoń A. AutocCAD PL. Helion. Gliwice 2006 r.
3. Lewandowski T. Rysunek techniczny dla mechaników. WSiP 2007
4. strona internetowa Polskiego Komitetu Normalizacyjnego http://www.pkn.pl
5. strona internetowa Polskiego Centrum Badań i Certyfikacji S.A http://www.pcbc.gov.pl
44
6. strona internetowa Głównego Urzędu Miar, BIP http://bip.gum.gov.pl
45
32. Mikroprocesory i procesory sygnałowe
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr. D. Chaberski
Wymagania wstępne
1. Podstawy techniki cyfrowej
2. Podstawy elektroniki analogowej
3. Podstawy programowania w języku wysokiego poziomu
4. Zawartość
5. Kody liczbowe i działania na liczbach binarnych w odniesieniu do mikroprocesorów
6. Cyfrowa reprezentacja sygnału (próbkowanie, kwantyzacja, dyskretyzacja)
7. Zasada działania mikroprocesora
8. System mikroprocesorowy (peryferia: pamięć, układy wejścia, bezpośredni dostęp do pamięci,
kontroler przerwań)
9. Architektury mikroprocesorów (układ wykonawczy, sterujący, podział pod względem mapy
pamięci oraz pod względem listy instrukcji)
10. Przykładowe procesory (rodzina x86, architektury IA32, IA64, AMD64, technologie MMX,
SSE)
11. Krótki przegląd mikrokontrolerów i procesorów wbudowanych (AVR, 8052, Microblaze,
PowerPC)
12. Podstawy cyfrowego przetwarzania sygnałów
13. Procesor sygnałowy (różnice pomiędzy procesorem sygnałowym, mikrokontrolerem i
mikroprocesorem)
14. Architektury procesorów sygnałowych (rdzeń procesora, pamięci, układy adresowania,
operacje)
15. Przykładowe procesory sygnałowe stało i zmiennoprzecinkowe (rodziny procesorów
TMSC32X (Texas Instruments), ADSP21 (Analog Devices), DSP56 (Motorola))
16. Narzędzia programistyczne i programowanie
17. Dziedziny zastosowań procesorów i procesorów sygnałowych
18. Przykładowe projekty
Literatura
1. P. Metzger, Anatomia PC - wydanie 11, Helion, 2007
2. T. P. Zieliński, Cyfrowe przetwarzanie sygnałów Od teorii do zastosowań - wydanie 2
poprawione, WKA, Warszawa 2005
3. S. W. Smith, Cyfrowe przetwarzanie sygnałów - Praktyczny poradnik dla inżynierów i
naukowców, BTC, 2007
4. W. Stallings, Organizacja i architektura systemu komputerowego - Projektowanie systemu a
jego wydajność - wydanie 3, WNT, 2004
5. R. G. Lyons, Understanding Digital Signal Processing - 2nd Edition, Prentice Hall PTR, 2004
6. R. Chassaing, DSP Applications Using C and the TMS320C6x DSK, Wiley-Interscience, 2002
7. J. Doliński, Mikrokontrolery AVR w praktyce, BTC, Warszawa 2003
8. P. Gałka, Podstawy programowania mikrokontrolera 8051 wydanie 3, Mikom, Warszawa
2002
46
33. Transmisja Danych i Systemy Rozproszone
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr S. Grzelak
Wymagania wstępne
1. Podstawy techniki cyfrowej
2. Podstawy elektroniki analogowej
3. Zawartość
4. Podstawowe pojęcia: reprezentacja, magazynowanie, transmisja danych
5. Przesyłanie sygnałów wysokiej częstotliwości
6. Energochłonność transmisji danych
7. Kompresja danych
8. Zabezpieczenia transmisji danych przed zakłóceniami.
9. Linie i trakty transmisyjne
10. Protokoły sprawdzające niezawodność transmisji i korygujące błędy
11. Szeregowe standardy transmisji danych: RS232, 1-wire, IIC, SPI
12. Równoległe standardy transmisji danych: Centronics, ISA, PCI
13. Protokoły i warstwy sieciowe
14. Protokoły stosowane w przemyśle samolotowym: ARINC
15. Analogowe systemy transmisji bezprzewodowej
16. Systemy z rozpraszaniem widma
17. Bezprzewodowe systemy rozproszone: ZigBee, Bluetooth, WiFi
18. Sieci telefonii komórkowej
19. Magistrale system-on-chip: OPB, PLB, WISHBONE, AMBA
20. Rozwiązania stosowane w układach FPGA: LVDS, RocketIO
21. Transmisja bezprzewodowa w podczerwieni
22. Wykorzystanie światłowodów jako medium transmisyjnego
23. Technika zwielokrotniania w dziedzinie długości fali WDM
24. Literatura
25. Waldemar Nawrocki, Rozproszone systemy pomiarowe, WKA, Warszawa 2006
26. Krzysztof Wesołowski, Podstawy cyfrowych systemów telekomunikacyjnych, WKA, 2003
27. Krzysztof Perlicki, Systemy transmisji optycznej WDM, WKA, Warszawa 2007
28. Agnieszka Chodorek, Robert R.Chodorek, Andrzej R.Pach, Dystrybucja danych w sieci
Internet, WKA, Warszawa 2007
29. SÅ‚awomir Kula, Systemy teletransmisyjne, WKA, Warszawa 2005
30. Simon Haykin, Systemy telekomunikacyjne, cz. 1 i 2, WKA Warszawa 2004
47
34. Teoria sygnałów
.
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: Wiesław Kiciński
Opis
Celem wykładu jest omówienie podstaw teorii sygnałów oraz wprowadzenie do ich
przetwarzania. Treści wykładu obejmują metody opisu sygnałów analogowych i dyskretnych.
Wprowadzenie do techniki cyfrowego przetwarzania sygnałów obejmuje podstawy konwersji
analogowo-cyfrowej i cyfrowo-analogowej sygnałów. Omówione zostaną sposoby reprezentacji
sygnałów w dziedzinie czasu i częstotliwości. Wykład obejmuje podstawowe zagadnienia
cyfrowej filtracji sygnałów. Omówione zostaną podstawy modulacji sygnałów.
Wymagania wstępne
1. Algebra.
2. Podstawy techniki cyfrowej.
Zawartość
1. Klasyfikacja sygnałów.
2. Konwersja analogowo-cyfrowa i cyfrowo-analogowa sygnałów.
3. Analiza sygnałów w dziedzinie czasu.
4. Analiza sygnałów w dziedzinie częstotliwości.
5. Filtracja sygnałów.
6. Ogólna charakterystyka operacji modulacji
7. Modulacje analogowe amplitudy.
8. Modulacje analogowe kÄ…ta.
9. Modulacje impulsowe.
10. Modulacje cyfrowe.
Literatura
1. J. Szabatin, Podstawy teorii sygnałów wyd. 4, Wydawnictwa Komunikacji i Aączności,
Warszawa 2002.
2. E. Ozimek, Podstawy teoretyczne analizy widmowej sygnałów, PWN, Poznań, 1985.
3. R. Lyons, Wprowadzenie do cyfrowego przetwarzania sygnałów. WKA, Warszawa, 2000.
4. T.P. Zieliński, Cyfrowe przetwarzanie sygnałów, WKiA, Warszawa, 2005.
5. J. Wojciechowski (red.), Sygnały i systemy. Ćwiczenia laboratoryjne, Oficyna Wydawnicza
PW, Warszawa 2000.
Moduły
1. Pojęcie sygnału, klasyfikacja sygnałów.
2. Opis sygnałów w dziedzinie czasu.
3. Stacjonarność sygnałów losowych, twierdzenie ergodyczne.
4. Konwersja cyfrowo-analogowa i analogowo-cyfrowa sygnałów.
5. Analiza częstotliwościowa sygnałów analogowych.
48
6. Analiza częstotliwościowa sygnałów dyskretnych.
7. Praktyczne aspekty wyznaczania dyskretnej transformaty Fouriera.
8. Filtracja sygnałów.
9. Przetwarzanie sygnałów przez układy liniowe.
10. Wprowadzenie do modulacji sygnałów.
11. Modulacja amplitudy, kÄ…ta i impulsowa.
12. Modulacja cyfrowa.
Laboratorium
1. Parametry sygnałów.
2. Konwersja analogowo-cyfrowa sygnałów.
3. Funkcja korelacji sygnałów.
4. Dyskretne przekształcenie Fouriera.
5. Szybkie przekształcenie Fouriera.
6. Okna czasowe i częstotliwościowe.
7. Splot sygnałów.
8. Modulacja amplitudy.
9. Modulacja kÄ…ta.
10. Modulacja delta.
49
35. Sterowniki Programowalne PLC
Forma zajęć: Wykład 30h, laboratorium 30h
Autor dr Kazimierz Karwowski
Wymagania wstępne
Znajomość mikroprocesorów i systemów mikroprocesorowych.
Znajomość języków programowania mikroprocesorów i komputerów PC.
Zwartość
1. Układy sterowania maszyn i urządzeń technologicznych - wprowadzenie.
2. Sterowniki programowalne PLC architektura i budowa sterowników.
3. Wejścia, wyjścia, interfejsy sterowników programowalnych.
4. Możliwości sterowników, wybór sterowników do realizowanych zadań.
5. Współpraca sterowników z układami wykonawczymi.
6. Programowanie sterowników PLC języki programowania.
7. Magistrale przemysłowe.
8. Rozproszone układy sterowania obiektami przemysłowymi.
9. Złożone wielopoziomowe układy sterowania ze sterownikami PLC:
tworzenie złożonych systemów sterowania przemysłowego, analiza algorytmów
sterowania, architektura systemów, wybór sterowników i modeli sieci,
konfigurowanie i adresowanie zasobów sprzętowych w systemie, programowanie.
Literatura
1. T.E. Kissel: Industrial Electronics Applications for Programmable Controllers,
Instrumentation and Process Control, and Electrical Machines and Motor Control, Prentice
Hall, 2000.
2. Jon Stenerson: Fundamentals of Programmable Logic Controllers, Sensors, and
Communications, Prentice-Hall, 1999.
3. Brian Morris: Programmable Logic Controllers, Prentice-Hall, 2000.
4. J. Kasprzyk: Programowanie sterowników przemysłowych, WNT 2006.
5. Dokumentacje firmowe sterowników programowalnych firm: Rockwell, Siemens, Omron, GE
Fanuc
6. Sztuka Elektroniki, P. Horowitz, W. Hill, WKA, nowe wydanie.
7. Jerzy Brzózka: Regulatory i układy automatyki, Wyd. Mikom 2004.
50
36. Multimedialne metody dydaktyki
Autor: prof. W. Karwasz
Forma: Wykład: 15h, laboratorium: 30h
Cel dydaktyczny:
dostarczenie absolwentom umiejętności korzystania oraz samodzielnego tworzenia multimedialnych
środków dydaktycznych.
Program:
1. Rodzaje i przykłady środków multimedialnych:
- zbiory pojedyncze oraz Internet
- ścieżki dydaktyczne oraz wykłady multimedialne [1]
- encyklopedie multimedialne
- podręczniki interaktywne i nauczanie programowane
2. Metody obróbki obrazu, dzwięku, animacje oraz filmy
Algorytmy kodowania obrazu: standardy bmp, gif, jpg, mpg
Programy graficzne i obróbki filmów
Zasady fotografiki (ekspozycja, kontrast, głębia ostrości)
Zasady harmonii dzwięków, transformata Fouriera, standard midi
3. Zasady dydaktyczne tworzenia środków multimedialnych:
(stopniowania trudności, poglądowości, zróżnicowania środków)
4. Animacje dydaktyczne środowisko Java, Flash
5. Warsztaty tworzenia własnych środków dydaktycznych
(na przykładzie prostych eksponatów dydaktycznych, zjawisk fizycznych w życiu
codziennym)
Literatura:
1. A. Okoniewska, G. Karwasz, "Ścieżki i podręczniki multimedialne", materiały konferencyjne
"Informatyka w Szkole", Toruń 18 - 21. 09. 2002 r.
2. "Multimedia tools in teaching physics",G. Karwasz, W. Niedzicki, A. Okoniewska,
Międzynarodowa Konferencja "Quality Development In Teacher Education and Training",
Udine 1 - 6. 09. 2003
3. A. Okoniewska, Z. Meger, "Fizyka w Szkole", nr 1/200, "Åšrodki multimedialne w nauczaniu
fizyki"
G. Karwasz, G. Osiński Trygonometria akustyczna Matematyka w Szkole No 28 (2007), str.
24
4. V. Osińska, G. Osiński, Multimedia, Wyd. UMK, Toruń 2005, ss.33 + CD-ROM.
5. U. Amaldi, Fisica Interattiva, CD-ROM, Zanichelli, Padova (2002)
51
37. Algorytmy II
Forma zajęć: Wykład 30h ćwiczenia 30h, laboratorium 30h
Autor: dr Norbert Jankowski
Program zajęć
1. Algorytmy z powrotami
a. Problem skoczka szachowego
b. Problem ośmiu hetmanów
c. Ogólny algorytm z powrotami
d. Wieże Hanoi, permutacje, kombinacje (z/bez powtórzeń)
2. Problemy plecakowe (ciągłe i dyskretne)
3. Algorytmy i struktury danych dla operacji zbiorowych
a. Algorytmy i struktury naiwne
b. Haszowanie (zbiory i słowniki)
c. Drzewa zrównoważone
d. Listy z dowiÄ…zaniami
e. Problem Unio-Find
4. Silnie spójne składowe grafu
5. Cykle Eulera i Hamiltona
6. Problem maksymalnego przepływu
7. Klasy złożoności
8. Kopce dwumianowe
9. Kopce Fibonacciego
10. Automaty i wyrażenia regularne
11. Wyszukiwanie wzorców
a. Algorytm naiwny
b. Algorytmy szybkie, automaty
c. Drzewa pozycyjne
12. Algorytmy na liczbach całkowitych i wielomianach
Literatura
1. A. V. Aho, J. E. Hopcroft, J. D. Ullman. Projektowanie i analiza algorytmów. Helion,
Warszawa, 2003.
2. A. V. Aho, J. E. Hopcroft, J. D. Ullman. Projektowanie i analiza algorytmów. Państwowe
Wydawnictwa Naukowe, Warszawa, 1983.
3. Niklaus Wirth. Algorytmy + Struktury Danych = Programy. Wydawnictwa Naukowo-
Techniczne, Warszawa, wydanie 2, 1989.
4. T. H. Cormen, C. E. Leiserson, R. L Rivest. Wprowadzenie do algorytmów. Wydawnictwa
Naukowo-Techniczne, Warszawa, 1997.
5. L. Banachowski, K. Diks, W. Rytter. Algorytmy i struktury danych. Wydawnictwa Naukowo-
Techniczne, Warszawa, 1996.
6. M. M. Sysło, N. Deo, J. Kowalik. Algorytmy optymalizacji dyskretnej. Państwowe
Wydawnictwa Naukowe, Warszawa, 1993.
7. D. Harel. Rzecz o istocie informatyki. Algorytmika. Wydawnictwa Naukowo-Techniczne,
Warszawa, 1992.
52
8. L. Banachowski, A. Kreczmar, W. Rytter. Analiza algorytmów i struktur danych.
Wydawnictwa Naukowo-Techniczne, Warszawa, 1989.
9. L. Banachowski, A. Kreczmar. Elementy analizy algorytmów. Wydawnictwa Naukowo-
Techniczne, Warszawa, 1982.
10. D. E. Knuth. Sztuka Programowania, wolumen I III. Wydawnictwa Naukowo-Techniczne,
2002.
53
38. Kryptografia i bezpieczeństwo systemów
informatycznych.
Forma zajęć: Wykład 30h, laboratorium 15h
Autor: dr I. Grabowski
Opis
Głównym celem przedmiotu jest przedstawienie i analiza podstawowych zasad i mechanizmów
bezpieczeństwa systemów informatycznych. Omówione zostaną miedzy innymi różne zagrożenia
systemów informatycznych od zagrożeń fizycznych, sprzętowych i programowych, poprzez
zagrożenia w kontekście poufności, integralności i dostępności informacji. Problematyka tworzenia
polityki bezpieczeństwa systemu informatycznego, zagrożeń wewnętrznych i zewnętrznych, elementy
kryptografii, zagadnienia dotyczÄ…ce podpisu elektronicznego i infrastruktury klucza publicznego oraz
podstawowe modele uwierzytelniania to kolejny ważny element wykładu i laboratorium. Poruszone
zostaną także aspekty związane z kontrolą dostępu, bezpieczeństwem protokołów komunikacyjnych i
usług aplikacyjnych. Przedstawione zostaną narzędzia analizy zabezpieczeń i monitoringu oraz
sposoby wykrywania ataków i ochrony przed nimi
Wymagania wstępne
- Systemy operacyjne ; - Technologie sieciowe ; - Laboratorium Linux
Zawartość
Wykład:
1. Waga i wartość danych elektronicznych w różnych aspektach i wymiarach. Wymagania
prawne.
2. Analiza zagrożeń, ich zródeł, miejsc powstania oraz ewentualnych skutków i kosztów.
3. Tworzenie polityki bezpieczeństwa
4. Ochrona przed zagrożeniami fizycznymi i sprzętowymi . Najpopularniejsze i bardziej
wyrafinowane sposoby zabezpieczeń, porównanie kosztów.
5. Backup i archiwizacja. Porównanie efektywności i jakości metod oraz narzędzi.
6. Podstawy kryptografii: szyfry symetryczne, asymetryczne, zarzÄ…dzanie kluczami,
uwierzytelnianie kryptograficzne, funkcje skrótu i podpis cyfrowy.
7. Bezpieczeństwo na poziomie usług sieciowych
8. Bezpieczeństwo systemów operacyjnych i aplikacji użytkowych
9. Działania administratora w zakresie bezpieczeństwa systemu
10. Analiza bezpieczeństwa danych elektronicznych.
Laboratorium:
Konfiguracja usług sieciowych w systemie Unix i Windows, zapory sieciowe-tworzenie i
konfiguracja, realizacja sieci VPN, wykrywania włamań i reakcje na włamania, ochrona na poziomie
systemu operacyjnego. Projekt polityki bezpieczeństwa systemu informatycznego.
Literatura
1. Linux Red Hat 8, księga eksperta. Helion Gliwice 2002
2. N. Ferguson, B. Schneier, Kryptografia w praktyce., Helion, 2004
54
3. Stokłosa J., Bilski T., Pankowski T., Bezpieczeństwo danych w systemach informatycznych,
PWN, Warszawa 2001.
4. E. Cole, R. L. Krutz, J. Conley, Bezpieczeństwo sieci Biblia, Helion 2005.
5. D. Stinson, Kryptografia w teorii i praktyce, WNT 2005.
55
39. Algorytmy optymalizacji
Forma zajęć Wykład (30 godzin), Ćwiczenia (30 godzin), Laboratorium (30 godzin)
Autor dr Norbert Jankowski
Program zajęć
1. Skojarzenia w grafach i ich zastosowania
a. Definicje
b. Twierdzenie Halla i kojarzenie małżeństw
c. Typy skojarzeń
2. Algorytm Christofidesa
3. Algorytm węgierski
4. Algorytmy sieciowe (np. CPM, PERT), szeregowanie zadań, ścieżki krytyczne
5. Algorytmy optymalizacji liniowej z ograniczeniami
6. Zadanie transportowe z kosztami
7. Algorytmy optymalizacji kwadratowej ograniczeniami
8. Kolorowanie grafów
9. Gradientowe algorytmy dla problemów optymalizacji bez ograniczeń
10. Algorytmy ewolucyjne w problemach optymalizacji
Literatura
1. M.M. Sysło, Algorytmy optymalizacji dyskretnej, PWN, 1993
2. D. Rogulska. Programowanie liniowe. Algorytmy i zadania. Wydawnictwo Uniwersytetu
Aódzkiego 1991
3. K.I. Majid, Optymalne projektowanie konstrukcji, PWN, W-wa1981
4. David E. Kolberg, Algorytmy genetyczne i ich zastosowania, 2003 WNT
5. D. Rutkowska, Inteligentne systemy obliczeniowe.
6. M. Trocki, B. Grucz, K. Ogonek, ZarzÄ…dzanie projektami, W-wa 2002
7. A. Stachurski, A. Wierzbicki, Podstawy optymalizacji, Oficyna Wydawnicza PW, Warszawa
1999
56
40. Systemy Symboliczne
Forma zaję: wykład: 15h, ćwiczenia 30h
Autor: dr S. Zelek
Opis
Celem wykładu jest zapoznanie słuchaczy ze systemami umozliwiajacymi prowadzenie obliczen
symbolicznych (np. Mathematica, Maxima). Zostana przedstawione tresci zwiazane z praca z
systemie, prowadzeniem obliczen w sposób interaktywny oraz automatyczny. Pokazany zostanie
równiez jezyk programowania zwiazany z omawianymi systemami słuzacy do tworzenia własnych
programów. W ramach cwiczen słuchacze beda w praktyce realizowac omawiane zagadnienia.
Na zaliczenie zajec słuchacze beda pisali procedure realizujaca podane zagadnienie.
Wymagania wstepne
Podstawowa znajomosc systemu operacyjnego
Metody numeryczne
Programowanie
Zawartość
1. Wprowadzenie do systemu ogólna charakterystyka programu, tryb tekstowy i graficzny,
nazwy polecen i ich struktura, podstawowe działania, funkcje, stałe matematyczne, praca z
plikami,
2. Obliczenia symboliczne definiowanie zmiennych, operacje na wielomianach,
rozwiazywanierównan zwykłych i rózniczkowych,
3. Obliczenia numeryczne osiaganie zamierzonej dokładnosci, metody numeryczne w
Mathematica
4. Listy i macierze budowa i tworzenie, operacje na listach, modyfikacja elementów list,
iloczyn skalarny,
5. Programowanie budowa zdan logicznych, konstrukcja petli, warunków, tworzenie procedur
funkcji, budowa własnych procedur i funkcji,
6. Grafika wizualizacja wyników obliczen, grafika 2D i 3D, wykresu funkcji prostych i
parametrycznych, animacja w Mathematica,
7. Teksty operacje na zmiennych tekstowych,
8. Pliki wczytywanie danych do systemu oraz zapis wyników w pliku,
9. Pakiety rozszerzenie podstawowych mozliwosci systemu, budowa i tworzenie własnych
pakietów,
10. Prezentacja tworzenie dokumentów Mathematica w formie prezentacji.
Literatura
1. Stephen Wolfram, The Mathematica book, wyd 5, Addison-Wesley, Wokingham 2003
57
41. Perl dla administratorów systemów
Forma zajęć: Wykład 15h, laboratorium 15h
Autor: dr hab. J. Kobus
Program zajęć:
Celem zajęć jest przedstawienie możliwości języka Perl jako narzędzia
wspomagajÄ…cego administrowanie systemami komputerowymi poprzez
rozwiązywanie szeregu problemów w oparciu o analizę odpowiednio
dobranych przykładów i dostępną dokumentację. Przedstawione zostaną
podstawy języka, korzystanie z tablic i haszy, tworzenie procedur,
dostęp do plików i katalogów, dopasowywanie wzorca przy użyciu wyrażeń
regularnych Perla. Zdobyte umiejętności zostaną wykorzystane do
rozwiązywania konkretnych problemów związanych z zarządzaniem
użytkownikami i hostami, monitorowaniem procesów i systemów plików,
obsługą sieciowych usług nazw, administrowaniem bazami danych,
używaniem usług katalogowych (LDAP), obsługę i analizę logów.
Literatura
1. D. N. Blank-Edelman. Perl dla administratorów systemów. Wydawnictwo RM, Warszawa,
2000.
2. T. Christiansen and N. Torkington. Perl receptury. Wydawnictwo RM, Warszawa, 1999.
3. S. Holzner. Perl-Czarna księga. Wydawnictwo Helion, Gliwice, 2001.
4. L. Wall, T. Christiansen, and J. Orwant. Perl-Programowanie, wydanie drugie. Wydawnictwo
RM, Warszawa, 2001.
58
42. Technologie projektowania oprogramowania
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr I. Grabowski
Program:
Głównym celem przedmiotu jest zapoznanie z całością cyklu życia i wytwarzania oprogramowania
systemu informatycznego, ze szczególnym uwzględnieniem metod i notacji stosowanych w fazie
analizy i projektowania. Metody wytwarzania oprogramowania prezentowane sÄ… w szerszym
kontekście inżynierii oprogramowania, dają też niezbędne przygotowanie do takich zagadnień jak
inżynieria wymagań i ich specyfikacja, walidacja i testowanie oprogramowania, ewolucja
oprogramowania i zarządzanie przedsięwzięciem programistycznym. Po zaliczeniu przedmiotu
student powinien mieć podstawowe umiejętności w zakresie: posługiwania się wzorcami
projektowymi, projektowania oprogramowania zgodnie z metodykÄ… obiektowÄ…, dokonywania
przeglądu projektu oprogramowania, specyfikowania wymagań dotyczących oprogramowania i
przeprowadzania ich przeglÄ…du, tworzenia, oceny i realizacji planu testowania, uczestniczenia w
inspekcji kodu, zarzÄ…dzania konfiguracjÄ… oprogramowania.
Wymagania wstępne
- Wstęp do programowania; - Algorytmy i struktury danych; - Programowanie obiektowe
Zawartość
1. Fazy rozwoju oprogramowania.
2. Cykl życia programu, modele cyklu życia
3. Inżynieria wymagań dla systemów informatycznych; metody zbierania informacji; rodzaje
wymagań: funkcjonalne i niefunkcjonalne, specyfikacja i modelowanie potrzeb użytkowników
4. Metodologie projektowania zintegrowanego, możliwości i zakres formalizacji. Uniwersalne
języki specyfikacji, wizualizacji i konstruowania modeli. Modelowanie: dziedziny, modele,
systemy, podsystemy, abstrakcje, perspektywy.
5. Język UML i jego poziomy abstrakcji. Powiązanie pojęć i oprogramowania, proces projektowy
UML. Podstawowe narzędzia języka: diagramy struktury, diagramy dynamiki oraz diagramy
implementacji systemu. Generowanie kodu dla modeli UML. UML a cykl życia
oprogramowania.
6. Modelowanie danych, funkcji, ról użytkowników, procesów, zdarzeń
7. Projektowanie bazy danych, projektowanie interfejsu
8. Weryfikacja i testowanie. Koncepcje testowania względem specyfikacji i względem kodu.
Ocena liczby błędów. Bezpieczeństwo oprogramowania.
9. ZarzÄ…dzanie projektami.
Laboratorium:
Projektowanie zarzÄ…dzania danymi, baz danych, funkcji. Optymalizacja projektu. Dostosowanie do
ograniczeń i możliwości środowiska implementacji, modelowanie interfejsu użytkownika,
dokumentowanie wyników projektu i wytwarzanych produktów programistycznych.
Literatura.
1. K.Subieta Wprowadzenie do inżynierii programowania. Wydawnictwo PJWSTK, 2002.
2. M. Fowler, K. Scott UML w kropelce, LTP 2002
3. E. Yourdon, C. Argila Analiza obiektowa i projektowanie, WNT 2000
4. R. Pressman Inżynieria oprogramowania, WNT 2004.
59
43. Programowanie komunikacyjne i sieciowe
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: Krzysztof GrÄ…bczewski
Opis
Celem przedmiotu jest przedstawienie różnych zagadnień związanych z programowaniem modulów
komunikacyjnych funkcjonujących na bazie różnych nośników fizycznych i w różnych systemach
operacyjnych. Nacisk położony jest na specyfikę metod komunikacji z punktu widzenia programisty.
Wymagania wstępne
Kurs programowania obiektowego
Zawartość
1. Podstawy
a. model OSI
b. organizacja pakietów
c. komunikacja synchroniczna i asynchroniczna
d. problemy komunikacji w czasie rzeczywistym
2. Programowanie starszych Å‚Ä…czy szeregowych
a. RS232 i RS485
b. protokoły na bazie RS (ModBus etc.)
3. Aącza szeregowe dużej przepustowości (USB i FireWire)
4. Komunikacja bezprzewodowa (bluetooth i WiFi)
5. Programowanie sterowników urządzeń
6. Komunikacja TCP/IP
a. adresowanie w sieciach IP
b. protokoły routingu, DNS
c. protokoły usług (SMTP, HTTP, FTP. usługi terminalowe etc.)
d. projektowanie własnych protokołów na bazie TCP/IP
7. Technologie komunikacyjne Microsoft Windows
a. Dynamic Data Exchange (DDE), NetDDE
b. Object Linking and Embedding (OLE)
c. COM i COM+
d. OLE for Process Ccontrol (OPC)
e. .NET remouting
8. Architektury klient/serwer, peer to peer oraz systemy rozproszone
9. Niezawodność i bezpieczeństwo komunikacji
Literatura
1. Douglas E. Comer Sieci komputerowe i intersieci . WNT 1999-2007.
2. Stevens W. Richard UNIX. Programowanie usług sieciowych . Tom 1 i 2. WNT 2001/2.
3. John Paul Mueller COM+. Kompendium programisty . Helion 2002.
4. Wojciech Mielczarek USB. Uniwersalny interfejs szeregowy . Helion 2005.
5. Andrzej Daniluk RS 232C - praktyczne programowanie. Od Pascala i C++ do Delphi i
Buildera . Helion 2002-2007.
60
44. Akwizycja i przetwarzanie danych
Forma zajęć: Wykład 30h
Autor: dr SÅ‚awomir Grzelak
Wymagania wstępne
Podstawy techniki cyfrowej i elektroniki analogowej
Podstawy miernictwa
Zawartość
1. Typy i reprezentacja sygnałów
2. Podstawowe układy kondycjonujące
3. Układy Sample and Hold
4. Przetwarzanie sygnałów do postaci cyfrowej
5. Optyczny, magnetyczny i elektryczny zapis informacji
6. Przykłady kart Data acquisition w systemach przemysłowych i laboratoryjnych
7. Standardy NIM, CAMAC, PXI
8. Procesory sygnałowe DSP
9. Podstawowe algorytmy analizy widmowej
10. Filtrowanie sygnałów
11. Kompresja danych stratna i bezstratna
12. Kodowanie i rozpoznawanie sygnałów
13. Algorytmy przeszukiwania danych
14. Szyfrowanie danych
15. Metody wizualizacji danych i wyników analizy
16. Narzędzia ułatwiające tworzenie oprogramowania do przetwarzania danych (LabView,
Matlab)
Literatura
1. Waldemar Nawrocki, Komputerowe systemy pomiarowe, wyd. 2 uaktualnione, WKA,
Warszawa 2007
2. Tomasz P. Zieliński, Cyfrowe przetwarzanie sygnałów. Od teorii do zastosowań, WKA,
Warszawa 2005
3. Rudy van de Plasshe , Scalone przetworniki analogowo-cyfrowe i cyfrowo-analogowe, WKA,
Warszawa 2001
4. Hand David, Mannila Heikki, Smyth Padhraic, Eksploracja danych, WT, Warszawa 2005
61
45. Programowanie równoległe i rozproszone
Autor: dr hab. Piotr Pepłowski
Forma: Wykład: 30h, laboratorium: 45h
Wymagania wstępne
- Umiejętność programowania w C lub C++
- Znajomość algorytmów i struktur danych
Opis:
Celem zajęć jest zapoznanie studentów z praktycznymi aspektami obliczeń równoległych I nauczenie
efektywnego wykorzystania zarówno komputerów z pamięcią rozproszoną jak i komputerów z
wielordzeniowymi procesorami. Po zakończeniu kursu studenci
1. Będą rozumieli podstawowe pojęcia stosowane w obliczeniach równoległych
2. Będą znali różne równoległe architektury, modele programowania i algorytmy dla najczęściej
spotykanych zagadnień jak np. algebra liniowa
3. Będą potrafili rozwinąć efektywny algorytm równoległy dla zadanego problemu
4. Będą potrafili zaimplementować dany algorytm przy pomocy MPI, OpenMP lub obu tych
technik
5. Będą umieli analizować wydajność obliczeń równoległych, znajdować punkty krytyczne kodu
oraz optymalizować programy równoległe.
Program:
1. Architektury komputerów równoległych
a. Procesory wektorowe i superskalarne
b. Komputery z pamięcią współdzieloną
c. Komputery z pamięcią rozproszoną
2. Zasady budowy algorytmów równoległych
a. Techniki dekompozycji
b. Analiza obciążeń węzłów obliczeniowych
c. Analiza kosztów komunikacji
d. Analiza złożoności obliczeniowej
3. Programowanie z wykorzystaniem MPI
4. Programowanie z wykorzystaniem OpenMP
5. Przykłady algorytmów
a. Algebra liniowa (mnożenie wektora przez macierz, macierzy przez macierz,
rozwiązywanie układów równań liniowych)
b. Sortowanie
c. Algorytmy wyszukiwania
d. FFT
e. Przykłady z dynamiki molekularnej
62
Literatura
1. Ananth Grama, Anshul Gupta, George Karypis, Vipin Kumar, Introduction to parallel
computing, Addison Wesley, 2003
2. I. Foster. Designing and Building Parallel Programs: Concepts and Tools for Parallel
Software Engineering. Addison-Wesley, 1995. (książka dostępna także na stronach
http://www-unix.mcs.anl.gov/dbpp/)
63
46. Programowanie serwisów Web
Autor: dr Rafał Adamczak
Wymagania wstępne:
HTML, bazy danych, programowanie obiektowe
Program zajęć:
1. Wprowadzenie do języka PHP
a. podstawy składni
b. zmienne, stałe i instrukcje sterujące
c. przesyłanie danych do przeglądarki internetowej
2. Zasady programowania dynamicznych witryn WWW
a. tworzenie i wywoływanie własnych funkcji
b. tworzenie formularzy z pamięcią
c. Obsługa formularzy HTML w PHP
3. Mechanizmy obsługi sesji i cookies w PHP
4. Technologia SMARTY
a. struktura witryny opartej na szablonach
b. szablony i modyfikatory
5. Integracja PHP z bazami danych (MySQL)
a. AÄ…czenie z MySQL
b. wykonywanie prostych zapytań i odczytywanie wyników
c. uaktualnienie rekordów
6. Bezpieczeństwo PHP i MySQL
a. autoryzacja HTTP
b. zabezpieczenia bazy danych
Literatura:
1. Kevin Yang, PHP i MySQL, Witryna WWW oparta na bazie danych.
2. Michele Davis, Jon Phillips, PHP i MySQL. Wprowadzenie.
3. Julie C. Meloni, PHP MySQL i Apache dla każdego, Helion
4. H. Hayder, J. P. Maia, L. Gheorge, Smarty. Szablony w aplikacjach PHP.
64
47. Grafika i animacja komputerowa.
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr Rafał Adamczak
Wymagania wstępne
algorytmy i struktury danych, metody numeryczne, programowanie obiektowe w C++.
Zawartość
1. Grafika rastrowa i wektorowa wprowadzenie.
2. Przekształcenia geometryczne
a. projekcje
b. perspektywa.
3. Tworzenie i wyświetlanie obiektów w przestrzeni trójwymiarowej
a. modelowanie 3D za pomocÄ… programu blender
b. reprezentacja obiektów
c. techniki eliminacji powierzchni zasłoniętych
d. tekstury
e. światło, mapy światła, cienie
4. Struktury danych i reprezentacja świata
a. drzewa BSP
b. octree
c. portale.
5. Określanie widoczności.
6. Wykrywanie kolizji.
7. Efekty specjalne i technika małych cząstek.
Literatura
1. Eric Lengyel, Mathematics for 3D Game Programming and Computer Graphics, Charles River
Media, 2002
2. Alan Watt, Fabio Policarpo, 3D Games Animation and Advanes Real-time Rendering, Pearson
Education, 2003
3. Game Programming Tricks of the Trade, Edited by Lorenzo D. Philips, Premier Press, 2002
4. Richard S. Wright, Benjamin Lipchak, OpenGL, Wydawnictwo Helion, 2005
5. OpenGL Progarmming Guide, Addison- Wesley Publishing Company, www.gup.uni-
linz.ac.at/cgue/RedBook.pdf
65
48. System składu publikacji LATEX
Forma zajęć: Wykład 15h, laboratorium: 30h
Autor: S. Zelek
Opis
Celem cwiczen jest praktyczne zapoznanie słuchaczy ze systemem składu publikacji LATEX. Zostana
przedstawione tresci zwiazane z budowa typograficzna dokumentu oraz odzwierciedleniem
jej w pliku zródłowym oraz poszczególne konstrukcje umozliwiajace swobodne tworzenie dokumentów
na własne potrzeby. W ramach cwiczen słuchacze beda w praktyce realizowac omawiane
zagadnienia.
Zaliczenie zajeć ma forme kolokwium, w ramach którego słuchacze tworzy dokument o sciśle
określonej formie.
Wymagania wstępne
Podstawowa znajomosc systemu operacyjnego
Zawartość
1. Wprowadzenie o systemu LATEX, dystrybucje, instalacja, przygotowanie srodowiska pracy,
2. Podstawy proces przygotowywania dokumentu, kompilacja, budowa pliku, klasy
dokumentu, struktura dokumentu,
3. Akapity formatowanie akapitów, odstepy pionowe i poziome,
4. Srodowiska wyrównywanie akapitów, listy punktowane i numerowane, tabelki,
5. Srodowisko matematyczne wzory w linii i eksponowane, numeracja wzorów, wzory
wieloliniowe, konstrukcje matematyczne,
6. Bibliografia tworzenie odwołan bibliograficznych w tekscie, program BibTEX, wiele
spisów bibliografii w jednym dokumencie,
7. Rysunki tworzenie rysunków w LATEX u, właczanie zewnetrznych grafik do dokumentu,
Automatyzacja dokumentu spisy tresci, tabel, rysunków, tworzenie indeksu, zakładki i odwołania
8. Pakiety korzystanie z dodatkowych pakietów, instalacja, przykłady róznych zastosowan,
9. Praca z duzym dokumentem korzystanie z wielu plików, definiowanie własnych polecen
10. Prezentacja pakiety umozliwiajace tworzenie prezentacji multimedialnych w LATEX u.
Literatura
1. Leslie Lamport, LATEX A Document Preparation System: User s guide and Reference
Manual, wyd 2, Addison-Wesley, Wokingham 1994
2. Tobias Oetiker, Hubert Partl, Irene Hyna, Elisabeth Schlegl, Nie za krótkie wprowadzenie do
systemu LATEX2". Albo LATEX2" w 88 minut, tłum. Janusz Gołdasz, Ryszard Kubiak, Tomasz
Przechlewski,
3. Wojciech Myszka, Właczanie grafik do tekstów w LATEX2",
4. Michel Goossens, Frank Mittelbach, Alexander Samarin, The LATEX Companion, rozdział 8,
5. GUST (Grupa Uzytkowników Systemu TEX) archiwum: http://www.gust.org.pl
66
49. Język Java
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr J. Matulewski
Cel zajęć:
zapoznanie studentów z programowaniem obiektowym w środowisku Java dla platformy z
mechanizmem zarządzania pamięcią
Nabyte umiejętności:
znajomość języka Java, projektowania klas w Java, korzystanie z bibliotek kontrolek AWT i Swing,
projektowanie komponentów JavaBeans, dystrybucja programów Java
Wymagania: mile widziana znajomość C++
Program:
1. Korzystanie ze środowiska IDE
2. Konfigurowanie edytora i innych elementów środowiska programisty
3. Tworzenie i zarzÄ…dzanie projektem
4. Projektowanie apletów
5. Współpraca apletów z przeglądarką HTML
6. Debugowanie kodu
7. Język Java
8. typy wbudowane i komponenty
9. instrukcje sterujÄ…ce
10. klasy
11. Przykładowe aplety i aplikacje AWT
12. Przykładowe aplety i aplikacje Swing
13. Aplikacje konsolowe
14. Projektowanie komponentów JavaBeans
15. Wykorzystywanie UML do projektowania komponentów
16. Dystrybucja apletów i aplikacji
17. Automatyczne tworzenie dokumentacji
18. Bazy danych
67
50. Język Fortran
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr hab. Jan Wasilewski, prof. UMK
Cel:
Program zajęć obejmuje zarówno podstawową wersję 77, jak i nowe wersje 9x języka. Fortran77 jest
prostym, modularnym, semistrukturalnym językiem programowania, zorientowanym na zagadnienia
obliczeń numerycznych, także w największej skali. Zdecydowana większość dużych programów
obliczeniowych stosowanych w naukach przyrodniczych i technice, a także liczne i szeroko dostępne
biblioteki procedur numerycznych, napisane są w tym języku. Nowe wersje 90, 95 (które zawierają w
całości standard 77) są w pełni strukturalnymi językami modularno-hierarchicznymi, wyposażonymi
także w narzędzia do programowania obiektowego.
Przegląd zagadnień:
1. Fortran jako pierwowzór języków modularnych, zarys rozwoju
2. elementy języka, formaty zapisu kodu
3. specyfikacje obiektów, inicjowanie wartości
4. arytmetyka stało- i zmiennopozycyjna, standardy IEEE
5. budowa wyrażeń, przypisania
6. selekcje dwu- i wielowartościowe
7. pętle o określonej i nieokreślonej liczbie powtórzeń
8. tablice i działania na nich, uporządkowanie elementów
9. funkcje standardowe
10. typy segmentów, parametry formalne i aktualne podprogramów
11. komunikacja między segmentami, współdzielenie pamięci
12. struktury heterogeniczne
13. moduły i interfejsy
14. struktury alokowalne
15. wskazniki, struktury dynamiczne
16. pliki, formatowanie transmisji danych
Ćwiczenia prowadzone będą w oparciu o kompilatory GNU na platformie UNIX/LINUX.
Literatura
1. R. K. Kott, Fortran 77, WNT, Warszawa 1989.
2. R. K. Kott, K. Walczak, Programowanie w języku Fortran 77, WNT, Warszawa 1991.
3. D. Chrobak, Fortran. Praktyka programowania, MIKOM, Warszawa 2003.
4. A. Trykozko, Język Fortran, MIKOM, Warszawa 1999.
5. M. Metcalf, Effective Fortran 77, Oxford University Press, 1985.
6. M. Metcalf, J. Reid, Fortran 90 Explained, Oxford University Press, 1990.
7. M. Metcalf, J. Reid, Fortran 90/95 Explained, Oxford University Press, 1996.
8. M. Metcalf, J. Reid, M. Cohen, Fortran 95/2003 Explained, Oxford University Press, 2004.
68
51. Zaawansowane programowanie obiektowe
Forma zajęć: Wykład 15h, laboratorium 30h
Autor: dr Norbert Jankowski
Opis
Celem przedmiotu jest zaprezentowanie zaawansowanych technik programowania obiektowego ze
szczególnym uwzględnieniem możliwości środowiska .Net/C#.
Wymagania wstępne
Kursy programowania w języku C, C++, C#
Program
1. Zaawansowane struktury danych i algorytmów z platformy .Net.
2. Metodologia tworzenia zaawansowanych szablonów algorytmó i klas. Konstrukcje projektów
do poznanych wcześniej algorytmów na poziomie uniwersalnym.
3. Metodologia budowania dużych projektów
4. Projekty i budowa bibliotek dla .Net i wymiana informacji pomiędzy bibliotekami
5. Sposoby ochrony procesu: wykorzystanie domains .
6. Metodyka budowania testów tworzonego kodu dla środowiska .Net.
7. Mechanizmy meta-danych, reflections, attributes i ich zastosowanie
8. Generowanie kodu on-line (dodawanie kodu w czasie rzeczywistym wykonywania programu).
9. Analiza wybranych przestrzeni nazw środowiska .Net (wątki, XML, wyrażenia regularne, bazy
danych i inne)
Literatura
1. Jesse Liberty, Brian MacDonald, C#. Programowanie. Helion 2005.
2. Peter Drayton, Ben Albahari, Ted Neward, C# in a Nutshell, O'Reilly 2002.
3. MSDN, Microsoft
69
52. Metody numeryczne II
Forma zajęć: Wykład 30h, ćwiczenia 30h
Autor: dr Krzysztof GrÄ…bczewski
Program zajęć:
Celem przedmiotu jest przedstawienie oraz analiza różnych metod numerycznych. Nacisk jest
położony nie tylko na algorytmy oraz ich numeryczną analizę, ale także na stronę złożonościową oraz
zagadnienia implementacyjne.
1. Podstawy metod numerycznych
a. Analiza błędów, numeryczna stabilność, uwarunkowanie zadań
b. Reprezentacja zmiennoprzecinkowa, arytmetyka maszynowa.
2. Interpolacja
a. Wielomianowa Lagrange'a, Neville'a, Newtona
b. Wymierna
c. Funkcjami sklejanymi
3. Całkowanie numeryczne
a. Kwadratuty Newtona-Cotesa
b. Kwadratury z interpolacji Hermite a, wzór sumacyjny Eulera-Maclaurina, kwadratury
ekstrapolacyjne, kwadratura Romberga
c. Kwadratury Gaussa
4. Aproksymacja średniokwadratowa i jednostajna
a. Metody wielomianów ortogonalnych
b. Aproksymacja funkcjami sklejanymi
c. Aproksymacja funkcji ciągłych
5. Rozwiązywanie równań nieliniowych
a. metody: inteprolacji odwrotnej, bisekcji, regula falsi, siecznych, Newtona
b. modyfikacje metod
6. Szukanie zer wielomianów
7. Minima funkcji jednej zmiennej metody Johnsona i złotego podziału
8. Rozwiązywanie układów równań liniowych
a. metody dokładne, eliminacja Gaussa, schematy zwarte, algorytm Gaussa-Jordana,
rozkłady macierzy
b. metody iteracyjne: prostej iteracji, Seidla, metody relaksacyjne, największego spadku,
sprzężonych gradientów
9. Metody ortogonalizacji Grama-Schmidta, Hauseholdera, Givensa
10. Wyznaczanie wartości i wektorów własnych macierzy
11. Rozkład macierzy względem wartości szczególnych
12. Rozwiązywanie numeryczne równań różniczkowych
Literatura
1. J. Stoer, R. Bulirsch. Wstęp do analizy numerycznej. PWN 1987.
2. G. Dahlquist, A. Björck. Metody numeryczne. PWN 1983.
3. D. Kincaid, W. Cheney. Analiza numeryczna. WNT 2006.
4. W. H. Press i in. Numerical Recipes in C++. The Art of Scientific Computing. Cambridge
University Press 2002.
70
53. Elementy informatyki kwantowej w
zastosowaniach
Forma zajęć: Wykład 30h, ćwiczenia 30h
Autor: prof. dr hab.Konrad Banaszek
Program zajęć
Zajęcia mają na celu zaznajomienie słuchaczy z podstawowymi zagadnieniami kwantowego
przetwarzania informacji i łączności kwantowej. Struktury matematyczne używane w kwantowej
teorii informacji będą wprowadzone w umotywowany fizycznie sposób, ilustrowany implementacjami
optycznymi. Podkreślone zostaną związki z technikami telekomunikacyjnymi, analizą sygnałów oraz
przetwarzaniem danych statystycznych.
Wymagania: Algebra i analiza matematyczna.
Plan wykładu:
1. Wektory i macierze Jonesa; polaryzacja pojedynczego fotonu jako qubit; rozróżnialność
stanów kwantowych. Stany mieszane, sfera Blocha i przekształcenia unitarne qubitu.
2. Liniowe sieci optyczne; pojedynczy foton w interferometrze Macha-Zehndera; realizacja
pomiarów kwantowych qubitu. Pomiar fazy; szum śrutowy; informacja Fishera.
3. Kryptografia kwantowa; klucz jednorazowy; protokół BB84; podsłuch typu przejmij-prześlij;
implementacje oparte na kodowaniu polaryzacji i fazy. Dwukierunkowe systemy oparte na
zjawisku Faraday a. Niedoskonałość praktycznych zródeł fotonów i ograniczenia na odległość.
4. Propagacja wiązek światła; przybliżenie przyosiowe i dyfrakcja. Optyczne przekształcenie
Fouriera. Mody światłowodowe. Wektor falowy pojedynczego fotonu jako układ kwantowy o
ciągłych zmiennych. Dyspersja światła.
5. Algebra oscylatora harmonicznego. Zasada nieoznaczności Heiseberga. Ewolucja czasowa.
Stany koherentne i operator przesunięcia. Pomiar przesunięcia i kwantowa nierówność
Cramera-Rao.
6. Funkcja Wignera. Przestrzeń fazowa. Przekształcenie Radona i jego odwrotność.
Rekonstrukcja tomograficzna. Ewolucja liniowa. Aączny pomiar czasu i częstości.
7. Wielowymiarowy oscylator harmoniczny. Rozkład pola elektromagnetycznego na mody.
Kwantyzacja. Fotodetekcja. Kryptografia kwantowa na stanach koherentnych. Optyka
nieliniowa. yródła pojedynczych fotonów dla kryptografii kwantowej.
8. Nierówności Bella. Układy złożone i stany splątane. Gęste kwantowe kodowanie informacji.
Teleportacja kwantowa. Separowalność stanów kwantowych. Destylacja splątania. Korelacje
wielu układów: złożoność obliczeń rozproszonych.
9. Informacja Shannona. Kompresja danych. Przepustowość kanałów informacyjnych. Entropia
von Neumanna. Podsłuch w kryptografii kwantowej przez unitarne oddziaływanie z układem
pomocniczym. Nierówność Cholewo dla kanałów kwantowych.
10. Obliczenia kwantowe. Algorytm Deutscha-Jozsy. Bramki kwantowe. Kwantowy algorytm
przeszukiwania. Realizacja algorytmów kwantowych na pojedynczych fotonach. Bramka
nieliniowego przesunięcia fazy i kontrolowanego zaprzeczenia.
Literatura
1. N. Gisin, G. Ribordy, W. Tittel i H. Zbidnen, Quantum cryptography, Rev. Mod. Phys. 74, 145
(2002)
71
2. M. A Nielsen and I. L. Chuang, Quantum Computation and Quantum Information (Cambridge
University Press, Cambridge, 2000)
3. B. E. A. Saleh i M. C. Teich, Fundamentals of Photonics (Wiley, New York, 1991)
4. K. Wesołowski, Podstawy cyfrowych systemów telekomunikacyjnych (WKA, Warszawa,
2003)
72
54. Algorytmy kwantowe
Forma zajęć: Wykład 15h, ćwiczenia 15h
Autor: dr M. Michalski
Program zajęć:
1. Klasyczne modele obliczeń i złożoność obliczeniowa
a. Maszyny Turinga
b. Klasyczne układy liczące, zupełne układy bramek
c. Złożoność obliczeniowa: klasy P i NP
d. Problemy decyzyjne a problemy obliczeniowe
e. Obliczenia probabilistyczne, klasa BPP (bounded error probabilistic polynomial time)
f. Przykład: faktoryzacja liczby
2. Klasyczne obliczenia odwracalne bramki Fredkina i Toffoliego
3. Qubit
a. Przestrzeń stanów kwantowych
b. Reprezentacja stanów na sferze Blocha
c. Macierze Pauliego jako proste bramki kwantowe
d. Zupełny układ kwantowych bramek 1-qubitowych
e. Pomiar stanu qubitu
f. Twierdzenie o nieklonowaniu
4. Układy qubitów
a. Stany separowalne i splÄ…tane
b. Miara splÄ…tania
c. Bramki 2-qubitowe C-Not i C-U
d. Operacje n-qubitowe kaskadowe konstrukcje sterujące i ich złożoność
e. Zupełność układu 1-qubitowych bramek kwantowych i C-Not
5. Komputer kwantowy w ujęciu R. Feynmana
6. Splątanie jako zasób obliczeniowy
a. Teleportacja
b. Gęste kodowanie
c. Problem Deutscha-Jozsy
7. Kwantowa transformata Fouriera i estymacja fazy
8. Algorytm faktoryzacji Shora
a. Klasyczny algorytm RSA podstawy teorio-liczbowe
b. Wyznaczanie rzędu elementu w grupie metodami klasycznymi
c. Zastosowanie kwantowej estymacji fazy do wyznaczania rzędu
d. Złożoność kwantowego algorytmu Shora
9. Inne zastosowania kwantowej transformaty Fouriera
a. Określanie okresu funkcji
b. Dyskretne logarytmy
c. Problem ukrytej podgrupy jako prototypowy algorytm kwantowy
10. Algorytm wyszukiwania Grovera
11. Kwantowa korekcja błędów
73
55. Administrowanie sieciami lokalnymi i serwerami
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr hab. J. Kobus
Program zajęć:
Celem zajęć (wykład + laboratorium) jest przedstawienie zagadnień
związanych z administrowaniem serwerami i usługami dostępnymi w
lokalnej sieci komputerowej. Wykład poświęcony jest omówieniu
zagadnień dotyczących uruchamiania systemu komputerowego (programy
ładujące, fazy procesu bootowania, poziomy pracy systemu), działania
usług sieciowych takich jak DHCP, DNS, TFTP, SSH, NFS, a także
monitorowaniu funkcjonowania systemu komputerowego poprzez śledzenie
wykorzystania jednostki centralnej, pamięci operacyjnej oraz urządzeń
wejścia/wyjścia przy pomocy szeregu narzędzi diagnostycznych (ps, top,
sar, iostat, vmstat, pmap, slabtop, netstat, ntop). Zajęcia
laboratoryjne mają na celu praktyczne opanowanie takich umiejętności
jak instalacja systemu operacyjnego, konfiguracja interfejsów
sieciowych, administrowanie użytkownikami, tworzenie i montowanie
systemów plików, konfiguracja usług DHCP, TFTP, PXE, SSH oraz NFS.
Literatura
1. Strony podręcznika systemowego dotyczące narzędzi systemowych i konfiguracji usług
sieciowych.
2. Dokumentacja dotycząca instalacji i konfiguracji systemu komputerowego dostępna na
licznych stronach internetowych, np. http://docs.fedoraproject.org/install-guide/f7/pl/.
3. P. G. Ezolt. Optimizing Linux(R) Performance: A Hands-On Guide to Linux(R) Performance
Tools. HP Professional Series, 2005.
4. A. H. Majidimehr. Optymalizacja systemu UNIX. Naukowo-Techniczne, Warszawa, 1998.
Wydawnictwo
5. G. D. Musumeci and M. Loukides. Optymalizacja systemów komputerowych. Wydawnictwo
RM, Warszawa, 2002.
6. In Sanda K.Johnson, J. Gerrit Huizenga, and Badari Pulavarty, editors, Performance Tuning
for Linux Servers, New York, 2005. IBM Press, Pearson plc.
74
56. Inteligencja obliczeniowa
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: prof. dr hab. W Duch
Program zajęć:
1. Wstęp: co to jest inteligencja obliczeniowa (computational intelligence) ?
2. Problemy wymagajÄ…ce inteligencji i inspiracje biologiczne dla ich rozwiÄ…zania.
3. Wizualna eksploracja danych: metody bezpośrednie i metody projekcji, analiza czynników
głównych, niezależnych, dyskryminacja liniowa.
4. Samoorganizujące się odwzorowanie topologiczne (sieć Kohonena) i jej warianty, Skalowanie
wielowymiarowe.
5. Bayesowskie podstawy teorii rozpoznawania wzorców, ocena rezultatów i optymalny wybór
złożoności modelu.
6. Indukcja reguł logicznych za pomocą drzew decyzji.
7. Analiza dyskryminacyjna, maszyny wektorów wsparcia (SVM) i kernelizacja.
8. Estymacja gęstości prawdopodobieństwa: radialne funkcje bazowe, maksymalizacja
oczekiwań (algorytm EM), metody nieparametryczne.
9. Systemy neurorozmyte na separowalnych funkcjach bazowych i uczenie się z częściowych
obserwacji.
10. Metody oparte na podobieństwie: miary podobieństwa, metody minimalnoodległościowe.
11. Teoria informacji i jej zastosowania do selekcji informacji; metody meta-uczenia.
Literatura
1. Jacek Koronacki, Jan Ćwik, Statystyczne systemy uczące się. WNT 2005
2. Marek Kurzyński, Rozpoznawanie obiektów, metody statystyczne.
3. Eugeniusz Gatnar, Symboliczne metody klasyfikacji.
75
57. Uczenie maszynowe, algorytmy i systemy data
mining
Forma zajęć: Wykład 30h, Laboratorium 30h
Autor: dr Norbert Jankowski
Program zajęć
1. Charakterystyka problemów podejmowanych przez uczenie maszynowe i data miting
2. Algorytmy uczÄ…ce siÄ™, czym sÄ…?
3. Typy uczenia siÄ™. Uczenie siÄ™ z danych i problemy zwiÄ…zane z danymi.
4. Algorytmy liniowej dyskryminacji.
5. Algorytmy regresji.
6. Algorytmy ML i algorytmy uczenia Baysowskiego
7. Metoda okien Parzena i sieć NRBF
8. Metoda kNN i jego odmiany
9. Algorytmy drzew decyzyjnych
10. Algorytm SVM
11. Algorytmy komitetowe
12. Metody selekcji informacji
13. Metody klasteryzacji
14. Metodologia testowania efektywności procesu uczenia algorytmów
15. Meta-uczenie
16. Analiza systemów data mining.
17. Metodologia posługiwania się narzędziami data mining.
Literatura
1. Duda, Hart, Stork, Pattern Classification, Wiley, 2001
2. D. Larose, Odkrywanie wiedzy z danych, PWN, 2006
3. T. Mitchell. Machine learning. McGraw Hill, 1997.
4. T. Hastie, R. Tibshirani, and J. Friedman. The Elements of Statistical Learning: Data Mining,
Inference, and Prediction. Springer Series in Statistics. Springer, 2001.
5. V. Vapnik, The Nature of Statistical Learning Theory, Springer, 1995
6. B. Sch\"{o}lkopf and A. Smola, Learning with Kernels, MIT, 2002
7. I. Guyon, S Gun, M. Nikravesh, L Zadeh ed., Feature extraction, foundations and
Applications, Springer, 2006
8. N. Jankowski, Ontogeniczne sieci neuronowe. O sieciach zmieniajÄ…cych swojÄ… strukturÄ™, Exit,
2003
9. V. Cherkassky and F. Mulier, Learning from data, Wiley, 1998
76
58. Metody wizualizacji danych i Analiza danych
tekstowych
Forma zajęć
Wykład (30 godzin), Laboratorium (30 godzin)
Autor dr Antoine Naud
Program zajęć
A/ Metody grupowania, redukcji wymiarowosci oraz wizualizacji danych:
LVQ Learning Vector Quantization
SOM Self-Organizing Map
MVC Mean Variance Clustering
HC Hierarchical Clustering, dendrograms
KM, FCM k-means based clustering
MDS Multidimensional scaling:
Nonmetric scaling
Nonlinear mapping
Incremental MDS
TRM, DM Triangulation Method, Distance Mapping
PAM, CLARA Partitioning Around Medoids, Clustering Large
Applications
CLIQUE Clustering In QUEst
OPTICS Ordering Points To Identify the Clustering
Structure
EPP, GT Exploratory Projection Pursuit, Grand Tour
FM FastMap
MM MetricMap
CH Charting
LLE Locally Linear Embedding
B/ Analiza danych tekstowych:
1. Introduction / wprowadzenie
2. Document File preparation / wstepne przygotowywanie dokumentow
3. Vector Space Models / modele przestrzeni wektorowych
4. Matrix Decompositions / rozklady macierzy
5. Query management / zarzadzanie zapytaniami
6. Ranking and relevance feedback / oceny wynikow
7. Searching by link structure / szukanie z pomoca laczy miedzy dokumentami
8. User interface considerations / interfejsy uzytkownika
9. Further reading / uzupelnienia
Literatura
1. Foundations of statistical Natural Language Processing, Chrsitopher D. Manning and Hinrich
Schuetze, MIT Press, 1999.
2. Understanding search engines, M.W. Berry and M. Browne, SIAM, 2005.
3. Information Retrieval, Algorithms and heuristics, David A. Grossman and Ophir Frieder,
Springer, 2004.
77
59. Przetwarzanie informacji przez mózgi
Forma zajęć: Wykład 30h
Autor: prof. dr hab. W. Duch
Program zajęć:
1. Mózg i umysł: geny i mózgi: biologia ewolucyjna, złożoność informacji genetycznej.
2. Podstawy anatomii mózgu, metody badania pracy mózgu, lokalizacja funkcji psychicznych.
3. Działanie mózgu: najprostsze teorie.
4. Funkcjonalna budowa mózgu, badanie aktywności mózgu.
5. Kontrola organizmu, emocje i napędy.
6. Modularna budowa kory mózgu i analiza danych zmysłowych.
7. Percepcja i ruch.
8. Wyższe czynności psychiczne, rodzaje i modele pamięci.
9. Świadomość i umysł.
10. Neuropsychologia czego dowiedzieć się możemy z badania uszkodzeń mózgu?
Zalecana literatura
1. T. Górska, A. Grabowska, J. Zagrodzka (red), Mózg a zachowanie.
2. F. Crick, ZdumiewajÄ…ca hipoteza.
3. J. Searle, Umysł na nowo odkryty.
4. G. Edelman, Przenikliwe powietrze, jasny ogień. O materii umysłu.
78
60. Neuropsychologia komputerowa
Forma zajęć: Wykład 30h
Autor: prof. dr hab. W Duch
Program zajęć:
1. Wstęp ogólny: jak i co modelować?
2. Neurony: budowa, własności, modele.
3. Sieci, przepływ informacji, hamowanie i konkurencja
4. Hebbowskie uczenie się modeli informacji dopływających ze środowiska.
5. Uczenie się wykonywania zadań przez korekcję błędów.
6. Uczenie się zachowań: zadań i modeli jednocześnie.
7. Percepcja: własności kory wzrokowej, niezmiennicze rozpoznawanie obiektów - przetwarzanie
informacji w szlaku brzusznym.
8. Uwaga i przetwarzanie informacji wzrokowej w szlaku grzbietowym.
9. Pamięć w korze ciemieniowej, hipokampie i korze przedczołowej.
10. Język: modele czytania, dysleksji, znaczenia słów i zdań.
11. Wyższe czynności poznawcze: podejmowanie decyzji, kategoryzacja.
12. Konkluzje
Zalecana literatura
1. R.C. O'Reilly, Y. Munakata, Computational Explorations in Cognitive Neuroscience
Understanding the Mind by Simulating the Brain.
2. T. Górska, A. Grabowska, J. Zagrodzka (red), Mózg a zachowanie.
3. F. Crick, ZdumiewajÄ…ca hipoteza.
4. G. Edelman, Przenikliwe powietrze, jasny ogień. O materii umysłu.
79
61. Projektowanie układów scalonych
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr D. Chaberski
Wymagania wstępne
Podstawy techniki cyfrowej
Podstawy elektroniki analogowej
Podstawy fizyki półprzewodników
Program zajęć:
1. Elementy pasywne w układach scalonych
2. Podstawowe elementy aktywne w układach scalonych
3. Przegląd technologii projektowania układów scalonych
a. Technologia AMS C35 (reguły projektowe, biblioteka komponentów)
4. Åšrodowisko Cadence
a. Instalacja oraz zawartość poszczególnych pakietów
b. Zmienne środowiskowe i sposób licencjonowania
c. Åšrodowisko Design Framework II pakietu Cadence
d. Manager bibliotek
e. Edytor schematu - (Composer Schematics Editor)
f. Edytor symboli elementów - (Composer Symbol Editor)
g. Symulacja analogowa z wykorzystaniem Analog Artist, cdsSpice oraz Spectre (DC,
AC, TRAN, NOISE)
h. Analiza parametryczna i skrajna
i. Symulacja Monte-Carlo
j. Symulacja sygnałów mieszanych (Mixed-Signal)
k. Edytor topografii masek układów scalonych (Layout Editor)
l. Ekstrakcja parametrów pasożytniczych z masek układów scalonych
m. Sprawdzanie reguł projektowych (DRC i ERC)
n. Edytor hierarchii
o. Modelowanie układów scalonych w języku Verilog (podstawy języka) oraz w języku
VHDL
p. Symulacja bloków opisanych w językach Verilog i VHDL
q. Pady wyjściowe oraz dystrybucja zasilania
r. Konwersja do formatu GDS przed wysłaniem układu do produkcji
Literatura
1. P. R. Gray, Analysis and Design of Analog Integrated Circuits - 4th Edition, John Wiley &
Sons, 2001
2. B. Razavi, Design of Analog CMOS Integrated Circuits - 1st Edition, McGraw-Hill
Science/Engineering/Math, 2000
3. R. J. Baker, CMOS Circuit Design, Layout, and Simulation - 2nd Edition, John Wiley & Sons,
2005
4. J. Hennel, Podstawy elektroniki półprzewodnikowej, WNT, 2005
80
5. K. Skahill, Język VHDL Projektowanie programowalnych układów logicznych wydanie 2,
WNT, 2004
6. S. Palnitkar, Verilog HDL - 2nd Edition, Prentice Hall PTR, 2003
81
62. Systemy wbudowane i systemy czasu
rzeczywistego
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr D. Chaberski
Wymagania wstępne
Podstawowy architektury komputerów
Podstawy techniki mikroprocesorowej i programowania
Program zajęć:
1. Wprowadzenie do systemów wbudowanych i systemów czasu rzeczywistego (wyjaśnienie
używanych terminów)
2. Systemy wbudowane oparte o mikrokontrolery
a. Typowe architektury mikrokontrolerów ( CPU, zasoby sprzętowe, układy peryferyjne)
b. Przegląd popularnych rodzin i producentów mikrokontrolerów 8 i 16-bitowych
c. Mikrokontrolery 32 bitowe z procesorem ARM
d. Mikrokontrolery oparte o procesory DSP
e. Magistrale szeregowe w systemach mikroprocesorowych
f. Kryteria wyboru mikrokontrolera
3. Systemy wbudowane oparte o komputery zgodne z architekturÄ… PC
a. Klasyczne komputery przemysłowe
b. Połączenie z obiektem, karty rozszerzeń
c. Komputery jednopłytkowe (standardy, zasoby, interfejsy)
4. Oprogramowanie systemów wbudowanych
a. Wymagania stawiane oprogramowaniu dla systemów wbudowanych
b. Oprogramowanie dedykowane do urzÄ…dzenia (firmware)
c. Wbudowany systemem operacyjny czasu rzeczywistego z oprogramowaniem
specjalistycznym
d. Programowanie mikrokontrolerów ( narzędzia programistyczne, systemy
uruchomieniowe, emulatory, programatory)
e. Programowanie mikrokontrolerów w jezyku C, programowanie przy ograniczonych
zasobach pamięciowych, dostęp do zasobów sprzętowych, problemy sterowania w
czasie rzeczywistym
5. Wybrane przykłady obszarów i urządzeń technicznych zawierających systemy wbudowane
Literatura
1. P. Hadam, Projektowanie systemów mikroprocesorowych, BTC, 2004
2. P. Metzger, Anatomia PC - wydanie 10, Helion, 2006
3. J. M. Sibigtrith, Zrozumieć małe mikrokontrolery, BTC, 2004
4. P. Szymczyk, Systemy Operacyjne Czasu rzeczywistego, Uczelniane Wydawnictwa Naukowo
- Dydaktyczne, Kraków 2003
5. K. Lal, T. Rak, K. Orkisz, RTLinux system czasu rzeczywistego, Helion, Gliwice 2003
82
63. Język opisu sprzętu (VHDL)
Autor: dr hab. Piotr Pepłowski, dr Dariusz Chaberski
Forma: Wykład: 15h, laboratorium: 45h
Wymagania wstępne
- Podstawy techniki cyfrowej,
- Podstawowa znajomość techniki mikroprocesorowej,
- Umiejętność programowania w dowolnym języku wysokiego poziomu,
Opis:
Celem zajęć jest nauczenie słuchaczy wykorzystania języka opisu sprzętu jakim jest VHDL do
projektowania układów cyfrowych. Słuchacze poznają podstawowy tego języka, a następnie
zapoznają się jak wykorzystać konstrukcje VHDL do projektowania prostych bloków
kombinacyjnych i sekwencyjnych. Kolejnym celem jest zapoznanie studentów z metodami
konstrukcji układów złożonych i jak programować układy testujące.
W laboratorium studenci zapoznajÄ… siÄ™ z dwoma pakietami komercyjnym Active-HDL oraz
ISE-Foundation, które pozwolą im zarówno stworzyć projekt układu cyfrowego i wykonać symulację
jego działania, ale także wykonać syntezę, implementację oraz symulację behawioralną i czasową. W
ramach tego ostatniego pakietu będą także korzystać z dodatkowych narzędzi takich jak FPGA
Planner i Floor Planner.
Program:
Wykład:
1. Typy i obiekty danych w VHDL (różnice w stosunku do typowych języków programowania,
przykłady),
2. Operatory i atrybuty
3. Współbieżność w VHDL i współbieżne instrukcje
4. Instrukcje sekwencyjne
5. Sygnały i zmienne
6. Maszyny stanów skończonych
7. Pakiety i komponenty
8. Funkcje i procedury
9. Konfiguracja komponentów
Laboratorium
1. Implementacja bloków kombinacyjnych (sumator, półsumator, subtraktor),
2. Konstrukcje when-else oraz with-select (konwertery kodu, multipleksery),
3. Operatory relacji (komparatory),
4. Generowanie kodu (konstrukcja for-generate),
5. Mapowanie komponentów (konstrukcje port map oraz generic map),
6. Opis bloków funkcjonalnych w ścieżce danych (przerzutnik RS, pamięć),
7. Opis bloków funkcjonalnych w postaci procesów (przerzutniki D, T, JK, JK-MS, liczniki,
konstrukcje with-select i if-then-else),
8. Konwersja z transmisji szeregowej na równoległą i vice versa (problem prawidłowej
synchronizacji układów cyfrowych),
83
9. Konwersja typów danych,
10. Maszyna stanów (opis prostych bloków funkcjonalnych, mikroprocesor - 20 instrukcji),
11. Podprogramy i procedury w języku VHDL (opis prostych bloków sekwencyjnych, konstrukcja
for-loop, konwersja typów),
12. Operatory w języku VHDL (przeciążanie, konwersja typów),
13. Biblioteki i pakiety,
Literatura
1. K. Skahill, Język VHDL - Projektowanie programowalnych układów logicznych wydanie 2,
WNT, 2004,
2. Designers guide to VHDL, Peter J. Ashenden, 2001, Morgan Kaufman Publisher
3. J. Kalisz, Język VHDL w praktyce, WKA, 2002,
4. J. Kalisz, Podstawy Techniki Cyfrowej - wydanie czwarte zmienione, WKA, Warszawa 2002,
5. Fundamentals of Digital Logic with VHDL Design, Stephen Brown and Zvonko Vranesic,
Mc-Graw-Hill (2nd edition).
6. W. Wrona, VHDL - język opisu i projektowania układów cyfrowych wydanie 3, 1998,
WPKJS
7. Mark Zwoliński Projektowanie układów cyfrowych z wykorzystaniem języka VHDL , 2002,
WKA)
84
64. Układy programowalne
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: prof. dr hab. M. Zieliński
Opis
Celem wykładu jest zapoznanie słuchaczy z układami programowalnymi w zakresie ich struktury,
technologii wytwarzania, programowania, konfigurowania, sposobów komunikowania z otoczeniem
oraz implementacji prostych i złożonych układów cyfrowych oraz analogowo cyfrowych, Wykład jest
wprowadzeniem do zagadnień związanych z funkcjonalnym i strukturalnym sposobem projektowania
układów. Wraz z wykładem z języka VHDL stanowi wprowadzenie do laboratorium z układów
programowalnych, którego celem jest nabycie umiejętności wykorzystania programowalnych struktur
CPLD, FPGA oraz CSoC.
Wymagania wstępne
Podstawy techniki cyfrowej
Program zajęć
1. Układy specjalizowane ASIC. Układy SPLD, CPLD, FPGA oraz CSoC i ich odmiany.
2. Architektura złożonych struktur CPLD i FPGA z uwzględnieniem architektury i sposobów
wykorzystania specjalizowanych bloków wbudowanych, takich jak: pamięć, bloki mnożąco-
akumulujÄ…ce i procesory wirtualne.
3. Wykorzystanie języków opisu sprzętu (HDL) w projektowaniu układów implementowanych w
strukturach programowalnych.
4. Synteza układów sekwencyjnych. Pojęcie automatu o skończonej liczbie stanów.
Minimalizacja liczby stanów. Problem kodowania stanów wewnętrznych. Synchroniczne
układy sekwencyjne. Synteza układów synchronicznych. Układy asynchroniczne.
5. Komputerowe systemy projektowania wykorzystujące języki opisu sprzętu. Ich struktura oraz
podstawowe funkcje wykorzystywane w procesie projektowania systemów cyfrowych.
6. Programowanie i rekonfiguracja układów programowalnych standard JTAG.
7. Symulacja logiczna, czasowa oraz testowanie systemów cyfrowych. implementowanych w
strukturach programowalnych.
8. Zarządzanie sygnałami zegarowymi w układach programowalnych. Bloki DLL, PLL i DCM.
9. Projektowanie prostych systemów cyfrowych i ich implementacja w strukturach
programowalnych SPLD, CPLD i FPGA.
10. Zastosowanie układów programowalnych w systemach pomiarowych i pomiarowo
kontrolnych.
Literatura
1. T. Auba, K. Jasiński, Specjalizowane układy cyfrowe w strukturach PLD i FPGA, WKA,
Warszawa 1997.
2. P. Zbysiński, J. Pasierbiński, Układy programowalne, Wydawnictwo BTC, Warszawa 2002.
3. M. Zwoliński, Projektowanie układów cyfrowych z wykorzystaniem języka VHDL, WKA,
Warszawa, 2002.
4. J. Kalisz, Język VHDL w praktyce, WKA, Warszawa, 2002.
5. J. F. Wakerly, Digital Design Principles & Practices, Prentice Hall, New Jersey 2000.
6. S. Brown, Fundamentals of Digital Logic with VHDL Design, McGraw Hill, New York, 2000.
85
7. K. C. Chang, Digital Systems Design with VHDL and Synthesis, IDEE Komputer Society, Los
Alamitos, 1999.
8. Literatura uzupełniająca
9. G. De Micheli, Synteza i optymalizacja układów cyfrowych, Wydawnictwa Naukowo-
Techniczne, Warszawa 1998.
10. U. Meyer-Baese, Digital Signal Processing with Field Programmable Gate Arrays, Springer,
Berlin, 2001.
11. C. J. Myers, Asynchronous Circuits Design, J. Willey, New York, 2001.
12. Q. K. Zhu, High-Speed Lock Network Design, Kluwer Academic Publisher, Boston, 2003.
13. Z. Navabi, VHDL Design and Synthesis of Cores and Systems, McGraw Hill, New York,
2007.
14. Literatura uzupełniająca do laboratorium
15. J. W. Steward, C. Y. Wang, Digital Electronics Laboratory Experiments, Prentice Hall, New
Jersey 2001.
16. D. Van den Bout, The Practical Xilinx Designer Lab Book, Prentice Hall, New Jersey 1998.
86
65. Logika rozmyta
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr hab. L. Grzesiak
Opis
Celem wykładu jest omówienie podstawowych zagadnień związanych z aplikacjami systemów
rozmytych. Przedstawione zostaną podstawowe definicje oraz omówione właściwości tych systemów.
Na przykładach przedstawiona zostanie problematyka projektowania układów sterowania bazujących
na systemach rozmytych. Po zakończeniu wykładu słuchacz powinien posiadać umiejętności
wykorzystywania elementów teorii zbirów rozmytych w projektowaniu systemów sterowania. W
ramach projektów słuchacze będą samodzielnie implementować wybrane architektury i algorytmy
systemów rozmytych do realizacji układów automatyki przemysłowej korzystając z oprogramowania
MATLAB/SIMULINK.
Wymagania wstępne
1. Analiza matematyczna
2. Logika matematyczna
3. Matlab
4. Sztuczna inteligencja i systemy ekspertowe
Program zajęć:
1. Znaczenie logiki rozmytej, zakres badań w różnych obszarach zastosowań
2. Podstawowe pojęcia teorii zbiorów rozmytych
3. Podstawowe operacje na zbiorach rozmytych,
4. Klasyfikacja systemów logiki rozmytej
a. Czyste systemy logiki rozmytej (pure fuzzy logic systems)
b. Systemy rozmyte Takagi & Sugeno s (Takagi & Sugeno s fuzzy logic)
c. Logika rozmyta z fuzyfikatorem i defuzyfikatorem (fuzzy logic systems with fuzzifier
and defuzzifier)
5. Zastosowanie systemów rozmytych do zagadnień sterowania i regulacji
6. Typowe systemy sterowania bazujÄ…ce na systemach rozmytych,
7. Architektury typowych systemów rozmytych
8. Metody badania stabilności w układach z regulatorami rozmytymi
9. Systemy neuro-fuzzy w układach automatyki
10. Przykładowe projekty systemów rozmytych w automatyce
Literatura
1. Yager Ronald R.: Podstawy modelowania i sterowania rozmytego . Warszawa:
Wydawnictwo Naukowo-Techniczne 1995
2. Da Ruan: Inteligent hybryd systems: Fuzzy Logic, Neural Networks and Genetic
Algorithms , Kluwer Academic Publisher, 1997
87
3. Piegat Andrzej: Modelowanie i sterowanie rozmyte . Warszawa: Akademicka Oficyna
Wydawnicza EXIT 1999
4. Butkiewicz Bohdan: Metody wnioskowania przybliżonego : właściwości i zastosowania .
Warszawa: Oficyna Wydawnicza Politechniki Warszawskiej 2001
5. Rutkowski Leszek: Metody i techniki sztucznej inteligencji , PWN, Warszawa 2005.
88
66. Wstęp do bioinformatyki
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr R. Adamczak
Wymagania wstępne
Algorytmy i struktury danych
Program zajęć:
6. Motywacje biologiczne, główne problemy, algorytmy i zastosowania
7. Analiza sekwencji - główny problem w bioinformatyce
a. bezbłędne nałożenie łańcuchów, zastosowanie do znajdowania wzorców i składania
sekwencji genomicznych
b. algorytm programowania dynamicznego w zastosowaniu do nakładaniu sekwencji
8. Analiza ekspresji białek i genów
a. uczenie bez nadzoru, rozpoznawanie wzorców, klasteryzacja
b. uczenie pod nadzorem
c. podejście bayesowskie do klasteryzacji i zastosowanie do analizy ekspresji genów
d. przykład zastosowania do problemu znajdowania genów (przez podobieństwo i ab
initio)
9. Analiza struktury i interakcji białek
a. przewidywanie struktury i funkcji białek
b. profile ukrytych łańcuchów markowa i rodziny białek
c. teoria grafów, zastosowanie do reprezentacji sieci oddziaływań białkowych
10. Modelowanie i protokół symulacji dla systemów biomolekularnych
a. dynamika molekularna i jej zastosowania
b. metoda Monte Carlo i inne protokoły globalnej minimalizacji
Literatura
1. Dan Gusfield, Algorithms on strings, trees, and sequences, Cambridge University Press.
2. A.D. Baxevanisa, B.F.F Ouellette'a, Bioinformatyka podręcznik do analizy genów i białek,
Wydawnictwo Naukowe PWN
3. Carl Branden, John Tooze, Introduction to Protein Structure, Garland Publishing.
4. Durbin, Eddy, Krogh and Mitchinson, Biological Sequence Analysis
89
67. Modelowanie Molekularne
Forma zajęć: Wykład 30h
Autor: prof. dr hab. Wiesław Nowak
Program zajęć:
1. Co to jest modelowanie molekularne? Do czego jest potrzebne (projektowanie leków, nowe
materiały)
2. Cel modelowanie molekularnego. Związki chemiczne, dlaczego ważne.
3. Metody klasyczne i kwantowe MM.
4. Równanie Schroedingera, dlaczego tak trudno je rozwiązać?
5. Mapa metod chemii kwantowej: metody ab inito, DFT, półempiryczne.
6. Podstawowe programy do obliczeń chemii kwantowej komercyjne i niekomercyjne: np.
Gaussian, Gamess, ArgusLab, Jaguar i inne.
7. Metoda Hartree-Focka, bazy funkcyjne, dokładność metody.
8. Metody DFT typowe funkcjonały, zakres użyteczności.
9. Widma elektronowe i IR
10. Metody typu ZINDO.
11. Obliczenia optymalnej geometrii.
12. Obliczenia potencjału elektrostatycznego.
13. Dokowanie, projektowanie ligandów.
14. Paralelizacja obliczeń, Gridy, problemy hardwerowe MM.
Ćwiczenia
(30 godzin, prowadzÄ…cy, np. Lukasz Peplowski, Karina Kubiak, P. Miszta, W.Nowak)
będą prowadzone w systemie Linux, z dostępem do Gaussiana i ArgusLaba.
Studenci sami zbuduja proste molekuły, obliczą bariery na rotacje, optymalne konformacje, widma
elektronowe i potencjal elektrostatyczny wybranych czÄ…steczek organicznych prostych i prostych
charakterze leku. Jeli zdobędziemy licencje to studenci poznaja również w pełni profesjonalny pakiet
do modelowania molekularnego typu Discovery Studio.
Wykonan będą też proste ćwiczenia z dokowania, przy wykorzystaniu grafiki 3-D.
Literatura:
1. Handouty przygotowane przez prowadzÄ…cego
2. L.Piela Chemia Kwantowa , PWN 2002
90
68. Biofizyka
Forma: Wykład 30h, laboratorium: 30h
Autor: prof. W. Nowak
Oś tematyczna wykładu:
Biofizyczne podstawy transportu i przesyłania sygnałów w organizmach żywych.
Program:
1. Wstęp -
a. Co to jest biofizyka?
b. Cechy układów biologicznych.
c. Pierwiastki materii żywej.
d. Od organizmu do komórki: budowa mikroskopowa komórki, błony komórkowe,
podstawowe bioczÄ…steczki, wiÄ…zania chemiczne.
e. Oddziaływania międzycząsteczkowe - rodzaje, wiązanie wodorowe, struktura wody.
f. Znaczenie przemian energii, znaczenie transportu masy i energii.
g. Entropia, Przepływ informacji, a procesy życiowe.
2. Termodynamika :
a. Zwięzły przegląd pojęć fizyki statystycznej.
b. Funkcje termodynamiczne.
c. Elementy klasycznej termodynamiki fenomenologicznej, energia swobodna i entalpia
swobodna, potencjał chemiczny, entalpia swobodna a stała równowagi.
d. Bodzce termodynamiczne. Sprzężenie reakcji chemicznych.
e. Elementy termodynamiki procesów nieodwracalnych.
3. BÅ‚ony biologiczne.
a. Modele błon. Elastyczność.
b. Transport pasywny i aktywny.
c. Równowaga osmotyczna.
d. Równowaga jonowa.
e. Przepływ przez błony.
f. Potencjał błonowy.
g. Mechanizmy transportu, kanały jonowe.
4. Przekazywanie sygnałów w organizmie
a. Przewodzenie impulsów nerwowych.
i. Zarys budowa mózgu.
ii. Odwzorowanie skóry w korze czuciowej.
iii. Neurony.
iv. Mechanizm powstawania potencjału czynnościowego.
b. Przekazywanie sygnałów na drodze chemicznej.
i. Gruczoły wydzielania dokrewnego.
ii. Arsenał chemiczny przysadki; sposób wydzialania hormonów:
91
iii. Przykłady hormonów pochodnych kwasów tłuszczowych i sterydów,
hormonów białkowych
iv. Regulacja poprzez ujemne sprzężenie zwrotne (wydzielanie hormonów).
v. Przykład aktywacji genów przez hormony.
vi. Istota funkcji białek G.
vii. Mechanizm działania cyklicznego AMP (drugi przekaznik).
c. Neuroprzekazniki
d. Transmisja sygnału nerwowego w poprzek przerwy synaptycznej.
e. Tlenek azotu i jego rola fizjologiczna.
f. Viagra mechanizm działania.
g. Recepcja bodzców wzrokowych.
h. Recepcja bodzców słuchowych.
5. Budowa biocząsteczek: Modele komputerowe ważniejszych białek, DNA, błon, transport tlenu
i hormonów tarczycy, (prezentacje komputerowe grafiki 3D)
6. Metody fizyczne i bioinformatyka białek hemowych.
a. Określanie struktury białek metodami rentgenograficznymi i NMR.
i. Mikroskopia siłowa, TEM.
ii. Podstawy znakowania fluorescencyjnego, znaczenie w sekwencjonowaniu
genomów.
b. Budowa i funkcja hemoglobiny.
c. Grupa hemowa przykład grupy prostetycznej.
d. Neuroglobina i cytoglobina, ewolucja białek hemowych.
e. WiÄ…zanie tlenu do mioglobiny i hemoglobiny.
f. Pulsoksymetria.
g. Terapia fotodynamiczna.
h. Kooperatywne wiÄ…zanie O2 przez Hb.
i. Równanie Hilla. Wykres Hilla.
j. Struktura Hb i molekularny mechanizm działania.
k. Patologie Hb, molekularne podstawy chorób.
Literatura :
1. Wybrane zagadnienia z biofizyki , pod red. St. Miękisza i A. Hendricha, Volumed, Wrocław
1998.
2. Biofizyka dla biologów , red. M. Bryszewska, W. Leyko, PWN, 1997.
3. R. Glaser, Wstęp do biofizyki , PZWL, Warszawa, 1978.
4. D.G. Nicholls, S.Ferguson, Bioenergetyka 2 , PWN, W-wa,1995.
5. Ch. Sybesma, Biophysics. An Introduction. , Kluwer Academic Publishers, Dordrecht, 1989.
6. L. Streyer, Tymoczko, Berg, Biochemia , PWN, W-wa, 2001.
7. J. Gomułkiewicz, Wybrane wykłady z biofizyki , Oficyna Wydawnicza Politechniki
Wrocławskiej, Wrocław 1998.
8. E.P. Solomon, L.R. Berg, D.W. Martin i C. A. Ville Biologia , Multico, Warszawa 1996.
9. Voet & Voet, Biochemistry , Wiley, 1997.
10. F. Jaroszyk (red), Biofizyka podręcznik dla studentów , PZWL, Warszawa 2001
Wymagania:
1. Podstawowa znajomość analizy mat. i algebry
2. Zaliczony kurs fizyki ogólnej (termodyn. fenomenologiczna, elektrycznośc i magnetyzm)
92
69. Programowanie urządzeń mobilnych
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: dr J. Matalewski
Przedmiot zajęć:
programowanie midletów Java dla telefonów komórkowych (Java2 Mobile Edition)
programowanie urządzeń typu Pocket PC z Windows CE (.NET Compact Framework)
Wymagania: znajomość języków Java i C#
Program zajęć:
I. Java2 Mobile Edition
1. Środowisko IDE do projektowania w J2ME dla telefonów komórkowych
2. Przykład najprostszej aplikacji sterowanie aplikacją za pomocą klawiatury komórki
3. Korzystanie z zasobów komórki
4. Modele bezpieczeństwa w J2ME
5. Odtwarzanie multimediów
6. Korzystanie z Internetu
II. .NET Compact Framework
1. Ograniczenia względem pełnej platformy .NET
2. Projektowanie aplikacji mobilnych w Visual Studio 2005
3. Tworzenie interfejsu aplikacji dla Pocket PC
4. Mechanizm P/Invoke w Windows CE
5. Grafika i projektowanie gier
6. Zagadnienie wydajności programów
7. Dostęp do API urządzenia z.NET Compact Framework
93
70. Metody obliczeniowe mechaniki płynów
Forma zajęć: Wykład 30h, laboratorium 30h
Autor: Michał Hanasz, CA UMK
Opis
Mechanika płynów - jedna z fundamentalnych dziedzin fizyki stosowana jest do opisu zjawisk
płynowych w takich dziedzinach jak aerodynamika, geofizyka, klimatologia i astrofizyka.
Wewnętrzna złożoność i nieliniowość równań mechaniki płynów powoduje, że komputer wraz z
odpowiednim oprogramowaniem stają się najskuteczniejszymi narzędziami w rozwiązywaniu
problemów fizycznych dotyczących zjawisk płynowych. Celem niniejszego wykładu jest prezentacja
podstawowych metod numerycznego rozwiązywania równań mechaniki płynów i pokrewnych
zagadnień związanych z numerycznym całkowaniem równań mechaniki płynów i równania dyfuzji.
Pełen cykl zajęć składa się z części teoretycznej w ramach której wprowadzone zostają od podstaw
równania mechaniki płynów, elementy teorii równań różniczkowych cząstkowych, w szczególności
równań hiperbolicznych oraz części praktycznej odbywającej się w pracowni komputerowej, w trakcie
której uczestnicy uczą się m. in. praktycznej implementacji metod numerycznych wywodzących się z
metody charakterystyk.
Program
1. Równania mechaniki płynów, ich wyprowadzenie w podejściu makroskopowym, pochodna
Euler'a i Lagrange'a, równanie Euler'a, równanie energii, fale dzwiękowe o małej amplitudzie.
2. Elementy teorii równań różniczkowych cząstkowych hiperbolicznych: liniowe równanie
adwekcji, równanie Burgera, metoda charakterystyk, równania hiperboliczne w postaci
zachowawczej, problem Riemanna
3. Liniowe układy hiperboliczne, problem Riemanna w przypadku zlinearyzowanej dynamiki
gazów, prawa zachowania w postaci całkowej, równania mechaniki płynów w postaci
zachowawczej.
4. Fale uderzeniowe, warunki Rankine-Hugoniot, niezmienniki Riemanna.
5. Rozwiązanie równań mechaniki płynów metodą charakterystyk.
6. Fale uderzeniowe w płynach, fale rozrzedzające, pełne rozwiązanie problemu Riemanna.
7. Podstawowe metody numerycznego rozwiązywania równań różniczkowych cząstkowych,
analiza stabilności von Neumanna, liczba Couranta, podstawowe schematy różnicowe
(Courant, Isaacson&Reeves; Lax&Friedrichs, Lax&Wendroff)
8. Dyskretna postać praw zachowania
9. Metody Godunova oparte na ścisłych i przybliżonych rozwiązaniach problemu Riemanna.
10. Metoda relaksacyjna w zastosowaniu do równań mechaniki płynów.
11. Schematy typu TVD (Total Variation Diminishing), zastosowanie ograniczników strumienia.
12. Grawitacja i inne wyrazy zródłowe w schematach numerycznych.
13. Schematy zachowawcze we współrzędnych krzywoliniowych
14. Numeryczne metody rozwiązywania równania dyfuzji, lepkość i transport ciepła w
przepływach.
15. Numeryczne metody rozwiązywania równania Poissona.
16. Zagadnienia omawiane na wykładach (zagadnienia 1-15) i ćwiczeniach na pracowni
komputerowej (zagadnienia 7-15)
94
Wymagania wstępne
Analiza matematyczna
Algebra liniowa
Podstawowe elementy programowania
Literatura
1. Lew D. Landau, Jewgienij M. Lifszyc: Hydrodynamika, PWN,
2. Alexandre J. Chorin, Jerrold E. Marsden: A Mathematical Introduction to Fluid Mechanics,
Springer, 3rd Ed, 4th Corr, 2000
3. Eleuterio F. Toro: Riemann Solvers and Numerical Methods for Fluid Dynamics: A practical
Introduction, Springer, 2nd Ed. 1999
4. C.A.J Fletcher: Computational Techniques for Fluid Dynamics, Springer, 2nd ed. 1991
5. P.Bodenheimer, G.Laughlin, M. Różyczka, H.W.Yorke, Numerical methods in astrophysics,
Taylor &Francis 2007.
95
71. Biologiczne bazy danych
Forma zajec: Wyklad 15h, ćwiczenia 15h
Autor Wyklad: dr hab. J. Meller, dr hab. W. Nowak
Cel zajec:
Kurs ten ma stanowic szeroki przeglad bioinformatycznych baz danych, sposobu ich tworzenia i
mozliwych zastosowan. W ramach cwiczen uczestnicy poznaja rózne dostepne bazy danych i
zaprojektuja i zaprogramuja prosta baze biologiczna. Uczestnicy zajec powinni nabyc umiejetnosci
nie tylko korzystania z dostepnych baz, ale równiez doradzania biologom i medykom na temat
optymalnego sposobu uzywania takich zasobów. Beda w stanie zaprojektowac i zaprogramowac baze
danych potrzebna badaniom biologicznym.
Wymagania wstepne
kurs baz danych, PERL
Program
1. O potrzebie biologicznych baz danych. Zródla danych biologicznych.
2. Typy danych
3. sekwencje (nukleotydów, aminokwasów, motywy)
4. struktury 3D
5. sciezki metaboliczne
6. tekstowe (tj. publikcje naukowe i wyszukiwania informacji z nich)
7. Wprowadzanie danych i kontrola jakosci
8. metody wprowadzania danych
9. typy bledów i metody wyszukiwania bledów
10. konsystencja, redundancja, konflikty i uzupelnianie bazy danych
11. Budowa baz danych
12. pliki tekstowe
13. relacyjne bazy danych, model danych ER, SQL,
14. HTML, CGI i interfejsy
15. bezpieczenstwo baz danych
16. projekty wlasne baz danych
17. Typy baz danych
18. podstawowe wyniki eksperymentów
19. meta rezultaty analizy baz podstawowych
20. agregacja wielu baz danych
21. Wyszukiwanie informacji
22. korzystanie z PDB, KEGG, SwissProt, GenBank, itp.
23. bazy proteomiczne, bazy specjalizowane
Literatura
A.D. Baxevanisa, B.F.F Ouellette'a, Bioinformatyka podrecznik do analizy genów i bialek,
Wydawnictwo Naukowe PWN, Warszawa 2004.
- liczne nowoczesne zródla internetowe
96
Wyszukiwarka
Podobne podstrony:
??danie udzielenia informacji o z stosowaniu przepis?w podatWybrane Dzialy Informatyki Stosowanej 3 wyklad03 Stosowanie technik informatycznych w pracy biurowejStosowanie przepisów prawa i zasad ekonomii w działalności informacyjnejTeoria i metodologia nauki o informacjiplan nauczania technik informatyk wersja 1t informatyk12[01] 02 101informatyka w prawnicza testyWyk6 ORBITA GPS Podstawowe informacjeInformacja komputerowaPodstawowe informacje o RybnieZagrożenia bezpieczeństa informacjiINFORMACJA O FIRMIEMetody i techniki stosowane w biologii molekularnejinformacje dla szkolnej komisjiwięcej podobnych podstron