Реализация процесса ранения задачи
Этап физического проектирования предполагает выбор программных и технических средств информационной технологии для реализации процесса решения задачи. Автоматическое решение задачи базируется на модели предметной области и математической модели. План решения задачи в зависимости от используемой модели представления знаний реализуется в продукционной системе в виде пути поиска решения и сведения исходной задачи к элементарным задачам либо в редукционной системе решающим графом, на основе которого задача может быть сведена к одной из типовых задач, хранящихся в банке. Решение элементарных, а также типовых задач осуществляется на разработанных программных модулях либо на реализуемом в процессе решения задач программировании в одном из языков.
При использовании продукционной системы, базирующейся на логической модели представления знаний, программирование можно вести на прологоподобиых языках. Структура построения прологоподобной программы позволяет естественным образом проводить разложение исходной задачи на подзадачи с использованием операций конъюнкции и дизъюнкции. Это подтверждается тем, что существует соответствие между описанием решаемой задачи на языке исчисления задач и представлением логической структуры прологоподобной программы, т. е. программы без определения имен ее термов. Выполнение прологоподобных программ можно возложить на пролог-машину, которая представляет собой частный случай машины вывода. Прологоподобные языки широко применяются при реализации автоматизированного процесса решения задачи, описываемой логической моделью представления знаний в виде формул исчисления задач. При этом в зависимости от типа задачи строятся эффективные стратегии поиска решения как в автоматическом режиме, так и с использованием различных диалоговых процедур.
Этап физического проектирования может быть реализован и с использованием алголоподобных языков, предполагая, что представление знаний базируется на алгоритмической модели. Программирование на алголоподобных языках основывается на разложениях вида «сочленение», «выбор», «повторение». Их отображением являются синтаксические конструкции: последовательность, case of, while do. Программирование осуществляется на основе правил подстановки. Процесс программирования есть составление плана решения задачи, выраженного в синтаксических конструкциях используемого формального языка, которые связывают обозначения действий элементарных подзадач. Выполнение составленной программы - это решение задачи, осуществляемое в автоматическом режиме. Построение программ в соответствии с формулами исчисления задач рассматривается как процесс образования знаний, который рационально организовать при предварительно выбранной структуре. Соответственно еще до определения языка выбирается синтаксическая структура программы, которая представляется в виде пустых операторов какого-либо алголоподобного языка. Тогда могут быть построены синтаксические структуры программ, соответствующие формулам исчисления задач. План решения задачи, записанный ранее формально, легко переводится в синтаксическую форму.
Выполнение решения задачи базируется на машине вывода, работающей на алголоподобной программе. Решением задачи считают такую программу, синтаксическая структура которой построена на основе описания задачи, а используемые подпрограммы есть модули решения элементарных задач. Машина вывода решения реализует выполнение задачи полностью в автоматическом режиме. Пользователь лишен возможности оценивать промежуточные результаты, отсутствует механизм возврата. Машина вывода решения формирует конечный результат путем сведения исходной задачи к элементарным, решением которых находится реализацией подпрограмм за счет активизации соответствующих программных модулей. Таким образом, и в этом варианте фактически существует банк формализованных элементарных задач с соответствующим программным обеспечением.
Этап физического проектирования, реализующий концепцию банка формализованных задач, предполагает наличие спецификации задачи, полученной на основе ее идентификации по отношению к классу и типу задач, содержащихся в банке. Построенная на этапе логического проектирования математическая модель раскрывается на основе известных методов и ориентированных на них пакетов. прикладных программ. Опыт разработки автоматизированных систем представляет обширный материал по программному обеспечению типовых задач, выделяемых в соответствии с функциями управления в системе. В условиях новой информационной технологии необходимо учесть дополнительные ограничения по реализации комплекса связанных задач на одном рабочем месте. Это заставляет более жестко учитывать организационную обособленность задач, объединяемых в один класс. В ряде случаев существенным может оказаться и дискрет управления, определяющий допустимый временной интервал поиска решения. Целесообразно, чтобы математические модели решения задач одного класса в своей основе имели одну и ту же базовую модель. Использование пакетов прикладных программ имеет существенное преимущество и со стороны организации алгоритмов, для которых обычно известны характеристики и возможности использования. В случае отсутствия пакетов прикладных программ возможна разработка специального проблемно-ориентированного программного обеспечения, однако это не меняет рассмотренной идеологии автоматизированного решения задач.