- Teacher: Wojciech Janczewski
- Teacher: Artur Jeż
- Teacher: Witold Karczewski
- Teacher: Emanuel Kieroński
- Teacher: Emanuel Kieroński
- Teacher: Artur Kraska
- Teacher: Karol Pokorski
- Teacher: Kuba Nowak
- Teacher: Artur Kraska
- Teacher: Marek Materzok
- Teacher: Kuba Nowak
- Teacher: Piotr Witkowski

- Teacher: Piotr Wieczorek

- Teacher: Andrzej Łukaszewski

- Teacher: Bartłomiej Dudek
- Teacher: Jerzy Marcinkowski
- Teacher: Jan Otop

- Teacher: Grzegorz Stachowiak

Krzywe i powierzchnie to podstawowe obiekty grafiki komputerowej. To właśnie przy ich pomocy można modelować skomplikowane kształty i sceny, którym nadaje się później cechy realistyczne i wykorzystuje na przykład w animacji komputerowej.
Głównym celem wykładu jest przedstawienie podstawowych wiadomości na temat narzędzi pozwalających efektywnie reprezentować i modelować krzywe oraz powierzchnie różnego typu i wygładzać przy ich pomocy dane. Szczególny nacisk położony będzie na omówienie odpowiednich technik i algorytmów z tym związanych, które pozwolą uczestnikom zajęć przygotować własny edytor krzywych i powierzchni.
- Teacher: Paweł Woźny
C++ to obiektowo zorientowany język programowania. Został on zaprojektowany przez Bjarne'a Stroustrupa z myślą o programowaniu systemowym oraz do zaawansowanych obliczeń inżynierskich. Świadome używanie C++ do rozwiązywania problemów algorytmicznych daje dużo satysfakcji doświadczonym programistom, zwłaszcza dlatego, że generowany przez kompilator kod jest bardzo efektywny.
Celem kursu jest zapoznanie studentów z bogatą składnią języka C++, różnorodnymi technikami stosowanymi w programowaniu w C++ oraz z wybranymi fragmentami biblioteki STL.
- Teacher: Paweł Garncarek
- Teacher: Wojciech Janczewski
- Teacher: Andrzej Łukaszewski
- Teacher: Paweł Rzechonek

- Teacher: Łukasz Piwowar

- Teacher: Fateme Abbasi
- Teacher: Paweł Laskoś-Grabowski
- Teacher: Kamil Matuszewski
- Teacher: Radosław Miernik
- Teacher: Łukasz Piwowar

Celem projektu jest praktyczna nauka architektur komputerów poprzez ich implementację w formie umożliwiającej syntezę na układy FPGA. Pierwszym krótkoterminowym celem projektu jest zaimplementowanie minimalnego rdzenia RISC-V (RV32I) w mikroarchitekturze out-of-order. Implementacja będzie miała w założeniu modularny charakter „generatora rdzeni”, umożliwiający dodawanie, rekonfigurację i wymianę elementów składowych rdzenia bez głębokich zmian w kodzie.
- Teacher: Marek Materzok

- Teacher: Bartosz Bednarczyk

- Teacher: Marek Materzok

- Teacher: Marek Materzok
- Teacher: Maciej Piróg
- Teacher: Piotr Polesiuk
- Teacher: Rafał Nowak
- Teacher: Paweł Rychlikowski
- Teacher: Mikołaj Słupiński
- Teacher: Adrian Urbański
- Teacher: Paweł Garncarek
- Teacher: Wojciech Janczewski
- Teacher: Bartłomiej Królikowski
- Teacher: Marcin Młotkowski

- Teacher: Paweł Rzechonek
- Teacher: Wiktor Zychla
- Teacher: Rafał Nowak

- Teacher: Marcin Młotkowski
- Teacher: Wiktor Zychla

Seminarium poświęcone jest automatom skończonym, algorytmom uczenia maszynowego oraz ich zastosowaniom w różnych dziedzinach. Program obejmuje zagadnienia od podstaw teoretycznych po zaawansowane metody uczenia i wykorzystanie automatów w różnych dziedzinach, w tym w weryfikacji formalnej. Przygotowanie i prezentacja wybranego tematu umożliwiają rozwinięcie umiejętności analizy, pracy z literaturą naukową oraz komunikowania złożonych zagadnień.
Każdy uczestnik dostanie jeden temat do przygotowania i zaprezentowania reszcie grupy.
- Teacher: Jakub Michaliszyn

- Teacher: Marcin Bieńkowski
- Teacher: Paweł Garncarek
- Teacher: Andrzej Łukaszewski
- Teacher: Filip Chudy
- Teacher: Michał Marcinkowski
- Teacher: Radosław Miernik
- Teacher: Piotr Ostropolski-Nalewaja
- Teacher: Paweł Rychlikowski
- Teacher: Filip Zagórski

- Teacher: Małgorzata Biernacka
- Teacher: Dariusz Biernacki

Java to współczesny obiektowy język programowania stworzony przez Jamesa Goslinga z firmy Sun Microsystems. Od momentu powstania w połowie lat 90-tych XX wieku przeżył on dynamiczny rozwój a zainteresowanie nim nie maleje. Język Java przyciągnął do dziś wiele milionów programistów. Znajduje zastosowanie w każdej ważniejszej gałęzi przemysłu informatycznego i jest obecny w różnego rodzaju urządzeniach, komputerach i sieciach. Popularność Javy wynika przede wszystkim z przenośności programów i niezależności od konkretnej platwormy sprzętowej, a co za tym idzie, ma zastosowanie w Internecie oraz ogólnie w aplikacjach sieciowych. Jego podstawowe koncepcje zostały przejęte z języka Smalltalk (maszyna wirtualna, odśmiecanie pamięci) oraz z języka C++ (znaczna część składni i słów kluczowych).
Zajęcia te to kontynuacja kursu Javy z poprzedniego semestru. Celem tych zajęć jest poznanie najpopularniejszych obecnie technologii używanych przez zawodowych programistów Javy.
- Teacher: Paweł Rzechonek