Игры будущего: Об объектной модели мира и о Земле

Jan 29, 2008 18:43

Об объектной модели мира и о Земле

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

В случае программы факты не будут храниться в форме текста, нет. Для создания представления о мире и для работы с ним достаточно удобным мне видится использование объектной модели.

Что из себя представляет данная модель?

Весь мир считается состоящим из отдельных объектов. Каждый объект имеет собственное имя и характеризуется набором свойств. Также у каждого из объектов есть определённые функциональные возможности (т.е. то, что он умеет делать) - "методы". Скажем, объект "Вася Иванов" обладает свойствами "пол", "возраст", "цвет кожи" и др. Он умеет ходить, говорить, дышать и пр.

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

Между всеми известными классами строятся две важнейшие иерархии. Иерархия "целое - часть" упорядочивает наборы объектов, являющиеся частями других. Скажем, каждый представитель класса птиц состоит из представителей класса "ноги", "крылья", "голова" и пр. Тем самым, устанавливается вложенность объектов в мире друг в друга.

Вторая иерархия - "общее - частное", связывающая более общие классы с менее общими. Например, птицы - это хордовые, поэтому класс птиц является наследником класса хордовых (наследует, т.е. перенимает свойства и возможности предка). Класс хордовых, в свою очередь, является наследником класса животных вообще.

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

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

Свойства - это такие объекты, которые обладают простейшей структурой, являются частями другого объекта и могут принимать одно значение из некоторого набора. Свойство "ум", например, может принимать одно значение из набора "умный", "тупой", "гений", "посредственность" и т.д.

На ЯОФ мы бы записали слово "умный" как атрибут - "kind:умный", в объектной модели это стало бы свойством и выразилось бы как "intellect=smart", характеризуя конкретное значение конкретного свойства.

Возможность (умение, процесс) - это объект, имеющий определённую привязку ко времени, рождающийся по воле другого объекта или стихийно и затрагивающий несколько (или 0) объектов окружающего мира. Любой процесс происходит при определённых условиях, которые мы назовём, как и в ЯОФ - обстоятельствами. Они аналогичны свойствам для обычных объектов. Первичным обстоятельством является время.

Соответствие между объектной моделью и текстом всё-таки есть. Это и позволяет выразить её словесно, а также выполнить обратное преобразование. Ниже описаны соответствия между частями речи в русском языке и элементами объектной модели.
  1. Нарицательное имя существительное - класс или объект
  2. Собственное имя существительное - объект
  3. Местоимение - ссылка на объект, метод, свойство
  4. Глагол - возможность
  5. Прилагательное - свойство объекта
  6. Наречие - свойство возможности как объекта (обстоятельство)
  7. Числительное - число в модели мира. Представитель класса чисел
  8. Предлог - нет представления, нужен лишь для управления
  9. Союз - преобразуется в логику
  10. Частица - преобразуется в логику
  11. Междометие - нет представления

Итак, посредством применения ряда правил фраза на естественном языке может быть преобразована в объектную модель. Далее в данной модели опять-таки по запросам на естественном языке могут быть произведены какие-то рассуждения, получен результат. Последний преобразуется во фразу на естественном языке и выдаётся конечному пользователю.

Да, ещё я же хотел вам рассказать о Земле :) Её тоже можно осмыслить как объект окружающего мира, относящийся к классу планет. Тот, в свою очередь, относится к классу небесных объектов, а последний - к классу объектов вообще.

Игры будущего

Previous post Next post
Up