Warning
This page is located in archive. Go to the latest version of this course pages.

Seznam projektů

Téma je možné si zvolit i vlastní (což je i preferováno), a to tak obtížné, jak uznáte za vhodné. Spíše než složitost tématu bude hodnoceno to, jak student daný problém implementoval v Matlabu (viz kritéria ZDE). Na projekty, prosíme, pohlížejte jako na šanci si procvičit návyky v Matlabu ;-)

Zadání (LS2018/2019)

Bude doplněno…

Náměty na projekty

U většiny projektů je na konci popisu v závorce zkratka jména vyučujícího, který zadání vytvářel a za projekt zodpovídá. S tímto člověkem projekt průběžně konzultujte - za zadání projektu se nepovažuje popis níže, ale až konkrétní podoba domluvená s vyučujícím!

Zkratka Jméno E-mail
doc. Ing. Miloslav Čapek, Ph.D. miloslav.capek@fel.cvut.cz
VA Ing. Viktor Adler, Ph.D. adlervik@fel.cvut.cz
VL Ing. Vít Losenický losenvit@fel.cvut.cz
MM Ing. Michal Mašek michal.masek@fel.cvut.cz
RK Ing. Rostislav Karásek karasros@fel.cvut.cz
LJ doc. Ing. Lukáš Jelínek, Ph.D. lukas.jelinek@fel.cvut.cz
PK Ing. Petr Kadlec, Ph.D. kadlecp@feec.vutbr.cz
MP Ing. Milan Příhoda, Ph.D. milan.prihoda@cst.com
TK Ing. Tomáš Kořínek, Ph.D. tomas.korinek@fel.cvut.cz

Aplikace

  1. Tvorba a zobrazení platónských těles (VL)
  2. Tvorba jednoduché aplikace, která bude cokoli dělat (editor textu, úprava obrázků, kalkulačka, úprava zvuku, …), ale bude podporovat historii a její úpravy. (VA)
    • V aplikaci by mělo být tlačítko “Zpět” a “Vpřed” a editor historie příkazů, který umožní položky v historii mazat a přesouvat a následně celou historii provést.
  3. Interaktivní editor RLC obvodů, včetně tvorby propojek a generace maticové formy výsledného zapojení (VA)
  4. Tvorba a zobrazení Smithova diagramu (VA)
  5. Editor ikonek v Matlabu (VA)
    • Malování ikonek s rozměry 16×16 px a jejich export pro použití v Uipushtool pro vytváření vlastního menu.
  6. Náhodná procházka několika agentů v ohraničené oblasti (MČ)
    • Na počátku zvažujte agenty náhodně rozmístěné v dané oblasti (“opilci”), ti se po ohraničené oblasti (“parku”) pohybují náhodně. Vygenerujte jejich pohyb, zobrazte ho, analyzujte průměrné hodnoty (rychlost, polohu) a vypracujte techniky na udržení agentů uvnitř oblastí (odrazná zeď, absorbční zeď, …).
  7. Napiště reader/writer pro 1D a 2D geometrii pro formát *.dxf, *.svg a *.eps (PK)
  8. Zpracování *.gpx souborů s daty z GPS přijímačů (VA)
    • Vyhodnocení délky trasy, převýšení, rychlosti, spálené kalorie, zobrazení trasy v mapách, …
    • Pro přečtení dat z *.gpx souborů použijte funkci loadgpx.m
  9. Odečítání GPS souřadnic z načteného segmentu mapy (VA)
    • Využijte funkce ginput v Matlabu spolu s možností načíst mapu do figure. Pro zkalibrované osy navrhněte skript, který bude přímo exportovat GPS souřadnice.
  10. Vyhodnocení parametrů signálu (VA)
    • Amlituda šš/rms, max./min. hodnota, perioda/frekvence, +/- překmit apod. včetně grafického zobrazení
  11. Řízení jakéhokoli přístroje/hračky/stavebnice z Matlabu (VA)
    • Cokoli Vás napadne. Ale řízené zařízení musíte mít vlastní. Např. lze napsat GUI pro ovládání nějakého zařízení na oblíbené platformě Arduino, protože Matlab nativně umožňuje posílat a přijímat zprávy po sériové lince (funkce serial).
  12. Simulace pohybu těles ve sluneční soustavě (VA)
  13. Planetárium v Matlabu (VA)
    • Zobrazení hvězdné oblohy v libovolný čas a z libovolné polohy na Zemi.
    • Nebo můžete implementovat mapu oblohy tak, že si rovnou vyberete konkrétní souřadnice RA a DE, jaké má být zorné pole a část oblohy zobrazit. Je vhodné mít možnost interaktivně nastavit jak slabé hvězdy ještě zobrazovat a umět se posouvat s výřezem po obloze.
  14. Osciloskop v Matlabu (VA)
    • Implementujte jednoduchý osciloskop, který bude zobrazovat signály ze vstupu zvukové karty. Použijte třídu audiorecorder ( example).
  15. Vektorový měřič impedance a přenosu obvodů pomocí zvukové karty (VA)
    • Neznámý obvod bude buzen výstupem ze zvukové karty a výstupní signál bude nahráván vstupem zvukové karty. Analýzou signálů vyhodnotíte jaká byla připojena impedance nebo přenos obvodu. Je potřeba vyřešit vč. kalibrace. Program může být určen např. speciálně k měření audio zesilovačů vč. vyhodnocení zkreslení THD apod. Použijte třídu audiorecorder ( example).
  16. Konzole v Matlabu (tokenizer) (MČ)
    • Zpracujte jednoduchý GUI umožňující vstup (načtení) textového řetězce. Ten poté zpracujte uvnitř programu, který následně provede zadané příkazy.
  17. Vykreslení a animace Lorenzova atraktoru (MČ)

Audio / Video

  1. Tvorba panoramatické fotografie (VA)
  2. Ladička hudebních nástrojů (VA)
    • Využití vstupu zvukové karty. Použijte třídu audiorecorder ( example).
  3. Editor zvukových souborů (VA)
    • Možnost načíst zvukový soubor, zobrazit jeho průběh, editace zvuku (ořez, hlasitost, ekvalizace, pár efektů, …), uložení
  4. Editor video souborů (VA)
    • Možnost načíst video soubor, zobrazení časové osy, editace videa (střih, jas, kontrast, …), uložení do jednotlivých obrázků a do videa. Možnost volby výstupního formátu, velikosti obrazu (interpolace) a kvality.
  5. Vektorizace bitmapových (scan) grafů (VA)

Hry

  1. Connect four (VL)
    • Implementujte hru Connect Four pro dva hráče a pro hru hráče proti počítači.
  2. Implementace hry MiniMetro (MM)
  3. Hnefatafl nebo jiná verze staroseverské deskové hry wiki (MM)
  4. Jakákoliv hra využívající transportation network system, např. Pocket Trains (MM)
    • vhodné pracovat s OOP, timery
  5. Sokoban (VL)
    • Implementujte hru Sokoban.
    • Vhodné pracovat s OOP.
  6. Zobrazení a automatické řešení rubikovy kostky (VA)
  7. 2048 (VL)
    • Implementujte hru 2048.
  8. Hra kulečník (VL)
    • Implementujte jednoduchý kulečník.
  9. Hra Worms (MM)
  10. Hill Climb Racer (VL)
    • libovolná implementace této hry.
  11. Space Invaders (VL)
  12. Flappy bird (VL)

Numerické výpočty

  1. Výpočet a zobrazení Foucaultova kyvadla v různých bodech na planetě (VA)
    • Rozložení N stejných nábojů na povrchu koule tak, aby měly celkově minimální potenciální elektrostatickou energii.
  2. Hledání průsečíků obecných křivek zadaných analytickým předpisem (PK - VUT)
    • Numericky, bez použití symbolického toolboxu.
  3. Pro obecné těleso (zadané hraničními body) najděte takový střed opisující koule, aby tato koule byla nejmenší možná. Těleso poté posuňte tak, aby bylo uvnitř této koule, která má střed ve středu kartézského souřadného systému. Těleso před i po posunutí zobrazte spolu s obalující koulí (MČ)
  4. Nástroj na zobrazení a výpočet EM úloh pomocí metody zrcadlení + vizualizace (MČ)
  5. Zobecněné řešení smyčkových proudů / uzlových napětí (MČ)
  6. Výpočet geometrického i fyzikálního těžiště objektu / soustavy objektů (MČ)
  7. Vícekriteriální optimalizace (PSO / GA), včetně zobrazení výsledné Paretovy fronty (MČ)
  8. Nelderova-Meadova optimalizace (MČ)
    • Vytvořte zjednodušený algoritmus simplexní optimalizace (prostor je prohledáván pomocí simplexu s pomocí jeho postupných transformací.
  9. Fourierova transformace (MČ)
  10. Integrace dvojného integrálu s look-up-table algoritmem (MČ)
    • Pro zadaný dvojný integrál (nemá jednoduchou primitivní funkci, je nutná numerická integrace) a data získaná z multifyzikálního solveru ve formě tabulky navrhněte integrační proceduru s interpolací v tabulce (look-up-table).
  11. Minimalizace pomocí nelineární metody nejmenších čtverců (MČ)
    • Nastudujte metodu nejmenších čtverců a její nelineární variantu a pokuste se na vybraných příkladech porovnat jednotlivé přístupy v Matlabu.
  12. Spline interpolace zadaného názvu pomocí extrémů křivky (MČ)
    • Program vypíše zadaný textový řetězec do okna (figure), poté pomocí funkce ginput budou zadány vrcholy spline křivek. Úkolem bude správná parametrizace těchto křivek, aby byl původní text co nejlépe rekonstruován.
  13. Buzení vln na 2D ploše (řešení vlnové rovnice pomocí FDTD) + vizualizace (LJ, MČ)
  14. Rojová optimalizace (MČ)
    • Nastudujte algoritmus rojové (PSO) optimalizace a pokuste se ho pro případ jednokriteriální, multidimenzionální optimalizace implementovat.
  15. 1D iterpolace 3. stupně (kubická) (MČ)
  16. Hledání minima funkce pomocí gradientního algoritmu a jeho modifikace pro nalezení globálního minima za přítomnosti řady lokálních minim (kupř. funkce příp. f(x) = 1 - cos(x) + x^2/a^2 na intervalu x = [-a,a]) - Monte Carlo, stochastické algoritmy.
  17. Zjednodušená metoda Ray Tracing pro studium šíření paprsků (MČ)
  18. Vytvořte jednoduchý nástoj na výpočet rozložení náboje na ploše (MČ)
    • Plochu bude možné vytvořit pomocí jednoduchého GUI, výpočet rozložení náboje může být založen např. na znalosti Coulombova zákona a superpozice (výpočet bude prováděn iterativně). Výsledkem bude vizualizace aktuální polohy všech nábojů (počet a počáteční poloha bude zadána uživatelem), a také směru jejich pohybu.
    • K dispozici je jednoduchá ukázka (vzor) v 1D.
  19. Fluid Dynamics (VL)
    • Implementujte algoritmus pro vizualizaci chovaní kapalin. link1, link2, link3
  20. Tvorba a řešení bludiště (VL)

Další

  1. Virtuální obvodový analyzátor (GUI). (MP)
    • Program bude sloužit k odhadu chyb měření pomocí obvodového analyzátoru. Program bude obsahovat realistický model přístroje s nastavitelnými parametry; kalibrační techniky a vizualizaci výsledků a odchylek [Michael Hiebel, Fundamentals of Vector Network Analysis, 3rd ed.(Rohde & Schwartz, Munich, 2008). 420 pp. [ISBN: 978-3-939837-06-0]
  2. Extrakce materiálových vlastností (TK)
    • Na základě znalostí S-parametrů získaných pomocí simulací známých materiálů vložených do vlnovodného dílu v CST MWS navrhněte a realizujte metodu extrakce materiálových parametrů. Zpracovaná metoda musí obsahovat korekce s ohledem na rozměry materiálů a referenční roviny měření. Metodu extrakce materiálových parametrů ověřte na reálných měřeních pomocí VNA.
  3. Aproximace výškového profilu refraktivity v troposféře (PP)
    • K dispozici je hodnota refraktivity měřená v 19ti různých výškách nad zemí. Aproximujte tato data polynomem 1.-4. řádu dle volby uživatele a graficky znázorněte včetně měřených bodů. Graficky zobrazte i první derivaci funkce a zvýrazněte oblasti s možností výskytu vlnovodného kanálu, tj. kdy je gradient výškového profilu refraktivity menší než -157 N/km. (Pozn.: Refraktivita je přepočtený index lomu atmosféry. Je funkcí teploty, tlaku a vlhkosti vzduchu. Rozložení refraktivity v troposféře zásadním způsobem ovlivňuje šíření rádiových signálů díky refrakci.)
  4. Klouzavý průměr (PP)
    • K dispozici je neekvidistantní časová řada přijatých úrovní signálu měřených mobilním terminálem. Při známé rychlosti terminálu a frekvenci signálu proveďte přepočet na závislost přijaté úrovně na vzdálenosti v měřítku vlnové délky. Aplikujte filtraci signálu klouzavým průměrem a do stejného grafu zobrazte původní i několik filtrovaných průběhů z různými velkostmi klouzavého okna (intervalu, ve kterém průměrujeme) dle zadání uživatele. (Pozn.: Jedná se o klasickou metodu oddělení rychlých úniků způsobených vícecestným šířením vln/signálu.)
  5. Optimalizace RLC struktury nebo filtru s možností volit hodnoty součástek z typizované řady E6 / E12 / E24 (VA)
  6. Vektorizovaná 2D interpolace (VA)
  7. MSDN knihovna v Matlabu (VA)
    • Prozkoumejte a pokuste se využít MSDN knihovnu pro účely pokročilé grafiky v Matlabu
  8. Návrh kalibrační sady pro měření s obvodovým analyzátorem (GUI). (MP)
    • Program bude sloužit k optimalizaci parametrů kalibračních standardů dle zadaných kritérií. Program bude navrhovat kalibrační standardy pro měřící techniku Multiline TRL http://dx.doi.org/10.1109/22.85388
  9. Zpracovaní naměřených dat z obvodového analyzátoru (GUI). (MP)
    • Jde o projekt zaměřený primárně na tvorbu grafického rozhraní. Ze změřených parametrů tří vzorků určete konstantu šíření homogenního přenosového vedení dané délky. Navrhněte grafické rozhraní pro vizualizaci výsledků kalibračního algoritmu, viz [V. Sokol, Jan Eichler, Marc Rütschlin: “Calibration of EM Simulator on Substrate Complex Permittivity”, ARFTG 83rd Microwave Measurement Conference, Tampa, 2014]. Jde o spolupráci s výsledky použitelnými potenciálně i v praxi, funkční algoritmus je k dispozici (MP).

Projekty, které si vybrat NELZE!

  1. hra Arkanoid (VL)
  2. Výpočet a zobrazení sférických funkcí, jejich superpozice, korelace s obecnými kulovými funkcemi (MČ)
  3. Naprogramování jednoduché hry “had” v Matlabu (MM)
    • Pokuste se formalizovat a implementovat hru had v Matlabu na základě znalostí z kurzu Matlabu. Problém maximálně zjednodušte.
  4. Zjednodušené piano v Matlabu
    • Vygenerujte potřebné tóny piana v Matlabu, dále zpracujte vstup z klávesnice (“klaviatura”). Pokuste se najít vhodnou obálku signálu tak, aby byl eliminován syntetický zvuk kláves.
  5. Šachy (bez umělé inteligence, pouze rozhraní) (MM)
    • Vykreslete šachovnici, vč. správného popisu os. Dále na tuto šachovnici umístěte figurky (např. obrázky). S těmito figurkami bude možné pohybovat podle pravidel šachu.
  6. Editor fotografií (VA)
    • Načtení, uložení, základní úpravy (jas, kontrast, sytost, ořez, převzorkování, …), filtry (zostření, rozmazání, …).
  7. Hra Pong (VA)
    • Pokuste se implementovat hru Pong.
  8. Hra SUDOKU, načtení rébusu ze souboru, hra uživatele, hlídání pravidel (VL)
  9. Hra Quarto (MČ)
    • Nalezněte algoritmy které detekují nejkratší cestu k vítězství, kdy hra nemá řešení (konec hry), případně tah který soupeři nejvíce prodlouží cestu.
  10. Hra Quoridor (MČ)
    • Implementujte hrací desku, zadávání destiček a ovládání figurky, pokuste se najít primitivní herní algoritmus.
  11. Space Impact Game (VA)
    • Jednoduchá implementace hry Space Impact známé ze starších mobilních telefonů Nokia
  12. Tetris (VA)
    • Implementace legendární hry Tetris.
  13. Game of life (VL)
  14. Piškvorky (s umělou inteligencí)(VL)
  15. Dáma (s umělou inteligencí)(VL)
  16. Hra lodě
    • Pokuste se formalizovat a implementovat hru lodě v Matlabu. Soupeřem Vám bude počítač, který volí pozice pseudo-náhodně (případně pseudo-náhodně s ohledem na poslední úspěšný zásah).
  17. Vizualizace 2D / 3D funkcí s uživatelským vstupem
    • Vypracujte program, který bude schopen vizualizovat 2D/3D vektorové funkce. Využijte vektorizace a funkce quiver pro vykreslení.
  18. Nástroj na extrakci nápovědy a H1 řádky z user-defined funkcí Matlabu
    • Jde o projekt zaměřený na čtení textových řetězců ze zadaných souborů a jejich zpracování. Vhodné pro studenty se znalostí programu LaTeX.
  19. Vytváření knihovny mex
  20. Výpočet celkového šumového čísla, zisku, bodu zahrazení a maximálního výkonu soustavy dvoubranů včetně grafického zobrazení
  21. ADC (konvertor z analogového na digitální signál) - vzorkování, kvantizace, vizualizace obecného signálu
  22. Gaussova eliminace, Gaussova eliminace s pivoty + porovnání s Matlab build-in funkcí
  23. Korelační analýza (najít známý signal, v zašuměném přijatém signálu)
  24. Využití kumulační metody ke zvýraznění repetičního signálu v šumu
  25. Hypoteční kalkulačka (FK)
  26. Řešení rovnice typu f(x)=0 pomocí metody dělení intervalu a pomocí Newtonovy metody (MČ)
  27. Jacobi metoda (kupř. generace plochy ze znalosti obvodové křivky, případně výpočet elektrostatického potenciálu - jádro metody je napsáno) (MČ)
  28. Vnější balistika (VA)
    • Zobrazte trajektorii střely a spočítejte potřebnou korekci puškohledu pro zasažení cíle pro konkrétní vzdálenost, elevaci, střelivo, rychlost větru, polohu na Zemi, …
  29. Implementace FIR číslicového filtru v omezené přesnosti (PČ)
  30. Implementace IIR číslicového filtru v omezené přesnosti (PČ)
    • Každá soustava lineárně nezávislých rovnic lze ortogonalizovat tak, abychom nalezli ortonormální bázi podprostoru, který tyto rovnice generují.
  31. Gaussova eliminace, Gaussova eliminace s pivoty + porovnání s Matlab build-in funkcí (MČ)
courses/b0b17mtb/projects/seznam_projektu.txt · Last modified: 2019/04/09 21:51 by adlervik