ПредишенСледващото

Трябва да напиша една система, която може да се вземат решения за характера, който може да отговори на един или повече врагове. Системата може да бъде познат:

здравето на героя в проценти;

Отговорът трябва да бъде под формата на едно от следните неща:

скрие (за внезапни атаки);

да направи нищо.

За да се обучават една маса #xAB; уроци # Xbb;:

Здраве пистолет враг

50% атака на 1 януари

90% 1 2 атака

80% 0 1 Атакуване

30% 1 януари Скриване

60% 1 2 Скриване

0 1 40% Скриване

Сега ние ще обучаваме нашите INS и да го запишете във файл:

публично статично невалидни основни (String [] опцията)

// за изграждане на нова ИНС необходими, за да се създаде списък на слоя

списък layerList = нов ArrayList();

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 = нов Fann (layerList);

// Създаване на треньор и да определи алгоритъма обучение

Треньор треньор = нов треньор (Fann);

/ * Обучени да взема уроци от файл с максимална

100,000 цикъла, с участието на доклади от всяка итерация, както и постигане на 100yu

грешка по-малко от 0,0001 * /

trainer.train (нов файл ( "train.data") getAbsolutePath (), 100 000, 100, 0.0001f.);

ANN се състои от слоеве на неврони. Първи слой - това неврони #xAB рецептори # Xbb; или неврони на входните данни. Изходните неврони последния слой. Всички останали - това е скритите слоеве. В този случай, първата неврон слой има 3:

здраве (0.1-1.0);

присъствието на оръжие (1 има, 0-не);

Fann клас обект е невронна мрежа, която е изградена на базата на предварително създаден слой.

клас треньор обект капсулира алгоритмите на обучение невронна мрежа предадени на треньор конструктор. След обучението, не забравяйте да го запишете във файл.

използвайте следния код, за да потвърдим нашето проучване:

публично статично невалидни основни (String [] опцията)

Fann Fann = нов Fann ( "Ann");

1. Броят на условия, които не могат да бъдат статични. Т.е. например, в някои случаи ние не сме важно да има пистолет - резултатът не зависи от него. В съответствие с това, че е необходимо по някакъв начин да се вземат под внимание и да се опрости алгоритъма. Това ще увеличи скоростта на вземане на решения.

2. Какво трябва да направя, ако е налице противоречиви уроци? Vskidku, решението може да бъде избран въз основа на теорията на вероятностите: например, ако същите входни условия 2 пъти ние трябва да "атака" и един път "Running", функцията трябва да са в 66.6% от случаите обратно към "Атака". Т.е. е необходимо на случаен принцип!

3. Системата не се вземат под внимание опита (брой часове). Да предположим, че сме имали само един урок, в присъствието на пистолета и двата противници обратно към "Атака" и 1000 уроци "тече". Т.е. повече уроци с пистолета не са съществували. И когато възникне ситуация: пистолет и само един опонент - функцията може да се върне на "Run", защото отклонението е в посока на "избяга". Ще запомним този опит и утежни още повече ситуацията. В резултат на това нашата лодка ще бъде податлив на малодушие.

И ако опростена - тогава целият проблем се свежда до намиране на функцията F

за набор от известен (х) = Y

Всички там модерен модерни думички като "невронна мрежа" и "изкуствен интелект" - намалено до нормалната сближаване на проблема! ))

Разкрийте клон 1

Невронната мрежа не работи по този начин, то се подава данни в облака във всички ситуации, и то се адаптира и да се променя, за да угоди на всички sluchayam.I структура тя ще бъде по-лесно, отколкото с една funktsii.Neyroset куп неврони програми, всеки неврон на множество входове , връзки с други неврони, както и един изход, които отиват в друга neyronu.Strukturno и странични плащане е по-лесно, IMHO.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!