Nazwa przedmiotu:
Programowanie matematyczne
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:
1120-IN000-MSP-0113
Semestr nominalny:
2 / rok ak. 2023/2024
Liczba punktów ECTS:
6
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
1. godziny kontaktowe – 78 h; w tym a) obecność na wykładach – 45 h b) obecność na ćwiczeniach – 15 h c) obecność na laboratoriach – 15 h d) obecność na egzaminie – 3 h 2. praca własna studenta – 100 h; w tym a) przygotowywanie się do ćwiczeń i kolokwium – 15 h b) przygotowywanie się do zajęć laboratoryjnych – 30 h c) poznanie programu Matlab oraz funkcji pakietu Optimization Toolbox – 30 h d) zapoznanie się z literaturą – 15 h e) przygotowanie do egzaminu – 10 h Razem 178 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 4. obecność na egzaminie – 3 h Razem 78 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 laboratoriach – 15 h 2. przygotowanie do zajęć laboratoryjnych – 30 h 3. poznanie programu Matlab oraz funkcji pakietu Optimization Toolbox – 30 h 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 (ocena wykonanych podczas laboratorium programów w Matlabie; wymagane jest zdobycie w sumie 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. A. Stachurski, A. P. Wierzbicki: Podstawy Optymalizacji. PW 2009. 2. M. Bazaraa, J. Jarvis, H. Sherali: Linear Programming and Network Flows. Wiley 2006. 3. M. Bazaraa, H. Sherali, C. Shetty: Nonlinear Programming, Theory and Algorithms. Wiley 2006. 4. R.J. Vanderbei: Linear Programming. 2001. 5. W. Sun, Y. Yuan: Optimization Theory And Methods. Springer 2006. 6. P.E. Gill, W. Murray, M.H. Wright: Practical Optimization. Academic Press 2002. 7. Optimization ToolBox: dokumentacja dla programu MatLab. 8. W. Yang, W. Cao, T. Chung, J. Morris: Applied Numerical Methods Using Matlab. Wiley 2005.
Witryna www przedmiotu:
brak
Uwagi:

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Charakterystyka W01
Zna podstawy teoretyczne metod analitycznych i podstawowych algorytmów optymalizacji statycznej: liniowej, nieliniowej i optymalizacji nieliniowej z ograniczeniami
Weryfikacja: egzamin, kolokwium, punktowana ocena wykonanych podczas laboratorium programów w Matlabie
Powiązane charakterystyki kierunkowe: I2_W01, I2_W02
Powiązane charakterystyki obszarowe: P7U_W, I.P7S_WG.o
Charakterystyka W02
Zna podstawowe algorytmy optymalizacji statycznej
Weryfikacja: egzamin, kolokwium, punktowana ocena wykonanych podczas laboratorium programów w Matlabie
Powiązane charakterystyki kierunkowe: I2_W01, I2_W02
Powiązane charakterystyki obszarowe: P7U_W, I.P7S_WG.o

Profil ogólnoakademicki - umiejętności

Charakterystyka U01
Potrafi skonstruować i zaimplementować algorytm dla danego problemu optymalizacyjnego i ocenić jego efektywność
Weryfikacja: kolokwium, punktowana ocena wykonanych podczas laboratorium programów w Matlabie
Powiązane charakterystyki kierunkowe: I2_U01, I2_U03, I2_U07
Powiązane charakterystyki obszarowe:
Charakterystyka U02
Potrafi dokonać wyboru i zastosować poznane algorytmy do rozwiązania prostego problemu optymalizacyjnego lub zastosować funkcje pakietu Optimization Toolbox programu Matlab
Weryfikacja: kolokwium, punktowana ocena wykonanych podczas laboratorium programów w Matlabie
Powiązane charakterystyki kierunkowe: I2_U01, I2_U02
Powiązane charakterystyki obszarowe:

Profil ogólnoakademicki - kompetencje społeczne

Charakterystyka K01
Jest gotowy myśleć i działać w sposób kreatywny
Weryfikacja: egzamin, punktowana ocena wykonanych podczas laboratorium programów w Matlabie
Powiązane charakterystyki kierunkowe: I2_K04
Powiązane charakterystyki obszarowe: