vysoké uÄenà technické v brnÄ evoluÄnà algoritmy - matlab gate toolbox
vysoké uÄenà technické v brnÄ evoluÄnà algoritmy - matlab gate toolbox
vysoké uÄenà technické v brnÄ evoluÄnà algoritmy - matlab gate toolbox
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
38<br />
Funkce<br />
Popis<br />
SetBinActVec(*BinArr)<br />
Nastavení nejlepšího interního chromozmu v DLL na určité hodnoty<br />
Parametr Popis Možné hodnoty<br />
Parametry - Matice typu double<br />
jednorozměrné<br />
*BinArr<br />
- Rozměr matice musí být (1 x nParam ∙ nBitParam)<br />
double pole<br />
4.3.5 Funkce pro podporu XML<br />
Tyto funkce zajišťují obsluhu požadavků uživatele na uložení či načtení nastavení z/do<br />
XML souboru. SaveXML je možné volat kdykoliv v průběhu výpočtu, uloží právě aktuální<br />
hodnoty (aktuální v DLL). LoadXML je možné použít dvěma způsoby. Buď je možno volat tuto<br />
funkci kdekoliv v průběhu výpočtu, nebo ji použít jako inicializaci hodnot pro odstartování<br />
nového výpočtu. V případě, že ji použijeme pro inicializaci, je třeba nejdříve zavolat tzv. slepý<br />
start, tj. zavolat funkci InitModel(Method,0,0,'',0,0,[],0,0,0). Method je číslo metody, kterou<br />
hodláme pokračovat po načtení hodnot z XML {0, 1, 2, 3}, což odpovídá metodám {HC1, HC2,<br />
HC12, GA}. Slepá inicializace je nutná, protože je potřeba spustit konstruktory objektů.<br />
Alokace paměti pro dynamická pole se provede až ve funkci LoadXML.<br />
Funkce<br />
Popis<br />
Parametry<br />
ret = SaveXML(filename)<br />
Uloží parametry interních struktur DLL do XML souboru<br />
Parametr Popis Možné hodnoty<br />
filename<br />
Jméno XML souboru (včetně cesty), do kterého chceme uložit<br />
parametry („d:\\test.xml“)<br />
pole znaků<br />
ret Návratová hodnota, zda se zápis XML podařil či ne (no,yes) int {0,1}<br />
Funkce<br />
Popis<br />
Parametry<br />
ret = LoadXML(filename,StartMode)<br />
Načte parametry z XML souboru a reincializuje interní struktury podle těchto parametrů<br />
Parametr Popis Možné hodnoty<br />
filename<br />
Jméno XML souboru (včetně cesty), ze kterého chceme načíst<br />
parametry („d:\\test.xml“)<br />
pole znaků<br />
StartMode<br />
- Určuje způsob pokračování výpočtu (restart,continue)<br />
restart – reinicializuje výpočet od začátku<br />
continue – načte hodnoty z XML a pokračuje od těchto hodnot<br />
int {0,1}<br />
ret<br />
Návratová hodnota, zda se XML podařilo otevřít a načíst všechny<br />
položky (no,yes)<br />
int {0,1}<br />
Funkce<br />
Popis<br />
ExportParams(*aStruct)<br />
Export parametrů do systému Matlab po načtení hodnot z XML<br />
Parametr Popis Možné hodnoty<br />
- Struktura typu OptParams<br />
Parametry 1<br />
struktura<br />
*aStruct - Struktura musí být dopředu naalokována!<br />
OptParams<br />
- Do této struktury se uloží načtené parametry<br />
1 Jedná se o strukturu se všemi uloženými parametry, detailní popis je v kapitole 4.3.7<br />
4.3.6 Funkce pro podporu distribuovaných výpočtů<br />
Do knihovny DLL byla přidána podpora pro distribuované výpočty. V takovém případě<br />
se z ní stává klientská aplikace, tudíž musí obsahovat podporu i pro tento druh činnosti. Snažil<br />
jsem se maximálně zjednodušit ovládání na straně klientské aplikace, veškeré ovládání klienta<br />
spočívá pouze ve dvou funkcích. Funkce AddClient jej připojí do právě probíhajícího<br />
distribuovaného výpočtu. Ovládání veškeré činnosti potom probíhá na straně serverové<br />
aplikace, klient potom pracuje zcela autonomně a nezávisle. Aby však mohla serverová aplikace