В общем есть куча материала на данную тему, просто на сколько актуальна данная тема, используется ли она в играх вооюще как система принятия решения или всётаки современных можностей пока маловато чтобы в полной мере реализовать задумку, тк алгоритмика нейронных сетей идет уже с прошлого века, а резултат только распознавание образов и то х.з. FineReader и тот лажается иногда 
Комментарии
Ну это понятно, я не про элементы самообучения я именно про нейроные сети. сення приду домой выложу конкретнее доки )
При этом получился еще 1 плюс, когда в команду приходил новичок, который еще к примеру не воевал, то он ничерта не умел, а со временем обучался и становлися круче, кароче как в реальной жизни...
Надо обращайтесь...
P.S: учусь я на Искуственном Интеллекте 
Ну а поподробнее можешь расписать, Какая входящая инфа была у твоих ботов какая выходящая, ну и класс или структурку нейрона глянуть тоже былобы интересно.
ПЫСЫ гриш обращайся а кантактов никаких в профиль не выложил )
Ну и второй вопрос это собсна производительность этой сетки, насколько сильно буит тормозить комп(это понятие такое относительное), с такойже приблезительно сеткой, если логику щитать приблизительно 15-20 раз в секунду. Ну и общую структуру нейрона в твойм понятии хотелось бы увидеть )
Насчет скорости не волнуйся... На pIII-450 16 ботов по 8 в команде бегали уж очень шустро... Логика очень проста... Учти, что это смесь нейронной сети и семантической сети... Общая идея такая...У тебя есть 3 типа узлов (вершин графов или нейронов):
- узлы действия
- узлы условия
- узлы состояния
- бежать, стоять, сидеть, атаковать
- вижу противника, слышу противника, если сижу, если стою
- сижу, стою, ...
Теперь у нас есть что-то на подобии модели человека, где наши узлы действия это нейроны, которые посылают сигналы мышцам, ...; узлы условия принимают логические решения, а узлы состояния принимают сигнал извне (тоесть коснулся чего-то, боль, ...)
Вот следующая стадия самая интересная на этой стадии надо определится что делать с сетью... Есть 4 способа работы с ней и укаждого способа можно придумать сотни модификаций... Для того, чтобы сеть могла обучаться нужно изменять ее структуру.
Способ 1.
Самый простой из всех способов. Заключается в том, что физически структура не меняется, меняется лишь вес дуг между узлами... Например действие бота принесло пользу, тогда все дуги входящие в узел действия увеличивают свой вес...Тут куча модификаций как это все считать... Надо просто экспереминтировать...Причем не обязательно увеличивать только вес дуг входящих в узел упешно выполненого действия, также можно и нужно это делать и для других дуг..(сдесь смысл в том, чтобы усилить пути прохождения сигнала, чтобы в следующий раз (в похожей ситуации) он скорее всего прошол именно этим путем)... Также в случае неудачного действия вес можно уменьшать.
Способ 2.
В этом способе количество узлов не меняется. Смысл его заключается в том, что между узлами достраиваются новые дуги. При этом его можно скомпоновать с первым способом для большего эффекта.
Способ 3.
Здесь надстроцка над первыми двумя способами ко всему прочему можно достраивать новые узлы, что сделает сеть больше размером, но гораздо умнее. При этом новые узлы могут быть одного из 3-х типов. Тоесть на лету добавлять боту новые возможности.Например он не знал, что значит атаковать и допустим узнал... тогда мы добавили ему этот узел действия.. а дальше он начнет обучаться и со временем использовать его...
Способ 4.
Это когда на старте есть только узлы, но они связаны по минимуму... и в процессе сеть начинает строится... самый сложный, но самый эффективный способ реализации...
Боты даже при первом способе ведут себя иногда даже "гениально"...Что касается скорости, то она приемлимая... тут все зависит от количества связей в большей степени...Гибкость модели высокая... Ибо вы написали один раз ядро, которое работает с сетью (проводит по ней сигналы) и забыли... А дальше вы лишь дописываете классы узлов и они сразу готовы к использованию...
Буду дома... выложу скрины сети в редакторе для Чокнутых дровосеков...Тут я описал лишь общие принципы, и разделил способы лишь условно...Так-что не прирекайтесь, если верите в эту чухню, то могу помочь, если что-то интересует...Если нет, то удачи... пишите скрипты с рандомной или жостко прописаной логикой... 
P.S: да и кстати, случайности здесь не больше чем в реальной жизни 
А ну и ешо вопрос по поводу, логики понижения или повышения Веса узла, как это далать, нада же бить на какието итерации чтобы обучение было более эффективно..., в общем это тоже интересный вопрос 
Еще очень интересный вопрос - нужно ли реализовать эффект забывания - типа если долго не юзается какая-то последовательность действий то веса на них уменьшаются. И как это лучше всего сделать.
Во первых, жизнь жизнью, а в CPU есть понятие переполнение, и даже если на веса использовать long то он тоже имеет свои границы
Или просто время от времени проводить как нибудь нормирование весов.
Во вторых, забывание оно естествено для природы, возможно поведение такой системы будет выглядеть более правдоподобно.
тут вам предоставляется полная гибкость, если хочешь сделать ээфект забывания, то можешь уменьшать вес ссвязей на каждой итерации потиху, вот тебе и проблема переполнения отпадет...
что касается проблемы переполнения, если мы возьмем float,то мы вес можем увеличивать и уменьшать по 0.0000001 к примеру...ведь в итоге нас интересует лишь сумирующий результат на узле действия...
если флоат медленно, то можно и инт, только нормировать...искать минимальный и отнимать его от всех к примеру...и выполнять нормирование по надобности...
P.S.: Вижу заинтересовало))) или нет?
Сама по себе тема довольно интересна.
Погуглив нашел пару интересных статей:Дмитрий Шуклин о развитии моделей семантических нейронных сетей (там интересны обсуждения статьи) и Лекции по теории и приложениям искусственных нейронных сетей.
Интересно, есть ли какие-нибудь крупные игровые проекты в которых использующие нейронные сети.
врядли ибо по своей сути чистые нейронные сети уж много времени берут на обработку...
кстати вот обещаный скрин
[img_assist|nid=166|title=вот оно... разум дровосека|desc=|link=popup|align=left|width=100|height=84]
А вообще у меня стопорнулся проект мой... Точной модели мозга человека...Суть его в том, что реализуем нейронную сеть причем нейрон точная копия биологического (максимально приближенная модель)после чего создаю на базе них нейронную сеть огромную (мозг), часть эмулирующую слух, зрение и речь и запускаю.. потом планирую добавить руку (мышь) и дать управление...
Если хотите можно собраться в команду, кому интересно...
Цвет обозначает область входа/выхода я так понял, и сеть одноранговая, а есть примеры поведения, тоесть собсна проект где эта сетка пашет ?
Был написан на С++ в Builder C++ 6, но к сожалению утерян после гибели веника 
Кстати пример простой... Можно сделать и сложнее все зависит от фантазии... И желания работать 
Нейронные сети очень плохо и медленно эмулируются на транзисторах. В играх же давно и повсеместно используются элементы самообучения. Взять хотя бы ботов того же Unreal Tournament.
Если не нравится FineReader, то можно попробовать силы в натаскивании http://code.google.com/p/tesseract-ocr/ на русский язык, как описано в совсем свеженьком http://code.google.com/p/tesseract-ocr/wiki/TrainingTesseract