GotAI.NET

Форум: Проблемы искусственного интеллекта

 

Регистрация | Вход

 Все темы | Новая тема Стр.9 (37)<< < Пред. | След. > >>   Поиск:  
 Автор Тема: На: Конкурс по написанию эволюционной программы.
rrr3
Сообщений: 11857
На: Конкурс по написанию эволюционной программы.
Добавлено: 07 апр 13 21:20
Цитата:
Автор: Анатоль

Цель прежняя.
Но двигаемся к ней эволюционным путём.
От простого к сложному.
На первом этапе - программа, самообучающаяся игре в крестики-нолики (на большом поле, цель - 5 крестиков в ряд, по горизонтали, вертикали или диагоналям.)
На решение - 3 недели (до конца апреля).

На сегодня нет пока ИИ по некоторым желаемым, плохо формализованным свойствам (если я правильно понимаю, целевым свойствам, которые всеми ищутся на форумах по ИИ) сильнее чем ЕИ.
Проведите мысленный эксперимент. Посадите за Ваши задачи этот 3-х летний ЕИ вместо ИИ и попробуйте представить что из этого за час его сидения перед доской получится...
[Ответ][Цитата]
covax
Сообщений: 1609
На: Конкурс по написанию эволюционной программы.
Добавлено: 07 апр 13 21:35
Цитата:
Автор: Анатоль
На первом этапе - программа, самообучающаяся игре в крестики-нолики (на большом поле, цель - 5 крестиков в ряд, по горизонтали, вертикали или диагоналям.)
На решение - 3 недели (до конца апреля).


Cначала разберитесь с полем 3х3.
Вы формализовали условия игры для того чтобы программа их инвариантно приняла? Нет!
Сколько лет Вам выдать на решение этого вопроса?
[Ответ][Цитата]
Анатоль
Сообщений: 1964
На: Конкурс по написанию эволюционной программы.
Добавлено: 07 апр 13 21:39
3*3 - это переборная задача.
Таких не рассматриваем.
Их даже спичечные коробки решают.
[Ответ][Цитата]
covax
Сообщений: 1609
На: Конкурс по написанию эволюционной программы.
Добавлено: 07 апр 13 22:19
Цитата:
Автор: Анатоль
3*3 - это переборная задача.
Таких не рассматриваем.
Их даже спичечные коробки решают.


С чего вы взяли, что задача переборная? Даже если я построю всё дерево возможных ходов (623530 узла) это ничего не даст. Программа не поймёт какие траектории приводят к выигрышу, кто ходит первый, и почему выигрышные комбинации именно такие, а не другие.
Ваша задача инвариантно сформулировать правила игр для программ, наша задача, создать программы, работающие в структуре этих правил.
[Ответ][Цитата]
Анатоль
Сообщений: 1964
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 0:31
Цитата:
Автор: covax
Программа не поймёт какие траектории приводят к выигрышу, кто ходит первый, и почему выигрышные комбинации именно такие, а не другие.
Ваша задача инвариантно сформулировать правила игр для программ, наша задача, создать программы, работающие в структуре этих правил.


Поле неограничено (или хотя бы 20*20). Вначале пустое.
Игра конкурентная. Два игрока. У каждого свои фигуры (неорганиченное количество однотипных фигур вне поля).
Ходы по очереди. В пустые клетки поля. Первыми ходят крестики.
Выигрывает тот, кто первый выстроит в непрерывный ряд (по горизонтали, вертикали или диагонали) 5 своих фигур.
Вроди б полная и однозначная определённость.
[Ответ][Цитата]
covax
Сообщений: 1609
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 0:43
Цитата:
Автор: Анатоль
...Выигрывает тот, кто первый выстроит в непрерывный ряд (по горизонтали, вертикали или диагонали) 5 своих фигур.
Вроди б полная и однозначная определённость.


Теперь всё тоже самое, но так чтобы программа могла воспринимать инвариантно этот поток данных.
Что такое игра? Что такое игрок? Что значит играть? Что такое конкуренция? Что такое клетки? Что такое игровое поле? Что такое ход? Что такое фигуры? Зачем нужно ходить? Как нужно ходить чтобы выиграть? Что такое выиграть? Что такое проиграть? Что такое ничья? Зачем выигрывать, если можно проигрывать или сводить к ничьей? и т.д и т.п
[Ответ][Цитата]
Анатоль
Сообщений: 1964
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 0:55
Цитата:
Автор: covax
Теперь всё тоже самое, но так чтобы программа могла воспринимать инвариантно этот поток данных.
Что такое игра? Что такое игрок? Что значит играть? Что такое конкуренция? Что такое клетки? Что такое игровое поле? Что такое ход? Что такое фигуры? Зачем нужно ходить? Как нужно ходить чтобы выиграть? Что такое выиграть? Что такое проиграть? Что такое ничья? Зачем выигрывать, если можно проигрывать или сводить к ничьей? и т.д и т.п


Ваш текст говорит о том, что Вы не усвоили Первый постулат ИИ.
Программе не нужно объяснять что такое игра, что такое клетки, что такое ходы и т.п.
Она от рождения умеет ходить (случайным образом).
Она от рождения хочет выигрывать (достигать цели)
(Второй постулат).
Её задача только в том, чтобы научиться этому.
[Ответ][Цитата]
Luarvik.
Сообщений: 17287
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 1:25
Петля постепенно затягивается !
Уже виден не только "свет в конце тоннеля", но и сам коридор.
[Ответ][Цитата]
covax
Сообщений: 1609
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 1:45
Цитата:
Автор: Анатоль
Ваш текст говорит о том, что Вы не усвоили Первый постулат ИИ.


Не я тут должен усваивать, а программа. Для программы Ваши аргументы не имеют смысла.
Ваша задача прояснить смысл правил для программы.

Цитата:
Автор: Анатоль
Программе не нужно объяснять что такое игра, что такое клетки, что такое ходы и т.п.
Она от рождения умеет ходить (случайным образом).


Что значит ходить? Зачем и куда? Что значит случайным образом? Усли у программы есть НУ (начальные условия), то как они формируются? Как игровые правила связаны с НУ?

Цитата:
Автор: Анатоль
Она от рождения хочет выигрывать (достигать цели) (Второй постулат).


Какой цели? Для кого и зачем достигать? Может проще не достигать? Кстати, гораздо проще программе не быть запущенной вообще. Как формулируется цель?


Цитата:
Автор: Анатоль
Её задача только в том, чтобы научиться этому.


Для программы не очевидна цель выигрыша в игре крестики-нолики 3х3. Допустим, цель сделать ход, более менее, очевидна, хотя проще ход не делать. Проясните этот момент.
[Ответ][Цитата]
Анатоль
Сообщений: 1964
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 2:15
Цитата:
Автор: covax
Что значит ходить? Зачем и куда? Что значит случайным образом? Усли у программы есть НУ (начальные условия), то как они формируются? Как игровые правила связаны с НУ?
Какой цели? Для кого и зачем достигать? Может проще не достигать? Кстати, гораздо проще программе не быть запущенной вообще. Как формулируется цель?


Какая-то у Вас слишком умная программа - столько вопросов задаёт...
Нам нужна программа попроще.

Первоначально она умеет ходить по правилам, (из возможных,(допустимых правилами) в даный момент ходов выбирает ход случайным образом).
Она знает цель (поставить вряд 5 крестиков раньше чем противник поставит 5 ноликов).
Стремиться достичь цели (с помощью механизмов изменения вероятности ходов в зависимости от того способствуют эти ходы достижению цели или нет).
Вот эти механизмы и нужно чтобы она сгенерировала, отобрала, настроила..
[Ответ][Цитата]
Luarvik.
Сообщений: 17287
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 2:31
Эту задачу проще решать как "пространственную" с обходом препятствий.
[Ответ][Цитата]
Fractaler
Сообщений: 2490
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 2:54
У программы есть, получается, только 1 метод - "научного тыка". Отсюда - имеено этим методом программа "исследует" "окружающий мир" (крестиком и ноликов) по ограничениям "эй, гражданина, ты туда не ходи, ты сюда ходи (снег башка попадёт, совсем проиграешь)". Из всех возможных путей графа (состояний клеточного автомата) у неё в итоге будет путь к нужному состоянию. Тоже самое можно было получить, не мучая "животное" ("муравьёв" и т.п.), сразу заложив все "если-то". Для реальных же условий, у проги может и не быть возможности/ресурсов исследовать "картину/модель мира" методом тыка, пусть и научного.
[Ответ][Цитата]
Анатоль
Сообщений: 1964
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 4:24
Цитата:
Автор: Fractaler
У программы есть, получается, только 1 метод - "научного тыка". Отсюда - имеено этим методом программа "исследует" "окружающий мир"


Программа не исследует мир методом тыка. Она знает точную информацию о состоянии мира в каждый момент игры (какие клетки чем заняты, а какие свободны).

И никто ей не подсказывает: "туда пойдёшь - клад найдёшь, а сюда пойдёшь - голова с плеч". Она самообучается без учителя.
Единственным "путеводителем" является цель.
Необученная программа должна уметь определять целевое состояние мира (5 крестиков или 5 ноликов подряд).
А смысл самообучения - найти способы еффективного достижения этого состояния.

[Ответ][Цитата]
Fractaler
Сообщений: 2490
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 4:51
Цитата:
Автор: Анатоль

Картина/модель мира в данном случае - это веса (как их получили - программер сразу ввёл или "муравьи протоптали" - не имеет значение) переходов по рёбрам графа (от 1 состояния клеточного автомата к другому). До запуска программы картины мира нет. Уберите эти веса, и "точная информация о состоянии мира в каждый момент игры" будет бесполезна. То, что Вы называете "точной информацией о состоянии мира в каждый момент игры " - это просто такое пространство, где существует картина мира. Оно задаётся. И в нём то строится картина мира. Методом научного тыка и "многочисленными поколениями", каждое из которых даёт всё более детальную информацию (уменьшение количества неохваченных комбинаций).
Полезность от таких программ есть - можно "забросить" в область ещё неизвестного человечеству и запустить как утилиту по "добыче из руды алмазов".
[Ответ][Цитата]
kondrat
Сообщений: 4026
На: Конкурс по написанию эволюционной программы.
Добавлено: 08 апр 13 11:49
Мне тоже интереснее эволюционная составляющая.
Правда, пока ясны только требования к первым уровням обучающего мира и структура элементарной клетки.
Кстати, а вводятся ли в веса и пороги нейронной сети случайности?
[Ответ][Цитата]
 Стр.9 (37)1  ...  5  6  7  8  [9]  10  11  12  13  ...  37<< < Пред. | След. > >>