WWW.DISUS.RU

БЕСПЛАТНАЯ НАУЧНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

 

Pages:     | 1 || 3 | 4 |   ...   | 8 |

« А.А. Красилов ИНФОРМАТИКА В СЕМИ ТОМАХ Том 1. Основы информатики (Введение в информатику) ...»

-- [ Страница 2 ] --

Много нового и знаменательного появилось за второй половине двадцатого века - века атома, электроники и информатики.

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


Мое дело сказать правду, а не заставлять верить в нее.

Ж.Ж. Руссо

Глава 1. Информатика - сфера деятельности человека

Каждая познавательная деятельность человека от любопытства до изобретательности - самая важная его характеристика. Она проявляется во всем. С этим трудно не согласиться. Основное орудие познания - мозг человека. Именно, как мы говорим часто, мозговыми усилиями человек добивался хороших результатов при осмыслении воспринятого материала. Это необходимо человеку для обеспечения безопасной собственной жизни, для устойчивости человеческого вида. Будем считать, что высказанные положения для всего дальнейшего рассмотрения являются самыми важными. Имеются разнообразные средства для усиления мозговых усилий. Свяжем усиление мозговой деятельности человека с использованием всех СВТ и информатики.

Человек непрерывно решал проблемы усиления своих физических возможностей. Например, изобретение машин (в особенности паровых) позволило повысить за 100 лет мощность, расходуемую на одного жителя Земли, с 0.1 л.с. до 1000 л.с. (революционный скачек в 10 000 раз). Вслед за использованием средств усиления своих физических способностей человек изобрел средства усиления своих умственных способностей. Например, изобретение ВМ позволило повысить за 100 лет мощность, расходуемую на одного человека Земли, с 0.1 операций в секунду до 10000 операций в секунду (революционный скачек в 100000 раз). Это сравнение подчеркивает важность информатики в той же мере, как и развитие паровых машин - усилителей физических способностей человека. Проблему усиления своих умственных способностей человек решал непрерывно. Делал он это автоматически, часто не задумываясь ни над методами усиления, ни над результатами усиления. Его не особенно интересовали теоретическая и практическая проблемы знания о знании. Но эти проблемы стали важными при появлении СВТ. И это обеспечило переосмысление всей деятельности человека по обработке информации.

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

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

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

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

Целесообразно вспомнить книгу [Рафаэл79], в которой достаточно убедительно рассматривается проблема глупости ВМ, каким образом можно построить разумные ВМ и как можно их использовать. Здесь будет сделан еще один шаг в направлении развития разума ВМ и построения технологии познания с помощью СВТ. Арифметический миф и миф о глупом компьютере разоблачаются в упомянутой книге описательно и с помощью рассуждений. Далее разоблачаются эти мифы с помощью математических и практических средств доказательства и убеждения существования разумной ВМ. Однако рассуждения должны предшествовать математике для большей наглядности и убедительности. После создания программ, которые «врут» или создают юмор при точной и правильной работе ВМ, можно сказать с уверенностью, что разумность и интеллектуализации ВМ достигла своего апогея. Эту проблему еще предстоит решать.

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



Знак - это "first base of knowledge". Н. Гудмен

1.1. Чувственно воспринимаемое знание

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

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

Знаки бывают самые разнообразные: сигналы, символы, искусственные знаки и самозначащие знаки (например, константа или собственное имя человека). Человек наблюдает перечисленные разновидности знаков. Можно рассмотреть и другие классификации знаков. Чаще всего человек наблюдает предметные знаки, так как через зрение и ощущения воспринимаются все предметы. Запоминающиеся в мозгу образы знаков сопоставляются с некоторыми символами, они могут быть вновь предметными или условными, представленными графически на бумаге. Некоторые знаки запоминаются графически, а некоторые - мыслимыми представлениями. Возможно, что здесь упомянуты все способы представлений знаков - предметные, графические или мыслительные. Если здесь рассмотрены не все формы знаков, то все дополнительные можно свести к указанным формам. Лебедев М. В. писал: «Чтобы понять знак, нужно его интерпретировать. Интерпретация знака - это операция, достигаемая при замене исходного знака другим знаком или - более обычно - набором знаков. Значение любого знака, в частности слова, неопределимо без обращения к вербальному коду. К тому же никакие отсылки к объектам не могут объяснить феномен значения, хотя и могут помочь установить отдельное значение имени. Кардинальное свойство знака - передавать значение - может быть сведено к понятию интерпретируемости или же переводимости знака, т.е. к возможности представить его содержание другими, более эксплицитными, развернутыми знаками.» Имеется определенная закономерность, состоящая в том, что любой знак может быть представлен в другой форме, возможно с потерей некоторых второстепенных его признаков, свойств или характеристик. Особенно это заметно, когда используются знаки людьми различных наций.

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

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

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

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

Реальные проблемы и задачи обычно формулируются смешанными средствами представления сведений об окружающем мире. Легко составить все смеси представлений, например, смеси предметного, графического и символьного: предметно-графическое, предметно-символьное, графико-символьное и предметно-графико-символьное. Пожалуй, эти семь способов представлений исчерпывают возможности человека в зрительном восприятии сведений из окружающего мира. Сигнальные и мыслимые представления могут быть сведены к указанным семи способам. В информатике пока эффективно используется символьное, менее распространено графическое и слабо затронуто предметное представления. Начала предметного представления внедряются в форме виртуальной реальности. Будем ориентироваться на эту ситуацию, подчеркивая важность символьного представления.

Разнообразие знаков породило разнообразие формы представления их в памяти человека (например, число естественных языков для передачи результатов восприятия более 3000, а число знаков значительно больше) и в памяти ВМ. В информатике имеют дело с разнообразными символами. Обычно их бывает недостаточно для передачи разнообразия знаков. Несмотря на ограниченное число символов, используемых в ВМ, для передачи всего разнообразия знаков обычно используются последовательности символов или их комбинации. Алфавиты символов зависят от способностей человека, сложившихся традиций или от удобства работы с представленными ими знаками. Человек имеет несколько органов чувств, воспринимающих внешние знаки в самых разнообразных формах. Современные технические средства ввода данных в память ВМ уступают возможностям человека, поэтому ввод данных может быть связан с переводами знаков в последовательности символов. Заметим, что перевод связан с потерей части знания. Например, передача в память ВМ некоторого знака может связываться с процессом описания его на ЕЯ или ФЯ, при этом отдельные графические штрихи могут быть опущены.

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

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

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

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

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

…все возникающие в естественном языке явления смысловой расплывчатости и неоднозначности могут быть сняты помещением требуемого элемента в соответствующий контекст… «все, что вообще может быть сказано, может быть сказано на естественном языке».

Г. Кюнг

1.2. Знание как результат общения людей

Знаки могут возникать в результате деятельности человека, например, когда он говорит. Эти знаки воспринимаются другим человеком или коллективом. Взаимная передача воспринятого каждым человеком знания играет важную роль в его жизни, в частности, для восприятия нового знания. Знаки стали (исторически) служить средством общения людей. Для передачи знания от человека человеку между знаками необходимо устанавливается связь. Как только установилась взаимосвязь знаков, так сразу можно сказать о том, что возник язык для более оперативного, а главное содержательного общения. Это основная концепция перехода от анализа знаков к установлению их взаимосвязи. В результате общения устанавливается смысл передаваемых знаков. Язык становится более богатым средством передачи смысла знания по сравнению с передачей знания знаками, обозначающими некоторые объекты. Язык фиксирует отношения между знаками и, следовательно, отношение между объектами (и наоборот). Фактическая сторона познавательной деятельности человека значительно выигрывает от использования языковых возможностей в передаче сведений от окружающего мира в память человека или ВМ и обратно.

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





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

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

В настоящее время в мире насчитывается 3000 или более ЕЯ, диалектов или наречий и примерно столько же искусственных (формальных) языков для общения в системе человек-ВМ или среди специалистов данных предметной и проблемной областей. Такое обилие языков становится препятствием на пути развития самой познавательной деятельности человека. Унификация языковых средств важна и она происходит постепенно. Пути унификации не совсем ясны. Можно предполагать, что унификация языков в информатике будет связана с появлением и внедрением языков профессиональной деятельности, в основе которых используется профессиональная лексика. Это означает для ФЯ их постепенное приближение к ЕЯ при общении в системе человек-ВМ в пределах профессиональной деятельности, а не стремление к полному освоению ЕЯ и соответствующего ФЯ. Точнее, к полному освоению ЕЯ можно прийти через освоение всевозможных языков, используемых профессионалами. Этой проблеме будет отведено достаточно места в дальнейшем (см. т.2).

Информатика занимается изучением форм ЕЯ для разрешения, в частности, проблем лингвистики. Как принято говорить, здесь царство информатики лингвистики (или лингвистической информатики). В целом же информатика занимается изучением только ЯПП, ЕЯ или ФЯ, их синтаксиса, семантики и прагматики. Изучение таких языков связано с построением в информатике трансляторов ЯПП на некоторый ФЯ. Это основная тема лингвистической информатики.

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

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

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

Конечно, языки изучались для поиска нового знания. Каждый язык являлся предметом для исследований. Грамматика языка служила средством познания языка. Однако современная грамматика изучает правила для правильного построения текстов. Наступило время построения таких форм грамматик, которые содержат правила для получения смысла текстов. Эта проблема в особенности заострилась только при передаче знаний ВМ. Новые правила грамматики совместно с имеющимися правилами позволяют разрешить проблему автоматического понимания смысла текстов машиной. Человек понимает смысл чаще всего интуитивно.

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

1.3. Фиксация знаний

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

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

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

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

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

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

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

Книгопечатание - это артиллерия мысли.

П. Буаст

1.4. Тиражирование знаний

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

Книга использует для передачи знаний, прежде всего знаки, соединенные в грамматически правильные и осмысливаемые последовательности. Содержание книги полностью соответствует предварительному письму. Но передача его из письма в книгу осуществляется ответственно и с многоступенчатым контролем над точностью и правильностью. Таким образом, книга в широком смысле слова обобщает три первых шага в познавательной деятельности человека и формирует следующий шаг. Книга - это средство накопления и распространения знаний. Оба действия важны в равной степени. Накопление знаний важно для перехода к следующему шагу, а второе действие - распространение знаний - важно для «увеличения вероятности вывода нового знания».

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

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

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

Новое знание в данном случае добывается путем поиска сообщений, фактов или данных в справочниках или сборниках, вручную или с помощью ВМ. Несмотря на простоту постановки проблемы поиска нового знания информационно-поисковая работа становится все сложнее и сложнее при экспоненциальном росте объемов знания. Поэтому важна проблема поиска знаний по смыслу текстов, а не по ключевым словам. Проблема является информатической, судя по первым публикациям в информатике [Михайлов68а]. Поиск по смыслу возможен только тогда, когда определится алгоритм вычисления смысла текста, будет построена грамматика, состоящая из правил вычисления смысла фраз, и будут построены программы составляющие словари терминов по произвольному тексту.

Таким образом, четвертая ступень или четвертый этап развития познавательной деятельности человека связаны с книгой (со средствами тиражирования знаний) и с методами представления, сбора и накопления знаний для эффективного восприятия человеком и ВМ. Эта деятельность человека составляет также четвертую ступень информатики.

1.5. Спецификация и обобщение знаний

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

В особенности следует обратить внимание на проблемы спецификации вообще и спецификации некоторого проекта в частности. Дело в следующем. Пользователь ВМ ставит или получает какое-либо задание (задачу, проблему), которое может быть представлено спецификациями работ, которые необходимо выполнить (техническое задание, проект и т.п.). Оно может быть представлено на ФЯ спецификаций, например программ. Разнообразие спецификаций велико. Условно в качестве примера можно сказать, что в т.2 рассмотрен общий подход к построению заданий в форме спецификаций. Язык Лейбниц предусматривает для задания разделы спецификаций типов данных, понятий, синонимов, знаний, запросов и др. Надо учитывать, что для Интеллсист спецификации строятся на фоне БЗ, которая является спецификацией класса заданий в данных предметной и проблемной областях.

Далее (в кн.6) будут представлены четыре этапа создания любого продукта: изобретание, проектирование, разработка и сопровождение. Здесь же рассмотрим понятие спецификации с точки зрения таких этапов процесса создания или синтеза информационного продукта. Понятие спецификации из-за его новизны в практике изобретания используется не всегда. Его начинают использовать только в процессе проектирования и определяют так. Спецификация - это подробное описание некоторой работы, подлежащей выполнению. Для программ, например, спецификация занимает промежуточное положение между требованиями Заказчика (или потенциального пользователя) и готовой программой. Дополнительные и уточняющие требования составляют уже часть спецификации. Если спецификация написана на некотором языке, для которого возможна достаточно эффективная интерпретация, прямое выполнение или автоматическое построение конечного продукта, то этап проектирования завершается написанием спецификации, а этап разработки - создание объекта - существенно сокращается. Имеющиеся спецификации уменьшают цену сопровождения продукта. Таково кратко положение о роли спецификации продукта (в частности, программ). А теперь чуть подробнее о спецификации.

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

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

Средства спецификации подразделяются по степени формализации (словесные, неформальные или формальные) и по методам представления исходных данных (например, простые или структурированные). Наиболее простым классом средств является класс словесных спецификаций, но этот класс сложен в реализации в силу сложности обработки текстов на ЕЯ. Другой крайний класс средств и методов спецификации - использование строгого формализма, которые являются весьма сложными при практическом использовании прямым пользователем ВМ. Этот класс обеспечивает контроль непротиворечивости реализации и спецификации. Его реализация сложна и малоэффективна. Для спецификации заданий в информатике используется ЯПП, построенной на основе языка Лейбниц.

После общего представления о спецификации можно чуть точнее сформулировать ее определение. Самое общее определение спецификации таково: Спецификация (буквально понимается как описание или получение требований) - это строгое формализованное описание свойств, характеристик или функций системы (объекта, программы, знаний, отчета и др.), ее связи с другими системами и соглашение об их использовании в контексте с другими системами. Общее определение обычно не устраивает пользователя, поскольку оно не определяет технических и полезных свойств методов и спецификаций вариантов (проектируемых) систем. Поэтому понятие спецификации постепенно будет уточняться применительно к БЗ или запросам. Уточнение производится через описание свойств частей спецификации (лексиконов и БЗ) и через их применения для решения конкретных задач. Многие сведения можно заимствовать из литературы [Агафонов87, Требования84], которая может помочь пользователю ближе познакомиться с положением вещей в области автоматизации спецификации и помогает разработчикам при реализации современной версии системы автоматизированной спецификации.

Общематематическое понимание спецификации (для разработчиков систем автоматизации работ перехода от спецификации к проектируемому объекту) можно почерпнуть в [Агафонов87]. В этой книге рассматриваются фундаментальные понятия таблицы, подстановки, графа, отношения и операции над объектами, являющимися значениями таких понятий. Кратко рассматриваются языковые средства спецификации программ. С точки зрения этой книги сложно подойти к разрешению проблем спецификации систем, несмотря на то, что графовое задание значений понятия в ней рассмотрены. Плохо в информатике проработан вопрос, связанный с метаязыковым описанием спецификаций. Это и сузило взгляды пользователей на проблемы спецификации. Лучше представлены проблемы общей спецификации систем в работе венгерских математиков [Деметрович89]. В ней уделено достаточно внимания вопросам метаязыкового описания проблем спецификации и применения их для спецификаций любых систем. Наконец, основной работой по практическим проблемам реализации идей спецификации систем является сборник статей [Требования84]. Будем ориентироваться на рекомендации этой работы. До настоящего времени в практике системных разработок все еще не удается освободиться от плохо определенных понятий и утверждений. Более того, процесс разработки системы зачастую начинается еще до полного понимания проблемы. Следствием этого нередко достигается низкий уровень надежности систем. В информатике Интеллсист все эти трудности связаны с задачей спецификации заданий через лексикон и БЗ. При этом значительная часть трудностей спецификации (и формализации) знаний устранена из-за применения ЯПП.

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

Что такое спецификация Интеллсист как разработки? Одно из основных определений спецификации, которое имеется в Оксфордском словаре, гласит, что спецификация - это «подробное описание некоторой работы, подлежащей выполнению». Спецификация Интеллсист построена на основе описания нового определения информатики и ее оснований - ИЛ. Что же такое спецификация задания для Интеллсист? Рождается она для пользователей на этапах изобретания и проектирования лексикона и БЗ и занимает промежуточное положение между предварительными требованиями заказчика и готовым продуктом. Дополненные и уточненные требования - это уже спецификация. Если спецификация написана на языке, для которого возможна достаточно эффективная интерпретация или прямое выполнение, либо автоматическое построение (синтез) программ, то этап проектирования на этом и закончится, да и второй этап жизненного цикла программы - разработка - заметно сократится. Такой подход к созданию спецификаций заданий для Интеллсист и ее применений принят здесь, он базируется на инструментарии Интеллсист. Можно надеяться на то, что задание для Интеллсист (запрос) с одной стороны является спецификацией и, с другой стороны, оно завершает работу пользователя по получению разрешения задания.

Однако гораздо чаще переход от спецификации к БЗ или программе - это довольно сложный и длительный процесс, охватывающий и этап разработки. В ходе этого процесса спецификация на пути к БЗ или программе может претерпеть множество изменений, оставаясь спецификацией до тех пор, пока задание не сможет быть выполнено на ВМ или пока это исполнение не станет достаточно эффективным. Иногда полезно различать внешнюю спецификацию, обращенную к пользователю, заказчику или потребителю лексикона и БЗ, и внутреннюю спецификацию, обращенную также к пользователю и знаниеведу. Первая соответствует исходной спецификации, а вторую можно считать одной из промежуточных спецификаций, связанной с отладкой знаний. Благодаря такому положению спецификаций в разработке программ так называемые языки проектирования программ и языки разработки программ обычно либо оказываются языками спецификации, либо включают в себя такие языки. Языком же разработки БЗ является ЯПП. Разработка спецификаций БЗ с точки зрения пользователя Интеллсист значительно упрощается или вовсе отсутствует, когда применяется готовая БЗ вместе с лексиконом.

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

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

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

1.5.3. Роль спецификации знаний. Еще одна полезная и перспективная роль спецификаций связана с постепенным изменением характера программирования, с переходом от построения БЗ или программ «с нуля» или из «кирпичиков», предоставляемых современными языками программирования или ЯПП, к автоматическому построению программ из крупных блоков, готовых модулей. Спецификации нужны как понятные описания модулей, позволяющие использовать их, руководствуясь только их внешними описаниями и не вникая в их внутреннее устройство. Размер спецификаций проблем, возникающих в реальной жизни, обычно очень велик, и человек не в состоянии воспринять их полностью. Поэтому важно представлять спецификации в форме, пригодной для машинной обработки в особенности знаний, и развивать методы накопления, управления и документирования спецификаций с помощью вычислительных средств и Интеллсист. Инструментарий Интеллсист обеспечивает автоматизацию значительной части работ по разработке спецификаций знаний и программ.

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

Фундаментальная трудность использования формальных спецификаций состоит, с одной стороны, в том, что сам процесс приобретения знаний является в значительной мере итеративным и потому на начальных этапах семантически не формализуемым. На этапе обсуждения требований к разрабатываемой сложной системе обычно существуют лишь расплывчатые идеи, которые по своей природе являются временными. C другой стороны, автоматическая генерация программного кода по спецификациям системы едва ли является узким местом в стоящих ныне проблемах программирования. Однако этап разработки действительно непротиворечивых и полных спецификаций является задачей ключевой, имеющей к тому же значительно меньшую технологическую поддержку. Инструментарий Интеллсист поддерживает любую степень формализма и продуктивно его использует. Для программирования в этом случае необходим разумный компромисс между степенью формализации, ослабляющей связи спецификации с программой, и мощностью средств формирования и итеративной обработки спецификаций. Этой цели способствуют методологии «структурированных» спецификаций, которые хотя и используют формальные дескриптивные языки, безразличные к семантическому формализму, но в отличии от двух крайностей - вербальной и формальной спецификаций - представляют такие элементы спецификации, как информационные объекты БД. Этот путь обеспечивает эффективные средства обработки спецификаций и итеративно накапливаемых алгоритмических знаний. Одним из ранних примеров такого подхода является язык PSL - ФЯ спецификации проблем. Для Интеллсист таким языком является язык Лейбниц.

Основными механизмами структурированных спецификаций являются механизмы абстракций и объектно-ориентированные структуры данных. Они используются и в ряде других областей информатики, так как реализуются посредством современных абстрактных методов, известных под названием «концептуальное моделирование». Среди областей применения концептуального моделирования (представление знаний в системах ИИ, семантические модели данных, спецификации абстрактных типов данных в языках программирования) задача спецификации систем является наиболее близкой к концептуальным языкам, предложенным в контексте семантических моделей данных. БЗ прежде всего предусматривает концептуальное моделирование при разработках лексикона и логическое моделирование при автоматическом разрешении запросов.

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

Поскольку ЯПП предусматривает ввод алгоритмического (и программного) знания, рассуждения о спецификации программ важно и для ИП. С точки зрения реализации наибольшая проблема состоит в построении языково-независимого набора программных средств (но зависимых от ЯПП). Этот набор должен быть построен на основе общей схемы, с которой впоследствии может быть связан любой потенциальный дескриптивный язык спецификации. Второй важный компонент метасистемы - метаинтерпретатор - обычно бывает более простым. Его главная функция состоит в генерации таблиц («метабазы данных»), которые управляют работой языково-независимой части во время обработки спецификаций. У него может быть несколько дополнительных возможностей, таких как генерация руководства пользователя, описывающего заданный на метауровне язык.

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

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

Указанные особенности и преимущества полностью относятся и к спецификации заданий для Интеллсист.

1.5.4. Спецификация для ИП. С позиций инструментария ИП спецификацию можно охарактеризовать математически следующим образом. Поиск ответа на вопрос или решение проблемы для Интеллсист сводится к решению логического уравнения дискретного вида: &Ki => Q или &Ki & Q (где Ki - простое знание, &Ki - БЗ и Q - запрос). Теперь для окончательной характеристики понятия спецификации класса заданий или запроса для ИП можно привести классификацию спецификаций. Они бывают:

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

В соответствии с общепринятым определением метасистема (в нашем случае – это инструментарий для построения новых Интеллсист из имеющихся) предназначена для построения систем конкретного применения. Рассматривался один случай метасистемы, который был предназначен для создания системы автоматизированного формирования спецификаций (документов на программы) по совокупности определяемых в этой системе понятий. Метасистема разрабатывается как инструментарий программиста без знания программирования или ФЯ. Предлагаемая метасистема имеет более широкие возможности, чем те, которые вкладываются в конкретную ее реализацию. Использование метасистемы (для подробного ознакомления с подобными разработками читатель отсылается к работе [Деметрович89], как совершеннейшему аналогу) для генерации отчетов и программ представляет иллюстрацию для конечного пользователя, он может определить другое конкретное применение и рассмотреть проблему адаптации (путем определения новой или доопределения имеющейся БЗ) метасистемы под нужды пользователя. Такая возможность вытекает из свойств метасредств описывать только средства для спецификации, но не фиксировать сами средства.

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

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

Метасистемы в ИП опираются на метаязык, который имеет такие разделы: описание понятия (термина и его главного свойства) и наборы его значений, значений данного типа; каждое значение является объектом, которые связаны между собой отношениями. Таков же подход в разработках программ. Для получения подробной и формальной информации по вопросам разработки программ можно обратиться к фундаментальной книге [Деметрович89]. Для Интеллсист метаязыком является язык Лейбниц.

1.5.5. Критика имеющихся методов спецификаций. Тем не менее, большинство работающих систем автоматизированной спецификации, которые реализованы за рубежом [Требования84], для современных условий использования ВМ (в особенности персональных ВМ) устарели, их копирование или воспроизведение было бы потерей сил и средств. Информатика сегодня предоставляет большое число средств интеллектуального использования ВМ, для обеспечения непосредственного доступа прямого пользователя ко всем вычислительным средствам. Интеллектуализация программирования и автоматический синтез программ стали основным требованием к программам сегодняшнего дня. Рассмотрим в форме критики недостатки имеющихся систем спецификаций, что составит требования для новых разработок, которые в большей степени относятся к Интеллсист, поскольку ИП с инструментарием Интеллсист выполняет, в частности, и эти требования.

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

Общее определение объектов пользователя сводится к перечислению имеющихся или подразумевающихся его значений. Изредка для некоторых объектов имеются ссылки на типы данных, как на множество значений объектов. Это ограничение вызвано тем обстоятельством, что во времена появления систем спецификаций не существовало представления о новой деятельности, которую теперь называют инженерией знания. Теперь можно представить способы расширения понятия объекта так, как указано при анализе лексикона понятий (см. том 2). Число сортов, видов и типов «объектов» в ЯПП увеличено, что обеспечивает полный контроль всех данных и любых связей между ними.

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

В СеГ учтены не только все виды связей понятий, но также учтены всякие отношение объектов, в частности предписанные пользователем, атрибуты, существенно отличающиеся от объектов и, наконец, структуры также различной организации. Учет осуществлен в соответствии с накопленным знанием в ЕЯ.

1.5.6. Теория - средство спецификации знаний в любой области. Такая формулировка может быть неожиданным высказыванием, но она является сущностью любой БЗ. Теория охватывает малую часть представляемого знания, как и БЗ. Построить универсальную БЗ невозможно (нельзя объять необъятное). Совокупность теорий породили науку. Понятие науки - следующая ступень в познавательной деятельности человека. Общий смысл науки состоит в обеспечении достаточно плотного сжатия знаний и способами кодирования и декодирования представленного так знания. Может показаться (и наверняка показалось) странным такая формулировка смысла науки (или теории). Но ведь смысл сформулирован с информатической точки зрения. Имеется более ясная формулировка понятия науки и теории. Об этом будет сказано ниже.

Действительно, каждая наука определяется или характеризуется следующими атрибутами. Это:

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

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

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

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

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

1.6. Применение знания

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

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

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

Алгоритмы предназначены для применения знаний в различных сферах повседневной деятельности человека. Алгоритмы стали весьма актуальными после появления СВТ. Отлаженные программы ВМ являются формальными и точными представлениями алгоритмов. Если алгоритмы обычно записываются на языках профессиональной работы специалистов, то программы для ВМ пишутся на ФЯ. Содержательно понятие алгоритма определяется так: Алгоритм - это точное и общепонятное предписание для производства вычислений от варьируемых исходных данных до искомых результатов. Именно алгоритмы, развитие знаний о которых начиналось в недрах кибернетики, позволили выделить многие отрасли знания, постепенно образовывая самостоятельные (от кибернетики) дисциплины. Информатика является хорошим примером тому.

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

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

Любой алгоритм является результатом познания предмета, явления или процесса. Сами по себе алгоритмы сложны для понимания всеми так же, как сложно для освоения алгоритмическое знание, хотя на интуитивном уровне каждый человек прямо или косвенно соприкасается с алгоритмами (например, правилами поведения) и использует готовые программы. Познание алгоритмики (как технологии формирования алгоритмического знания) важно, но остается доступным только программистам - специалистам по подготовке программ на ФЯ. Интеллсист предназначена для автоматического построения алгоритмов по заданию пользователя, сформулированному на ЯПП. С помощью Интеллсист доступными становится и алгоритмы, и алгоритмическое знание. Доступность здесь понимается с позиции виртуальности. Алгоритм скрыт от пользователя, он выступает только своими внешними проявлениями в форме печати результатов работы. Подчас становятся неразличимыми ситуации прямого разрешения запроса пользователя и прогона программы по исходным данным пользователя.

Использование Интеллсист не исключает применение алгоритмов, программ и алгоритмического знания, представленного алгоритмами и программами. Более того, запрос или задание для Интеллсист может представлять собой программы на ЯПП или обращение к программам, написанным на ФЯ. Программист заинтересован в автоматическом синтезе программ, как и любой пользователь ВМ. Предполагается, что Интеллсист обеспечит комфортную работу и программисту. Итак, Интеллсист можно использовать как решатель заданий, как синтезатор программ и как инструмент программиста для создания программ сложной структуры. В последнем случае крайне необходимыми становятся БЗ Интерфейс для построения интерфейса программы с ее пользователем, БЗ Фундаментальные знания для учета различных констант, формул, правил аналитического преобразования фрагментов заданий и библиотека подпрограмм. Кроме этого программист должен пользоваться параметрами и режимами синтеза программ для построения эффективных программ.

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

1.7. Получение нового знания

Знание характеризуется своей самоприменимостью и активностью: именно с помощью знания можно находить новое знание, знание воздействует на рычаги поиска нового знания. Накопленное знание обеспечивает возможность анализа этого знания для выработки знания о знании (самоприменимость знания) и формирования нового знания (активность знания). Кроме этого, указанные две характеристики взаимосвязаны: знание о знании составляет основу синтеза нового знания, а синтез нового знания невозможен без анализа накопленного знания. Исторически известные характеристики явлений в науке и технике явно проявились только в процессе реализации второй научно-технической революции - в период коренного и качественного преобразования производительных сил в связи с использованием средств усиления умственных способностей человека. Материальной базой средств усиления послужили устройства СВТ: электронные ВМ непрерывного и дискретного действия. Научную основу средств усиления составила кибернетика. Практическая основа кроется в замечательном свойстве знания - возможность его применения во всех сферах деятельности человека.



Pages:     | 1 || 3 | 4 |   ...   | 8 |
 





<
 
2013 www.disus.ru - «Бесплатная научная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.