Ects: 5
Predavanja: 2
Vježbi: 2

Cilj predmeta:

Stjecanje znanja i vještina vezana uz korištenje računalnih postupaka koji se razlikuju od uobičajenih načina rješavanja problema, kao što je korištenje genetskih algoritama, neuronskih mreža i neizrazitih sustava.

Sadržaj predmeta:

Uvod u nekonvencionalne računalne postupke. Genetski algoritmi. Java implementacija genetskih algoritama. Neuronske mreže. Postupci učenja neuronskih mreža. Programski okvir Encog za neuronske mreže. Prepoznavanje slike pomoću neuronskih mreža. Neizrazita logika. Implementacija neizrazitih sustava. Podešavanje neizrazitog sustava genetskim algoritmom.

Kompetencije:

Razumijevanje razlike između rješavanja problema konvencionalnim programiranjem s obzirom na korištenje nekonvencionalnih metoda i postupaka. Razumijevanje metodologije genetskih algoritama i vrednovanje kvalitete rješenja u svakoj generaciji jedinki. Korištenje Java programskog okvira za rješavanje problema pomoću genetskih algoritama. Razumijevanja načina rada neuronskih mreža i postupaka učenja. Korištenje programskog okvira Encog za neuronske mreže. Korištenje neuronskih mreža za rješavanje problema prepoznavanja uzoraka slika. Razumijevanje neizrazite logike i njene uporabe u praksi. Razumijevanje načina implementacije neizrazitih sustava.

Ishodi učenja:

Student će nakon polaganja ovog predmeta moći: 1. Napisati aplikaciju koja koristi genetske algoritme za rješavanje problema u praksi 2. Osmisliti funkciju dobrote po kojoj će se klasificirati jedinke u generacijama kod genetskih algoritama 3. Integrirati Java programski kod koji koristi genetske algoritme u ostale Java aplikacije 4. Razviti program koji koristi neuronske mreže 5. Kombinirati dijelove programskog okvira Encog s vlastitim dijelovima programskog koda u Javi radi bržeg i efikasnijeg postizanja traženih rezultata 6. Preporučiti korištenje neuronskih mreža za rješavanje problema u praksi 7. Prosuditi u kojim situacijama je bolje koristiti neizrazite sustave od konvencionalnih načina rješavanja problema Navedeni ishodi učenja doprinose ishodima učenja studijskog programa: - Predložiti rješenje inženjerijskih problema u struci (4). - Koristiti funkcionalnosti modernih inženjerijskih alata neophodnih za praksu (5). - Razviti programske aplikacije korištenjem suvremenih strukturnih, proceduralnih i objektnih programskih jezika (6). - Koristiti stručnu literaturu i pretraživanje dostupnih baza informacija i baza znanja (12).