Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Экзамен / АКП_ответы_2010_FINAL.doc
Скачиваний:
56
Добавлен:
10.02.2015
Размер:
3.8 Mб
Скачать

27. Итерационный алгоритм улучшения начального разрезания гиперграфа схемы.

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

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

1. Останутся в разрезе между кусками ите ребра, которые содержат вершинуили хотя бы по одной вершинеи.

2. Будут удалены из разреза между кусками ите ребра, которые не содержат вершиныи ни одной из вершин. Множество вершин, входящих в такое ребродолжно удовлетворять условию:

3. Появятся в разрезе между кусками ите ребра, в которые не входили вершины из куска. Для подмножеств вершинтаких ребердолжно выполняться условие:

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

На основании изложенного приращение:

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

Основные пункты алгоритма итерационного улучшения парными перестановками вершин гиперграфа.

1. Для пары вершин иопределяем инцидентные им ребра:.

2. Находим множество вершин, входящих в каждое ребро:

3. Подсчитываем показатели ,,,.

4. Определяем приращение .

5. Повторяем пп.1-4 для всех возможных парных обменов.

6. Находим . Проверяем условие. Если оно выполняется, то переходим к п.7, иначе – к п.8 (на окончание алгоритма).

7. Осуществляем перестановку вершин и, переходим к п.1.

8. Конец работы алгоритма.

Оценка сверху вычислительной сложности для данного алгоритма равна .

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

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

Поскольку эти подмножества могут иметь общие вершины: . Вершинымогут принадлежать как, так и. Разобьемна два подмножества:и. Таким образом, показателибудем пересчитывать для:

Доработаем алгоритм с учетом вышесказанного:

Первые 6 пунктов алгоритма останутся прежними. Приведем последующие пункты:

7. Осуществляем перестановку и.

8. Находим

9.

10. Переход к п.1, но в п.5 все возможные пары обменов будут:

11. Конец алгоритма.

Примечание:в п.6 переход на окончание алгоритма – к п.11.

Оценка сверху вычислительной сложности доработанного алгоритма равна .

Соседние файлы в папке Экзамен