GotAI.NET

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

 

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

 Все темы | Новая тема Стр.6 (19)<< < Пред. | След. > >>   Поиск:  
 Автор Тема: На: Второй уровень - Сознание - Ориентация в пространстве
Vpolevoj
Сообщений: 1408
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 31 окт 13 0:04
Изменено: 31 окт 13 0:22
Продолжу работу над языком-интерпретатором.

На этот раз рассмотрим оставшиеся вопросы: состояние самого робота и процедуру планирования.

У робота не так уж много состояний, и для их отображения нам потребуется не слишком много переменных.

Первая, и, пожалуй, самая главная характеристика робота - это его местоположение. Причем нам нужно отличать его РЕАЛЬНОЕ местоположение в лабиринте, и его ВИРТУАЛЬНОЕ положение в памяти. Мы должны это понимать и всегда отдавать себе отчет в том, что робот оперирует ТОЛЬКО МОДЕЛЬЮ в памяти, поэтому и координаты для него существенны не реальные, а те, которые отражают его положение внутри его модели. Поэтому:

X, Y - координаты робота (внутри модели)

А так же введем еще пару переменных для отражения координат:

X_Old, Y_Old, X_Pos, Y_Pos - вспомогательные переменные для хранения координат робота

Я считаю, что манипулируя тройкой координат, можно осуществить любые действия и преобразования, и преодолеть любые трудности, какие только возникнут на пути программиста.

Еще одной характеристикой у робота является направление его взгляда, или говоря проще - Направление. Всего для робота возможно четыре направления: на Север, на Восток, на Юг и на Запад. Поэтому создадим для фиксации направления специальную переменную перечисляемого типа с возможными состояниями: Север, Восток, Юг и Запад.

type Napravlenie (North, East, South, West)
Napr as Napravlenie

И так же создадим на всякий случай еще парочку переменных для хранения этой характеристики робота:

Napr_Old, Napr_Tek as Napravlenie

Ну, с характеристиками робота, вроде бы, покончили. Осталось всего ничего - продумать, как робот будет заниматься планированием своих действий, и что ему для этого нужно.

Поскольку первой его задачей является исследование лабиринта, то всё планирование на этом этапе в конечном счете должно сводится к устранению неисследованных областей. А для этого робот должен оценить, есть ли на его виртуальной карте неисследованные участки, и если есть, то - найти ближайший, и двигаться туда. Это и есть план.

Маленькое замечание. Поскольку поворот на 90 градусов тоже считается за ход, и по любому занимает время, то очевидно, что двигаться вперёд ВЫГОДНЕЕ, чем поворачиваться и проверять стенки справа и слева. Это можно будет сделать и потом, на обратном пути. Гораздо важнее по-быстрому определиться с границами лабиринта. Это, при правильном планировании, снимает часть вопросов и со стенками. Поэтому, если у робота есть возможность двигаться вперед - он будет двигаться вперед. Просто имейте это ввиду.

Итак. Робот стоит на текущей клетке, и ему нужно составить план следующего своего действия. Что он должен для этого сделать?

Поскольку его целью является исследование, то последним шагом его плана ВСЕГДА должно быть действие по исследованию какой-нибудь стенки - он должен осуществить проверку, есть ли там стенка, или же там открытый проход. То есть, последней командой в его плане должна быть команда V - "шагнуть вперед" в направлении неисследованной стенки. (А самой последней командой должна быть команда S - стоп. Но это, я надеюсь, все помнят и понимают.)

Поэтому составление плана действий у робота всегда начинается с проверки первого хода: а можно ли просто шагнув вперед открыть еще одну стенку? Или, говоря проще, что впереди? Есть ли впереди (прямо по ходу) неисследованная стенка? И если это так, и впереди действительно неисследованная область, то всё - план составлен. Нужно в переменную Plan поместить команду V (шаг вперед) и закрыть её командой S (стоп). Это и будет простейший план. После чего передать управление исполнительным органам командой G (которая в переменную Plan не помещается, а является переключателем вида работ).

Сложнее, если такой ход невозможен. Например, впереди стенка, и робот уже один раз уперся в неё своим лбом. Куда двигаться дальше? Вправо, влево? Назад? На сколько шагов? Ответ известен: к ближайшей неисследованной стенке. А где она - ближайшая?

Я в своей программе использовал следующий алгоритм поиска ближайшего неисследованного места. Я завел счетчик, который по циклу перебирает всего три возможных действия доступных роботу: шаг вперед, поворот вправо, поворот влево. Любое возможное поведение, какое бы сложное оно ни было, является комбинацией этих простейших команд. Поэтому все планирование поведения робота можно свести к элементарному перебору последовательности его команд.

Ну и поскольку нас интересует не любое случайное неисследованное место, а - ближайшее, то и перебор мы начинаем с самого короткого пути, с одного колеса счетчика. Если в конце этого простого пути неисследованного участка не оказывается, то количество колес счетчика увеличивается на 1, и поиск пути методом перебора повторяется. Всего возможно 100 шагов (поскольку весь лабиринт состоит из 100 клеток), плюс повороты (которых тоже может быть не больше 100), и того максимальное количество колес в счетчике - 200 (этого должно хватить с запасом).

В конце каждого полученного этим способом маршрута не забываем добавить две команды - V и S, и посмотреть, нет ли там неисследованной стенки. Вот и всё. Первая же такая последовательность, в конце которой окажется неисследованная область, и будет являться КРАТЧАЙШЕЙ (как по количеству шагов, так и по времени исполнения, и по времени обдумывания тоже, кстати, ибо любые другие решения, даже если они окажутся оптимальнее, будут получены ПОЗДНЕЕ, а значит, с большими затратами времени).

Итак, что же у нас получается? Вот что.
Для планирования действий роботу потребуется, во-первых, Счетчик.

type Strelki = (V, P, L) - возможные действия робота, они же команды
Schetchik[200] as Strelki - массив переменных перечисляемого типа соответствующих командам робота образует счетчик максимально возможной длины - 200 колесиков
Kol_Koles - переменная содержащая текущее количество колесиков в счетчике

И к счетчику обязательно нужно добавить функции его обслуживающие.

Schetchik_ini(n) - функция создания (инициации) счетчика из n колесиков
Schetchik_Shag() - один шаг счетчика, функция увеличивающая состояние счетчика на 1, проворачивающая самое младшее колесико на одно деление. Результатом работы этой функции является изменение текущего состояния счетчика, и возвращается флаг ошибки, если после выполнения очередного шага счетчик был переполнен.

Кроме того, поскольку, тупо перебирая последовательность возможных действий, у нас могут встретиться зацикленности типа P,P,P,P,P... (вращение на месте), P,L,P,L,P... (дерганье), V,P,P,V,P,P,V... (хождение по кругу) и прочие более сложные несуразности, то неплохо было бы сделать проверку для отсечения всех подобных глупостей.

Я выкрутился из этой ситуации следующим образом. Начиная проверку любого плана (полученного, как вы помните, методом примитивнейшего перебора), робот сбрасывает во всех клетках состояние переменной отражающей фиксацию направлений, в которых робот оказывался в каждой клетке. А затем, мысленно пробегая по виртуальному лабиринту, робот отмечает в каждой пройденной им клетке то направление, в котором он оказался. И в случае первого же повторения дает отбой. Любое повторяющееся состояние будет означать вход в зацикленность, и поэтому дальнейшая проверка плана нецелесообразна.

Функция выполняющая всё это пусть будет называться просто:

Proverka_Plana() - проверка плана на зацикленности, и так же - на наличие в конце пути неисследованного участка стены. То есть, результатом работы этой функции будет либо сигнал ошибки, либо "добро" на исполнение.

Всё?

Да вроде бы, всё...
Осталось только всё это реализовать. Но это уже совсем другие трудности.
[Ответ][Цитата]
Toxygen
Сообщений: 521
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 31 окт 13 1:05
Цитата:
Автор: Vpolevoj
Куда двигаться дальше? Вправо, влево? Назад? На сколько шагов? Ответ известен: к ближайшей неисследованной стенке. А где она - ближайшая?

Я в своей программе использовал следующий алгоритм поиска ближайшего неисследованного места. Я завел счетчик...

Вы главное не забывайте, что это все должен генерировать мозг таракана, т.е. он сам должен решать (основываясь на чем-то) куда идти, а не так что ему сразу "ответ известен". Таракан сам должен генерировать то, что вы тут сейчас описали.
[Ответ][Цитата]
Luarvik.
Сообщений: 17287
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 31 окт 13 1:42
Изменено: 31 окт 13 2:16
Цитата:
Автор: Toxygen
... это все должен генерировать мозг таракана, то, что ... тут сейчас описали.

Насколько я понял, для имитации(по проекту) тараканьего "мозга" это совсем не обязательно. Тем более, что было сказано, что неважно, как эти инструкции попадут в таракана - "главное, чтобы костюмчик сидел". А если важен только результат, то пусть заказчик таракана считает, что думает таракан, а не В.Полевой (но мы то знаем ! и об этом проекте "мы говорим Ленин, подразумеваем - партия...", т.е. "говорим таракан, подразумеваем - В.Полевой", ну и обратно...)
[Ответ][Цитата]
daner
Сообщений: 4593
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 31 окт 13 6:37
Изменено: 31 окт 13 7:32
Относительно описанного алгоритма.
Не знаю грустно это или весело.... с одной стороны представлен весьме универсальный алгоритм планирования.
Да именно так. При условии что модель самого робота известна, а среда статична, то такой алгоритм будет работать для любой задачи (далеко не только для лабиринта).
С другой стороны, наивность алгоритма выходит за любые рамки. Судя по всему с выч. сложностью вы не знакомы даже приблизительно. Хорошо хоть упомянули о проверки на зацикливание.
Но этого мало.
Давайте разберем ваш подход.
По максимому вам нужно перебрать вариантов. Причем ваш метод проверки на зацикливание не оптимизирует сам перебор. Короче даже вам должно быть понятно что применение подобнах алгоритмов не реально.
[Ответ][Цитата]
daner
Сообщений: 4593
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 31 окт 13 7:30
сюда еще можно добавить то, что созданный вами мирок до крайности примитивен.
в реальности и карты нааа много больше и на действия робот гораздо богаче.
[Ответ][Цитата]
daner
Сообщений: 4593
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 31 окт 13 15:26
Изменено: 31 окт 13 15:27
>>> Vpolevoj

кстати, все хотел поинтересоваться.
это хобби такое мёртвые языки использовать? ну типа как латынь.
[Ответ][Цитата]
Vpolevoj
Сообщений: 1408
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 06 ноя 13 5:52
Изменено: 07 ноя 13 23:38
Немного опишу текущее положение дел, а то получается слишком долгая пауза (которую можно интерпретировать по-разному).

Сижу, понемногу пишу коды (программирую, то есть).

Почти доделал первую часть - формирование полной модели лабиринта в мозгу робота (хотя это и без того мною уже было сделано, но пришлось многое переделывать). И сделал "нашлепку" - внешний интерфейс для будущего ввода любым пользователем программы управления роботом на языке-интерпретаторе (который я еще не сделал).

Пока в этой "нашлепке" обрабатываются уже готовые функции и процедуры (происходит их вызов из основной программы), но я надеюсь со временем добраться до создания полноценного языка-интерпретатора. Кстати, все еще жду помощи в этом вопросе. Может быть кто-то уже занимался чем-то подобным, или знает как, или у кого-нибудь есть соответствующая литература? Любая помощь по этой теме пока мною принимается (пока - это пока я не сел за его реализацию, тогда любая внешняя поступающая информация на эту тему будет мною игнорироваться).

Еще несколько слов о комментариях чуть выше.

Я всё читаю, но не на всё считаю нужным отвечать (я уже писал об этом Luarvik-у). Поскольку не всякую мысль, высказанную в конкретной теме, считаю конструктивной (и уместной). К тому же, некоторые посты могут оказаться и вовсе вредными (поэтому я проверяю их еще и на возможность правки/удаления).

Из всего ранее написанного единственное чтобы я отметил, так это указание daner-а на нереализуемость выбранного мною переборного алгоритма поиска пути.
Цитата:
Автор: daner
Относительно описанного алгоритма.
По максимому вам нужно перебрать вариантов. Причем ваш метод проверки на зацикливание не оптимизирует сам перебор. Короче даже вам должно быть понятно что применение подобнах алгоритмов не реально.

Я поначалу хотел на него ответить.
Но не в плане возражения, а всего лишь в плане уточнения.

Поскольку число шагов при моем варианте поиска решения составляют степени тройки: один шаг - три варианта, два шага 3 в степени 2 варианта, и т.д. И почему бы, подумал я, daner-у просто взять и не написать, что максимальное число шагов у меня будет 3 в степени 200! А у него в посте приведено какое-то "дурацкое число", а потом взял калькулятор, возвел тройку в двухсотую степень, и получил примерно это же число. Все сходится!
Вот только само по себе это число мало что говорит "русскому сердцу".

И делать с ним я ничего не буду. По одной постой причине. Потому что этот мой алгоритм работает. И робот полный план лабиринта используя этот алгоритм планирования все же составляет. Никакой 3^200 у него не возникает. Для наглядности я внизу основной формы вывел окошечко, где показывается число шагов в последнем плане, составленном роботом. Там обычно прыгают цифры 1 и 2, иногда - 3,4,5. Редко больше.

Экспериментируя, я обратил внимание, что при числе шагов в плане до 10-12 робот выполняет все почти мгновенно, при числе шагов 14-15 возникает секундная задержка, при числе шагов 18 (есть там одна такая ситуация), время ожидания (на моем компьютере) чуть больше минуты, при числе шагов 19 и больше - ждать приходится очень долго (я обычно снимаю задачу через диспетчер задач). Это видимо и есть реальный предел для подобного алгоритма.

Поэтому я думаю разработать и внедрить альтернативный алгоритм поиска пути. Чуток попозже.

Но вот только задача моя состоит вовсе не в этом!

Почему-то никто (практически никто) не видит ("за деревьями леса") сути вопроса.

Я заявил эту тему как "Ориентацию в пространстве", причем не в любом пространстве (хотя я и взял в качестве объекта лабиринт), а - внутри пространства МОДЕЛИ. Это и есть моя цель. Нужно смотреть не на то, как робот ориентируется внутри лабиринта (ищет пути), а на то, как робот ориентируется внутри своей модели. Это главное!

Но думаю расширить условие своей задачи, полнее раскрывающее мой замысел, чуть позже, когда будет полностью завершена первая часть, и будет готов вешний интерфейс с языком-интерпретатором. Вот тогда можно будет переформулировать задачу. И заняться наконец ориентированием в пространстве модели.
[Ответ][Цитата]
Slava
Сообщений: 3070
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 06 ноя 13 6:42
Цитата:
Автор: Vpolevoj

Но вот только задача моя состоит вовсе не в этом!

Почему-то никто (практически никто) не видит ("за деревьями леса") сути вопроса.

Я заявил эту тему как "Ориентацию в пространстве", причем не в любом пространстве (хотя я и взял в качестве объекта лабиринт), а - внутри пространства МОДЕЛИ. Это и есть моя цель. Нужно смотреть не то, как робот ориентируется внутри лабиринта (ищет пути), а на то, как робот ориентируется внутри своей модели. Это главное!

Но думаю расширить условие своей задачи, полнее раскрывающее мой замысел, чуть позже, когда будет полностью завершена первая часть, и будет готов вешний интерфейс с языком-интерпретатором. Вот тогда можно будет переформулировать задачу. И заняться наконец ориентированием в пространстве модели.


Простите, а что такое - пространство модели?
У меня по этому поводу роятся какие-то смутные и не очень приятные мысли
[Ответ][Цитата]
Vpolevoj
Сообщений: 1408
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 06 ноя 13 23:55
Изменено: 07 ноя 13 0:22
Цитата:
Автор: Slava
а что такое - пространство модели?

Попробую объяснить.

Вот есть Лабиринт.


Для нашего робота этот Лабиринт представляет собой весь мир, в котором он живет. И другого мира у него нет. И этот Лабиринт существует вне зависимости от того, что робот о нём знает или не знает - он для него ОБЪЕКТИВЕН (не обращайте внимания на тот факт, что этот Лабиринт я сам придумал и нарисовал, и что он существует в компьютере в виде информации - и на самом деле он виртуален - помните, что все относительно). Для робота этот Лабиринт самая что ни на есть объективная реальность.

В памяти робота я выделил специальную область для формирования плана этого Лабиринта. И он там может сформировать МОДЕЛЬ этого Лабиринта. Напомню, что для робота Лабиринт и есть весь мир, точно так же, как для нас таким миром является вся Вселенная, которая тоже существует независимо от нас, и от того, что мы о ней знаем или не знаем, хотя и мы тоже, как и этот робот, можем постепенно формировать у себя в голове МОДЕЛЬ этого окружающего нас мира.

Дихотомическое деление на объективный реально существующий окружающий мир и его отражение - МОДЕЛЬ в мире субъективном - это ПЕРВОЕ разделение (и оно основное!), с которым сталкивается разработчик ИИ. Этот вопрос (о разделении пространства на мир и его МОДЕЛЬ) мы достаточно подробно (я так считаю) рассмотрели в своё время с Luarvik-ом (хоть он на меня за что-то и обижается).

И вот робот начал исследовать Лабиринт.


Что-то уже исследовал, что-то пока осталось для него неизвестным. (Как, впрочем, и у нас в деле познания Вселенной: что-то мы о ней уже знаем, но гораздо больше остается неизвестным).

Это - понятно. Взаимодействие робота с Лабиринтом не выходит за рамки существующей научной парадигмы. Есть реальный мир, а есть процесс его познания - постепенного формирования ПОЛНОЙ МОДЕЛИ этого мира (для моего Лабиринта, кстати, это возможно, чего не скажешь о всей Вселенной). И обычно все исследователи именно на этом взаимодействии и останавливаются.

Но вот представим теперь себе такую ситуацию. Робот еще не успел до конца исследовать Лабиринт (его МОДЕЛЬ еще не полная), а его взяли и перенесли в случайное произвольное место этого же Лабиринта.



И что? Все начинать заново? Но ведь часть Лабиринта до этого момента он уже успел исследовать! Не пропадать же добру? Но вот вопрос: как можно использовать уже существующий кусок знаний о Лабиринте, если текущее местоположение неизвестно?

То есть, в этом случае робот вынужден решать уже не одну, а сразу ДВЕ ЗАДАЧИ! Он по-прежнему должен исследовать до конца ВЕСЬ Лабиринт (задачу познания никто для него не отменял), но кроме этого, он должен еще каким-то образом привязать свои текущие данные (новые знания) к своим старым знаниям, и суметь воспользоваться этими своими старыми знаниями (иначе в самом процессе познания не будет никакого толка, и проще будет процесс познания всегда начинать "с чистого листа").

Таким образом, я фактически ввожу ВТОРОЕ дихотомическое разделение. Помимо деления на объективный мир и его МОДЕЛЬ, я ввожу еще одно противоречие: между текущими данными (текущей задачей в условиях неопределенности - ВСЕГДА!) и старыми уже известными нам знаниями.

Это новое противоречие формулируется так: как, каким образом можно использовать старые знания (старую, уже имеющуюся в памяти МОДЕЛЬ) для решения текущей задачи (и можно ли вообще), если условие текущей задачи до конца не определено? То есть, нужно поковыряться в своей старой Модели, и разобраться в том, возможно ли её применить к текущей задаче или же нет? То есть, переформулируя это положение, нужно СОРИЕНТИРОВАТЬСЯ в своей старой Модели (не в реальном мире сориентироваться, заметьте, а - в старой Модели), и нужно понять, годиться ли она на что-нибудь, или ни на что не годиться - стереть и забыть.

Вот это я и называю "Ориентирование в пространстве Модели".

Еще раз условия.

Модель - это отражение реального мира.

Но Модель никогда не бывает полной и адекватной - она всегда неполная, и не всегда адекватная (или более категорично: всегда неадекватная!).

Задача (если это Задача) всегда связана с условием неопределенности (иначе она не была бы Задачей), то есть, текущая Модель эту Задачу не описывает и не решает (иначе не возникло бы и самой Задачи).

Отсюда вытекают ДВА противоречия (о них я уже сказал).

Первое: нужно исследовать Мир для более адекватного его отражения в Модели, и тогда текущая Задача будет решена. Деление первое: Мир - Модель.

Второе: нужно рассмотреть уже имеющуюся Модель на предмет возможности её использования для решения текущей Задачи (хотя бы частично, или в измененном виде), несмотря на то, что по условию она для решения этой Задачи не подходит. То есть, заниматься не исследованием объективного Мира, а - исследованием и преобразованием своей же Модели. И это - уже второе противоречие: как негодную Модель сделать годной! И можно ли это сделать?!

Именно эта задача и ставится мною во главу угла в данной теме "Робот в Лабиринте".
[Ответ][Цитата]
Toxygen
Сообщений: 521
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 07 ноя 13 0:08
Изменено: 07 ноя 13 0:09
Не вижу смысла (конечной цели) всех этих решений. В том виде, в котором вы сейчас моделируете интеллект таракана в итоге не даст ни капли "интеллектуальности". Получится просто бот, который просто обходит лабиринт и заполняет свою память данными о нем. Ваш таракан не создает алгоритм обхода, и не создает "модель мира". Он лишь "заполняет формуляр" (вы дали ему уже готовый формуляр) данными, которые получил в процессе путешествия. Но он не способен создать "формуляр" самостоятельно (т.е. сформировать свое мировоззрение).
[Ответ][Цитата]
Vpolevoj
Сообщений: 1408
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 07 ноя 13 0:40
Изменено: 07 ноя 13 0:41
Цитата:
Автор: Toxygen
Не вижу смысла (конечной цели) всех этих решений.

Разберем это предложение: "Не вижу смысла (конечной цели) всех этих решений."

Кто не видит смысла?
Очевидно, сам автор этого высказывания, то есть, Toxygen не видит смысла "во всех этих решениях".

А есть ли еще участники, помимо Toxygen-а, кто бы видел смысл "во всех этих решениях"?
Очевидно, есть. Например, я сам - автор данной темы. Я вижу в этом смысл: иначе бы не делал.

То есть, кто-то видит смысл, а кто-то его не видит. Это нормально (и называется это состояние "плюрализм").

Следующий вопрос: а что, Toxygen принимает участие в данном проекте, или его кто-то насильно заставляет принимать в нем участие, принуждает к этому?
Нет. Не принимает, и никто его не заставляет и не принуждает.

Значит, от того, что Toxygen не видит в "этих решениях никакого смысла" никому ни жарко и ни холодно, поскольку от него ничего в данном проекте не зависит. Видит он смысл или не видит - это ни на что не влияет.

А имеет ли хоть какой-нибудь смысл попытаться переубедить этого Toxygen-а, и сделать так, чтобы он наконец-то увидел бы в этом проекте хоть какой-то смысл? Будет ли от этого толк?

Очевидно, что ничего от этого не изменится. Поскольку Toxygen непосредственно не занимается данным проектом, и не имеет к нему никакого отношения, то от того, будет он "видеть смысл" или не будет, абсолютно ничего не изменится.

А значит - это его ЛИЧНОЕ ДЕЛО.

Хочет - видит, а хочет - не видит.
И никто его в этом его видении не переубедит.
(А я, к тому же, и не собираюсь никого переубеждать.)
[Ответ][Цитата]
Toxygen
Сообщений: 521
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 07 ноя 13 0:51
Изменено: 07 ноя 13 0:52
Да пожалуйста Я лишь пытаюсь вам указать на то, что вы тут занимаетесь совсем не тем, что объявили изначально (создание интеллекта тараканного уровня). Вы как родитель, который не знает как рожать детей, и вместо того, чтобы решать эту проблему, занимается покупкой пеленок, подбором кроватки, обустройством комнаты для будущего чада. А что вы в конце концов положите в эту кроватку и как вы это получите - вы не знаете.
[Ответ][Цитата]
Андрей
Сообщений: 3943
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 07 ноя 13 1:09
Цитата:
Автор: Vpolevoj
В памяти робота я выделил специальную область для формирования плана этого Лабиринта. И он там может сформировать МОДЕЛЬ этого Лабиринта.
Представьте себя самого в таком лабиринте. Разве Вы станете зубрить схему лабиринта? Нет! Вы попытаетесь запомнить какие-то ключевые реперные точки, характерные повороты, чекпоинты, оличительные места, которым Вы дадите условные имена и по которым будете делать прогнозы, строить свои планы.

"Модель" - это не просто монолитная копия, фотография. Модель должна быть функциональной. Модель должна позволять ставить и решать задачи. Мне думается, первое действие в этом процессе - 1) фрагментация модели. Второе действие - 2) связывание фрагментов в контексте решения конкретной задачи. Ничего этого у Вас пока не просматривается.

Цитата:
Автор: Vpolevoj
Он по-прежнему должен исследовать до конца ВЕСЬ Лабиринт
А человек с интеллектом просто искал бы первый знакомый поворот...
[Ответ][Цитата]
Vpolevoj
Сообщений: 1408
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 07 ноя 13 1:23
Цитата:
Автор: Андрей
Представьте себя самого в таком лабиринте. Разве Вы станете зубрить схему лабиринта? Нет! Вы попытаетесь запомнить какие-то ключевые реперные точки, характерные повороты, чекпоинты, отличительные места, которым Вы дадите условные имена и по которым будете делать прогнозы, строить свои планы.

А человек с интеллектом просто искал бы первый знакомый поворот...

Андрей, спасибо за конструктивные мысли.

Я ими обязательно воспользуюсь.
[Ответ][Цитата]
Toxygen
Сообщений: 521
На: Второй уровень - Сознание - Ориентация в пространстве
Добавлено: 07 ноя 13 1:55
Изменено: 07 ноя 13 1:58
Добавлю еще не много:
Цитата:
Автор: Vpolevoj
Итак, чем Интеллект (реальный Интеллект) отличается от простого "программирования ручками"?

Поскольку я считаю Интеллект алгоритмом, то есть, воспринимаю его как определенную форму обработки информации, то я и подхожу к процессу создания Искусственного Интеллекта как к алгоритму.

Потому что абсолютно не важно, каким именно образом получена та форма обработки информации, которую реализует Интеллект (естественным или искусственным, эволюционно, методом проб и ошибок, или целенаправленно, по плану, "ручками"), важен лишь результат.

А когда получен результат, вот тут на первый план и выходит "чисто философский" вопрос: а что, собственно, мы получили? Как оценить, чем измерить? Где критерии для проверки - верификации того, что мы сами и сделали?

Так что, Андрей, на первый твой вопрос я ответил бы так. Ничем не отличаются.


Здесь автор топика заблуждается. Интеллект является алгоритмом. Но он является алгоритмом генерации алгоритмов (решения задачи). Поэтому вот это:
Цитата:
Автор: Vpolevoj
Потому что абсолютно не важно, каким именно образом получена та форма обработки информации, которую реализует Интеллект (естественным или искусственным, эволюционно, методом проб и ошибок, или целенаправленно, по плану, "ручками"), важен лишь результат.

- грубейшая ошибка в рассуждении. Если вы сами вкладываете "ручками" (именно этим вы сейчас занимаетесь) программе алгоритм решения задачи - то эта программа уже не может являться интеллектом, она является лишь исполнителем - ботом. Если вы не можете/отказываетесь это понять, то так и быть.. буду знать, что еще одной заблудшей душой на этом форуме больше
[Ответ][Цитата]
 Стр.6 (19)1  2  3  4  5  [6]  7  8  9  10  ...  19<< < Пред. | След. > >>