и структур. В результате экспериментов было установлено, что такими значениями являются Рк = 0,35; Рм = 0,1; М = 80; К = 120.
Вероятность получения оптимального решения после одного прогона генетического алгоритма составила 0,8. Исследования трудоемкости алгоритма показали, что при фиксированных значениях Рк и Рм, М и К она имеет оценку O(L). Время 120 200 размером 10 х 10 составило 48 секунд.
Экспериментальные исследования показали, что наилучшие по качеству решения получались при использовании подхода, связанного с распараллеливанием
. -люционирование нескольких подпопуляций. На каждой генерации хромосомы случайным образом мигрируют из одной подпопуляции в другую. Исследования пока, , -шения составила 0,94. Сравнение с алгоритмами, приведенными [1,2,3] показало, что при том же и даже меньшем времени работы предложенный алгоритм дает более качественные решения. Преимущество особенно заметно для задач большой .
ЛИТЕРАТУРА
1. Naveed Sherwani. Algorithms for VLSI physical design automation // Kluwer academic pab-lishers. Boston / Dordrecht / London. - 1995.
2. K.W.Lee and C.Sechen. A new global ronter for row - based layout // Proceedings of IEEE International Conference on Computer - Aided Design, November, 1998.
3. C.Chiang, M.Sarrafraden, C.K.Wong. A Weighted - Steiner - Tree - Based Global Router / Manuscript. - 1992.
4. . . . // -
нетика. - 1980. - Вып.1. - С. 217.
5. Лебедев Б.К. Распределение ресурсов коммутационного поля. // Автоматизация проектирования электронной аппаратуры. - Таганрог: Изд-во ТРТИ, 1988. - Вып.1. - С. 9-92.
УДК 681.3.001.63+007.52:611.81
В.А. Костенко, P.JI. Смелянский, АХ. Трекин СИНТЕЗ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ, ОПТИМАЛЬНЫХ ПО ЧИСЛУ
,
АЛГОРИТМОВ
Введение. Задача синтеза архитектур вычислительных систем (ВС) в самом общем виде может быть поставлена следующим образом. Для заданного поведения прикладной программы H(PR) требуется синтезировать архитектуру HW, параллельную прикладную программу HP и выбрать способ организации параллельного вычислительного процесса р. При этом должны оптимизироваться критерии оценки качества решения f} и выполняться ограничения на допустимые решения {g}. В качестве параметров оптимизации (управляемых переменных) выступают варьируемые параметры моделей HW, HP и р. Критерии оценки качества решения, ограничения на допустимые решения и варьируемые параметры моделей определяются при конкретизации задачи синтеза архитектур.
Задача синтеза архитектур ВС относится к классу задач структурного синтеза. В отличии от задач параметрического синтеза, задачи структурного синтеза в общем случае не могут быть отнесены к классу формально разрешимых. При реше-
нии задач структурного синтеза приходится иметь дело с начально не определенными структурными связями, числом и типом компонентов, не метрическими ха,
качества полученного решения для системы в целом и т.п. Данные особенности задач делают их формально неразрешимыми в общем случае.
Формальные модели описания функционирования ВС, предложенные в [1], позволяют определить структуру ВС и программы как конструктивные объекты, композируемые/декомпозируемые из элементарных неделимых компонентов. Задача синтеза архитектур ВС при использовании разработанного в [1] формализма может быть сформулирована как дискретная экстремальная многопараметрическая и многокритериальная задача с ограничениями:
f(HP,HW,p) -^min/max, ieIi,I2; gt(HP,HW,p) <0, ielsA; gi(HP,HW,p) = 0, ieI5,I6;
HPeHP*, HWeHW*; рер*;
HP - , HW - , р - -
ратор интерпретации (соответствует модели организации параллельного вычислительного процесса, т.е. задает взаимодействие между компонентами из HP,HW), f -критерии оценки качества решения, gi - ограничения на допустимые решения, Ih I3, I5 - множества динамических критериев и ограничений, I2, I4, I6 - множества статических критериев и ограничений, (HP ,HW,р) - пространство решений.
Данная задача обладает следующими основными особенностями [2]:
1. Пространство возможных решений (HP ,HW,р)ш типу объектов является трехкомпонентным и независимая оптимизация параметров отдельных компо-
.
2.
решения задачи могут быть определены лишь после выполнения оператора р.
3. fj, gi, р - операторы, заданные правилами/адгоритмами их вычисления, т.е. их аналитическая структура не может быть использована для организации поиска оптимального решения (HP 'HW', р').
4. fi .
, , .
5.
число локальных минимумов и максимумов, точки разрыва и изолированные точки, не один, а некоторое множество глобальных оптимумов.
В данной работе исследуется возможность и эффективность применения генетических алгоритмов для решения конкретного варианта постановки задачи синтеза архитектур: синтез однородной полносвязной архитектуры оптимальной по числу процессоров и синтез для нее прикладной программы, выполняющейся за заданный директивный срок.
1. Формальная постановка задачи синтеза архитектур ВС оптимальных по числу процессоров. Задача синтеза однородной полносвязной архитектуры оптимальной по числу процессоров и параллельной прикладной программы, выполняющейся за заданный директивный срок на данной архитектуре может быть сформулирована следующим образом:
Для заданных:
♦ модели поведения прикладной программы H,
♦ директивного срока ее выполнения (Td,r), требуется определить:
♦ M — число процессоров в ВС,
♦ HP = {SP}i=(L.M} — привязку процессов, составляющих программу H, к процессорам ВС (SP, - упорядоченный список рабочих интервалов процессов, на),
при этом должны выполняться условия:
1. Время выполнения программы не должно превышать директивный срок T<Td,r,
2. M -
нения условия 1.
Модель поведения прикладной программы H задается наиболее сложной историей выполнения программы. H представляет собой ациклический ориентированный размеченный граф: H = (P, Р). Вершинам P = {р}е(1...щ соответствуют рабочие интервалы процессов [1], дугам Р ={Р ik=(pi,pk)}(i,k)E(i...N) - связи, опреде-
P . -
чим интервалом понимаем интервал времени, в течении которого процесс не обращается к другим процессам системы. Все рабочие интервалы одного процесса должны быть назначены на один и тот же процессор. Чередование рабочих интер-, , , -рушается частичный порядок, заданный Р . Отношение Р k представляется следующим образом: если pt <ik pk, то рабочий интервал pt необходимо выпол-
Pk . -
кальный номер и метки: принадлежности рабочего интервала к процессу и вычислительной сложности рабочего интервала. Вычислительную сложность рабочего интервала будем задавать временем его выполнения на процессоре. Затраты на взаимодействие будем включать во время выполнения.
HW , -
го являются процессоры, дуги - связи между ними. Время выполнения T программы HPm архитектуре HW определяется интерпретацией графовых структур HP над структурами HW.
2. Алгоритм синтеза архитектуры ВС. Алгоритм, используемый в синтезе архитектуры ВС РВ, базируется на алгоритме предложенном Холландом и называемом Simple Genetic Algorithm (SGA) [3]. Данный алгоритм можно схематично описать следующим образом:
Алгоритм синтеза ( )
[
задание начальной популяции; вычисление критерия выживаемости пока не достигнут критерий останова;
[
селекция;
скрещивание;
мутация;
вычисление критерия выживаемости;
]
]
.
представлен следующим образом:
K
<битовая строка> = (и процесса>),
i=1
<поле процесса> =(<номер процессора> и <приоритеты интервалов>),
<'-приоритеты интервалов> =( и <приоритет интервала>-),
] =1
где и - операция конкатенации (склейки) битовых строк, К - число процессов в
К
программе, 1/ - число рабочих интервалов в /'-ом процессе , N = ^ I/ - число
/=1
вершин в графе Н.
Поле “номер процессора” однозначно определяет распределение процессов по процессорам. Поле “приоритеты интервалов” используется для определения строгого порядка реализации рабочих интервалов на процессорах [2,4]. Одновременно с определением порядка осуществляется оценка времени выполнения при. -ление недопустимых конфигураций в результате выполнения операций скрещивания и мутации [2,4].
Критерии останова и выжываемости. Целевая функция позволяет оценивать решение комплексно по набору критериев. В качестве таких критериев в рассматриваемой задаче используются: число процессоров в ВС и время выполнения прикладной программы (время выполнения прикладной программы не должно превышать директивный срок). Пусть к —оценка решения по времени выполнения программы, км —оценка решения по числу процессоров в ВС. Введем целевую функцию в следующем виде:
Р(к^ км) = С1 к + С2 км , С1 + С2 = 1
где С1 и С2 - коэффициенты.
Аргументы к и км принадлежат интервалу (0, 1] и вычисляются следующим :
кі =
Т<ііг / ггійіг < ^V
1 / , при Т < Т
/Т” ,
км 1
при Тйіг > Т”
м
К
где К - максимально возможное число процессоров (равно числу процессов в программе), М - число процессоров, использованных в решении.
Для рассматриваемой постановки задачи всегда будет выполняться неравен-
ство:
М >
К !і І І ^
= і і =1
- Шг
(і)
где ] • [ - округление до ближайшего большего целого и I - число рабочих интерва-
/- . м, -
ся строгое равенство, то оно будет гарантированно оптимальным. Следует отме-, ,
(2) .
1
Критерий останова зададим следующим образом. Если алгоритм при соблюдении ограничений на директивные сроки находит число процессоров, которое
(1), .
, , , значение целевой функции улучшено не было.
. -циональной селекции и схемы рулетки [3,5]. Для вычисления целого числа потомков используется схема пропорциональной селекции, а для распределения остатка
- схема рулетки.
Скрещивание и мутация. В данном алгоритме используется операция скрещивания 8вЛ: одноточечное скрещивание со случайным выбором битовых строк для скрещивания и точки скрещивания.
Для выполнения операции мутации был предложен и реализован следующий алгоритм [4]: , , -
лось расстояние от текущего бита. Бит, отстоящий на вычисленное расстояние,
.
3. Исследование алгоритма. Исследование алгоритма проводилось на графах поведения прикладных программ Н(РЯ) представляющих собой [2,4]: набор процессов с произвольными информационными связями; набор независимых процессов; набор цепочек процессов; входящее дерево; выходящее дерево; граф адаптивных методов цифровой обработки сигналов [6]. Число вершин в графах изменялось от 15 до 600. Число рабочих интервалов у процессов изменялось от 1 до 8. Дисперсия времен выполнения рабочих интервалов изменялась в пределах: 0^50%; 50^100%; 100^200%. Число итераций алгоритма без улучшения коэффициента выживаемости: 1000^1500. В качестве начальной популяции во всех тестах задавались два варианта распределения процессов по процессорам:
♦ все процессы выполняются на одном процессоре;
♦ каждый процесс выполняется на своем процессоре.
Число битовых строк в начальной популяции с этими вариантами распределения составляло по 50%.
Испытания разработанного алгоритма синтеза структур ВС показали, что его параметры могут быть настроены независимо от типа структуры связей и числа вершин в графе поведения программы, а также дисперсии времен выполнения ра. -
:
♦ порог вероятности мутации 0.0075^0.0085;
♦ порог вероятности скрещивания 0.3^0.5;
♦ весовые коэффициенты (СО 0.3^0.5;5
♦ 25.
Запуск алгоритма с другими значениями параметров значительно ухудшает качество получаемых результатов. Подходящее решение находилось за 50^1500 . -
ний и параметров алгоритма не прослеживается. Например, для входящего дерева с числом вершин 25 хорошие решения получены за 122, 238, 282, 300,362, 407,
481, 788, 826, 1009, 1444, 1481 итераций при различных комбинациях параметров
( -25).
Наибольшее влияние на сложность получения и качество решения оказывает порог вероятности мутации. Для большинства тестов основное число хороших решений алгоритм получает при пороге вероятности мутации равной 0.008. Очень
сильное влияние на качество получаемых решений оказывает размер популяции. Он имеет ярко выраженный оптимум равный 25.
.
синтеза архитектур обладает всеми отмеченными во введении особенностями. При увеличении числа оптимизируемых параметров, ограничений, критериев оценки качества решений и уровня детализации моделей, задача синтеза архитектур не приобретает никаких новых особенностей, которые могли бы вывести ее из данного класса задач оптимизации. Это позволяет надеяться, что разработанный генетический алгоритм может быть успешно применен для решения задачи синтеза архитектур и в других ее постановках при добавлении в битовую строку полей, определяющих соответствующие оптимизируемые параметры.
ЛИТЕРАТУРА
1. Смелянекий Р.Л. Модель функционирования распределённых вычислительных систем// Вестник МГУ, сер.15, Вычислительная математика и кибернетика. - 1990. - Вып.3.
2. . . -
// -учной конференции “Дискретные модели в теории управляющих систем” (Красновидо-во’98). - М.: Диалог МГУ, 1998. - С.53-58.
3. Holland J.N. Adaptation in Natural and Artificial Systems. Ann Arbor. -Michigan: Univ. Michigan Press, 1975.
4. Костенко B.A., Смелянский P.A., Трекин А.Г. Тезисы докладов Всероссийской научной конференции вФундаменгальные и прикладные аспекты разработки больши. распределенны. программны, комплексовв (сент брь 1998 г.и г. Новороссийск) ф М.: Изд({во МГУи 1998. ф С. у5фИ.
5. ZRgnev MilTiMaz. Gene® Л!угаи Is + Da® SdSFtlMs a EvoMBn Py>gMI Is ыы ТИМи ¥ф vised and ex©ided edi(Bn — SpYngeJ61999.
6. Костенко BA. Крупноблочный параллелизм в задачах обработки сигналов //Программирование. - 1997. - Вып.2.
658.512.2.0011.5:338.242
НА. Семёнов, А.В. Грецкий
О ВОЗМОЖНОСТИ ИСПОЛЬЗОВАНИЯ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ ПРИ (РЕ)ИНЖИНИРИНГЕ БИЗНЕС-ПРОЦЕССОВ
- ( ),
определяемого как "струк^рированный, измеряемый набор действий, созданный, чтобы произвести определённый выход для конкретного клиента или рынка" [I]. Становление понятия "бизнес-процесс" отвечает переходу от ориентации на традиционные иерархические структуры при организации производства к горизонтальным (сетевым) связям. На современном этапе принципиально важным становится интеграция в бизнес-процесс, с одной стороны, широкого множества клиентов с учитываемыми индивидуальными потребностями, а, с другой стороны, широкого
( . . ).
Структура современного бизнес-процесса становится всё более разнородной: её составляют клиенты, поставщики, сторонние подрядчики (т.н. внешние субьек-) - , , , -