Символьное моделирование

Материал из Циклопедии
Перейти к навигации Перейти к поиску

Символьное моделирование (s-моделирование) — моделирование произвольных объектов в человеко-машинной среде (s-среде) на основе систем визуальных, аудио- и др. символов. S-моделирование изучает системы символов и соответствующие им системы кодов, методы построения, сохранения, накопления, поиска и передачи с помощью программируемых машин (компьютеров, смартфонов и др.) s-моделей природных и изобретаемых объектов. Применяется в науке, инженерном деле и других видах интеллектуальной деятельности для построения моделей сообщений, интерпретации сообщений на моделях систем понятий, создания информационных ресурсов, программирования поведения машин, проектирования, информационного взаимодействия, обучения и др.

Инструмент интеллектуальной деятельности[править]

S-модель объекта изучается как отображение в s-среду, выполненное при заданных ограничениях, соответствующих планируемому применению s-модели (напр., цифровое фото — отображение визуального объекта, сделанное с заданным разрешением; программа решения некоторой задачи — отображение выбранного метода решения, учитывающего заданную совокупность ограничений). В s-моделировании не предполагается никаких ограничений на виды и типы заменяемых s-символами объектов: объекты могут иметь любую физическую сущность, размещение, происхождение и назначение. S-символы одного вида могут заменять s-символы другого (напр., визуальные символы могут заменять аудиосимволы).

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

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

До изобретения программируемых машин[править]

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

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

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

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

Развитие s-моделей в виде графических схем и одновременное совершенствование речи привели к графической модели речи. Появилась письменность. Она стала не только важным этапом в становлении s-моделирования, но и мощным инструментом развития интеллектуальной деятельности. Теперь описания объектов моделирования и связей между ними могли быть представлены композициями рисунков, схем и текстов.

С созданием возможности фиксировать наблюдения, рассуждения и планы в виде s-моделей сообщений, которые можно хранить и передавать, актуальными стали задачи изобретения носителей сообщений, инструментов для рисования и письма, красящих средств и др. Это были первые задачи на пути построения s-среды.

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

После изобретения программируемых машин[править]

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

S-моделирование широко применяется для моделирования объектов, изучаемых в физике, химии, науках о Земле, робототехнике, медицине (напр., компьютерная томография) и других областях науки и техники. Служит эффективным средством совершенствования сложных человеко-машинных систем в экономике, военном деле, государственном управлении и др. Способствует развитию систем автоматизированного проектирования (САПР), сокращает сроки изобретения и повышает качество новой техники и технологий. Напр., цифровые 3D-модели физических объектов используются для послойного формирования моделируемых объектов с применением 3D-принтеров, обеспечивающих быстрое и малозатратное изготовление прототипов физических моделей и готовых объектов [деталей и узлов машин, форм для литейного производства, строительных конструкций, имплантантов (фрагментов костей, хрящевых тканей и др.) и др.]. Цифровые модели для 3D-печати могут быть созданы с помощью САПР, 3D-сканера или обычной цифровой камеры и фотограмметрического программного обеспечения.

S-моделирование, являясь средством описания смыслов, представленных системами понятий и знаний, не только сопровождает абстрактное мышление, но и служит инструментом его совершенствования. Компактность и выразительность символьных моделей позволяют эффективно сочетать детализацию и обобщение в процессе рассуждений. S-модели изучаемых объектов — испытанный инструментарий механизма ассоциаций, от продуктивности которого зависят судьбы изобретений и научных открытий.

С ростом доступности компьютеров для пользователей из различных областей деятельности, начавшимся в 1970-х гг., наблюдается убывание доли математических задач, решаемых с помощью компьютеров (изначально созданных как средства автоматизации математических вычислений), и рост доли нематематических задач (коммуникационных, поисковых и др.). Когда во второй половине 1960-х гг. стали производиться компьютерные терминалы с экранами, начались разработки программ экранных редакторов, предназначенных для ввода, сохранения и коррекции текста с отображением его на полном экране [одним из первых экранных редакторов стал O26, созданный в 1967 для операторов консоли компьютеров серии CDC 6000; в 1970 был разработан vi — стандартный экранный редактор для ОС Юникс (Unix) и Линукс (Linux)]. Применение экранных редакторов не только увеличило производительность труда программистов, но и создало предпосылки для существенных перемен в инструментарии автоматизированного построения символьных моделей произвольных объектов. Например, использование экранных редакторов для формирования текстов различного назначения (научных статей и книг, учебных пособий и др.) уже в 1970-е гг. позволило значительно увеличить производительность создания текстовых информационных ресурсов. В июне 1975 американский исследователь Алан Кей [создатель языка объектно-ориентированного программирования Смолток (Smalltalk) и один из авторов идеи персонального компьютера] в статье «Personal Computing» («Персональные вычисления») написал: «Представьте себя обладателем автономной машины знаний в портативном корпусе, имеющем размер и форму обычного блокнота. Как бы вы стали использовать её, если бы её сенсоры превосходили ваше зрение и слух, а память позволяла хранить и извлекать при необходимости тысячи страниц справочных материалов, стихов, писем, рецептов, а также рисунки, анимации, музыкальные произведения, графики, динамические модели и что-то ещё, что вы хотели бы создать, запомнить и изменить?». Это высказывание отражало совершившийся к тому времени поворот в подходе к построению и применению программируемых машин: от средств автоматизации в основном математических вычислений к средствам решения задач из различных областей деятельности. В 1984 компания «Kurzweil Music Systems» (KMS), созданная американским изобретателем Реймондом Курцвейлом, произвела первый в мире цифровой музыкальный синтезатор Kurzweil 250. Это был первый в мире специализированный компьютер, который жестовые символы, вводимые с клавиатуры, преобразовывал в музыкальные звуки.

Примерами результатов s-моделирования, сыгравших выдающуюся роль в методологическом обеспечении построения человеко-машинной среды решения задач, могут служить: изобретённая Дж. фон Нейманом модель цифровой электронной машины с хранимыми в общей памяти инструкциями программы и данными [известная как модель фон Неймана (the von Neumann model) и архитектура фон Неймана (the von Neumann architecture)]; изобретённые создателем Веба Т. Бернерс-Ли протокол HTTP (англ. HyperText Transfer Protocol — протокол передачи гипертекста, являющийся протоколом прикладного уровня, определяющим правила передачи сообщений в гипермедийных системах, и унифицированный идентификатор ресурса URI (англ. Uniform Resource Identifier), ставший стандартом записи адреса ресурса, размещённого в сети Интернет. На основе s-моделей изобретённых объектов созданы электронная почта, Веб, поисковые системы IP-телефония, интернет вещей и другие интернет-сервисы; цифровая аудио-, фото- и видеозапись; системы автоматизированного проектирования (САПРы); компьютерные тренажёры и роботы, системы цифровой связи, навигационные системы, 3D-принтеры и др.

Основные понятия[править]

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

Научное обеспечение развития s-среды и реализуемых на её основе информационных технологий представлено в виде связанных между собой методологических комплексов решения базовых задач s-моделирования и физико-технического воплощения s-машин и s-среды. Результаты первого комплекса служат основанием разработок систем символов и кодов; языков спецификаций, запросов и программирования; архитектур s-машин и соответствующих им систем команд; ассемблеров, компиляторов и интерпретаторов; операционных систем и библиотек программ; редакторов (текстовых, графических, аудио и видео) и инструментальных систем программирования; типов и структур данных, систем управления базами данных (СУБД); систем памяти, накопителей и поисковых систем; сетевых архитектур, протоколов и технологий обмена сообщениями; методов и технологий информационной безопасности].

TSM-комплекс средств описания s-моделей[править]

TSM-комплекс средств описания s-моделей (сокр. англ. Textual Symbolic Modeling) — расширяемый набор средств унифицированного текстового описания s-моделей. Включает средства одноуровневой записи формул (без применения редакторов формул), выделения частей гипермедийных описаний s-моделей и замены выбранными сокращениями часто повторяющихся фрагментов. Одноуровневые TSM‑описания соответствуют стилю, принятому в языках программирования. Для выполнения описаний достаточно стандартной клавиатуры и набора шрифтов, имеющихся в составе текстовых редакторов Word (пакета MS Office), Pages (пакета iWork), Writer (пакетов LibreOffice или OpenOffice), или др.

Предусмотрены средства выделения определений, замечаний, примеров, имён понятий и отдельных частей описания [напр., □ <фрагмент описания> □ ≈ определение (символ ≈ заменяет слово «означает»); ◊ <фрагмент описания> ◊ ≈ замечание; О <фрагмент описания> О ≈ пример].

Символы[править]

S-символ — заменитель природного или изобретённого объекта, обозначающий этот объект и являющийся элементом определённой системы построения символьных сообщений (текстов, нотных записей или др.) в s-среде, рассчитанных на восприятие человеком или роботом. □

О В s-моделировании русский алфавит вместе со знаками препинания рассматривается как система текстовых s-символов для построения сообщений по правилам грамматики русского языка (каждый элемент алфавита является заменителем звука, применяемого в речевых сообщениях); Брайлевский шрифт для слепых — как система фактурных s-символов для построения текстовых сообщений, рассчитанных на восприятие осязанием пальцами рук; нотное письмо, система нотных s-символов — как средство построения музыкальных сообщений, представленных в графической форме, а система s-символов шахматной нотации (Chess Notation) — как средство записи шахматных партий в виде текстовых сообщений. О

В компьютерах, смартфонах и других s-машинах символ представляется в форме кода, предназначенного для построения, сохранения, передачи и интерпретации символьных сообщений. Отличительным признаком символьных объектов, существующих в s-среде (файлов книг, статей, видеозаписей, электронных карт, компьютерных программ и др.), являются легко осуществляемые копирование без искажений, распространение и хранение копий (по сравнению с несимвольными объектами: физическими моделями, макетами научно-технических сооружений и др.).

Виды и типы s-символов[править]

Каждому виду символов соответствует средство приёма сообщений, которым наделён человек (или робот): визуальный — зрение; аудио — слух; тактильный — осязание; запаховый — обоняние. В современной (уровня 2020 г.) s-среде сравнительно продуктивно используются зрение (восприятие текста, неподвижных и подвижных изображений и др.) и слух (восприятие речи, музыки и др.). Осязание используется в мобильных телефонах (для приёма вибровызова), в игровых устройствах и др.; обоняние — в стадии экспериментирования (выпускаются приборы для распознавания запахов).

Для производства символьных сообщений человек может использовать органы речи, части тела, производящие различимые движения (жесты рук, движения пальцев и др.), и глаза (выбор объекта, указание на место его нового размещения и др.). В современной (уровня 2020 г.) s-среде относительно продуктивно используются движения пальцев рук (посредством компьютерной клавиатуры, мыши, стилуса, сенсорного экрана и др.); распознавание звуковых команд и извещений находится в стадии становления, а использование глаз как средства производства сообщений, направляемых s-машинам, — в стадии исследований.

Каждый вид символов делится на типы: типу символов соответствует множество символов, для которых определены набор атрибутов и семейство допустимых операций.

Виду визуальный соответствуют типы: графический [cлужит для построения сообщений, содержащих неподвижные изображения (фотографии, схемы и др.)]; видео (для построения сообщений, содержащих подвижные изображения) и др.

Виду аудио соответствуют типы: речевой (для построения сообщений, содержащих речевые фрагменты); музыкальный (для построения сообщений, содержащих музыкальные фрагменты) и др.

Виду тактильный соответствуют типы: кинетический [служит для формирования сообщений путём перемещения элементов устройств, предназначенных для интерфейса с s-машиной (О вибровызов мобильного телефона — сообщение о поступившем запросе на связь О)]; фактурный [служит для передачи сообщений путём изменения фактуры поверхности элементов устройств (О плоская → волнистая или ребристая и т. д. О)]; термический (служит для передачи сообщений путём изменения температуры поверхности элементов устройств).

Коды[править]

S-код является заменителем s-символа или символьного сообщения, используемым для их представления в s-машинах и предназначенным для построения, сохранения, передачи и интерпретации символьных сообщений в s-среде. □

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

О В таблице показаны графические символы планет солнечной системы, применяемые астрономами при изготовлении электронных документов, и соответствующие им коды стандарта Юникод (англ. The Unicode Standard). О

Название планеты Символ Код
Меркурий U+263F
Венера U+2640
Земля U+2641
Марс U+2642
Юпитер U+2643
Сатурн U+2644
Уран U+2645
Нептун U+2646

Сигналы[править]

S-сигнал — физически реализованное (в виде композиций значений электрического напряжения, частоты или др.) представление s-кода, рассчитанное на распознавание и интерпретацию аппаратным средством s-машины (микропроцессором, видеоконтроллером или др.). □

Типизация моделируемых объектов[править]

Тип X ≈ множество X, элементы которого имеют фиксированные набор атрибутов и семейство допустимых операций. Может иметь подтипы, называемые специализациями типа X, и надтипы, называемые обобщениями типа X. □

Специализация типа X — порождение подтипа X [::rule] (здесь сдвоенное двоеточие «::» — символ специализации) с семейством связей, расширенным добавлением связи rule. Выделяет подмножество X [::rule] множества X. Специализацией называют и результат X [::rule] этого порождения (X > X [::rule]). □

Специализация типа, заданная последовательностью добавленных связей X [::(rule 1)::rule 2], — специализация типа X [::rule 1] по связи rule 2. Число специализирующих связей в последовательности не ограничено. При этом имена связей, предшествующие последнему, заключены в круглые скобки, а перед открывающей скобкой каждой пары скобок — сдвоенное двоеточие.

Обобщение типа Z — это порождение его надтипа Z [#rule] путём ослабления (здесь # — символ ослабления) связи rule из семейства связей, соответствующей типу Z. Исключение связи считают её предельным ослаблением. □

Сообщение[править]

S-сообщение — конечная упорядоченная совокупность s-символов, рассчитанная на распознавание и интерпретацию получателем, или её s-код, удовлетворяющий требованиям решения базовых задач s-(представления, преобразования, распознавания, конструирования, интерпретации, обмена, сохранения, накопления, поиска и защиты) в s-среде. □

О S-модели систем понятий и систем знаний, в которых представлены результаты изучения некоторых сущностей (объектов исследований); программы, определяющие поведение s-машин; веб-страницы и файлы документов — всё это s-сообщения. О

В s-среде люди с помощью s-машин формируют s-сообщения, представляя их на языках запросов, программирования и др.; выполняют различные преобразования [О из аналоговой формы в цифровую и обратно; из несжатой в сжатую и обратно; из одной формы представления документа в другую (О *.doc в *.pdf О) О]; распознают, используют s-сообщения для конструирования новых s-сообщений (программ, документов и др.); интерпретируют на моделях систем понятий (которые хранятся в памяти интерпретатора также в форме s-сообщений); обмениваются s-сообщениями [используя при этом программно-аппаратно реализованные системы правил (сетевые протоколы); сохраняют и накапливают s-сообщения (создавая электронные библиотеки, энциклопедии и др. информационные ресурсы, занимаются решением задач поиска и защиты s-сообщений.

Модель системы понятий[править]

S-модель ca системы понятий — это пара <mem_sc ≈ память модели sc системы sC понятий>, <rel (mem_sc) ≈ семейство связей, заданных на mem_sc> (где sc — помета). □

Определение системы понятий — описание её s-модели, сопровождаемое указанием области применимости.

Описание представлено в форме сообщения, рассчитанного:

  • на интерпретацию профессиональным сообществом;
  • представление, сохранение, распространение, накопление и поиск в s-среде. □

Определение системы понятий должно удовлетворять необходимым требованиям конструктивности:

  • представление в виде пары <определение области применимости>, <s-модель системы понятий>;
  • в систему понятий, считающуюся определённой, не должны входить понятия, не имеющие определений (и при этом не относящиеся к понятиям-аксиомам).

□ Определение области применимости модели — описание типов:

  • корреспондента (кому адресовано определение);
  • цели, в процессе достижения которой определение имеет смысл (классы задач, при изучении которых определение может быть полезно);
  • стадии, на которой целесообразно использовать определение (концепция, методология решения и т. д.). □

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

О Элементарным примером системы понятий с разрешимыми задачными связями между элементами памяти является система понятий треугольник, в которой стороны a, b, c, периметр p и т. д. — элементы памяти; а связи p = a + b + c и др. — элементы семейства связей. О

О trtr [::angle = π/2]: тип tr системы понятий прямоугольный треугольник — специализация типа tr треугольник путём добавления связи angle = π/2 (выделяет из множества треугольников подмножество тех, у которых величина одного из углов равна π/2). О

О message [::(interface = hm)::means = tauch] — это специализация типа message [::interface = hm], определяющего множество сообщений, соответствующих интерфейсу человек — s-машина, по связи means = touch, выделяющей множество сообщений, вводимых в s-машину посредством прикосновений (О пальцами рук к клавишам клавиатуры или сенсорному экрану О). O 

O modelingsymbolic modeling [#tools] — моделирование (modeling) можно рассматривать как обобщение типа символьное моделирование (symbol modeling) исключением связи tools (средства моделирования). O

Информация[править]

S-информация — результат интерпретации сообщения на s-модели системы понятий. Для извлечения информации из сообщения необходимо иметь: принятое сообщение, представленное в форме, рассчитанной на распознавание и интерпретацию получателем сообщения; хранящиеся в памяти модели систем понятий, среди которых — необходимая для интерпретации принятого сообщения; механизмы поиска необходимой модели, интерпретации сообщения, представления результата интерпретации в виде сообщения и записи его в память. □

  • O Результат интерпретации сообщения ma, представленного на языке a, полученный переводчиком (человеком или роботом) в виде сообщения mb на языке b, – информация, извлечённая из сообщения ma. O
  • O Экранное представление веб-страницы, рассчитанное на восприятие человеком, — результат интерпретации сообщения, полученного браузером от веб-сервера. O

Модель системы знаний[править]

S-модель системы знаний — триада <ca ≈ s-модель системы Sc понятий>, <set_lng ≈ s-модель совокупности языков сообщений, интерпретируемых на ca>, <set_intr ≈ s-модель совокупности интерпретаторов на ca сообщений, составленных на языках из set_lng>. □

Интерпретация сообщения на модели ca:

1. построение выходного сообщения (извлечение информации) по заданному входному (сообщения представлены на языках из совокупности set_lng);

2. анализ выходного сообщения (требуются ли изменения в модели ca);

3. если требуется, то изменение модели ca; если нет — завершение.

O Онлайн-сервис построения маршрутов основан на системе навигационных знаний. O

S-моделирование задач[править]

Значительный вклад в моделирование задач принадлежит Энну Харальдовичу Тыугу (Тыугу Э. Х. Концептуальное программирование. — М., Наука, 1984. — 256 c.). Его идеи оказали существенное влияние на формирование предложенного В. Д. Ильиным подхода к s-моделированию задач в системе порождения программ (В. Д. Ильин. Система порождения программ, М.: Наука, 1989, 264 с.).

Представление связей между понятиями в виде разрешимых задач — необходимое условие построения количественных s-моделей систем понятий.

S-задача — это четвёрка {Formul, Rulsys, Alg, Prog}, где Formul — постановка задачи; Rulsys — множество систем обязательных и ориентирующих правил решения задачи, поставленных в соответствие Formul; Alg — объединение множеств алгоритмов, каждое из которых соответствует одному элементу из Rulsys; Prog — объединение множеств программ, каждое из которых поставлено в соответствие одному из элементов Alg. Постановка задачи Formul — пара {Mem, Rel}, где Mem — множество понятий задачи, на котором задано разбиение Mem = Inp U Out (Inp ^ Out = 0) и совокупность Rel связей между понятиями, определяющая бинарное отношение Rel < Inp ^ Out. Множество Mem называют памятью задачи, а Inp и Out — её входом и выходом, значения которых предполагается соответственно задавать и искать. □

Для каждого элемента из Rulsys, Alg и Prog задано описание применения. Описания применения элементов Rulsys включают спецификацию типа решателя задачи (автономная s-машина, сетевая кооперация s-машин, кооперация человек-s-машина и др.); требование к информационной безопасности и др. Описания применения элементов из Alg включают данные о допустимых режимах работы решателя задачи (автоматический локальный, автоматический распределенный, интерактивный локальный и др.), о требованиях к полученному результату и др. Описания применения программ включают данные о языках программирования, операционных системах и др.

◊ Каждая программа сопровождается ссылками на наборы тестовых примеров. ◊

В общем случае множества Rulsys, Alg и Prog могут быть пустыми: числа их элементов зависят от степени изученности задачи.

S-алгоритм — система правил решения задачи (соответствующая одному из элементов Rulsys), позволяющая за конечное число шагов поставить в однозначное соответствие заданному набору данных, принадлежащему Inp, результирующий набор, принадлежащий Out. □

S-программа — реализованный (на языке программирования высокого уровня, машинно-ориентированном языке и/или в системе машинных команд) s-алгоритм, представленный в форме сообщения, определяющего поведение s-машинного решателя задачи с заданными свойствами. Существует в символьном, кодовом и сигнальном воплощениях, связанных отношениями трансляции].□

S-данные — s-сообщение, необходимое для решения некоторой задачи или совокупности задач, представленное в форме, рассчитанной на распознавание, преобразование и интерпретацию решателем (программой или человеком). Специализация s-сообщения (s-message) по параметру получатель s-сообщения (s-recipient), значением которого является решатель s-задачи (s-solver): s-datas-message [::s-recipient = s-solver]. □

Конструирование s-задач[править]

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

S-задача a связана с s-задачей b по памяти, если существует хотя бы одна пара элементов {elem Mem_a, elem Mem_b}, принадлежащих памяти Mem_a s-задачи a и памяти Mem_b s-задачи b, относительно которой определено общее означивание (элементы имеют одно и то же множество значений). Если S и H — множества s-задач и DS ^ S и каждой паре (si, sj) элементов из D ставится в соответствие определённый элемент из H, то задана функция связи по памяти h = conn (si, sj). При этом D называют областью определения функции conn и обозначают D_conn. Множество R = {h: elem H; h = conn (si, sj); si: elem D_conn, sj: elem D_conn} называют областью значений функции conn. □

Тип связи по памяти зависит от содержимого пересечения по памяти: составлена ли связь из элементов выхода одной и входа другой задачи; из элементов выходов задач или из элементов их входов; или же связь получена путём комбинации предыдущих способов.

Элементарная задачная конструкция — задачная пара. Любая задачная конструкция, в свою очередь, может быть использована как составляющая ещё более сложной задачной конструкции.

Cистема pS знаний о задачных конструктивных объектах (называемых также p-объектами) — это триада <pA, lng, intr>, где pA — задачная область, lng — язык спецификации p-объектов, intr — интерпретатор спецификаций искомых p-объектов на pA. Если P — множество всех p-объектов, а A < P — его непустое подмножество, при этом в A (содержащем не менее двух элементов) не существует ни одного элемента, который не был бы связан по памяти хотя бы с одним элементом из A, то s-модель pa задачной области pA — это p-объект, который задаётся парой <память mem_A множества задач A задачной области pA>, <семейство rul (mem_A) связей, заданных на mem_A>. Непустое множество mem_A элементов памяти разбито на три подмножества: входов inp_A задач, выходов out_A задач и подмножество or_A, каждый из элементов которого является и входом, и выходом некоторых задач. Любое одно из этих подмножеств может быть пустым; могут быть одновременно пустыми inp_A и out_A. □

В отличие от памяти задачи, состоящей из входа и выхода, память задачной области содержит подмножество or элементов памяти, каждый из которых может быть или задан (как входной), или вычислен (как выходной). Такие элементы памяти называют обратимыми, а or — подмножеством обратимых элементов. Подмножество inp называют подмножеством задаваемых, а подмножество out подмножеством вычисляемых элементов.

S-модель pa задачной области pA служит для интерпретации составленных на языке lng спецификаций искомых задач. Интерпретация заключается в постановке в соответствие некоторому подмножеству (или паре подмножеств) памяти mem_A некоторой подобласти задачной области pA, названной разрешающей структурой. Интерпретация спецификации искомого p-объекта на pA — конструктивное доказательство существования разрешающей структуры.

Задачный граф — представление задачной области, рассчитанное на реализацию процесса p-конструирования и формализацию задачных знаний. Множество вершин графа, составленное из задачных объектов, называется задачным базисом графа и обозначается p-basis. Ребро задачного графа — это пара вершин с непустым пересечением по памяти. Нагрузка ребра определяется множеством всех пар элементов памяти, входящих в это пересечение. Каждая вершина графа имеет память. Память вершины — это память задачи (или задачной области), которую представляет вершина. □

Составная задача comp — подобласть задачной области pA, которая содержит не менее двух элементов из множества задач A и на памяти которой задано разбиение: mem_comp = inp_comp U out_comp; inp_comp ^ out_comp = 0, определяющее вход inp_comp и выход out_comp составной задачи. Составной задаче поставлен в соответствие ориентированный граф, вершинами которого являются задачи. Каждая вершина помечена именем задачи. Рёбра графа — это пары задач с непустыми пересечениями по памяти. □

В зависимости от состава вершин определены следующие типы задачных графов: U-граф имеет множество вершин только из простых задач; в C-графе хотя бы одна вершина представлена составной задачей и нет вершин, представляющих собой задачную область; в G-графе — не менее одной вершины представлено задачной областью (остальные могут быть простыми и составными задачами).

Разрешающие структуры на задачных графах[править]

G-графы служат средством формализации знаний о p-объектах. Система знаний об s-задачах обеспечивает процессы p-(специализации, конкретизации и конструирования).

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

Искомая конструкция задаётся спецификацией задачи, содержащей описание её памяти, ограничений на число задачных узлов (и, если необходимо, ограничений, связанных с размером задачи, точностью результата и др.). Заданное описание интерпретируется на задачном графе, который служит представлением интересующей конструктора задачной области. Средством интерпретации спецификаций задач служит механизм конструирования на задачном графе.

Интерпретация на U-графе в процессе задачного конструирования заключается в постановке в соответствие подмножеству (или паре подмножеств) элементов его памяти такого подграфа, память которого находилась бы в заданном отношении к введённому подмножеству (или паре подмножеств). Интерпретации на C-графе и G-графе аналогичны интерпретации на U-графе.

Задача t представима на задачном графе graph, если её вход inp_t содержится в подмножестве Giv_graph U Or_graph, а выход out_t — в подмножестве Comput_graph U Or_graph памяти задачного графа; при этом существует не менее одной задачи из базиса графа, вход которой содержится в inp_t или совпадает с ним. □

Разрешающей структурой solv_t на графе graph, поставленной в соответствие некоторой задаче t, называется подграф c минимальным числом задачных вершин, на котором задача t представима. □

Интерпретация задачной вершины U-графа (или С-графа) в процессе поиска разрешающей структуры заключается в соотнесении означенности входа и выхода.

Правила интерпретации задачной вершины:

• если полностью означен вход, то полностью означен и выход;

• если означенным полагается хотя бы один элемент выхода, то означенным полагается полностью вход.

Механизм построения разрешающих структур ставит в соответствие спецификации исходной задачи подграф на задачном графе путём реализации трёх типов поведения в соответствии с тремя типами запросов на конструирование.

1. Для заданных подмножеств x и y (x ^ y = 0) памяти mem_t­-graph, тогда существует разрешающая структура solv_xy (xy — помета) с минимальным числом задачных вершин, вход которой определён посредством x, а выход — посредством y, когда найдётся подграф G, множество вершин которого включает хотя бы одну вершину с разрешимой задачей, а объединение выходов вершин подграфа G содержит подмножество y (или совпадает с ним).

2. Для подмножества x, заданного на памяти mem_t-­graph задачного графа, тогда найдётся разрешающая структура solv_x (x — помета), вход которой определён подмножеством x, а выход является непустым подмножеством памяти графа, включающим максимальное число элементов, которые могут быть определены при заданном x, когда x ^ Comput = 0 (Comput < mem_t­-graph) и найдётся хотя бы одна вершина с разрешимой задачей.

3. Для подмножества y, заданного на mem_t-­graph, тогда найдётся разрешающая структура solv_y с минимальным числом задачных вершин, выход которой содержит y, а вход составлен из элементов, принадлежащих Giv, когда y ^ Giv = 0.

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

Классы базовых задач s-моделирования[править]

На основании изучения свойств и закономерностей s-моделирования определены классы базовых задач s-моделирования.

S-представление[править]

Представление моделей произвольных объектов, рассчитанных на восприятие человеком и s-машинами, связано с изобретением языков s-сообщений, удовлетворяющих определённым требованиям. В этом классе изучаются системы символов и кодов, используемые соответственно в человеко- и s-машинно-ориентированных языках. К первым относим языки спецификации, программирования, запросов, ко вторым — системы s-машинных команд. Этот класс включает также задачи представления s-данных. В него входят задачи представления моделей систем понятий, на которых интерпретируются сообщения. На верхнем уровне задачной иерархии этого класса находится представление моделей систем знаний.

S-преобразование[править]

Преобразование типов и форм представления s-моделей позволяет устанавливать соответствия между моделями. Задачи преобразования типов (О речевой в текстовый и обратно и др. О) и форм (О аналоговой в цифровую и обратно; несжатой в сжатую и обратно; одной формы представления документа в другую: *.doc в *.pdf О) — необходимое дополнение к задачам представления s-моделей.

S-распознавание[править]

Распознавание s-сообщения предполагает необходимость его представления в формате, известном получателю. При выполнении этого условия для распознавания сообщения решаются задачи сопоставления с моделями-образцами либо сопоставления свойств распознаваемой модели со свойствами моделей-образцов.

S-конструирование[править]

Задачи конструирования s-моделей систем понятий, языков, систем знаний, интерпретаторов сообщений на моделях систем понятий; моделей задач, программирования, взаимодействия в s-среде; моделей архитектур s-машин, s-сетей, сервис-ориентированных архитектур; моделей сообщений и средств их построения, документов и документооборота. На верхнем уровне иерархии этого класса находятся задачи конструирования моделей s-среды и технологий s-моделирования.

S-интерпретация[править]

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

 О Для микропроцессора s-машины сообщениями, подлежащими интерпретации, служат коды s-машинных команд и данных]. О

S-обмен[править]

В этом классе изучаются задачи взаимодействия в s-среде (человек — машина; машина — машина) с типизацией: отправителей и получателей; средств отправки, передачи и получения сообщений; сред передачи сообщений. Изобретаются системы правил обмена сообщениями (s-сетевые протоколы); архитектуры s-сетей, сервис-ориентированные архитектуры; системы документооборота.

S-(сохранение, накопление и поиск)[править]

Этот класс включает связанные между собой задачи сохранения, накопления и поиска. Изучаются и типизируются: память и накопители, механизмы управления ими; формы сохранения и накопления; носители, методы сохранения, накопления и поиска; базы данных и библиотеки программ. Изучаются модели предмета поиска (по образцу, по признакам, по описанию свойств) и методов поиска.

S-защита[править]

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

Развитие и перспективы[править]

Символьное моделирование как научная дисциплина[править]

В 1989 г. в монографии В. Д. Ильина (Система порождения программ, М.: Наука, 1989) было дано определение s-моделирования как научной дисциплины: «Символьное моделирование — научная дисциплина, изучающая процесс построения символьных моделей объектов произвольной природы».

«Объектами символьного моделирования могут быть и процесс формальных рассуждений (в математике), и процесс изобретения (как творческого акта, существующего во всех научных областях, в том числе и в математике, и не поддающегося полной формализации).» (с. 170 в электронной версии книги, с. 264—265 — в бумажной). В 2009 г. была опубликована монография с изложением теоретических основ s-моделирования (А. В. Ильин, В. Д. Ильин. Основы теории s-моделирования, М.: ИПИ РАН, 2009).

Актуальные задачи[править]

Одной из постоянно актуальных проблем s-моделирования является реализация в s-среде накопленного человечеством арсенала знаний и умений. Для её решения природный сенсорный комплекс (зрение, слух, осязание, обоняние, вкус) человека дополняется в s-среде изобретёнными сенсорами, рассчитанными на восприятие визуальных, аудио, тактильных и запаховых s-символов. Это необходимо для того, чтобы человек с интеллектуальными способностями мог не только пользоваться существующими технологиями s-моделирования сущностей, но и участвовать в изобретении новых информационных технологий.

  • На современном этапе (2020-е годы) развития s-моделирования актуальными являются следующие взаимосвязанные комплексы областей исследований.
    • Автоматизация вычислений с помощью программируемых машин: изучаются s-модели программируемых машин, распределённых вычислений (Distributed Computing), облачных вычислений (Cloud Computing).
    • Программирование: изучаются системы текстовых символов и кодов; языки программирования и спецификации задач; трансляторы; библиотеки программ]; системное программирование; операционные системы; инструментальные системы программирования; системы управления базами данных; технологии программирования; онлайн-сервисы решения задач и др.
    • Человеко-машинная среда решения задач (s-среда): изучаются модели, методы и средства построения s-среды, построения компьютерных сетей, сетей цифровой связи, Интернета.
    • Восприятие и представление сообщений, взаимодействие в s-среде: изучаются s-модели, методы и средства восприятия и представления визуальных, аудио, тактильных и др. s-сообщений; компьютерное зрение, слух и др. искусственные сенсоры; формирование аудио-, визуальных, тактильных и др. сообщений (включая комбинированные), рассчитанных на человека и робота-партнёра; распознавание аудио, визуальных и др. s-сообщений (речи, жестов и др.); обработка изображений, компьютерная графика, визуализация и др.; обмен s-сообщениями (s-модели сообщений, методы и средства их приёма и передачи); интерфейсы пользователя, программ, аппаратных средств, программ с аппаратными средствами; онлайн-сервисы взаимодействия (мессенджеры, социальные сети и др.).
    • Информационные ресурсы и системы для решения задач в s-среде: изучаются s-модели, методы и средства построения, представления, сохранения, накопления, поиска, передачи и защиты информационных ресурсов; электронный документооборот; электронные библиотеки и другие информационные системы; Веб.
    • Информационная безопасность и криптография: изучаются методы предотвращения и обнаружения уязвимостей; контроля доступа; защиты информационных систем от вторжений, вредоносных программ, перехвата сообщений; несанкционированного использования информационных ресурсов, программных и аппаратных средств.
    • Искусственный интеллект: изучаются модели, методы и средства построения интеллектуальных роботов, используемых в качестве партнёров человека (для решения задач безопасности, ситуационного управления и др.); экспертные методы принятия решений.
    • Символьное моделирование: изучаются системы визуальных, аудио-, тактильных и др. символов, рассматриваемых как конструктивные объекты для построения рассчитанных на человека моделей произвольных сущностей (систем понятий и систем знаний, объектов окружающей среды и объектов, изобретённых людьми); системы s-кодов, поставленные в соответствие системам s-символов, которые предназначены для построения кодовых эквивалентов символьных моделей, рассчитанных на манипулирование с помощью программ; языки описания символьных моделей; типизация символьных моделей и их кодовых эквивалентов; методы построения символьных моделей систем понятий и систем знаний (включая системы знаний о программируемых задачах).

Литература[править]

  • Ильин В. Д. Система порождения программ. — М.: Наука, 1989. — 264 с.
  • Ильин А. В., Ильин В. Д. Основы теории s-моделирования. — М.: ИПИ РАН, 2009. – 143 с.
  • Тыугу Э. Х. Концептуальное программирование. — М., Наука, 1984. — 256 c.
  • Berners-Lee T. Information Management: A Proposal. CERN, March 1989, May 1990.
  • Berners-Lee T. Long live the Web // Scientific American, 2010. Vol. 303. No. 6.
  • Cerf V., Kahn R. A Protocol for Packet Network Intercommunication // IEEE Trans on Comms, no. 5, May 1974.
  • John von Neuman. First Draft of a Report on EDVAC. Moore School of Electrical Engineering University of Pennsylvania. June 30, 1945.
  • Kay A. Personal Computing. Learning Research Group. Xerox Palo Alto Research Center. Palo Alto, California, USA, June 12, 1975.
  • Licklider J. C. R., Clark W. E. On-line man-computer communication. In: AIEE-IRE ‘62 (Spring) Proceedings of the May 1-3, 1962, spring joint computer conference. P. 113—128.
  • Zuse K. Der Computer — Mein Lebenswerk. 3. Auflage. Springer, Berlin 1993.