Постановка задачи структурного синтеза
МИНОБРНАУКИ РОССИИ
Федеральное государственное бюджетное образовательное учреждение
высшего образования.
«Тверской государственный технический университет».
(ТГТУ)
Реферат
подисциплине
«Системыавтоматизированногопроектирования»
на темы: Лингвистическое обеспечение. Языки программирования и проектирования, применяемые в САПР.
Постановка задачи структурного синтеза.
Выполнил:
студент 5-го курса ЗФ
группы УТС
Волошин А.С.
Проверил:
ТребухинА.Г.
Тверь 2018
Оглавление
1. Лингвистическое обеспечение. Языки программирования и проектирования, применяемые в САПР. 3
2. Постановка задачи структурного синтеза. 12
Список литературы: 16
Лингвистическое обеспечение. Языки программирования и проектирования, применяемые в САПР.
Лингвистическое обеспечение САПР – это совокупность языков, используемых в процессе разработки и эксплуатации САПР для обмена информацией между человеком и ЭВМ. Термином "язык" в широком смысле называют любое средство общения, любую систему символов или знаков для обмена информацией.
Лингвистическое обеспечение САПР состоит из языков программирования, проектирования и управления.
Языки программирования служат для разработки и редактирования системного и прикладного программного обеспечения САПР. Они базируются на алгоритмических языках — наборе символов и правил образования конструкций из этих символов для задания алгоритмов решения задач.
|
|
Языки проектирования — это проблемно-ориентированные языки, служащие для обмена информацией об объектах и процессе проектирования между пользователем и ЭВМ.
Языки управления служат для формирования команд управления технологическим оборудованием, устройствами документирования, периферийными устройствами ЭВМ.
Существуют различные уровни языков программирования: высокие, более удобные для пользователя, и низкие, близкие к машинным языкам.
Программа, записанная на некотором языке программирования высокого уровня, называется исходной. Прежде чем исходная программа будет исполнена, она должна быть преобразована в машинную форму, соответствующую ЭВМ данного типа. Подобные преобразования осуществляются специальными программами, называемыми языковыми процессорами.
Основные типы языковых процессоров — трансляторы и интерпретаторы; соответственно преобразования программ называют трансляцией и интерпретацией.
Трансляцией называют перевод всего текста программы на исходном языке (исходной программы) в текст на объектном языке (объектную программу). Если исходный язык является языком высокого уровня, а объектный — машинным, то транслятор называют компилятором. Если исходный язык — машинно-ориентированный (в автокоде), а объектный — машинный, то транслятор называют ассемблером. Если исходный и объектный языки относятся к одному уровню, то транслятор называют конвертером.
|
|
По методу трансляции (компиляции) сначала исходная программа переводится на машинный язык, а затем скомпилированная рабочая программа исполняется.
При интерпретации перевод исходной программы в рабочую совмещены во времени; очередной оператор исходной программы анализируется и тут же исполняется.
В большинстве случаев применение трансляторов приводит к меньшим затратам машинного времени, но к большим затратам машинной памяти, чем при интерпретации.
Совокупность языка программирования и соответствующего ему языкового процессора называют системой программирования.
Классификация языков программирования представлена на рис. 1.
Рис. 1. Классификация языков программирования
Класс машинно-зависимых языков представлен Ассемблером (макроассемблером). Он относится к языкам низкого уровня и применяется для написания программ, явно использующих специфику конкретной аппаратуры.
|
|
К машинно-ориентированным языкам относится язык СИ (разработан в 1972 г.). В нем объединяются достоинства низкоуровневых возможностей ассемблеров и мощных выразительных средств языков программирования высокого уровня. Язык СИ является одним из претендентов на роль основного языка программирования в САПР и ориентирован на разработку системных программ. Он, в частности, послужил главным инструментом для создания операционных систем для ЭВМ UNIX и MS DOS.
Язык Фортран является первым универсальным языком высокого уровня (с 1954 г.). Наиболее эффективен при численных расчетах, прост по структуре и удобен при выполнении программ. Несмотря на свои недостатки, этот язык получил большое распространение при разработке прикладных программ для решения научных задач. Самая популярная в настоящее время версия этого языка — Фортран-77.
Идеи Фортрана получили развитие в языке PL/I (создан в 1964 г.). В нем сделана попытка преодолеть некоторые недостатки, свойственные языкам для больших ЭВМ, и использованы идеи структурного программирования. В настоящее время имеются различные версии этого языка: PL/M, PL/Z, PL/65 и др. Как язык программирования PL/M, в частности, значительно уступает конкурирующим с ним языкам Паскаль и Модула-2.
|
|
Язык Паскаль является одним из наиболее популярных языков программирования и применяется для разработки системных и прикладных программ, в частности, для персональных ЭВМ. Язык Паскаль создан вначале исключительно для учебных целей и изящно реализовал большинство идей структурного программирования.
Достоинства языка оказались столь значительными, что он приобрел огромную популярность для самых различных приложений.
В частности, компилятор TurboPascal, снабженный интерактивным редактором, позволяет создавать достаточно сложное программное обеспечение — системы управления базами данных, графические пакеты и т. д.
Развитием Паскаля являются языки Модула-2 (в Европе) и Ада (в США). Язык Модула-2 обладает лучшими средствами для обработки больших программных комплексов и позволяет более эффективно использовать особенности аппаратуры. Таким образом, этот язык призван заполнить ниши между Паскалем и СИ. По оценке специалистов, язык Модула-2 через несколько лет станет наиболее популярным среди всех языков программирования.
Язык Ада можно назвать наиболее универсальным среди созданных языков. Однако трансляторы с этого языка пока не получили достаточного распространения.
Язык Алгол — общепризнанный язык для публикации алгоритмов решения научных задач, построен на четких и полных определениях. Для Алгола характерны строгие, но негибкие структуры данных и программ. Алгол труден для реализации на большинстве ЭВМ, поэтому используются неполные варианты языка или его расширения.
Язык Кобол, разработанный для решения экономических задач, будучи широко распространен на больших и средних ЭВМ прошлых лет, на персональных ЭВМ почти не применяется. На ЭВМ имеются интегрированные системы, базы данных и другие типы прикладных систем, используемые в задачах экономического и управленческого характера.
Самыми распространенными на ЭВМ являются различные версии языка Бейсик, простота которого делает его превосходным средством для начинающих программистов. В языке встроены удобные функции для работы с экраном дисплея, клавиатурой, внешними накопителями, принтером, каналами связи. Это позволяет относиться к Бейсику как к продолжению аппаратуры ПЭВМ. Системы Бейсика работают в режиме интерпретации, что способствует сокращению характерного цикла в работе программиста: составление программы — пробное исполнение — исправление ошибок — повторное исполнение. Бейсик наряду с Паскалем принят во многих учебных заведениях как базовый язык для изучения программирования.
Язык АПЛ применяется для обработки структурных данных (векторов, матриц) и использует иероглифическую запись программных текстов. Из-за большого числа иероглифов (около 100) его иногда называют китайским Бейсиком.
К классу проблемно-ориентированных языков можно отнести Лого, CPSS, Форт и Смолток.
Язык Лого — диалоговый процедурный язык, реализованный на принципе интерпретации и работающий со списками, текстами, графическими средствами и т. д. Язык очень перспективен для обучения, создания электронных игрушек и т. д.
Развитием проблемно-ориентированных языков является объектно-ориентированный подход (языки Смолток, Форт, Модула и Ада). Отличительными особенностями таких языков можно назвать модульность построения процедур, абстракцию данных, динамическую связку программ (позволяет отказаться от перекомпилирования всей программы при внесении изменений в отдельные модули) и использование механизма наследования иерархического типа.
К недостаткам таких языков относятся некоторая замедленность выполнения программ из-за их динамической связи и сложность трансляторов.
Язык Смолток предназначен для решения нечисловых задач при построении систем искусственного интеллекта. В языке Форт применены структурное программирование и очень компактный машинный код.
Для разработки систем искусственного интеллекта также используются функциональные языки Лисп, Пролог и СНОБОЛ. Эти языки ориентированы на обработку символьной информации, требуют больших массивов данных и стали применяться в ПЭВМ в связи с появлением дешевой полупроводниковой памяти, позволяющей довести объем ОЗУ до нескольких мегабайт. Языки этого класса относятся к так называемым языкам представления знаний.
Язык Лисп применяется для программирования интеллектуальных задач — общение на естественном языке, доказательство теорем, принятие решений и т. п.
Язык Пролог приобрел в последние годы большую популярность в связи с японским проектом создания вычислительных систем пятого поколения. Он предназначен для создания широкого класса систем искусственного интеллекта, в том числе и персональных экспертных систем.
При использовании САПР приходится не только решать задачи вычислительного характера и обработки данных, но и автоматизировать описание объектов, процессы ввода, вывода и редактирования данных, ввода графических изображений, схем, чертежей и т. п. Для этой цели служат языки проектирования.
Классификация языков проектирования приведена на рис. 2.
Рис. 2. Классификация языков проектирования
Языки проектирования делят на: входные, выходные, сопровождения, промежуточные и внутренние.
Входные языки служат для задания исходной информации об объектах и целях проектирования. Во входных языках можно выделить две части: непроцедурную, служащую для описания структур объектов, и процедурную, предназначенную для описания заданий на выполнение проектных операций.
Языки сопровождения служат для непосредственного общения пользователя с ЭВМ и применяются для корректировки и редактирования данных при выполнении проектных процедур. В диалоговых режимах работы с ЭВМ средства языков входного, выходного и сопровождения тесно связаны и объединяются под названием диалогового языка. Современные диалоговые языки широко используют средства машинной графики (графический диалог). Диалог с ЭВМ может быть пассивным, когда инициатор диалога — система и от пользователя требуются только простые ответы, и активным при двусторонней инициативе диалога. Наиболее распространенная форма пассивного диалога — это система встроенных, в том числе иерархических, директивных меню.
Недиалоговые системы языков сопровождения ориентированы на пакетный режим работы ЭВМ.
Промежуточные языки используются для описания информации в системах поэтапной трансляции исходных программ. Введение таких языков облегчает адаптацию программных комплексов САПР к новым входным языкам, т.е. делает комплекс открытым по отношению к новым составляющим лингвистического обеспечения.
Внутренние языки устанавливают единую форму представления данных (текстовой и графической информации) в памяти ЭВМ по подсистемам САПР. Принимаются определенные соглашения об интерфейсах отдельных программ, что делает САПР открытой по отношению к новым элементам программного обеспечения.
В качестве примера современного языка проектирования можно указать язык VHDL (VHSIC — hardwaredescriptionlanguage) — язык описания аппаратуры на базе сверхвысокоскоростных интегральных схем. Этот язык принят в качестве стандарта как инструментальное средство автоматизации проектирования СБИС, ориентированное на методологию нисходящего проектирования. Он является достаточно универсальным, чтобы охватить все аспекты проектирования изделий в области цифровой электроники.
Постановка задачи структурного синтеза.
Процедуры структурного синтезаотносятся к наиболее трудноформализуемым в процессе проектирования. В то же время дальнейшее повышение степени автоматизации проектирования зависит в первую очередь от успехов в разработке методов и алгоритмов структурного синтеза.
Задачи структурного синтезаклассифицируют по ряду признаков.
В зависимости от стадии проектирования, на которой производится синтез, различают такие процедуры:
1) Выбор основных принципов функционирования объекта(физических, организационных, информационных и т. п.) — выполняется на ранних стадиях проектирования, обычно на стадиях научно-исследовательских работ. Например, при проектировании проходческой машины необходимо принять решение, каким способом она будет разрушать породу: резцовым, шарошечным инструментом, либо буровзрывным способом.
При получении ТЗ на разработку нового объекта проектировщик решает задачу на основе имеющихся знаний и накопленного опыта. При этом ему необходимо учитывать достигнутый глобальный технический уровень, который дает прототипы и ориентиры, существенно помогающие при внешнем проектировании. Однако ориентация только на накопленный опыт часто сковывает творческую фантазию проектировщика и мешает увидеть принципиально новые решения. Эта особенность выполнения процедур синтеза получила название психологической инерции.
В САПР средства автоматизации процедур синтеза принципиальных решений должны помогать проектировщику, как в учете накопленного опыта, так и в преодолении психологической инерции. Накопленный опыт воплощается в специальных разделах базы данных, например, в разделах типовых решений и физических эффектов.
Получению оригинальных решений способствует наличие раздела, содержащего описание эвристических приемовсинтеза. Эвристические приемы можно сгруппировать в приемы изменений в пространстве, во времени, преобразований формы, материалов, видов движения, модификаций добавлением, исключением, заменой и т. п., например: «изменить ориентацию объекта в пространстве», «изменить характер движения объекта» «совместить операции во времени», «разделить движущийся поток на два или несколько» и т. п.
2) Выбор технических решенийв рамках заданных принципов функционирования предполагает конкретизацию ранее выбранных принципов построения и функционирования объекта.
Так, выбрав для проходческого комбайна способ разрушения, необходимо решить, каким будет исполнительный орган — щитовым или избирательного действия, какой тип привода использовать — электро-, пневмо- или гидропривод. Здесь также полезно использовать библиотеки типовых решений.
3) Оформление технической документациизаключается в синтезе не содержания, а формы представления описаний проектных решений.
Оформление технической документации регламентируется правилами ЕСКД, что обуславливает специфический «рутинный» характер процедуры и необходимость ее формализации.
Для преобразования описаний с внутреннего языка ЭВМ в текстовую и графическую документацию, нужно осуществить ряд процедур, связанных с трансляцией языковых представлений, синтезом проекций, сечений, компоновкой текстовой и графической информации по страницам и листам, простановкой размеров, вспомогательных надписей и т. п.Поэтому в существующих САПР, как правило, имеются подсистемы оформления технической документации. Однако полная автоматизациявыполнения процедуры затруднена, поскольку требования наглядности, читаемости чертежа весьма трудно формализуются.
В зависимости от возможностей формализациизадачи синтеза делятся на несколькоуровней сложности.
К уровню I сложностиотносят задачи, в которых требуется выполнение лишь параметрического синтеза, а структура объекта определена либо спецификой ТЗ, либо результатами процедур, выполненных на предыдущих этапах проектирования.
К уровню II сложностиотносят задачи, в которых возможен полный перебор известных решений. Следовательно, это комбинаторные задачи, т. е. задачи выбора элементов в конечных множествах. Это могут быть или решения, составленные заранее и включенные в базу данных, или имеется алгоритм, позволяющий поочередно получать новые решения и анализировать их.
К уровню III сложностиотносят комбинаторные задачи, которые не могут быть решены путем полного перебора за приемлемое время. Примерами таких задач являются задачи компоновки и размещения оборудования в ограниченных пространствах, проведения трасс, процедуры оформления технической документации.
К уровню IV сложностиотносят задачи поиска вариантов решений во множествах неизвестной или неограниченной мощности. Формализация таких задач представляет большие трудности. Их особенностью является возможность получения новыхоригинальныхрешений.
К уровню V сложностиотносят задачи синтеза, решение которых является проблематичным.
Если в задачах уровня IV возможности создания структур бесспорны и главная проблема заключается в нахождении среди многих структуры удовлетворяющей определенным требованиям, то в задачах уровня V получение решения эквивалентно предложению принципиально новых основ построения целого класса технических объектов.
По типу синтезируемых структурвыделяют задачи одномерного, схемного и геометрического синтеза.
При одномерном синтезерешаются задачи упорядочения элементов структуры в одномерных пространствах (составление расписаний, графиков работ, технологических процессов).
При схемном синтезеопределяется структура объекта без конкретизации его геометрических форм (синтез кинематических, электрических, функциональных схем и т. п.)
Геометрический синтеззаключается в определении формы и взаимного расположения элементов проектируемого объекта и оформления конструкторской документации.
Список литературы:
1. Хелпикс.Орг - Интернет помощник [Электронный ресурс] // Лингвистическое обеспечение САПР, 2018.
URL:http://helpiks.org/2-35369.html (дата обращения: 09.02.2018).
2. Норенков И.П. «Основы автоматизированного проектирования»: учеб.для вузов. 2-еизд., перераб. и доп. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2002. - 336 с.:ил. - (Сер.Информатика в техническом университете).
Дата добавления: 2018-04-04; просмотров: 511; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!