Для организации диалогового проектирования необходимо лингвистическое обеспечение. Оно включает иерархию взаимосвязанных языков, используемых в САПР на различных этапах проектирования. Рассмотрим особенность этих языков и сформулируем требования, которым они должны удовлетворять.
Язык верхнего уровня САПР - это язык заданий. Он служит для формулировки и ввода в компьютер проектного задания. Основное требование - максимальная близость к естественному языку. Это означает, что состав операторов и синтаксис языка заданий должны, по возможности, совпадать со словарным запасом и синтаксисом языка проектировщика. Кроме того, язык заданий должен определять порядок ввода проектного задания и быть открытым в отношении словарного состава.
Язык заданий, используемый на верхнем уровне САПР, обеспечивает интеллектуальный интерфейс между проектировщиком и компьютером. Он облегчает внедрение таких САПР и обеспечивает быстрое освоение их пользователями.
В некоторых случаях на верхнем уровне целесообразно использовать также языки символьной записи и системы преобразований алгоритмических моделей. Они (например, РЕДЬЮС или ФОРМАК) позволяют формировать и развивать базу знаний. Они придают САПР интеллектуальный характер.
Язык среднего уровня САПР - алгоритмический язык. Он используется для записи в базу знаний и данных алгоритмических моделей и программных модулей.
Эффективное средство анализа поведения системы, описанной на алгоритмическом языке, - имитационное моделирование. Поэтому языки среднего уровня можно назвать языками моделирования. В качестве таких языков могут использоваться обычные алгоритмические языки (например, ФОРТРАН, ПАСКАЛЬ или СИ). Их главное достоинство заключается в том, что они хорошо приспособлены для моделирования различных проектных процедур. Кроме того, для них разработаны трансляторы, позволяющие перевести проектное решение на язык его реализации.
Необходимые сведения о языках, используемых в САПР, хранятся в лингвистическом процессоре, сложном программно-аппаратном комплексе, обеспечивающем лингвистическую (языковую) поддержку диалогового проектирования.
Один из важнейших компонентов САПР - алгоритмическое и программное обеспечение, комплекс взаимосвязанных алгоритмов и программ, необходимых для автоматизации процесса проектирования. Это своеобразный посредник между лингвистическим обеспечением и аппаратной частью САПР, состоящей из компьютеров, графопостроителей, принтеров и другого необходимого оборудования.
Алгоритмическое и программное обеспечение можно сравнить с невидимой частью айсберга, в то время как лингвистическое обеспечение - это доступная взору его вершина. Эта невидимая часть огромна. В развитых САПР она содержит сотни алгоритмов, описывающих функционирование различных элементов и подсистем, и тысячи команд, составленных квалифицированными системными и прикладными программистами. Все эти алгоритмы и программы скрыты от непосвященного взора и хранятся в базах знаний и данных.
База знаний - важнейший компонент интеллекта компьютера. Она имеет большую емкость памяти и специальные средства обработки хранимых в ней знаний. В базе знаний САПР сведения об элементах и подсистемах записываются в форме алгоритмических моделей. Используются символьные языки систем типа ФОРМАК или РЕДЬЮС. Наличие базы знаний позволяет человеку вести проектирование на языке заданий, по существу на проблемно-ориентированном естественном языке.
В базе данных хранятся программные модули и данные. К базе данных можно отнести и системные модули операционной системы компьютера и диалогового монитора САПР.
Диалоговый монитор включает в себя лингвистический процессор, интерпретатор языка заданий и планировщик. Интерпретатор распознает операторы этого языка и организует последовательный вызов на обработку необходимых программных модулей. Планировщик, непрерывно обращаясь к базе знаний и данных, автоматически выбирает и компонует программные модули в соответствии с проектным заданием в рабочую программу проектирования.
Базы знаний и данных совместно с лингвистическим процессором и диалоговым монитором образуют интеллектуальный интерфейс САПР. По существу, он обеспечивает лингвистическую и информационную поддержку САПР.
Организация базы знаний и диалогового проектирования представляет собой очень сложную задачу. Роль баз знаний и данных в САПР особенно велика, поскольку именно в базах знаний и данных содержится "генофонд" проектируемых систем. Путем "мутации" из хранимых "генетических кодов" в процессе проектирования можно получить системы с наперед заданными или принципиально новыми свойствами. Отсюда ясна опасность порчи "генофонда" и необходимость защиты его от недозволенного вмешательства и компьютерных "вирусов".
Совершенство интеллектуального интерфейса САПР целиком определяется творческим потенциалом и естественным интеллектом его разработчиков. Но когда он создан, компьютер приобретает черты интеллектуального партнера проектировщика. Общение с таким партнером приятно и полезно.