ОБРАТНЫЕ ЗАДАЧИ В КОМПЬЮТЕРИЗИРОВАННЫХ ТЕХНОЛОГИЧЕСКИХ СРЕДАХ
Н.Ф. Гусарова, А.В. Маятин, Ф.А. Смирнов Введение
Все большее число технологических процессов (ТП) использует компьютер как технологическую среду. К таким ТП относятся, например, создание и модификация продуктов мультимедиа, Интернет-ресурсов, компьютерная допечатная подготовка изданий (КПИ) в рамках издательского процесса и.т.д.
Часто в таких процессах для создания готового продукта используются результаты работ, выполняемых несколькими акторами. Возникает задача соединения этих результатов в едином ТП, которую можно назвать обобщенной задачей сборки.
В статье рассматривается специфика этой задачи применительно к ТП КПИ. Строится математическая модель пространства спецификаций как технологической среды, анализируются ее особенности по сравнению с другими средами сборки. Рассматриваются возможные формальные и эвристические процедуры для поддержки решения задач сборки в ТП КПИ.
Содержательная постановка задачи
Основные технологические этапы ТП КПИ представлены в [1, рис. 1]. Технологическая среда ТП КПИ формируется совокупностью программных продуктов (1111), каждый из которых ориентирован на выполнение некоторого набора функционально-стей, объединяемых вокруг определенной технологической операции ТП КПИ высокого структурного уровня. Например, выпускаются ПП для верстки, для обработки текста, растровой графики, векторной графики и т. п.
В содержательном плане ТП КПИ имеет несколько уровней вложенности N, причем на каждом i-м уровне, i = 1 ...N, воспроизводит постепенное заполнение поля будущего структурного элемента издания Sij, j=1.Ki (например, страницы книги) структурными единицами более низкого уровня (текстом, иллюстрациями и т.д.) вплоть до издания в целом So. Между структурными единицами должна поддерживаться логическая связь, определяемая семантикой издания. C этой точки зрения управление в ТП КПИ можно содержательно соотнести с управлением сборочным процессом [2, 3] или управлением проектом [4, 5]. Однако, учитывая, что в ТП КПИ на каждом уровне вложенности семантически выделяется ведущий процесс, который аккумулирует результаты работы процессов предыдущего уровня и сам, в свою очередь, передает свой результат ведущему процессу более высокого уровня, для описания ТП КПИ более адекватной представляется модель «выделение приоритетной задачи» из теории управления параллельными процессами [6, 7]. В данной модели один из процессов объявляется ведущим (master), он отвечает за сроки начала зависимых процессов (slaves) и согласованность их результатов.
Выделим основные особенности ТП КПИ в этом плане.
• Наличие неформализованных требований к результату ТП КПИ. Только часть требований на любом этапе процесса поддается формализации, например, требование «результат должен понравиться заказчику» присутствует в большинстве случаев и не может быть формализовано.
• Использование проприетарных ПП с, как правило, закрытым кодом, которые документируются с точностью до семантики операций. Алгоритмы преобразований, выполняемые ПП, невозможно изменять, а в некоторых случаях (часть фильтров Adobe Photoshop) неизвестен алгоритм работы определенных функций ПП. Вместо
этого пользователю предлагается набор стандартных сценариев работы и моделей поведения в среде 1111, согласованных со среднегрупповыми интуитивными моделями [см., например, 8]. Однако, как показывает практика, с ростом диверсификации ТП КПИ, появлением новых технологий печати и оборудования, а также внедрением концепции TQM такой набор теряет свою эффективность: появляется необходимость в самостоятельном конструировании недокументированных функций и новых сценариев на том же 11 .
• Множество вариантов решений одной технологической задачи. Из-за отсутствия четких требований и избыточной функциональности 1111 существует множество различных решений поставленных задач, отличающихся качеством и затратами ресурсов, требуемых для их выполнения.
• Неоднозначность трактовок интерфейса 1111. Взаимодействие пользователя - актора ТП К1И - с подавляющим числом используемых 11 происходит через пользовательский интерфейс. Согласно исследованиям в области взаимодействия человека и компьютера [9-12], модели пользовательского интерфейса, используемые программистом-разработчиком 11 и пользователем 11 , различаются по набору базовых сущностей:
модель программиста = <платформа, операционная система, подход к разработке, методы разработки, среда и язык разработки, спецификации; функциональность, эффективность, технологичность, внутренняя стройность>; (1)
модель пользователя = <интуитивные модели, формальные модели, задачи, процессы, инструменты, результаты>. (2)
Модель (2) имеет смысл обобщенных представлений пользователя о процессах, происходящих во время работы программы или программной системы. Анализ пользовательских интерфейсов современных прикладных 11 для Т1 К1И показывает ориентацию их разработчиков на модель (2), т.е. на метафору «интуитивной понятности». Но, как отмечается в [13], интуитивные модели пользователей 11 представляют собой высокодинамичный конструкт со слабо формализуемыми параметрами, такими как уровень подготовки в предметной области и во владении компьютером, уровень текущей активности (в том числе имплицитной), устоявшиеся стереотипы работы и т.д. В результате разные акторы Т1 К1И трактуют интерфейсные операции 11 , доступные им только на семантическом уровне в виде пунктов меню, по-разному, что затрудняет организацию управления в Т1 КШИ.
• Большое количество технологических задач, глобально затрагивающих все переменные (например, операции с растровым изображением как целым).
| Создание текста | | Форматирование изображений |
| Логотип заказчик^ I | Верстка |
»1 Требования к типографий"]
L
_____I
Рис. 1. Пример зависимости задач в ТП КПИ
• Частые изменения в готовых фрагментах работы, выполненных сторонними акторами. Например (рис. 1), логотип заказчика предоставлен самим заказчиком, но в процессе верстки в нем обнаружены артефакты; необходимо, не обращаясь к заказчику, изменить логотип, чтобы он соответствовал требованиям типографии.
Сформулированные выше особенности ТП КПИ обобщены в табл. 1 в сравнении с другими ТП, решающими задачу сборки - сборкой сложной техники и промышленным программированием.
ТП КПИ Конвейерная сборка сложной техники Промышленное программирование
Наличие неформализованных требований ТП задается с точностью до последовательности переходов, неформальные требования локализуются внутри отдельного перехода, задачи принятия решения выносятся в стадию организации ТП Совпадает с ТП КПИ
Закрытые технологические средства (ПП) без возможности их изменения Свобода в выборе технологического оборудования Совпадает со сборкой сложной техники
Частичная наблюдаемость уграфа задачи Полная наблюдаемость уграфа ТП Полная наблюдаемость реализуется на уровне терминальных единиц среды разработки (более низкий уровень абстракции, чем в ТП КПИ)
Множество различных решений одной задачи Решение одно Множество различных решений одной задачи
Много технологических задач, глобально затрагивающих все переменные Такие задачи отсутствуют Такие задачи локализуются на уровне глобальных архитектурных решений, их число минимизируется
Таблица 1. Характеристики различных процессов сборки
Таким образом, взаимодействие акторов ТП с ПП происходят на уровне модельного представления, соответствующего не только их знаниям, умениям и навыкам, но и текущим интуитивным моделям, активности, в том числе имплицитной, и т. д., что заставляет рассматривать ТП КПИ как неполностью наблюдаемую сложную техническую систему. В общем виде задачу можно сформулировать следующим образом: на неполностью наблюдаемом управляющем графе по неполностью наблюдаемой реализации выхода определить (семантически) наличие ошибки, провести ее структурную, а затем параметрическую идентификацию и коррекцию.
Рассмотрим частный случай - исправление ошибки, возникшей при выполнении зависимой задачи внешним исполнителем. Пусть на некотором этапе была обнаружена ошибка, которая после выявления ее происхождения была локализована в зависимой задаче. Пусть данная задача выполнялось внешним исполнителем, и нам доступны только результаты ее выполнения, но недоступен управляющий граф зависимой задачи.
Необходимо преобразовать результаты зависимой задачи OutTeK к новым результатам Out'TeK принадлежащим к множеству допустимых выходов Out^.
Модель процесса решения обратной задачи в ТП КПИ
Формализуем поставленную задачу. Будем считать, что актор ТП работает, используя некий программный продукт со своим пользовательским интерфейсом. На формальном уровне интерфейс 1111 определяется [14, 15] как тройка
IF = (X, Y, V), (3)
где X - множество стимулов, Y - множество реакций, V - множество состояний 1111, а взаимодействие с 1111 с интерфейсом (X, Y, V) - как четверка
IA = (v, х, y, v) е V х X х Y х V, (4)
где v - пресостояние, х - стимул, y - реакция, v' - постсостояние. Согласно (4), понятие взаимодействия интерпретируется следующим образом: в пресостоянии 11 v вызывается интерфейсная операция с некоторыми значениями параметров х, на что 11 возвращает выходные параметры y и переходит в постсостояние v'.
Набор интерфейсных операций, определяющих функциональность 11 [16, 17], описывается моделью требований - абстрактным автоматом
MR= (V, X, Y, E), (5)
где V, X, Y имеют тот же смысл, что и в (1), а E ^ V х X х Y х V - множество переходов. Конкретизация (5) до уровня отдельных параметров производится через понятие спецификации. Сигнатурой интерфейсной операции I называется тройка
Sign/ = (Ini, Outi, Vari), (6)
где InI = {x¿ | i = 1, ..., in(I); in(I) > 0} - упорядоченный набор входных параметров операции, OutI = {yi | i = 1, ..., out(I); out(I) > 0} - упорядоченный набор выходных параметров операции, VarI = {v¡ | i = 1, ..., var(i); var(i) > 0} - набор переменных состояния, к которым обращается данная операция. Спецификацией SpecI интерфейсной операции I с сигнатурой SignI называется пара предикатов
SpecI = (preI, postI), (7)
где preI - предусловие (предикат на множестве Vi х XI,), postI - постусловие (предикат на множестве VI х XI х YI х VI), In = {хг- | i = 1, ..., in(I). Спецификацией 11 называется непустой набор спецификаций его интерфейсных операций
Specnn = {SpecIi | i = 1, ..., k; к> 0 }. (8)
В соответствии с приведенным подходом 11 предоставляет пользователям прикладной программный интерфейс, состоящий из n функций. Каждая интерфейсная функция имеет набор входных и выходных параметров. Кроме того, вызов интерфейсных функций может изменять внутреннее состояние 11 или его окружения, влияя тем самым на результаты следующих вызовов интерфейсных функций. Решая технологическую задачу Ps, пользователь задает последовательность интерфейсных функций {IA}s, т.е. формирует управление, потенциально приводящее к требуемому выходному набору переменных Outs. Если это управление не противоречит ограничениям (5), то 11 его выполняет. Как правило, в 11 предусматривается дублирование интерфейсных операций, т.е. один и тот же набор переменных Outs может быть получен посредством различных последовательностей интерфейсных функций. Ло каждой интерфейсной операции SignI (6) считаются полностью наблюдаемыми наборы InI, OutI и частично - VarI.
Введем понятие обратной интерфейсной операции. Если I - интерфейсная операция с предусловием (VI, X) (7), назовем обратной интерфейсной операцией Г такую интерфейсную операцию, что композиция I • I, во-первых, существует, а во-вторых, переводит 11 в состояние V1. Операцию I, для которой существует обратная операция Г, будем называть обратимой.
В зависимости от используемого ПП и его настроек различные операции могут быть обратимыми. Например, преобразование векторного изображения в растровое, как правило, необратимо, но при сохранении истории изменений его можно обратить.
Расширим множество интерфейсных операций {/¿}, добавив к нему все последовательности из данных операций, а также квазиоперацию е, «ничего не нажимать», не изменяющую состояние системы. Обозначим полученное множество О.
Утверждение 1. О - моноид1 функций из множества состояний ПП в множество состояний ПП.
Доказательство. Действительно, любой элемент получившегося множества любому состоянию ПП ставит в соответствие другое состояние ПП, а именно то, которое получится, если к исходному состоянию применить подряд все интерфейсные операции элемента группоида. Очевидно, е - интерфейсная операция «ничего не нажимать» - является единичным элементом О. Рассмотрим три интерфейсные операции /1, 12 и 13. Заметим, что и операция (/1/2)/з, и операция /1(/2/з) соответствует одним и тем же взаимодействиям с пользовательским интерфейсом ПП. Следовательно, операция композиции ассоциативна. Так как в О существует единичный элемент и операция композиции ассоциативна, то О - моноид.
Утверждение 2. Операция композиции интерфейсных операций не коммутативна.
Доказательство. Действительно, рассмотрим операции 11 увеличения растрового изображения в два раза и 12 уменьшения изображения в два раза при выключенном режиме интерполяции. Тогда композиция 1112 создаст на исходном изображении артефакты, а композиция 1211 оставит изображение неизменным.
Заметим, что утв. 2 поясняет сложность формальной шаблонизации действий акторов ТП КПИ. Например, требование «материалы принимаются в векторном виде» может быть выполнено разными способами: в одном актор всю задачу решает в векторном формате, а в другом все делает в растре, после чего результат сохраняет в векторном формате. При этом, хотя использованные интерфейсные операции одинаковы, во втором случае все преимущества вектора теряются.
В нашем моноиде выделим элементы, порожденные композицией обратимых операций, образующие множество Х.
Утверждение 3. Х - правая квазигруппа, при этом Х - не более чем правая квазигруппа2 .
Доказательство. Действительно, из определения обратной операции следует, что для любого I из построенного множества существует 1Л1 = е, где е - единичный элемент. Тогда для любых элементов а и Ь Ь(ала) = Ь, следовательно, построенное множество - это правая квазигруппа. В то же время из доказательства утверждения 2 следует, что Х - не более чем правая квазигруппа. Поскольку актор не полностью наблюдает состояния ПП, а также обычно не может проверить взаимодействие интерфейсных операций во всех возможных случаях, инструментальное построение данной правой квазигруппы затруднено, так как не всегда операция, являющаяся обратной на множестве наблюдаемых состояний, является обратной на всем множестве параметров3.
1 Моноид [18] - полугруппа с нейтральным элементом - множество М, на котором задана бинарная ассоциативная операция, обычно именуемая умножением, и в котором существует такой элемент е, что ех = х = хе для любого хе М.
2 Правая квазигруппа [18] - пара (2, *) из множества Q с бинарной операцией *: Q х Q ^ Q, удовлетворяющей следующему условию: для любых элементов а и Ь из Q найдётся единственный элемент х из Q, такой что х * а = Ь.
3 Одним из известных решений подобных проблем является введение понятия качества преобразования, но его эффективность для ТП КПИ ограничена.
Итак, актору не доступны внутренние состояния 1111, взаимодействие различных интерфейсных функций (применение подряд двух функций Ii и I2 в разных состояниях может привести к разным результатам (утв. 2), лишь частично известно действие интерфейсных операций. Поэтому будем рассматривать программный продукт как черный ящик с управляющими входами {I} - множеством интерфейсных операций. Тогда любое взаимодействие актора с 11 можно рассматривать как последовательность интерфейсных операций In. Будем считать, что 1111 продукт обладает корректной поддержкой функций сохранения и загрузки, т.е. всегда можно установить начальное состояние черного ящика. Под выходом черного ящика будем понимать всю совокупность наблюдаемых в данном состоянии параметров системы OutV(6).
В определенных выше терминах сформулируем поставленную задачу: необходимо найти последовательность интерфейсных операций, превращающих текущие состояние 1111 OuW в принадлежащие множеству допустимых результатов внешнего ТП Out^. Так как известно, что OuW были получены в результате Т1 целесообразно производить поиск в правой квазигруппе обратных интерфейсных операций Х (утв. 3), для того чтобы найти состояние Out^e^e, из которого возможно преобразование в Out^. Введем Y - множество оценки возможности преобразования - частично упорядоченное множество сложности преобразования текущих параметров в требуемые. Очевидно, что это множество сложно формализуемо и семантически задается пользователем.
Определение 1. Оператор оценки A: In' ^ Y каждой последовательности обратных интерфейсных операций сопоставляет оценку сложности преобразования результата в соответствии с требованиями.
Определение 2. Минимальная допустимая оценка ymin - элемент множества Y, такой, что если А1П > ymin, то сложность преобразования результата применения последовательности In' удовлетворяет требованиям актора.
В сформулированных определениях задача поиска ставится следующим образом: найти 1П : А1П > .ymin
Утверждение 4. Задача поиска неразрешима в общем виде, а именно, нельзя найти последовательность In': AIn' > ymin или проверить, что VIn' AIn' < ymin, используя ПП.
Доказательство. Как было сказано выше, множество интерфейсных операций лишь частично наблюдаемо, следовательно, всегда может существовать обратная интерфейсная операция Г inv : AI'inv > ymin, при этом для всех последовательностей наблюдаемых интерфейсных операций AIn' < ymin. 1оскольку проверка rinv невозможна, невозможно и решение поставленной задачи в общем виде.
В реальных условиях всегда существуют ограничения по времени для выполнения задачи Т1 . Введение этих ограничений в рассматриваемую задачу можно осуществить двумя способами. Во-первых, можно считать требуемые трудозатраты частью оценки качества, т.е. если AIn' > ymin, то преобразование возможно с требуемым качеством в поставленные сроки. Во-вторых, можно представить множество оценок Y как произведение QxT, где множество Q является оценкой качества результата, а множество T -оценкой трудозатрат, и сформировать образ ImgA(X), который означает все допустимые пары качество-трудозатраты. В этом случае возникает задача выбора необходимого качества и сроков выполнения задачи Т1 .
1оскольку задачу поиска решает актор 1Ш, обладающий своим набором эвристик, уровнем активности и т.п., правомерно ввести еще одну сущность - оператор «решения не лучше имеющихся».
Определение 3. Оператор В: Х ^ 2 Х - «решения не лучше имеющихся». Если х2 : х2еВ(х1), то Л(х2)<=Л(х1). Оператор В ставит в соответствие любой последовательности множество последовательностей, относительно которых актор ТП знает, что соответствующие решения будут не лучше, чем данное. Этот оператор позволяет моделировать навыки актора, его знание особенностей ПП и ТП.
Определение 4. Проверяющая последовательность для некоторого подмножества Т. Если и 1ш^В(хп) з Т, где Т - подмножество Х, то последовательность хп проверяет Т. Из определения следует, что если последовательность проверяет множество Т, то она проверяет и любое его подмножество.
В процессе поиска решения актор проверяет некоторые последовательности интерфейсных операций, формируя из них последовательность проверки хп, где хг - элемент множества Х. Рассмотрим объединение образов и 1ш§В(х„). Это множество покрывает некую часть пространства возможных решений. При этом из определения оператора В следует, что если все проверенные решения не удовлетворяют требованиям к качеству, то и все элементы из множества и !ш§В(х„) не соответствует требуемому качеству. Очевидно, что для проверки решения задачи нужно найти последовательность проверки, которая наилучшим образом проверяет все множество решений, т.е. и 1ш§В(х„) = Х. Так как хеВх, то любая последовательность хп, состоящая из всех элементов Х, проверяет все.
Возможны различные критерии сравнения различных проверяющих последовательностей - например, длина последовательности, количество переходов в начальное состояние и т.д. В общем виде задача решается через проверку лучшей по некоторому критерию проверяющей последовательности для всего множества.
Таким образом, построена модель процесса решения обратной задачи как построения наилучшей проверяющей последовательности (опр. 4), учитывающая особенности поставленной обратной задачи (утв. 3) и формализующая навыки актора ТП путем введения оператора оценки А (опр. 1) и оператора В «решение не лучше имеющихся» (опр. 3), а также доказана невозможность решения поставленной задачи в общем виде (утв. 4).
Специфику основных положений модели поясняет табл. 2, в которой представлено сравнение их применимости для ТП, обозначенных в табл. 1.
Сущность ТП КПИ Конвейерная сборка сложной техники Промышленное программирование
Утверждение 1 выполняется выполняется выполняется
Утверждение 2 не выполняется стремятся достичь коммутативности за счет разбиения на сборочные единицы усиливают коммутативность за счет разделения продукта на иШ'ы и стандартизации интерфейсов между ними, снижения связности и т. п.
Утверждение 3 выполняется В массовом производстве Х - группа (за счет стандартизации деталей), в индивидуальном производстве утв. 3 выполняется Откат возможен только в пределах множества Х (в бикомпонентной зоне уг-рафа)
Инструментальное построение мно- Затруднена реалииза- ция Реализуется, при этом Х~О. Реализуется
жества Х
Построение оператора А (определение 1) строится актором неформально СКО и другие статистические процедуры; У определен в пространство состояний; А-1 определен полностью и везде строится актором неформально
Утверждение 4 выполняется не выполняется выполняется
Построение оператора В (определение. 3) Опыт, эвристики Непосредственно вытекает из оператора А, задается формально (критериально и т.д.) Опыт, эвристики
Построение проверяющей последовательности (определение 4) Промежуточные варианты Алгоритмы технической диагностики Различные подходы в зависимости от значимости ошибки, типа процесса разработки и т.д. Предельные случаи: (1) алгоритмы диагностики по автоматной модели, (2) оптимистичная стратегия изменений (отсев некритичных ошибок, исправление ошибок без локализации с нарушением принятой архитектуры системы - «хак»)
Таблица 2. Применимость модели для различных ТП сборки
Возможности поддержки решения обратных задач в ТП КПИ
Рассмотрим применение развитого подхода к описанию реального ТП КПИ.
Для ПП, используемых в ТП КПИ, характерно большое количество интерфейсных операций, т.е. мощность множества Х велика. Поэтому актор ТП КПИ производит покрытие множества Х частично пересекающимися множествами 1ш§В(хп) и наделяет каждое из выделенных подмножеств самостоятельной семантикой (т. е. осуществляет таксономию множества Х). Каждому из выделенных подмножеств сопоставляется проверяющая последовательность. При этом можно семантически описывать проверяемые множества, а также ситуации, в которых целесообразно проверять именно это множество решений.
Так как задача поиска проверяющих последовательностей неразрешима в общем виде (утв. 4), то для поддержки частных решений целесообразно использовать интеллектуальные процедуры. В табл. 3 построена обобщенная оценка применимости части подобных процедур [19, гл. 10, 14; 20, гл. 4, 7, 8] к рассматриваемым задачам, при этом наименования и описания процедур соответствуют источникам.
Отметим также возможное альтернативное решение задачи. Иногда актору ТП могут быть доступны исходные параметры внешней задачи ТП. Тогда может стать целесообразным прямое решение внешней задачи, т. е. заново и своими силами. Как правило, такое решение связано с большими трудозатратами и редко используется, но в нем возникает интересная задача использования имеющихся некорректных результатов для улучшения ТП, рассмотрение которой выходит за рамки данной статьи.
Наименование процедуры Содержание и/или условия применимости процедуры Применимость в обратных задачах ТП КПИ
Абдуктивные выводы [19]: • подход, основанный на покрытии множеств (связи базовой модели представляются простой импликацией) • подход на основе логики (реализуются методы генерации и отбора гипотез; требуется специальное представление знаний, определяющее, возможно, неявно причинно-следственные связи (например, логические программы)) • подход на уровне знаний (модель определяется в зависимости от типа доверия; вводится семантическое определение оператора объяснения, т.е. достигается независимость от соответствующего представления знаний) Имеется множество фактов о предметной области, достаточное для формирования коллективных переменных Ограничена в связи с недостаточной выборкой фактов неприменима, так как отсутствует достаточная статистика и монотонность применима с ограничениями, так как требует задания логической теории предметной области на множестве наблюдений применима на модели убеждений для извлечения знаний из эксперта
Поиск с применением жадных алгоритмов [20] Состоянию n ставится в соответствие значение критерия поиска, равное сумме его глубины в пространстве поиска, h(n), и некоторой эвристической оценки расстояния от него до цели, g(n) Применима, если оператор А (опр. 1) формализован достаточно, чтобы на его основе построить эвристическую оценку к(п), а ^п) задать по длине проверяющей последовательности
Поиск с применением эвристик [20]: • упорядочивание на основе целей • упорядочивание по существенным признакам • предпочтение точных совпадений • частичное предпочтение • предпочтение новизны поиск случаев с совпадающей целью выбираются случаи, совпадающие по наиболее важным признакам сначала проверяются случаи с точным совпадением, а затем - с более общим сначала проверяются наиболее типичные случаи поиск по последним случаям применима применима применима применима применима при наличии статистики
• предпочтение легкости адаптации используются первые наиболее легко адаптируемые к ситуации случаи применима
Рассуждения на основе правил [20] применима; выбор типа рассуждения связан с конкретизацией проверяющей последова-тельности(опр. 4)
Рассуждения на минимальных моделях [20] минимальная модель -модель, для которой не существует подмоделей, удовлетворяющих множеству информативных для предметной области предикатов при всех значениях переменных неприменима, так невозможно построить минимальную модель
Абдукция путем множественного покрытия [20] Покрытие предикатов, описывающих наблюдения, с помощью предикатов, описывающих гипотезы Неконструктивно для ТП КПИ
Таблица 3. Оценка применимости интеллектуальных процедур к обратным задачам ТП КПИ
Заключение
Рассмотрена постановка и специфика решения обратных задач в ТП КПИ. Построена математическая модель пространства спецификаций как технологической среды, анализируются ее особенности по сравнению с другими средами сборки. Рассмотрены возможные формальные и эвристические процедуры для поддержки решения обратных задач в ТП КПИ.
Литература
1. Гусарова Н.Ф., Иванов Р.В., Кузюк Д.В., Маятин А.В. Информационно-справочная система для поддержки допечатной подготовки изданий // Наст. сб. С. 275-283.
2. Морозов В.П., Дымарский Я.С. Элементы теории управления ГАП: Математическое обеспечение. - Л.: Машиностроение, 1984.
3. Куликов Д.Д., Падун Б.С., Яблочников Е.И. Методологические основы построения АСТПП // Научно-технический вестник СПбГУ ИТМО. - 2005. - Вып. 22. - С. 114121.
4. Field M., Keller L. Project Management. - Int. Thomson Fusiness Press, Boston, 1998. -441 p.
5. Грей К.Ф., Ларсон Э.У. Управление проектами: Учебник. - М.: ДИС, 2007. - 608 с.
6. Комолкин А.В., Немнюгин С.А. Программирование для высокопроизводительных ЭВМ: Учебно-научного центра информационных и вычислительных ресурсов. (Санкт-Петербург) / http://www.hpc.nw.ru/KOI/COURSES/HPC/
7. Воеводин Вл.В. Параллельная обработка данных: курс лекций / www.parallel.ru/vvv
8. Бахметьев В. MOF дополняет ITIL // Открытые системы. - 2004. - № 1.
9. Мандел Т. Разработка пользовательского интерфейса. - М.: ДМК Пресс, 2001.
10. Иванова Г.С. Технология программирования: Учебник для вузов. - М.: Изд. МГТУ им. Н.Э. Баумана, 2002. - 320 с.
11. Norman D.A. Cognitive artifacts // Designing Interaction: Psychology at the HumanComputer Interface / J. Carrol (ed.). - New York: Cam-bridge University Press, 1991.
12. Kuutti K. Activity Theory as a Potential Framework for Human-Computer Interaction Research // Context and Consciousness: Activity Theory and Human-Computer Interaction / B. Nardi (ed.). - Cambridge, MA: MIT Press, 1996.
13. Гаврилова Т.А., Хорошевский В.Ф. Базы знаний интеллектуальных систем. - С1б: Штер, 2000.
14. Кулямин В.В., Штренко А.К., Косачев А.С., Бурдонов И.Б. 1одход UniTesK к разработке тестов // 1рограммирование. - 2003. - Т. 29. -№6. - С. 25-43.
15. Хорошилов А.В. Спецификация и тестирование компонентов с асинхронным интерфейсом: Автореферат дис. ... канд. физ.-мат. наук. - М.:, ИС1 РАН, 2006.
16. Брауде Э.Дж. Технология разработки программного обеспечения. - С1б: 1итер, 2004. - 655 с.
17. Meyer B. Applying 'Design by Contract' // IEEE Computer. - 1992.. -V. 25. - P. 40-51.
18. Каргаполов М.И., Мерзляков Ю.И. Основы теории групп. М.: Наука, 1982.
19. Вагин В.Н., Головина Е.Ю., Загорянская А.А. Достоверный и правдоподобный вывод в интеллектуальных системах. - М.: Физматлит, 2004. - 703 с.
20. Люгер Дж.Ф. Искусственный интеллект: стратегии и методы решения сложных проблем. - М.: Вильямс, 2003. - 864 с.