ekspert lab id 156867 Nieznany

background image

Warszawa, dn. 20.12.2011r.

Wojskowa Akademia Techniczna

im. Jarosława Dąbrowskiego

w Warszawie

Laboratorium przedmiotu

SYSTEMY EKSPERCKIE

Temat: Zaprojektowad i zaimplementowad algorytm heurystyczny (najpierw

najlepszy) ustawiający na szachownicy n x n polowej n hetmanów tak, aby nie

atakowały się wzajemnie.

Słuchacz: Konrad Czupryn

Grupa: I8C1S1

Rok akademicki: 2011/2012

Semestr: VII

Prowadzący: dr inż. Roman Wantoch-Rekowski

background image

 Język użyty do zaimplementowania rozwiązania: Java,
 Środowisko użyte do zaimplementowania rozwiązania: NeatBeans,



Opis rozwiązania:

Do zaimplementowania rozwiązania problemu n-hetmanów na n x n szachownicy powołana

została klasa Hetman z funkcjami odpowiedzialnymi za operacje takie jak: wyświetlenie
szachownicy ,wstawienie hetmana, usunięcie hetmana,

W Klasie zawarta jest metoda wybierzPole(), która posiada funkcję heurystyczną. Funkcja
heurystyczna zwraca indeks kolumny dla której wartośd jest największa.

Do rozwiązanie zadania służy metoda rozwiaz(), metoda sprawdza, czy w kolumnie o podanym
indeksie, będącym wartością zwracaną przez funkcję heurystyczną, czy można w którymś wierszu
wstawid hetmana, jeśli nie jest to spełnione, to metoda usuwa ostatnio postawionego hetmana i
funkcja ponownie wybiera indeks kolumny w której najkorzystniej byłoby ustawid hetmana.
Dzieje się tak do momentu aż atrybut ustawioneHetmany osiągnie wartośd H, oznaczad to będzie
że wszystkich hetmanów udało się ustawid.

Po naciśnięciu przycisku Start zostaje przedstawiona graficznie sytuacja na szachownicy. Można
przyjąd opóźnienie od 10 do 1000 ms. Po rozstawieniu wszystkich hetmanów wyświetlana jest
liczba kroków i przedstawiona zostaje sytuacja na szachownicy.


Wyszukiwarka

Podobne podstrony:
PO lab 5 id 364195 Nieznany
lab [5] id 258102 Nieznany
lab [1] id 258099 Nieznany
chemia fizyczna lab id 112228 Nieznany
Lab 4 id 257946 Nieznany
Lab 1 id 257555 Nieznany
fcs lab 5 id 169065 Nieznany
Bsi 08 lab id 93519 Nieznany
lab(2) id 258733 Nieznany
lab 3 2 id 259509 Nieznany
lab [3] id 258100 Nieznany
LAB 9 id 258268 Nieznany
Arduino Lab 1 id 68202 Nieznany
Pr 1st 1 1 m01 lab id 382178 Nieznany
ModSym lab id 305590 Nieznany
Lab 8 id 258226 Nieznany
Lab 3 3 id 259511 Nieznany
Ekspertyza prawa id 156870 Nieznany
IO lab 2 id 219711 Nieznany

więcej podobnych podstron