Prírodou inšpirované algoritmy

študijné materiály pre projekt mobilnej triedy umelej inteligencie

Späť ku kurzom triedy
Obsah
3D modelovací systém založený na IEC
Implicitné modelovacie funkcie
3D modelovanie na báze IEC



Ostatné kapitoly
Genetické algoritmy
Genetické programovanie
Umelá embryogenéza
Evolučný dizajn
Interaktívny evolučný výpočet
Ekogramatiky
Evolučný hardware


Tutoriály
 Celulárne automaty
 Morfogenéza
 Simulátory
 Evolučné algoritmy
 Chaos
 Roboty
 Rôzne


3D modelovanie na báze IEC

3D modelovacie systémy založené na interaktívnych evolučných výpočtoch používajú dva priestory a to vyhľadávací priestor (search space) a priestor riešení (solution space). Vyhľadávací priestor je priestor generácií 3D modelov a priestor riešení je priestor 3D modelov. Vyhľadávací priestor je priestor zakódovaných riešení (coded solution to the problem) a priestor riešení obsahuje aktuálne riešenie. Kódované riešenie (coded solution) alebo GTyp(genotyp) musí biť mapované na aktuálne riešenie (actual solution) resp. PTyp (fenotyp)

Aktuálne hodnoty funkčných parametrov

Príklad na zakódovanie 3D modelu vidíte na obráyku.

PTyp obsahuje tri primitívy (P1, P2, P3) a jeden blending parameter (B) a k nemu korešpondujúci GTyp obsahuje reťazec bitov, reprezentujúce jednotlivé parametre PTyp. Každý parametre je zakódovaný ako 8-bitový reťazec, kt. sa nazýva gén. Napríklad parameter e1 (0.1 <= e1 <= 2.1) je zakódovaný ako P(e1) = 0.1 + G(e1) / 128, kde P(e1) je hodnota parametra e1 a G(e1) je 8-bitový gén. Reťazec génov v GTyp nazývame chromozóm. Veľkosť chromozómu je p * n + b, kde p je počet parametrov pre jednotlivé primitíva, n je počet primitív a b je počet parametrov blending funkcie. Teda veľkosť chromozómu pre objekt na obráyku je 60 (18*3+6).

Zakódovanie 3D modelu z obr.4

IEC algoritmus

set execution options;

randomly generate an initial set of GTyps;

do {

decode GTyps to PTyps for renedering 3D models;

rate fitness value for each model (PTyp) by user to select elite individuals;

generate new set of GTyps by executing GA operations such as crossover and mutation;

} while (there is no acceptable solution)

Hore
Kontakt: Marek Bundzel