Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Индуктивный синтез алгоритмов на основе аксиоматических теорий постановок задач Гуторов Дмитрий Анатольевич

Данная диссертационная работа должна поступить в библиотеки в ближайшее время
Уведомить о поступлении

Диссертация, - 480 руб., доставка 1-3 часа, с 10-19 (Московское время), кроме воскресенья

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Гуторов Дмитрий Анатольевич. Индуктивный синтез алгоритмов на основе аксиоматических теорий постановок задач : автореферат дис. ... кандидата физико-математических наук : 05.13.01 / Гуторов Дмитрий Анатольевич; [Место защиты: Ин-т систем. анализа РАН].- Москва, 2009.- 17 с.: ил. РГБ ОД, 9 10-1/3990

Введение к работе

Актуальность темы

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

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

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

Разработчики указывают на типичные проблемы, часто сопровождающие проектирование крупных информационных систем:

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

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

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

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

Экспертами предлагаются следующие принципы проектирования больших информационных систем:

о Построение архитектуры (модели) предметной области.

о Выделение основных функций системы, их декомпозиция.

о Отделение основных функций от инфраструктурных.

о Автоматизация процесса синтеза программ.

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

Современное состояние методов проектирования не позволяет разработчикам в полной мере владеть функционалом своих продуктов: функционал настолько сложен и разветвлен, что члены команд разработчиков полностью владеют лишь его часть (что является следствием применения методологий проектирования, таких как HIPO (Hierarchical Input Processing Output) и др.). Это является одной из причин размещения у внешних контрагентов заказов на проведение работ по комплексному исследованию собственных систем и сопоставительному анализу с системами конкурентов.

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

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

К настоящему времени сложились определенные подходы к автоматизации процесса разработки программ путем их синтеза:

  1. Дедуктивный синтез (логический вывод) - программа извлекается из доказательств теорем.

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

3. Трансформационный синтез (трансляция) - поэтапное преобразование спецификации, заданной на языке высокого уровня, в программный код на языке более низкого уровня.

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

В области трансформационного синтеза не производится моделирование предметных областей, а осуществляется прямая трансляция одного описания в другое.

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

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

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

В работе были поставлены следующие задачи:

- анализ имеющегося опыта в области разработки методов синтеза;

теоретико-множественный анализ прецедентов решений задач с формированием аксиоматических теорий прецедентов;

- разработка процедуры формирования типологии постановок задач на основе
нескольких прецедентов;

- разработка метода формирования аксиоматической теории для теоретико-
множественного описания типологии постановок задач;

разработка метода синтеза алгоритмов решения задач, описанных в типологии;

применение разработанного метода для задач из предметных областей теории потоков и теории расписаний.

Научная новизна

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

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

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

операций Вычислительного центра им. А. А. Дородницына РАН (2009), научный семинар Механико-математического факультета МГУ (2009). Публикации по теме диссертации

По теме диссертации опубликовано 3 статьи (в том числе одна публикация в издании, рекомендованном ВАК Минобрнауки России) и 6 докладов на научных конференциях и симпозиумах. Структура и объем диссертации

Диссертация состоит из введения, 5 глав и заключения. Текст диссертации изложен на 172 страницах машинописного текста, содержит 7 таблиц, 32 рисунка и список использованных литературных источников из 28 наименований.

Похожие диссертации на Индуктивный синтез алгоритмов на основе аксиоматических теорий постановок задач