- 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 i Systemy Informacyjne
- Grupa przedmiotów:
- Wspólne
- Kod przedmiotu:
- Semestr nominalny:
- 2 / rok ak. 2019/2020
- 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
- Charakterystyka 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 charakterystyki kierunkowe:
CC_W01, CC_W11, SI_W11, SI_W01
Powiązane charakterystyki obszarowe:
- Charakterystyka W2_02
- Zna podstawowe algorytmy optymalizacji statycznej.
Weryfikacja: egzamin punktowane ćwiczenia oraz laboratorium
Powiązane charakterystyki kierunkowe:
CC_W01, CC_W11, SI_W11, SI_W01
Powiązane charakterystyki obszarowe:
Profil ogólnoakademicki - umiejętności
- Charakterystyka U2_01
- Potrafi skonstruować i zaimplementować algorytm dla danego problemu optymalizacyjnego i ocenić jego efektywność.
Weryfikacja: egzamin kolokwium punktowane ćwiczenia oraz laboratorium
Powiązane charakterystyki kierunkowe:
CC_U01, CC_U09, SI_U01, SI_U09
Powiązane charakterystyki obszarowe:
- Charakterystyka 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 charakterystyki kierunkowe:
SI_U06, CC_U01, CC_U06, SI_U01
Powiązane charakterystyki obszarowe:
Profil ogólnoakademicki - kompetencje społeczne
- Charakterystyka K2_01
- Potrafi myśleć i działać w sposób kreatywny
Weryfikacja: egzamin punktowana ocena rozwiązań zadań laboratoryjnych
Powiązane charakterystyki kierunkowe:
CC_K05, SI_K05, SI_K06
Powiązane charakterystyki obszarowe:
- Charakterystyka K2_02
- Posiada zdolność do kontynuacji kształcenia
Weryfikacja: egzamin punktowana ocena rozwiązań zadań laboratoryjnych
Powiązane charakterystyki kierunkowe:
CC_K01, SI_K01
Powiązane charakterystyki obszarowe: