Zaawansowane Techniki Przetwarzania Sygnałów
Edycja: Semestr zimowy 2024/2025.
Zaawansowane Techniki Przetwarzania Sygnałów, to kurs prowadzony na studiach drugiego stopnia, który ma na celu rozszerzenie wcześniej zdobytej wiedzę z analizy harmonicznej i systemów liniowych, oraz wprowadzenie nowych techniki przetwarzania sygnałów. W ramach ćwiczeń laboratoryjnych skupimy się na analizie czasowo-częstotliwościowej, statystycznym przetwarzaniu sygnałów, filtrach adaptacyjnych, czy też wielokanałowym przetwarzaniu sygnałów z macierzy sensorowych, w tym układy formowania wiązki, lokalizacja źródeł, oraz technikach ślepej kalibracji.
Informacje zawarte na tej stronie dotyczą tylko i wyłącznie ćwiczeń laboratoryjnych.
Spis treści
- Zaawansowane Techniki Przetwarzania Sygnałów
- Prowadzący
- Wymagania wstępne
- Ćwiczenia laboratoryjne
- Jak się przygotować na zajęcia?
- (Nie)obecność
- Wyrównywanie zaległości
- Sala laboratoryjna
- Grupy laboratoryjne
- Harmonogram
- Literatura
- Zasady oceniania
- Standardowe kolokwium zaliczeniowe
- Kolokwium rozszerzające
- Zaliczenie poprawkowe
- Historia zmian
Prowadzący
Prowadzącym ćwiczenia laboratoryjne jest Szymon Woźniak.
Kliknij aby dowiedzieć się więcej na temat konsultacji.
Wymagania wstępne
Ćwiczenia laboratoryjne z Zaawansowanych Techniki Przetwarzania Sygnałów nie są zajęciami wprowadzającymi do tematyki przetwarzania sygnałów, przez co wymagają zasadniczej wiedzy z innym przedmiotów, którą powinieneś zdobyć w ramach innych kursów. W szczególności powinieneś mieć podstawową wiedzę z następujących przedmiotów:
analiza matematyczna (w szczególności rachunek różniczkowy i całkowy),
algebra liniowa,
rachunek prawdopodobieństwa i statystyka,
teoria sygnałów i systemów liniowych,
Ponadto musisz posiadać dwie niezbędne umiejętność:
samodzielne wyszukiwanie i studiowanie informacji w książkach i literaturze,
pisania prostych programów z wykorzystaniem języka programowania o paradygmacie imperatywnym, w szczególności proceduralnym i strukturalnym.
Braki w wiedzy lub umiejętnościach przedstawionych powyżej mogą przyczynić się do tego, że ćwiczenia laboratoryjne będą od Ciebie wymagały większych nakładów pracy i czasu, niż zostało to przewidziane.
Ćwiczenia laboratoryjne
Ćwiczenia laboratoryjne są to cotygodniowe zajęcia poświęcone ćwiczeniu rozwiązywania fundamentalnych problemów z wybranych zaawansowanych technik przetwarzania sygnałów. Celem ćwiczeń jest nabycie wiedzy, umiejętności oraz biegłości w rozwiązywaniu problemów występujących w tej dziedzinie. Zajęcia te prowadzę w trybie konsultacyjnym. Oznacza to, że co do zasady w czasie ćwiczeń laboratoryjnych powinieneś samodzielnie opracowywać rozwiązania wybranych problemów. Ja, jako prowadzący, który jest obecny w czasie zajęć, mogę Ci pomóc, jeżeli zgłosisz taką potrzebę. Pomoc w głównej mierzę, oferuję w postaci dyskusji nad literatura i problemami, ale także w postaci wyjaśnienia i doprecyzowania problemu, czy też zweryfikowania poprawności rozwiązania. Od razu zwrócę tutaj uwagę, że problemy (zadania) na zajęciach, będą postawione przed Tobą i twoim celem, jako osoba uczestnicząca w ćwiczeniach, jest samodzielne wypracowanie poprawnych rozwiązań dla tych problemów. Nie należy się spodziewać, że ja jako prowadzący będę przedstawiał gotowe rozwiązania tych problemów. W końcu to Ty się tutaj pojawiłeś, żeby poćwiczyć :). Natomiast, jak najbardziej w czasie zajęć możemy omawiać i analizować rozwiązania zaproponowane przez Ciebie, w celu znalezienia błędów, poprawienia ich, czy też ulepszenia rozwiązania.
Na początku każdych zajęć, będę wypisywał rekomendowane problemy ze zbioru "Zbiór problemów i pytań bez odpowiedzi", od których dobrze jest zacząć. A następnie będę proponował kolejne, w zależności od tempa pracy grupy lub indywidualnie. Masz dowolność w wyborze problemów, kolejności ich wykonywania, oraz tempie w którym będziesz je rozwiązywać. Jeżeli dany problemy jest dla Ciebie trywialny i wiesz, że jesteś w stanie go bez problemu poprawnie rozwiązać, to niekoniecznie musisz go rzeczywiście rozwiązywać. Być może lepiej zająć się problemami, które są jakimś wyzwaniem. Jeżeli nie wiesz co robić w czasie zajęć, nie masz pomysłu, który problem powinieneś rozwiązać jako następny, to możesz mi to zgłosić i postaram się zaproponować kierunek, w którym powinieneś zmierzać, żeby być w stanie robić postępy.
Realizacja materiału laboratoryjnego jest obowiązkowa, pomimo że nie ma bezpośredniego przełożenia na ocenę końcową z laboratorium. Oznacza to, że domyślnie, opracowane przez Ciebie rozwiązania problemów ze zbioru, nie są zbierane i w rezultacie nie możesz zyskać ani stracić żadnych punktu, czy też otrzymać za nie pozytywną bądź negatywną ocenę. Celem realizacji materiału laboratoryjnego jest szczegółowe zapoznanie się z występującymi w dziedzinie problemami i sposobami ich rozwiązywania. Rozwiązywanie problemów powinno być jedną z dwóch podstaw (drugą podstawą jest studiowanie literatury), która powinno Cię przygotować do wszelkiego rodzajów kolokwiów, na podstawie który będzie wystawiona ocena końcowa z ćwiczeń laboratoryjnych. Więcej informacji na temat zasad oceniania znajdziesz w sekcji Zasady oceniana.
W ramach aktywności na zajęciach możesz się zgłosić, aby omówić przy tablicy na forum grupy wybrany problem, teorię potrzebną do rozwiązania tego problemu, czy też zaprezentować rozwiązanie danego problemu. W czasie pierwszych 13 zajęć można zdobywać tak zwane plusy (dodatkowe ponadprogramowe punkty), właśnie za taką szeroko pojętą aktywność na rzecz pchania grupy do przodu w czasie zajęć.
Jak się przygotować na zajęcia?
Pierwszym krokiem, który należy wykonać, aby efektywnie przygotować się do danych ćwiczeń laboratoryjnych, jest wstępne zapoznanie się z problemami ze zbioru, które są związane z tematyka danych zajęć.
Następnie należy skupić na dokładnym przestudiowaniu wymienionej literatury w sekcji Literatura dla danego tematu. Podczas studiowania literatury wskazane jest przygotowanie sobie notatek, zaznaczenie najważniejszych wzorów matematycznych, czy też paragrafów. Istotnym aspektem przygotowania się do zajęć, jest przygotowanie sobie listy rzeczy, które wymagają dodatkowej dyskusji. Jeżeli nie rozumiesz jakiejś definicji, wyprowadzenia, twierdzenia, wzoru, czy też algorytmu, to dobrze jest być świadomym czego dokładnie się nie rozumiem. Wbrew pozorom, mi jako prowadzącemu nie przychodzi z łatwością zgadnięcie, co jest problematyczne dla Ciebie przykładowo w danym wzorze.
Ostatnim krokiem jest powrót do zbioru problemów i dokładne zastanowienie się nad treściami problemów. Odpowiedz sobie czy rozumiesz dokładnie o co chodzi w danym problemem. Jeżeli nie rozumiesz, to zidentyfikuj czego dokładnie nie rozumiesz i co sprawia Ci trudność. Zastanów się jakie potencjalnie kroki należy wykonać aby rozwiązać dany problem.
Jeżeli zastanawiasz się czy należy rozwiązywać problemy ze zbioru przed zajęciami, to odpowiedź jest taka, że nie ma takich oczekiwać, natomiast jeżeli masz ochotę, to oczywiście nikt nie zabrania. Jedyne oczekiwanie z mojej stron jest takie, że jesteś przygotowany pod względem wiedzy teoretycznej do rozwiązywania problemów ze zbioru.
(Nie)obecność
Obecność na zajęciach laboratoryjnych jest co do zasady obowiązkowa i jest sprawdzana wraz z rozpoczęciem zajęć. W przypadku spóźnienia należy potwierdzić swoją obecności bezpośrednio u mnie. W przeciwnym razie obecność może nie zostać odnotowana.
W przypadku nieobecności na danych zajęciach nie musisz przedstawiać żadnego powodu swojej nieobecności, czy też formalnego usprawiedliwienia w jakiejkolwiek postaci. Wręcz jesteś proszony aby tego nie robić. Powody są różne, a ja nie czuje się kompetentny w ich ocenianiu. Proszę samodzielnie ocenić czy dany powód jest istotny, aby nie pojawić się na zajęciach.
Wyrównywanie zaległości
Jeżeli z powodu nieobecności na zajęciach posiadasz zaległości w realizacji materiału laboratoryjnego, to w twoim obowiązku jest samodzielnie nadrobienie owych zaległości we własnym zakresie.
W wypadku pojawienia się zaległości, które stanowią czynną podstawę do wystawienia oceny końcowej z laboratorium, należy samodzielnie zgłosić się do mnie (prowadzącego) na najbliższych zajęciach, w celu ustalenia indywidualnego sposobu nadrobienia tych zaległości. Braki nadrobienia takich zaległości, mogą stanowić podstawę do stosownego obniżenia oceny końcowej, bądź w skrajnym przypadku do wystawienia negatywnej ocen końcowej (nb
/2,0
) z ćwiczeń laboratoryjnych. Zastrzegam, że w przypadku nagromadzenia się znacznej liczby takich zaległości, mogę odmówić możliwości wyrównania części lub wszystkich zaległości.
Sala laboratoryjna
Spotkania laboratoryjne odbywają się na kampusie AGH, pawilon C-2, sala 219. W sali jest dostępne piętnaście stanowisk komputerowych. Na poniższej mapie zaznaczona jest przybliżona lokalizacja sali laboratoryjnej.
Poniżej parę zasad, do których jesteś proszony aby się stosować w czasie zajęć:
Należy zajmować się przedmiotem zajęć. Jeżeli zajmujesz się czymś innym, to możesz po prostu zostać wyproszony z sali.
Można się swobodnie komunikować z innymi uczestnikami zajęć, czy też pracować grupowo przy jednym stanowisku, pod warunkiem że nie przeszkadza się postronnym osobą pracującym w sali.
Można korzystać z tablicy znajdującej się w sali. Po skończeniu, proszę przywrócić stan pierwotny tablicy.
Zachowaj czystości i porządek na stanowisku podczas zajęć i po ich zakończeniu. Dotyczy to zarówno fizycznej przestrzeni roboczej wokół Ciebie, jak i wirtualnej przestrzeni roboczej na komputerze, na którym pracujesz. Jeżeli stworzyłeś jakieś pliki w czasie trwania zajęć, to usuń je po zakończeniu pracy.
Wychodzenie z sali w czasie zajęć jest dozwolone i nie wymaga pozwolenia prowadzącego. Proszę nie pytać, czy można.
Grupy laboratoryjne
Poniższa tabela przestawia wszystkie dostępne terminy grup laboratoryjnych oraz ich aktualne obciążenie.
Grupa | Sala | Dzień tygodnia | Godzina | Ilość stanowisk | Zajętość |
---|---|---|---|---|---|
IA#01 | C2/219 | Czwartek | 08:00 - 09:30 | 15 | 6 |
Harmonogram
W tabeli poniżej znajduje się rozpiska poszczególnych tygodni semestru wraz z numerem spotkania laboratoryjnego oraz jego datą. Do każdego spotkania laboratoryjnego w harmonogramie jest przypisana informacja dodatkowa, która przeważnie precyzuje temat przewodni danego spotkania. Dodatkowo następująca notacja została wykorzystana w poniższej tabeli:
przekreślone ~~daty~~ oznaczają tygodnie w których nie odbędzie się spotkanie laboratoryjne,
+
oznacza że przewidziano aktualizacje wartość danej komórki,-
oznacza że nie przewidziano aktualizacji wartość danej komórki.
tydzien | lab nr | data | informacja dodatkowa |
---|---|---|---|
01 | - | ~~2024.10.03~~ | Zajęcia odwołane ze względu na opóźnienie wykładu. |
02 | 01 | 2024.10.10 | Zajęcia organizacyjne i wprowadzające do środowiska obliczeniowego. |
03 | 02 | 2024.10.17 | Przypomnienie podstawy cyfrowego przetwarzania sygnałów. |
04 | 03 | 2024.10.24 | Analiza czasowo-częstotliwościowa. |
05 | - | ~~2024.10.31~~ | Brak zajęć z powodu zmiany rozkładu zajęć na ten dzień (rozkład zajęć z piątku). |
06 | 04 | 2024.11.07 | Modelowanie sygnałów z wykorzystanie rozkładu normalnego. |
07 | 05 | 2024.11.14 | Filtry adaptacyjne. |
08 | 06 | 2024.11.21 | Filtry adaptacyjne. |
09 | 07 | 2024.11.28 | Filtry adaptacyjne. |
10 | 08 | 2024.12.05 | Układy formowania wiązki. |
11 | 09 | 2024.12.12 | Układy formowania wiązki. |
12 | 10 | 2024.12.19 | Lokalizacja źródła. |
13 | - | ~~2024.12.26~~ | Wakacje zimowe. |
14 | - | ~~2025.01.02~~ | Wakacje zimowe. |
15 | 11 | 2025.01.09 | Lokalizacja źródła. |
16 | 12 | 2025.01.16 | Ślepa kalibracja macierzy sensorowej. |
17 | 13 | 2025.01.23 | Ślepa kalibracja macierzy sensorowej. |
18 | 14 | 2025.01.30 | Standarodowe kolokwium zaliczeniowe. |
19 | - | 2025.02.06 | Zaliczenie poprawkowe, termin I. |
20 | - | 2025.02.13 | Zaliczenie poprawkowe, termin II. |
Literatura
Co do zasady, do każdego laboratorium będzie przygotowana szczegółowa literatura, składająca się z wybranych rozdziałów książek, czy też artykułów naukowych. W kolejnych podsekcjach możesz znaleźć wyszczególnione pozycje, z którym należy zapoznać się przed danymi zajęciami. Poniżej znajduje się krótka, ale nie wyczerpująca lista książek, które są rekomendowana jako dodatkowe źródło usystematyzowanej wiedzy dla tych zajęć:
T. P. Zieliński, "Cyfrowe przetwarzanie sygnałów: od teorii do zastosowań," WKŁ 2014.
M. Vetterli, J. Kovačević, and V. K. Goyal, "Foundations of Signal Processing," Cambridge Core, 2014.
A. Oppenheim and R. Schafer, "Discrete-Time Signal Processing", 3rd edition. Upper Saddle River: Pearson, 2009.
J. Benesty, I. Cohen, and C. Jingdong, "Fundamentals of Signal Enhancement and Array Signal Processing," Wiley, 2017.
T. Moon, W. Stirling, "Mathematical Methods and Algorithms for Signal Processing," Pearson, 1999.
Analiza czasowo-częstotliwościowa
Mathematical Definition of the STFT, Spectral Audio Signal Processing, by Julius O. Smith III, W3K Publishing, 2011. [www]
Overlap-Add (OLA) STFT Processing, Spectral Audio Signal Processing, by Julius O. Smith III, W3K Publishing, 2011. [www]
Dual Views of the Short Time Fourier Transform (STFT), Spectral Audio Signal Processing, by Julius O. Smith III, W3K Publishing, 2011. [www]
17.3 Krótkoczasowa transformacja Fourera STFT, T. Zieliński, Cyfrowe przetwarzanie sygnałów. Od teorii do zastosowań, 2nd ed. Wydawnictwa Komunikacji i Łącznośc, 2007.
D. Griffin and J. Lim, “Signal estimation from modified short-time Fourier transform,” IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 32, no. 2, Art. no. 2, Apr. 1984, doi: 10.1109/TASSP.1984.1164317
Modelowanie sygnałów z wykorzystanie rozkładu normalnego
Görtler, et al., "A Visual Exploration of Gaussian Processes", Distill, 2019. [www]
3.2. The Multivariate Gaussian, Bishop, Christopher M., and Hugh Bishop. Deep learning: Foundations and concepts. Springer Nature, 2023.
Filtry adaptacyjne
Sekcja 1, Introduction to Adaptive Filtering, Paulo S. R. Diniz, Adaptive Filtering: Algorithms and Practical Implementation, 2020.
Sekcja 2.4, Wiener Filter, Paulo S. R. Diniz, Adaptive Filtering: Algorithms and Practical Implementation, 2020.
Sekcja 2.10, Applications Revisited, Paulo S. R. Diniz, Adaptive Filtering: Algorithms and Practical Implementation, 2020.
Sekcja 3.2, The LMS Algorithm, Paulo S. R. Diniz, Adaptive Filtering: Algorithms and Practical Implementation, 2020.
Sekcja 3.3.2, Convergence Behavior of the Coefficient Vector, Paulo S. R. Diniz, Adaptive Filtering: Algorithms and Practical Implementation, 2020.
Sekcja 4.4, The Normalized LMS Algorithm, Paulo S. R. Diniz, Adaptive Filtering: Algorithms and Practical Implementation, 2020.
Sekcja 5.2, The Recursive Least-Squares Algorithm, Paulo S. R. Diniz, Adaptive Filtering: Algorithms and Practical Implementation, 2020.
Rozdział 14 Filtry adaptacyjne, T. Zieliński, Cyfrowe przetwarzanie sygnałów. Od teorii do zastosowań, 2nd ed.
Sekcja I i II, S. M. Kuo and D. R. Morgan, “Active noise control: a tutorial review,” Proceedings of the IEEE, vol. 87, no. 6, pp. 943–973, Jun. 1999, doi: 10.1109/5.763310.
Układy formowania wiązki
Sekcja 2.1, Introduction, Arrays and Spatial Filters, Harry L. Van Trees, Detection, Estimation, and Modulation Theory, Part IV: Optimum Array Processing. John Wiley & Sons, 2002.
Sekcja 2.2, Frequency-wavenumber Response and Beam Patterns, Arrays and Spatial Filters, Harry L. Van Trees, Detection, Estimation, and Modulation Theory, Part IV: Optimum Array Processing. John Wiley & Sons, 2002.
Rozdział 2, Superdirective Microphone Arrays, M. Brandstein and D. Ward, Eds., Microphone Arrays: Signal Processing Techniques and Applications. Berlin, Heidelberg: Springer, 2001.
B. D. Van Veen and K. M. Buckley, “Beamforming: a versatile approach to spatial filtering,” IEEE ASSP Magazine, vol. 5, no. 2, Art. no. 2, Apr. 1988, doi: 10.1109/53.665.
Lokalizacja
Sekcja 4, Generalized Corss Correlation (GCC), J. H. DiBiase, A high-accuracy, low-latency technique for talker localization in reverberant environments using microphone arrays. Brown University Providence, RI, 2000.
Sekcja 6, The Steered Responose Power (SRP), J. H. DiBiase, A high-accuracy, low-latency technique for talker localization in reverberant environments using microphone arrays. Brown University Providence, RI, 2000.
Sekcja 1, Introduction, R. Adve, “ECE1515S: Smart Antennas - notes.” Jan. 07, 2007.
Sekcja 5, MUSIC: MUltiple SIgnal Classification, R. Adve, “ECE1515S: Smart Antennas - notes.” Jan. 07, 2007.
Multiple emitter location and signal parameter estimation, R. Schmidt, IEEE Transactions on Antennas and Propagation, vol. 34, no. 3, Art. no. 3, Mar. 1986.
Ślepa kalibracja macierzy sensorowej
S. Thrun, “Affine Structure from Sound,” in Proceedings of the 18th International Conference on Neural Information Processing Systems, in NIPS’05. Cambridge, MA, USA: MIT Press, 2005, pp. 1353–1360.
Zasady oceniania
W ramach ćwiczeń laboratoryjnych zastosowano standardową uniwersytecką skalę ocen, zaczynając od 2,0
(niedostateczny), przez ocenę 3,0
(dostateczny), aż do 5,0
(bardzo dobry). Progresja pomiędzy oceną 3,0
, a oceną 5,0
to 0,5
, która stopniowo oznacza osiągi od dostatecznych do bardzo dobrych. Aby uzyskać pozytywną ocenę (zaliczenie) z ćwiczeń laboratoryjnych należy otrzymać ocenę 3,0
lub wyżej.
Zasady oceniania przyjęte dla tych ćwiczeń laboratoryjnych kładą w głównej mierze nacisk na zdobytą wiedzę z przedmiotu oraz umiejętności rozwiązywania problemów z dziedziny przetwarzania sygnałów. Ową wiedzą i umiejętnościami będziesz musiał się wykazać przez semestr, w ramach kolokwium rozszerzającego, które składa się z szeregu niezapowiedzianych μKolokwiów (mikro-kolokwiów), odbywających się w trakcie ćwiczeń laboratoryjnych. Na ostatnich ćwiczeniach laboratoryjnych w semestrze odbędzie się standardowe kolokwium zaliczeniowe, które to będzie sprawdzać najbardziej podstawowe umiejętności i wiedzę z naciskiem na umiejętności praktyczne. Jak sama nazwa może wskazywać, kolokwium rozszerzające, co do zasady obejmuję szerszy zakres materiału w stosunku do standardowego kolokwium zaliczeniowego.
Poniżej znajduje się tabela ze składowymi współczynnika na podstawie których zostanie wystawiona ocena końcowa z ćwiczeń laboratoryjnych.
Składowe oceny | ||
---|---|---|
1 | Standardowe kolokwium zaliczeniowe | |
2 | Kolokwium rozszerzające |
Udział -tej składowej we współczynniku dany jest przez zmienną (waga składowej). Współczynnik oceny końcowej z ćwiczeń laboratoryjnych jest obliczany jako część całkowita przeskalowanej ważonej średniej arytmetycznej składowych współczynnika. Dokładny wzór z którego obliczany jest współczynnik prezentuje się następująco:
gdzie , oznacza ilość punktów którą uzyskałeś w ramach -tej składowej, określa maksymalną ilość punktów, którą mogłeś otrzymać w semestrze, w ramach -tej składowej. Dodatkowo w czasie zajęć można uzyskać plusy za szeroko rozumianą aktywność na ćwiczeniach laboratoryjnych. Plusy przeliczają się na nadprogramowy składnik we współczynnika jako , gdzie , to liczba plusów otrzymanych w ciągu semestru, a to niemalejąca funkcja. Krzywa funkcja zostanie arbitralnie ustalona pod koniec semestru na podstawie statystyki przydzielonych plusów we wszystkich grupach.
Ocena końcowa z ćwiczeń laboratoryjnych jest bezpośrednio zdeterminowana przez współczynnik oceny . Poniższa tabela przedstawia zależność między współczynnikiem , a końcową oceną z ćwiczeń laboratoryjnych.
Przedział | Ocena końcowa | |
---|---|---|
2,0 | ||
3,0 | ||
3,5 | ||
4,0 | ||
4,5 | ||
5,0 |
Skal ocen jest ustalona według § 13. SKALA OCEN, z regulaminu studiów wyższych Akademii Górniczo-Hutniczej im. Stanisława Staszica w Krakowie, w brzmieniu obowiązującym od 1 października 2023 roku.
Standardowe kolokwium zaliczeniowe
Standardowe Kolokwium Zaliczeniowe (SKZ) jest to kolokwium, które ma za zadanie sprawdzić wiedzę oraz umiejętności biegłego rozwiązywania problemów z wybranych zaawansowanych technik przetwarzania sygnałów w zakresie podstawowym. Przez zakres podstawowy należy rozumieć pewien minimalny podzbiór , wszystkich możliwych problemów, które każdy student otrzymujący zaliczenie (ocenę 3.0 lub wyżej), musi być w stanie samodzielnie rozwiązać w prawidłowy sposób. SKZ kładzie nacisk na problemy praktyczne i składa się w całości z problemów obliczeniowych natury numerycznej. Problemy te należy rozwiązać poprzez wykonanie stosownych obliczeń dla zdefiniowanych w treści problemu danych wejściowych. Obliczenia muszą być wdrożone poprzez napisanie odpowiedniego programu komputerowego.
Jak sama nazwa wskazuje, kolokwium opisują dwa przymiotniki: standardowe i zaliczeniowe. Przez przymiotnik standardowe należy rozumieć, że wszystkie problemy na SKZ, które trzeba będzie rozwiązać, mają zawsze taką samą formę. A oznacza to, że składają się z następujących elementów:
opis problemu,
odpowiedz w postaci jednej liczby,
oraz program komputerowy wykonujący obliczenia i zwracający liczbę, będącą odpowiedzią.
Przez przymiotnik zaliczeniowe należy rozumieć, że uzyskanie z tego kolokwium minimum 5 punktów (około 70%), zapewnia zaliczenie ćwiczeń laboratoryjnych. Owe 5 punktów z SKZ zwiększa wartości współczynnik o wartość , co z kolei przekłada się na co najmniej dostateczną ocenę końcową (3,0) z ćwiczeń laboratoryjnych. Co do zasady każda osoba otrzymująca zaliczenie z ćwiczeń laboratoryjnych, powinna uzyskać minimalnie te 5 punktów za SKZ. Zwróć uwagę, że jedynym warunkiem koniecznym do uzyskania zaliczenia, jest uzyskanie współczynnika , patrz Zasady oceniania.
SKZ będzie składać się z siedmiu losowo wybranych problemów ze zbioru . Czas przewidziany na rozwiązanie każdego problem to 5 minut, plus 25 minut czasu zapasowego. W sumie na rozwiązanie wszystkich problemów na tym kolokwium, będziesz miał 60 minut.
Za każde poprawne rozwiązanie -tego problemu zdobędziesz punktów, natomiast za niepoprawne rozwiązanie punktów. Końcowa ilość punktów , którą otrzymasz w ramach SKZ, oblicza się przez następującą zależność:
Maksymalna ilość punktów, którą można uzyskać za SKZ wynosi .
Forma standardowego problemu
Jak będzie mniej więcej wyglądała forma standardowego problemu na SKZ? Rozważmy to na przykładowym problemie, który brzmi następująco:
Dany jest wektor . Znajdź sumę elementów wektora , które zostały podniesione do potęgi . Odpowiedź podaj dla następujących wartości wejściowych:
x = [0.0, 1.0, 2.0, 3.5, 4.0, 5.0]
n = 5
Mając taki problem, należy zauważyć, że występują w nim dwie nazwane zmienne: x
oraz n
. Program komputerowy należy zaimplementować w postaci funkcji o nazwie rozwiazanie_k
, gdzie k
to numer problemu. Załóżmy na potrzeby przykładu, że k = 1
. Funkcja powinna przyjmować argumenty poprzez słowa kluczowe, które to powinny nazywać się tak jak zostały nazwane w treści problemu oraz przyjmować wartości domyślne, równe wartością dla których należy podać odpowiedź.
Przykładowy program rozwiązujący powyższy problem w języku Julia:
function rozwiazanie_1(;
x = [0.0, 1.0, 2.0, 3.5, 4.0, 5.0],
n = 5,
)
sum(x .^ n)
end
Natomiast odpowiedzą jest liczba 4707.21875
, otrzymana przez wywołanie funkcji rozwiazanie_1()
.
Procedura oceny rozwiązania
Aby rozwiązanie -tego problemu na SKZ zostało zaliczone jako prawidłowe i w rezultacie został przydzielony za nie , muszą zajść poniższe warunki:
Warunek poprawnego rozwiązania: Liczba będąca odpowiedzią musi być w przybliżeniu równa wartości referencyjnej .
Warunek generalizacji: Funkcja obliczająca rozwiązanie musi zwracać poprawne rozwiązania, w ujęciu warunku poprawnego rozwiązania, dla argumentów wejściowych o innych wartościach niż domyślne.
Przez pojęcie przybliżonej równości należy rozumieć, że dopuszczalny jest pewien błąd względny w stosunku do wartości referencyjnej odpowiedzi. Wartość dopuszczalnego błędu względnego nie jest jawna i jest zależna od problemu. Przykładowo jeżeli wartość referencyjna odpowiedzi wynosi , a podana przez Ciebie odpowiedź wynosi , to błąd względy będzie wynosił:
Jeżeli założymy że dopuszczalny błąd względny , to w tym przykładzie , więc . Jeżeli odpowiedz wynosiłaby , to , ponieważ błąd względy byłby większy niż .
Uwagi
Jeżeli kod źródłowy się nie wykonuje (występuje błąd wykonania lub błąd kompilacji), lub wykonuje warunkowo, to nie spełniony jest warunek 1 lub 2, przez co nie można przyznać punktu za dane rozwiązanie.
Jeżeli odpowiedź jest błędna (błąd względny jest za duży), w wyniku błędnego algorytmu realizującego obliczenia, to rozwiązanie jest uznane jako nieprawidłowe, niezależnie od tego jakiego wymiaru jest to błąd. Jeżeli pomylenie nazwy zmiennych, czy też odjęcie jednej wartości od drugiej zamiast dodania, wpływa na wartość odpowiedzi znacząco, to nie można zaklasyfikować takich błędów jako drobne i ostatecznie jednak uznać napisany algorytm za poprawny. Takie "drobne błędy" powstałe z przypadku czy też nieuwagi, potencjalnie mogą być bardzo kosztowne, jak to przykładowo było z katastrofą z powodu kreski. Jedyne akceptowalne błędy w algorytmie, to takie, które powodują odchylenie się wartości podanej odpowiedzi od wartości referencyjnej zgodnie z dopuszczalny błędem względnym .
Dobre praktyki
Poniżej znajduje się lista dobrych praktyk, które w szczególności powinno się zastosować w czasie rozwiązywania problemów ze standardowego kolokwium zaliczeniowego.
Zawsze podawaj odpowiedź z jak największą precyzją.
Sprawdź czy funkcja, który napisałeś wykonuje się i zwraca wartość, którą wpisałeś jako odpowiedź.
Zastanów się czy zwracana przez funkcję wartość ma sens. Przykładowo, jeżeli algorytm ma za zadanie oszacować stosunek mocy sygnału do mocy szumu, to być może wartość 500 dB, to trochę za dużo.
Spróbuj stworzyć zestawy danych wejściowych do funkcji, dla których jesteś w stanie szybko oszacować czy zwracana odpowiedź jest prawidłowa. Przykładowo tworząc przypadki graniczne.
Odwołania od oceny
Po ocenieniu SKZ, otrzymasz zdalny dostęp do swojej wersji problemów z SKZ, twoich rozwiązań, oraz oceny tych rozwiązań. Jeżeli uznasz, że dane rozwiązanie zostało nieprawidłowo ocenione, to oczywiście możesz się odwołać od takiej oceny. W tym celu powinieneś zgłosić do mnie swoje odwołanie przez pocztę elektroniczną, nie później niż 3 dni od ogłoszenia wyników. W wiadomości jesteś proszony aby uzasadnić dlaczego uważasz, że Twoje rozwiązanie jest prawidłowe. Im bardziej szczegółowo to zrobisz, tym lepiej będę w stanie rozpatrzyć takie odwołanie.
Kolokwium rozszerzające
Kolokwium rozszerzające jest to kolokwium, które ma za zadanie sprawdzić wiedzę oraz umiejętności biegłego rozwiązywania problemów z wybranych zaawansowanych technik przetwarzania sygnałów w zakresie rozszerzonym. Przez zakres rozszerzony należy rozumieć zbiór , zawierający problemy z wybranych technik przetwarzania sygnałów, które można rozwiązać w oparciu o wiedzę wchodzącą w zakres laboratorium, a uzyskaną poprzez studiowanie wskazanej literatury oraz rozwiązywanie problemów z materiału laboratoryjnego. Kolokwium rozszerzające kładzie nacisk na znajomość i zrozumienie fundamentalnych aspektów teoretycznych technik przetwarzania sygnałów wchodzących w zakres materiału laboratoryjnego. W ramach kolokwium rozszerzające mogą pojawić się problemy o różnorodnej naturze, od problemów opisowych, przez problemy obliczeniowe o charakterze numerycznym bądź symbolicznym, po problemy typu wykaż/udowodnij, bądź też zadania testowe wielokrotnego wyboru. Kolokwium rozszerzające składa się z szeregu μKolokwiów, które będą przeprowadzane przez semestr w czasie ćwiczeń laboratoryjnych.
μKolokwium (micro kolokwium) to z natury krótkie, niezapowiedziane kolokwium, które odbywa się zazwyczaj w formie pisemnej, ewentualnie w formie odpowiedzi ustnej. Zakres materiału obowiązujący na μKolokwium obejmuje dotychczasowo przerobiony materiał laboratoryjny włącznie z aktualnym, patrz harmonogram. W zależności od ilości problemów i ich złożoności, pojedyncze μKolokwium może trwać od jednej minuty do kilkudziesięciu minut w skrajnych przypadkach. Podobnie jak w przypadku czasu trwania μKolokwium, maksymalna liczba punktów, która jest przyporządkowane od do danego μKolokwium, zależy od ilości problemów oraz ich złożoności.
Istnieje możliwość zgłoszenia się do dodatkowego μKolokwium (odpowiedzi ustnej) w ramach kolokwium rozszerzającego. W takim przypadku, proszę o wyrażenie takiej chęci przynajmniej 24 godziny przed najbliższymi zajęciami laboratoryjnymi.
Wartość obliczana jest jako suma punktów, którą otrzymałeś ze wszystkich μKolokwiów. Wartość obliczana jest jako suma maksymalnej liczby punktów, którą mogłeś otrzymać w ramach wszystkich μKolokwiów, które pisałeś.
Zaliczenie poprawkowe
Jeżeli nie uda Ci się uzyskać zaliczenia z ćwiczeń laboratoryjnych w terminie podstawowym, przysługują Ci dwa termin zaliczenia poprawkowego. Zaliczenie poprawkowe polega na ponownym podejściu do standardowego kolokwium zaliczeniowego i poprawieniu współczynnika . Ocenę końcową z ćwiczeń laboratoryjnych w terminach poprawkowych, oblicza się zgodnie ze wzorem na współczynnik zaliczenia z sekcji Zasady oceniania.
Daty terminów zaliczeń poprawkowych podane są w harmonogramie. Wszystkie terminy zaliczenia poprawkowe przeprowadzana są w pawilonie C-2, piętro 2, sala 219, w godzinach 08:00 - 09:30.
Historia zmian
2025.01.08: Aktualizacja harmonogramu.
2024.10.08: Publikacja dokumentu.