Nazwa przedmiotu:
Programowanie matematyczne (tylko MSI i CC)
Koordynator przedmiotu:
dr inż. Ewa Pawelec
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia II stopnia
Program:
Informatyka
Grupa przedmiotów:
Wspólne
Kod przedmiotu:
Semestr nominalny:
2 / rok ak. 2017/2018
Liczba punktów ECTS:
6
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
1. godziny kontaktowe – 75 h; w tym a. obecność na wykładach – 45 h b. obecność na ćwiczeniach – 15 h c. obecność na laboratoriach – 15 h 2. przygotowanie do ćwiczeń – 15 h 3. przygotowanie do zajęć laboratoryjnych – 15 h 4. poznanie programu Matlab oraz funkcji pakietu Optimization Toolbox – 15h 5. zapoznanie się z literaturą – 15 h 6. przygotowanie do egzaminu i obecność na egzaminie – 15 h Łączny nakład pracy studenta wynosi 150 h co odpowiada 6 pkt. ECTS
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
1. obecność na wykładach – 45 h 2. obecność na ćwiczeniach – 15 h 3. obecność na laboratoriach – 15 h Razem 75 h, co odpowiada 3 pkt. ECTS
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
1. obecność na ćwiczeniach – 15 h 2. przygotowanie do ćwiczeń – 15 h 3. obecność na laboratoriach – 15 h 4. przygotowanie do zajęć laboratoryjnych – 15 h 5. poznanie programu Matlab oraz funkcji pakietu Optimization Toolbox – 15h Razem 75 h, co odpowiada 3 pkt. ECTS
Formy zajęć i ich wymiar w semestrze:
  • Wykład45h
  • Ćwiczenia15h
  • Laboratorium15h
  • Projekt0h
  • Lekcje komputerowe0h
Wymagania wstępne:
Zalecane przedmioty poprzedzające: Analiza Matematyczna (rachunek różniczkowy funkcji jednej i wielu zmiennych), Algebra liniowa (rachunek macierzowy), Metody Numeryczne, Programowanie (C, Matlab)
Limit liczby studentów:
Bez limitu
Cel przedmiotu:
Celem przedmiotu jest wprowadzenie w zagadnienia optymalizacji statycznej oraz zapoznanie z podstawowymi metodami poszukiwania ekstremów funkcji wielu zmiennych bez ograniczeń i w obszarze wyznaczonym ograniczeniami, ze szczególnym uwzględnieniem zagadnień programowania liniowego, kwadratowego i wypukłego. Po ukończeniu kursu studenci powinni posiadać wiedzę teoretyczną i praktyczną o podstawowych metodach analitycznych i algorytmach numerycznych: optymalizacji liniowej, optymalizacji nieliniowej bez ograniczeń, optymalizacji nieliniowej z ograniczeniami, oraz powinni umieć rozwiązać zadanie optymalizacji samodzielnie implementując wybrany algorytm lub wykorzystując funkcje pakietu Optimization Toolbox programu Matlab.
Treści kształcenia:
Wykład: Sformułowanie i klasyfikacja zadań optymalizacji. Przykłady. Programowanie liniowe (PL) -      standardowa postać zadania PL; sprowadzanie zagadnienia PL do postaci standardowej; -      graficzne rozwiązywanie zadania PL; -      postać kanoniczna, rozwiązania bazowe, wyznaczanie początkowego rozwiązania bazowego; -      algorytmy obliczeniowe metody sympleks; -      teoria dualności dla zadań PL; -      dualna metoda sympleks -      elementy optymalizacji dyskretnej; -      zagadnienia post-optymalizacyjne; zmiany strukturalne zadania PL; -      algorytmy o wielomianowym nakładzie obliczeń; metoda punktu wewnętrznego do rozwiązywania zadania PL; -      Przykłady rozwiązywania zadań PL w środowisku Matlab (Optimization Toolbox); Optymalizacja nieliniowa bez ograniczeń -      zastosowania optymalizacji nieliniowej bez ograniczeń; -      pojęcie rozwiązania optymalnego; -      warunki optymalności dla minimów lokalnych; -      metody iteracyjne; rząd i szybkość zbieżności; -      ogólny algorytm kierunków poprawy z poszukiwaniem w kierunku; -      metody poszukiwań prostych; -      gradientowe metody kierunków poprawy; -      metody quasi-newtonowskie; -      metody kierunków sprzężonych; -      wybrane metody minimalizacji kierunkowej; -      przykłady rozwiązywania zadań nieliniowych w środowisku Matlab; Optymalizacja nieliniowa z ograniczeniami -      funkcja Lagrange’a; mnożniki Lagrange’a; -      warunki Kuhna-Tuckera; warunki regularności; -      warunki konieczne i dostateczne optymalności dla zadania programowania nieliniowego z ograniczeniami; -      dualność; -      wybrane algorytmy rozwiązywania zadań programowania kwadratowego; -      wybrane algorytmy rozwiązywania zadań programowania wypukłego; -      zewnętrzna funkcja kary; -      wewnętrzna funkcja kary; -      przykłady rozwiązywania zadań optymalizacji nieliniowej z ograniczeniami w środowisku Matlab; Elementy programowania wielokryterialnego; wprowadzenie; Oprogramowanie do rozwiązywania zadań optymalizacji statycznej; Ćwiczenia:          Praktyczne zapoznanie z podstawowymi metodami analitycznymi i numerycznymi poszukiwania ekstremum funkcji wielu zmiennych bez ograniczeń oraz w obecności narzuconych ograniczeń. W szczególności dużo uwagi poświęca się rozwiązywaniu zadań programowania liniowego, kwadratowego i wypukłego. Laboratorium:  Samodzielne rozwiązywanie zadań optymalizacji. Opracowanie, implementacja oraz testowanie wybranych algorytmów omawianych w części wykładowej. Środowisko programistyczne Matlab.
Metody oceny:
Na zaliczenie przedmiotu składają się punkty uzyskane w toku zajęć: -              ćwiczenia 30 pkt (kolokwium zaliczeniowe) -              laboratorium 30 pkt (minimum 15 pkt) -              oraz egzamin 40 pkt (w formie pisemnej) Ostateczna ocena zależy od sumy uzyskanych punktów: 51%-60%          3 61%-70%          3,5 71%-80%          4 81%-90%          4,5 91%-100%        5
Egzamin:
tak
Literatura:
1.  Bazaraa M., J. Jarvis, H. Sherali: Linear Programming and Network Flows. Wiley 1990. 2.  Bazaraa M., H. Sherali, C. Shetty: Nonlinear Programming, Theory and Algorithms. Wiley 1993. 3.  Findeisen W., J. Szymanowski, A. Wierzbicki: Teoria i metody obliczeniowe optymalizacji. PWN 1980. Literatura uzupełniająca: 4.  Gill P.E., W. Murray, M.H. Wright: Practical Optimization. Academic Press 2001. 5.  Seidler J., A. Badach, W. Molisz: Metody rozwiązywania zadań optymalizacji. WNT 1980, seria eit. 6.  Stachurski A., A. P. Wierzbicki: Podstawy Optymalizacji. Oficyna Wydawnicza PW, 1999.
Witryna www przedmiotu:
brak
Uwagi:

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Efekt W2_01
Zna podstawy teoretyczne metod analitycznych i podstawowych algorytmów optymalizacji statycznej: liniowej, nieliniowej i optymalizacji nieliniowej z ograniczeniami.
Weryfikacja: egzamin punktowane ćwiczenia oraz laboratorium
Powiązane efekty kierunkowe: CC_W01, CC_W11, SI_W11, SI_W01
Powiązane efekty obszarowe: , , ,
Efekt W2_02
Zna podstawowe algorytmy optymalizacji statycznej.
Weryfikacja: egzamin punktowane ćwiczenia oraz laboratorium
Powiązane efekty kierunkowe: CC_W01, CC_W11, SI_W11, SI_W01
Powiązane efekty obszarowe: , , ,

Profil ogólnoakademicki - umiejętności

Efekt U2_01
Potrafi skonstruować i zaimplementować algorytm dla danego problemu optymalizacyjnego i ocenić jego efektywność.
Weryfikacja: egzamin kolokwium punktowane ćwiczenia oraz laboratorium
Powiązane efekty kierunkowe: CC_U01, CC_U09, SI_U01, SI_U09
Powiązane efekty obszarowe: , , ,
Efekt U2_02
Potrafi dokonać wyboru i zastosować poznane algorytmy do rozwiązania prostego problemu optymalizacyjnego lub zastosować funkcje pakietu Optimization Toolbox programu Matlab.
Weryfikacja: egzamin kolokwium punktowane ćwiczenia oraz laboratorium
Powiązane efekty kierunkowe: CC_U01, CC_U06, SI_U01, SI_U06
Powiązane efekty obszarowe: , , ,

Profil ogólnoakademicki - kompetencje społeczne

Efekt K2_01
Potrafi myśleć i działać w sposób kreatywny
Weryfikacja: egzamin punktowana ocena rozwiązań zadań laboratoryjnych
Powiązane efekty kierunkowe: CC_K05, SI_K05, SI_K06
Powiązane efekty obszarowe: , ,
Efekt K2_02
Posiada zdolność do kontynuacji kształcenia
Weryfikacja: egzamin punktowana ocena rozwiązań zadań laboratoryjnych
Powiązane efekty kierunkowe: CC_K01, SI_K01
Powiązane efekty obszarowe: ,