Добавяне
на некоректните ходове към дефиницията на AI
В [4] ние дефинираме AI, като
устройството, чието IQ е достатъчно високо.
Изчисляването на IQ става на базата на множество
от светове, като се взима средния успех на устройството за световете от това множество.
Световете, които се използват в [4] са генерираните от произволна машина на Тюринг (чиято
сложност не надвишава стойността на един параметър, който наричаме ниво на
интелигентност).
Множеството от тестовите светове, което сме използвали в [4] е така
избрано, че световете да бъдат максимално естествени и разбираеми. Целта не е
да затрудним устройството като го накараме да разбира неразбираеми светове, а
напротив да го улесним като направим тестовите светове максимално естествени и
разбираеми.
Един от проблемите в [4] е това, че там всички ходове са коректни. Тоест,
устройството, което дефинираме в [4] не знае какво е това некоректен ход и няма да може да се
справи в свят, в който част от ходовете са некоректни. Хубаво би било да
променим дефиницията от [4], така че тя да разрешава светове, в които има некоректни
ходове. От друга страна добавянето на некоректните ходове ще направи световете,
които сме избрали за тестови, да бъдат по-естествени и по-разбираеми.
Проблем в [4] са световете, които в даден момент зациклят. Щом света
се генерира от произволна машина на Тюринг, то тази машина може в определен
момент да зацикли. Тук проблемите са два: как да разберем, че машината е
зациклила и какво да направим след като разберем, че е зациклила. Първият проблем
в [4] го
решаваме простичко: Ако за 800 стъпки машината не върне резултат, ще считаме,
че е зациклила. Решението на първия проблем няма да променяме, но ще променим
решението на втория.
В [4], когато машината на Тюринг зацикля, ние я прекъсваме и рестартираме,
тоест запазваме това което е записано върху лентата, но променяме вътрешното й
състояние, така че следващото й състояние да бъде началното. Това решение не е
добро. Това е все едно да изключваме компютъра си като дръпваме щепсела, без да
се вълнуваме какво ще остане записано на харддиска. Подобно отношение към
компютъра може да направи неговото поведение твърде сложно и непрогнозируемо.
Прекъсвайки зациклящата програма ние излишно усложняваме света, който тя
генерира. По-добре би било след като я спрем, да кажем, че този ход е
некоректен и да върнем машината назад като възстановим информацията записана
върху лентата й до тази, която е била когато машината е започнала работа върху
този некоректен ход. По този начин това, че сме направили некоректен ход няма
да има никакво отражение на бъдещото, което ще се случи в съответния свят. По
този начин светът генериран от машината ще бъде много по-естествен и
по-разбираем.
Остана още един проблем. Възможно е произволната машина
на Тюринг да попадне в състояние (на лентата), при което всеки ход води до
зацикляне. Тоест, ще трябва да се откажем от изискването винаги да съществува
поне един коректен ход. Последното означава, светът да е такъв, че устройството
да не може „да умре“. В [4] ние вече се оказахме от изискването в света да няма
фатални грешки. По същата логика и по същите причини можем да се откажем и от
изискването устройството да не може „да умре“. Понятията „смърт“ и „фатална
грешка“ звучат като синоними, но ако погледнете как сме дефинирали тези
понятия, ще видите, че те са различни.