15. Bazy danych I

96
1 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

Transcript of 15. Bazy danych I

Page 1: 15. Bazy danych I

1

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

Page 2: 15. Bazy danych I

2

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

Page 3: 15. Bazy danych I

3

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.

Page 4: 15. Bazy danych I

4

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

Page 5: 15. Bazy danych I

5

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.

Page 6: 15. Bazy danych I

6

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.

Page 7: 15. Bazy danych I

7

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

Page 8: 15. Bazy danych I

8

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.

Page 9: 15. Bazy danych I

9

17. Transport ciepła, problemy chłodzenia. 18. Fizyczne granice szybkości działania procesorów. 19. Podstawy informatyki kwantowej. Pojęcie qbitu.

Page 10: 15. Bazy danych I

10

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).

Page 11: 15. Bazy danych I

11

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: wskaźniki, 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;

Page 12: 15. Bazy danych I

12

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.

Page 13: 15. Bazy danych I

13

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.

Page 14: 15. Bazy danych I

14

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.

Page 15: 15. Bazy danych I

15

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.

Page 16: 15. Bazy danych I

16

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

Page 17: 15. Bazy danych I

17

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.

Page 18: 15. Bazy danych I

18

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 wskaźniki: Podstawowe pojęcia Tablice jednowymiarowe Arytmetyka adresami i tablicami Tablice wielowymiarowe

Page 19: 15. Bazy danych I

19

Wskaźniki Tablice wskaźników Argumenty funkcji w postaci tablic/wskaźników Wskaźniki 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 wskaźniki 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.

Page 20: 15. Bazy danych I

20

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.

Page 21: 15. Bazy danych I

21

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 Developer

Microsoft Darmowe (Express) .NET 3.5 ASP.NET

NetBeans Sun Darmowe JDK 6u3 alt. Eclipse

Page 22: 15. Bazy danych I

22

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).

Page 23: 15. Bazy danych I

23

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

Page 24: 15. Bazy danych I

24

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

Page 25: 15. Bazy danych I

25

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

Page 26: 15. Bazy danych I

26

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.

Page 27: 15. Bazy danych I

27

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

Page 28: 15. Bazy danych I

28

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/ )

Page 29: 15. Bazy danych I

29

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

Page 30: 15. Bazy danych I

30

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.

Page 31: 15. Bazy danych I

31

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 – źró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.

Page 32: 15. Bazy danych I

32

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.

Page 33: 15. Bazy danych I

33

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.

Page 34: 15. Bazy danych I

34

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,

Page 35: 15. Bazy danych I

35

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

Page 36: 15. Bazy danych I

36

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

Page 37: 15. Bazy danych I

37

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”

Page 38: 15. Bazy danych I

38

9. Zagadnienia zaawansowane a. Wykrywanie krawędzi, analiza kształtu b. Rozpoznawanie obrazów c. Wielorozdzielcza analiza obrazów i teoria falek

Page 39: 15. Bazy danych I

39

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.

Page 40: 15. Bazy danych I

40

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.

Page 41: 15. Bazy danych I

41

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. Źródła wiedzy naukowej a para-nauki. 5. Jak dzieci postrzegają naukowców? 6. Metody popularyzacji nauki i techniki, źró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.

Page 42: 15. Bazy danych I

42

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 dźwiękowej komputera, r. współpraca z innymi aplikacjami (ActiveX), s. transmisja danych w sieci (DataSocket).

Page 43: 15. Bazy danych I

43

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

Page 44: 15. Bazy danych I

44

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łaszczyźnie 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

Page 45: 15. Bazy danych I

45

6. strona internetowa Głównego Urzędu Miar, BIP http://bip.gum.gov.pl

Page 46: 15. Bazy danych I

46

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, WKŁ, 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

Page 47: 15. Bazy danych I

47

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, WKŁ, Warszawa 2006 26. Krzysztof Wesołowski, Podstawy cyfrowych systemów telekomunikacyjnych, WKŁ, 2003 27. Krzysztof Perlicki, Systemy transmisji optycznej WDM, WKŁ, Warszawa 2007 28. Agnieszka Chodorek, Robert R.Chodorek, Andrzej R.Pach, Dystrybucja danych w sieci

Internet, WKŁ, Warszawa 2007 29. Sławomir Kula, Systemy teletransmisyjne, WKŁ, Warszawa 2005 30. Simon Haykin, Systemy telekomunikacyjne, cz. 1 i 2, WKŁ Warszawa 2004

Page 48: 15. Bazy danych I

48

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 Łą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. WKŁ, Warszawa, 2000. 4. T.P. Zieliński, Cyfrowe przetwarzanie sygnałów, WKiŁ, 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.

Page 49: 15. Bazy danych I

49

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.

Page 50: 15. Bazy danych I

50

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, WKŁ, nowe wydanie. 7. Jerzy Brzózka: Regulatory i układy automatyki, Wyd. Mikom 2004.

Page 51: 15. Bazy danych I

51

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, dźwię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 dźwię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)

Page 52: 15. Bazy danych I

52

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.

Page 53: 15. Bazy danych I

53

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.

Page 54: 15. Bazy danych I

54

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 źró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

Page 55: 15. Bazy danych I

55

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.

Page 56: 15. Bazy danych I

56

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

Łódźkiego 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

Page 57: 15. Bazy danych I

57

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

Page 58: 15. Bazy danych I

58

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.

Page 59: 15. Bazy danych I

59

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.

Page 60: 15. Bazy danych I

60

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. Łą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.

Page 61: 15. Bazy danych I

61

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, WKŁ,

Warszawa 2007 2. Tomasz P. Zieliński, Cyfrowe przetwarzanie sygnałów. Od teorii do zastosowań, WKŁ,

Warszawa 2005 3. Rudy van de Plasshe , Scalone przetworniki analogowo-cyfrowe i cyfrowo-analogowe, WKŁ,

Warszawa 2001 4. Hand David, Mannila Heikki, Smyth Padhraic, Eksploracja danych, WT, Warszawa 2005

Page 62: 15. Bazy danych I

62

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

Page 63: 15. Bazy danych I

63

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/)

Page 64: 15. Bazy danych I

64

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. Łą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.

Page 65: 15. Bazy danych I

65

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

Page 66: 15. Bazy danych I

66

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

Page 67: 15. Bazy danych I

67

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

Page 68: 15. Bazy danych I

68

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. wskaźniki, 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.

Page 69: 15. Bazy danych I

69

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

Page 70: 15. Bazy danych I

70

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.

Page 71: 15. Bazy danych I

71

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 źró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. Łą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. Źró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)

Page 72: 15. Bazy danych I

72

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 (WKŁ, Warszawa,

2003)

Page 73: 15. Bazy danych I

73

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

Page 74: 15. Bazy danych I

74

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.

Page 75: 15. Bazy danych I

75

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.

Page 76: 15. Bazy danych I

76

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

Page 77: 15. Bazy danych I

77

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.

Page 78: 15. Bazy danych I

78

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.

Page 79: 15. Bazy danych I

79

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.

Page 80: 15. Bazy danych I

80

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

Page 81: 15. Bazy danych I

81

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

Page 82: 15. Bazy danych I

82

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

Page 83: 15. Bazy danych I

83

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),

Page 84: 15. Bazy danych I

84

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, WKŁ, 2002, 4. J. Kalisz, Podstawy Techniki Cyfrowej - wydanie czwarte zmienione, WKŁ, 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,

WKŁ)

Page 85: 15. Bazy danych I

85

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. Łuba, K. Jasiński, Specjalizowane układy cyfrowe w strukturach PLD i FPGA, WKŁ, 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, WKŁ,

Warszawa, 2002. 4. J. Kalisz, Język VHDL w praktyce, WKŁ, 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.

Page 86: 15. Bazy danych I

86

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.

Page 87: 15. Bazy danych I

87

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

Page 88: 15. Bazy danych I

88

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.

Page 89: 15. Bazy danych I

89

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”

Page 90: 15. Bazy danych I

90

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

Page 91: 15. Bazy danych I

91

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. Bodźce 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 organiźmie 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:

Page 92: 15. Bazy danych I

92

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 przekaźnik).

c. Neuroprzekaźniki d. Transmisja sygnału nerwowego w poprzek przerwy synaptycznej. e. Tlenek azotu i jego rola fizjologiczna. f. Viagra – mechanizm działania. g. Recepcja bodźców wzrokowych. h. Recepcja bodźcó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)

Page 93: 15. Bazy danych I

93

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

Page 94: 15. Bazy danych I

94

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 dźwię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 źró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)

Page 95: 15. Bazy danych I

95

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.

Page 96: 15. Bazy danych I

96

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