Gyors neurális hálózat minden egyes
Meg kell írni a rendszer, amely képes döntéseket hozni a karaktert, amely megfelelhet egy vagy több ellenséget. A rendszer ismert:
karakter életerejét százalékában;
A válasz kell formájában az alábbi:
elrejtése (a hirtelen támadások);
nem csinál semmit.
Hogy vonat egy táblázatot #xAB; tanulságok # xbb;:
Egészségügyi pisztoly ellenség
50% Attack január 1-jén
90% 1 2 támadás
80% 0 1 támadó
30% január 1 elrejtése
60% 1 2 elrejtése
0 1 40% elrejtése
Most mi lesz a vonat a INS és mentse el egy fájlba:
public static void main (String [] args)
// hogy egy új INS létrehozásához szükséges rétegek listája
lista
layerList.add (Layer.create (3, ActivationFunction.FANN_SIGMOID_SYMMETRIC, 0.01f));
layerList.add (Layer.create (16, ActivationFunction.FANN_SIGMOID_SYMMETRIC, 0.01f));
layerList.add (Layer.create (4, ActivationFunction.FANN_SIGMOID_SYMMETRIC, 0.01f));
Fann Fann = új Fann (layerList);
// Létrehozunk egy edző, és meghatározza a tanuló algoritmus
Trainer edző = új edző (Fann);
/ * Képzett órákat fájlból Maximum
100,000 ciklus, mely jelentések minden iterációban és elérni 100yu
hiba kevesebb, mint 0,0001 * /
trainer.train (. új fájl ( "train.data") getAbsolutePath (), 100,000, 100, 0.0001f);
ANN áll réteg neuronok. Első réteg - ez neuronok #xAB receptorokon # xbb; vagy neuronok a bemenő adatokat. Az utolsó réteg output neuronok. Az összes többi - ez a rejtett rétegeket. Ebben az esetben, az első neuron réteg 3:
egészség (0,1-1,0);
jelenlétében fegyverek (1 van, 0-nem);
Fann osztály objektum ez egy neurális hálózat, amely úgy van kialakítva alapján a korábban létrehozott réteg.
Object edző osztály magában foglalja az algoritmusok képzési neurális hálózat át a kivitelező edző. A képzést követően, ne felejtsük el, hogy mentse el a fájlt.
Használja a következő kódot, hogy érvényesítse a tanulmány:
public static void main (String [] args)
Fann Fann = új Fann ( "Ann");
1. A kifejezések száma nem lehet statikus. Ie például bizonyos esetekben nem vagyunk fontosak, hogy egy pisztoly - az eredmény nem függ tőle. Ennek megfelelően meg kell valahogy figyelembe venni és egyszerűsítse az algoritmust. Ez növeli a sebességet a döntéshozatalban.
2. Mit tegyek, ha van egy ütköző órákat? Vskidku, az oldat alapján kiválasztott valószínűségszámítás: például, ha az azonos bemeneti feltételek 2-szer kell „támadás”, és 1 alkalommal „fut”, a függvény kell a 66,6% -ában vissza a „támadás”. Ie szükségességét véletlenszerűen!
3. A rendszer nem veszi figyelembe a tapasztalat (óraszám). Tegyük fel, hogy már csak 1 óra jelenlétében a fegyvert és a két ellenfél vissza a „támadás”, és 1000 tanulságok „run”. Ie További órák a fegyver nem létezik. És amikor olyan helyzet áll elő: egy fegyvert, és csak egy ellenfél - ez a funkció visszatérhet a „run”, mert az eltolódás irányába „menekülési”. Mi fog emlékezni ezt az élményt, és tovább súlyosbítja a helyzetet. Ennek eredményeként, a hajó lesz hajlamos a gyávaság.
És ha az egyszerűsített -, akkor az egész probléma csökkenti megtalálása F függvény
egy sor ismert (x) = y
Minden ott divatos hívószavak, mint a „neurális hálózat” és a „mesterséges intelligencia” - csökken a normális közelítés a probléma! ))
Felfedés ág 1
A neurális hálózat nem így működik, hogy táplálja a felhő adatok minden helyzetben, és alkalmazkodik, és megváltoztatja magát mindenkinek örömet sluchayam.I szerkezet ő lesz könnyebb, mint az egy-funktsii.Neyroset csomó idegsejtek programok egyes neuron több bemenet , kapcsolatot más neuronok, és egy kimenettel, majd a másik neyronu.Strukturno és oldalsó fizetési könnyebb, IMHO.