Часть полного текста документа:Генетический алгоритм глобальной трассировки О.Б. Лебедев 1 Введение Основной целью задачи глобальной трассировки является равномерное и целесообразное распределение ресурсов коммутационного поля для создания благоприятных условий для последующей детальной трассировки. Большинство алгоритмов, глобальной трассировки осуществляют последовательное построение соединений на укрупненной модели КП (волновые, лучевые, базирующиеся на построении деревьев Штейнера). [1,2,3,4,5,6,7]. Хотя на каждом шаге для каждого текущего состояния среды алгоритмы дают неплохие результаты, "камнем преткновения" является последовательность трассируемых соединений. Цепи, проложенные раньше ,могут блокировать цепи ,прокладываемые позже. Другим недостатком является то, что большинство алгоритмов используют критерии в большей степени учитывающие параметры соединений (например: общая длина) и в меньшей степени параметры коммутационного поля, что не совсем согласуется с главной целью глобальной трассировки. Исходя из этих соображений, в работе используется комбинаторный подход, основанный на методах генетической адаптации, при котором в один и тот же момент времени рассматриваются все соединения, а критерий учитывает распределение ресурсов КП. При разработке генетических процедур основное влияние уделялось разработке с учетом знаний о предметной области методов кодирования решений, модификации генетических операторов и организации эволюционного процесса. 2. Проблемная формулировка, термины и обозначения Для решения задачи глобальной трассировки используется графовая модель G = (X, U). Коммутационное поле разбивается на области. Вершины графа xi ? Х соответствуют областям на КП. Если области соседние, то вершины xi и xк, соответствующие этим областям, связываются ребром uj. Пусть задано множество цепей Т={ti| i = 1, 2, ...}. Для каждой цепи определяется множество областей, в которых существуют контакты, связываемые этой цепью. На графовой модели G, множеству областей, связываемых цепью xi, соответствует подмножество вершин Хi ? Х. Для каждого ребра ui, связывающего вершины, задается вес ?j, равный пропускной способности между областями, соответствующими вершинам xi и xk. Будем считать, что граф G метризирован, то есть каждая вершина имеет координаты. Координаты вершины принимаются равными координатам центра соответствующей области. Если области имеют один и тот же размер, то граф G представляет собой ортогональную решетку. Далее для каждой цепи ti на множестве вершин Хi графа G строится минимальное связывающее дерево Di с помощью алгоритма Прима Di={rk | k=1,2, ... ,nk}, где rk - ребро минимального связывающего дерева. Для каждого ребра rk ?Di формируется набор Vk вариантов vik маршрутов, связывающих на графе G соответствующие вершины. Формирование возможных маршрутов осуществляется следующим образом. Для ребра rk?Di, связывающего xn?G и xm?G, определяется множество вершин Хk ? X, смежных вершинам хn и хm ребра rk,. Через множество вершин Хк , а так же через вершины xn и xm проводятся новые вертикальные и горизонтальные линии.Отметим, что эти линии проходят по ребрам ортогонального графа G. В узлах пересечения этих линий лежат некоторые вершины хi ? Х. Эти вершины являются узловыми для формирования вариантов. ............ |