GotAI.NET

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

 

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

 Все темы | Новая тема Стр.4 (12)<< < Пред. | След. > >>   Поиск:  
 Автор Тема: На: Пример простого ИИ на любом ЯП
r
Сообщений: 837
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 10:20
Изменено: 13 май 19 10:59
Цитата:
Автор: гость
Есть два калькулятора - первый и второй. Первый умеет только умножать. Результат его есть функция от двух переменных:

результат1 = F1(x1,x2),
где x1 и x2 - перемножаемые числа

и есть второй калькулятор, умеющий четыре действия арифметики, его результат есть функция от трех переменных:

результат2 = F2(x1,x2,x3),
где x1 и x2 - числа, над которыми проводится выбранное действие, x3 - номер арифметического действия (1-сложение 2-умножение итд)

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

Так вот, параметр х3, для первого и второго типов управления будет означать "выполнить операцию умножения двух чисел", именно ее и никакую другую. То есть примитивизм первых двух типов управления заключается в том, что мы не даем управляемому никакой свободы действий. Мы ему сразу же говорим и что делать и КАК делать. Чем отличается 3й тип управления. Тем, что мы не указываем (без необходимости) четко что (а уж тем более как) делать. Мы указываем что нужно получить в результате. Ведь делегирование проблем (задач) тем и привлекательно, что исполнитель имеет более серьезную экспертизу в этой проблеме и он сам решает КАК ее решать. При таком подходе, параметр x3 будет означать не "выполнить операцию умножения двух чисел", а "получить произведение двух чисел". В чем же отличие. Обратите внимание во второй формулировке не указывается то, КАК получить. Ведь как известно, произведение можно получить сложением первого числа х1 столько раз, сколько указали во втором аргументе - х2 (минус один). Ну или наоборот. Наверное уже понятно, что я имею в виду. Но я стараюсь не голословить и для всего искать примеры.

На вашем (почти) примере. Я только его немного переиначу. Допустим есть функция F(x1,x2,x3), которая умеет складывать и умножать. Это аналог вашей F2. И есть две функции: F1 (x1,x2) - умножает, и F2 (x1,x2) - складывает. Ну и соответственно, чтобы не путаться, значения параметра x3: 1-умножение 2-сложение. Одно но, функция F сама ничего не делает, она делегирует выполнение арифм. действий функциям F1 и F2.

Как тело функции F(x1,x2,x3) выглядит в вашем представлении:
if(x3 == 1) return F1(x1,x2);
else if(x3 == 2) return F2(x1,x2);
else ...

Но поскольку мы говорим об интеллектуальном калькуляторе, то в моем представлении у функции F(x1,x2,x3) тела нет. Понимаете, нет кода у нее. Это и есть тот алгоритм А2, из моего предыдущего поста. Он порождается уже после старта работы над решением задачи неким универсальным алгоритмом А1. И построение это выполняется пошагово. То есть сначала, при параметре x3 = 1 будет попытка вызова функции F1(), и если вызов был успешным, то возвращаем результат. Но предположим, что при вызове функции F1 что-то пошло не так. Функция F1() является инструментом для функции F(). Думаю это должно быть понятно, что функция F() делегирует проблему перемножения функции F1(), она использует ее как инструмент. Ей не важно знать как перемножать числа, ей важно знать какой инструмент (какая функция) умеет это делать и проще поручить это дело инструменту. Итак, предположим, что при вызове функции F1 из функции F, случилась ошибка: исключение, зацикливание, функция в данный момент недоступна и т.д., что мог бы сделать умный алгоритм А1, если в него заложили перед этим соответствующие правила, объясняющие что умножение можно заменить сложением. Он бы после неудачного вызова F1(), сделал бы цепочку вызовов функции F2(). То есть результирующий алгоритм А2, в таком случае был бы совсем другим, а функция F содержала бы тело примерно такое:
F (2,3,1)
{
return F2(F2(2,2),2);
}

Другими словами, отвечая на ваш вопрос, разницу я вижу как минимум в том, что в умном калькуляторе параметр х3 влияет на выбор инструмента для решения задачи (F1 или F2), а параметры х1 и х2 не влияют. Но реализация умного калькулятора будет сильно не такой, как ее делают для обычного калькулятора. Повторюсь, не будет даже функций никаких, и параметров не будет, я их использовал для того, чтобы у вас была возможность хоть как-то понять написанное. Интерфейс взамодействия в 3м уровне управление это никакой не вызов функций, и не передача команд, это что-то такое, чего еще нет, со своим полностью декларативным языком.
[Ответ][Цитата]
IvanVlaskin1976
Сообщений: 9071
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 10:52
а может для полноты ввести новое обозначение - Интеллектуальная Функция это функция где по ходу выполнения функции есть хотя бы один условный оператор , а Информационная Функция это обычная функция без условных операторов
[Ответ][Цитата]
r
Сообщений: 837
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 11:15
Изменено: 13 май 19 11:17
Цитата:
Автор: Luarvik.
Да ни к чему эти все переименовывания и искусственное запутывания распутанного.
Интеллект - не интеллектуальная функция.
ИФ - порождение интеллекта.
А Интеллект - генератор таких функций/алгоритмов (помимо врожденных).
Ну я давно заметил, что вы используете слово интеллектуальная в отношении ИФ не как "умная" (порождающая), а как "продукт" (порождаемая). Ну как бы такой оборот тоже применим. Бывает же например интеллектуальная собственность - продукт интеллекта, значит могут быть и инт. функции, как продукт интеллекта.
Но проблем я вижу тут две:
1. Под определение "ИФ - порождение интеллекта" подпадают все функции когда-либо написанные человеком (программистами). А нам-то интересно выделить отдельную категорию функций, порождаемых именно искусственным интеллектом.
2. На самом деле нам не интересно ничего выделять, т.к. все эти функции относятся к алгоритму А2, и не представляют вообще никакого интереса. Даже для одинаковых произв. процессов алгоритм этот (А2) может в деталях немного отличаться от раза к разу (все зависит от стечения обстоятельств в конкретный момент). Нам всем интересен именно А1, а куча А2 на мой взгляд не заслуживает даже отдельного названия, типа ИФ.
[Ответ][Цитата]
Михайло
Сообщений: 2366
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 11:32
Интеллект - это способность вычислить значение y=F(x1,x2,...), зная лишь конечный набор значений y, x1, x2, ... (неполные данные о функции F).

[Ответ][Цитата]
IvanVlaskin1976
Сообщений: 9071
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 11:43
Интеллект это Система способная решать поставленные ей задачи
[Ответ][Цитата]
sma63
Сообщений: 708
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 12:12
Изменено: 13 май 19 12:26
Ну раз пошла такая пьянка...
Определение: Интеллект - функция выживания.
Следствие1: Все сущее - Интеллект (т.к. выжило (т.е. имеет право на существование)).
Следствие2: Не интеллект - что не существует и что не выжило.

Искусственный Интеллект - любые орудия труда.

Сильный Искусственный Интеллект - химера / 'прелесть' / философский камень современных алхимиков/алфизиков.
[Ответ][Цитата]
гость
217.115.10.*
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 12:14
Цитата:
Автор: гость
Где можно в интернете скачать код самого простого ИИ?
Простой ИИ это не алгоритм а структура данных, способная аккумулировать списки {ключ, значение}, "ассоциативный массив" в С++ и Java есть map<>, в С# Dictionary<>, в Python тоже есть ассоциативный массив, это и есть простой ИИ.
[Ответ][Цитата]
sma63
Сообщений: 708
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 12:19
Изменено: 13 май 19 12:22
А какой тогда самый простой, атомарный, канонический ИИ, где только суть/принцип явления без шелухи?
[Ответ][Цитата]
IvanVlaskin1976
Сообщений: 9071
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 12:26
атомарный интеллект это условный оператор if в языке Си
[Ответ][Цитата]
Вольфрамовый клaпaн
Сообщений: 13070
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 12:27
[Ответ][Цитата]
Вольфрамовый клaпaн
Сообщений: 13070
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 12:29
Цитата:
Автор: IvanVlaskin1976
Интеллект это Система способная решать поставленные ей задачи

А задачи кто Интеллекту будет ставить? Высший Интеллект?
[Ответ][Цитата]
sma63
Сообщений: 708
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 12:49
Изменено: 13 май 19 12:55
Цитата:
Автор: Egg

импликация...

Т.е. минимальный интеллект - таблица с двумя бинарными ячейками 0/1.

Вход / Выход (варианты)
0 / 0 0 1 1
1 / 0 1 0 1

На вход подаем 0 или 1. На выходе имеем ответ: 0 или 1 в зависимости от ФУНКЦИИ выживания. Если ответ неправильный - таблицу 'убиваем'.
[Ответ][Цитата]
Вольфрамовый клaпaн
Сообщений: 13070
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 12:55
Цитата:
Автор: sma63
Т.е. минимальный интеллект - таблица с двумя бинарными ячейками 0/1.

В вырожденном состоянии - да. Но в рамках понятийного контекста (некоторой онтологии) это будет выражение вида: если А, то В. Два события, имеющие ассоциативную (причинную, логическую) связность. То есть фильтр.
[Ответ][Цитата]
sma63
Сообщений: 708
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 12:57
Цитата:
Автор: Egg
А задачи кто Интеллекту будет ставить? Высший Интеллект?

В бытие нет целесоообразности. Целесообразность - химера адептов заднего ума.
[Ответ][Цитата]
Вольфрамовый клaпaн
Сообщений: 13070
На: Пример простого ИИ на любом ЯП
Добавлено: 13 май 19 12:58
Цитата:
Автор: sma63
В бытие нет целесоообразности.

Целесообразность - это оценка. А задача - это потребность. ))
[Ответ][Цитата]
 Стр.4 (12)1  2  3  [4]  5  6  7  8  ...  12<< < Пред. | След. > >>