From: Тармо Пикаро ( tpikaro@turkuamk.fi ) Date: 12:02:27 17/08/99
Я как-то думал над тем как упростить задачу по разработке ИИ
и вот какие идеи меня посетили...
Задача. с внешнего мира каждую долю секунды приходит один бит информации
(то есть приходит 0 или 1) в каком то неизвестном никому порядке.
ваша задача сделать алгоритм предсказывания следующего бита так что бы
через определенное время предсказывания 100% совпадали с пришедшим битом.
итак... предположим что биты приходят в каком по математическом порядке то есть через
какое то время x придет та же комбинация битов. (1010101...,100100100...,101110111011...)
обозначим верхний ряд теми числами которые будут приходить.
например (возьмем к примеру ряд чисел 101010101...)
момент времени 1-ый 2-ой 3-ий ...
пришедший бит 1 0 1 ...
будет записываться в формате
1 0 1...
метод решения. подпишем под каждые пары битов ещё один бит причем так что
если информация меняется то поставим 1 , если нет - то 0 (xor операция)
1 0 1...
1 1...
здесь биты все время меняются поэтому во втором ряду будет всегда 1-ы.
теперь рассмотрим как ето будет выглядеть во времени...
1-ый момент.
1
2-ой момент.
1 0
1
здесь уже у нас имеется один бит и по закону сохранения информации ;)
предположим что самый нижний бит информации не изменится.
1 0
1
0 ; преположение что выше находящаяся 1 не изменится.
отсюда можно заключить что во втором ряду в следущий момент будет 1. (что бы получить 0)
1 0
1 1 ; воводим эту 1 из нижнего 0 и левой 1-ы.
0
отсюда приходит идея что для того что бы на втором месте была 1 нужена 1 и
на 1-ом ряду -и таким образом мы адаптируемся к этому ряду чисел
(после этого уже все будет предсказано верно)
1 0 1 0 1...
1 1 1 1...
0 0 0...
0 0...
0...
можно использовать подобную систему для предсказывания других очередностей например
1001100110011...
2-ой момент времени.
*-кой помечена попытка предсказать следующий бит
1 0 *1 предсказание=1 , неправильно !
1 *1
*0
3-ий момент времени.
1 0 0 *1 предсказание=1 , правильно !
1 0 *1
1 *1
*0
3,4,5... правильные предсказания.
1 0 0 1 1 0...
1 0 1 0 1...
1 1 1 1...
0 0 0...
0 0...
0...
все казалось бы ок - но вот все равно эта система не будет работать во всех случаях.
в случае когда у вас очередность 100100100... (она зацикливается) а также
когда у нас будет не арифметическая , а геометрическая прогрессия.
11010001000001...
каждую 2^n долю секунды будет 1 , в остальное время 0. невозножно адаптироваться.
(хотя возможно и человек не сумел бы к ней адаптироваться не зная
математики)
и потом где эта информация особенно нужна - нужно уметь предсказывать даже
те случаи когда часть битов изменяется , а часть остается такой же.
Например это можно применить при посылании обычного текста к ИИ -
ему надо будет самому понять что каждая буква включает 8 бит информации.
Если разработать подобную адаптационную систему - можно будет посылать все
что угодно к ИИ - рано или поздно он к нему адаптируется.
Причем можно постепенно добавлять ему новые восприниматели информации (зрение , слух , итд)
но как умудриться определять подобый ряд: 10xxx10xxx10xxx... (где x может быть либо 0 либо 1)
ещё идеи..
как я раньше писал что когда интеллекту становится сложно обрабатывать информацию
он создает новый уровень мышления. здесь это может являтся следующим -
интеллект попытается облегчить себе задачу тем что создаст новое
понятие из нескольких старых.
например обозначить 10 как 2. Тогда в примере адаптация проходит без
особых проблем. (правда все ещё остается вопрос на каком этапе он
будет оптимизировать себя и что он будет оптимизировать.)
оригинальный ряд: 100100100... адаптированный: 20202020...
2 0 2 0 2 0...
1 1 1 1 1
0 0 0 0
0 0 0
0 0
0
Правда здесь информация переводится в информацию - в то же время мы думаем -
мы можем объединять действие с информацией в одно понятие.
(например математическое x^y - x в степени y - это подразумевает под
собой x умножить само на себя y раз)
Получается что самая большая ошибка в нашем мышлении - отличие действия от информации ?