
- •1. Задачи структурного синтеза: понятие, формальная постановка, пример.
- •2. Исходные данные для решения задач структурного синтеза.
- •4. Содержательная постановка и анализ задачи структурного синтеза. Результат анализа (рассмотреть пример).Пример постановки и формализации задачи структурного синтеза
- •3. Этапы решения прикладной задачи структурного синтеза.
- •5. Выбор аппарата формализации задач структурного синтеза. Разработка моделей объекта и результата проектирования, доказательство их адекватности (приведите пример перехода от объекта к модели).
- •6. Формальная постановка комбинаторно-оптимизационной задачи структурного синтеза на графах. Рассмотреть пример для задачи поиска остовного дерева минимальной длины.
- •8. Представление схемы неориентированным графом и гиперграфом. Неориентированный граф.
- •8.1.Представление схемы ориентированным графом. (аналогично ультраграфу)
- •15. Основные способы ветвления при построении дерева решений в методе ветвей и границ.
- •9. Стратегии декомпозиции пространства решений.
- •10. Отсечение и выбор перспективной вершины дерева решений. Верхняя и нижняя границы целевой функции. Пример.
- •Некоторые особенности оценочных функций
- •11. Метод поиска в глубину. Пример точного алгоритма, основанного на этом методе.
- •12. Метод поиска в глубину с возвращением. Привести пример применения.
- •13. Метод поиска в ширину. Привести пример применения.
- •14. Идея метода ветвей и границ. Основные способы отсечения ветвей.
- •16. Конструирование оценочной функции для верхней и нижней границ целевой функции. (Рассмотрите на примере задачи поиска простой цепи графа).
- •17. Метод итерационного улучшения
- •18. Метод параллельно-последовательной свертки. Алгоритм сортировки слиянием. Оценка его вычислительной сложности.
- •19. Точность алгоритма. Докажите, что алгоритм Прима является точным.
- •20. Оценка точности алгоритма. Определение оценок в лучшем и в худшем для алгоритма решения задачи коммивояжора по методу поиска в глубину.
- •21. Вычислительная и емкостная сложность алгоритма
- •22. Основные этапы построения алгоритма. Сущ-ть алг. Решения задачи на графах.
- •23. Разработка алгоритмической модели процесса решения задачи. Пример модели для решения задачи декомпозиции схемы по методу неуравновешенной двоичной свёртки.
- •Пример модели для решения задачи декомпозиции схемы по методу неуравновешенной двоичной свёртки
- •24. Определение операций преобразования исходного графа в граф результата. Выбор способа представления графов и его реализация в памяти эвм.
- •25. Детальная проработка алгоритма. Способы снижения вычислительной сложности алгоритмов. (Проиллюстрировать примерами).
- •26. Последовательный алгоритм разрезания гиперграфа схемы.
- •27. Итерационный алгоритм улучшения начального разрезания гиперграфа схемы.
- •28. Методика оценки вычислительной сложности алгоритма. Рассмотрите пример.
- •Асимптотическая оценка вычислительной сложности алгоритма
- •29. Управляющий граф алгоритма.
- •30. Граф «оператор - данные».
- •31. Информация о схеме и монтажном пространстве, которую необходимо отобразить в модели для решения задач структурного синтеза.
- •32.Математическая модель алгоритма
- •33.Генетический метод
- •34.Метод динамического программирования
- •35.Метод параллельного поиска
- •36.Дополнительные отсечения при использовании метода ветвей и границ. Идея алгоритма Дейкстры
- •37.Модификация метода на примере задачи построения гамильтонова цикла с минимальной суммой весов ребер
- •38.Модели структур данных
18. Метод параллельно-последовательной свертки. Алгоритм сортировки слиянием. Оценка его вычислительной сложности.
Метод предназначен для объединения элементов множества в некоторые подмножества. Это объединение выполняется в общем случае для элементов, равнозначных для некоторого критерия, в качестве которого может выступать и определенное свойство.
В задачах на графах объединяющими элементами могут быть как вершины, так и ребра. Метод может использоваться, например, для формирования подсхем, т.е. решения задачи схемной компоновки.
Процесс формирования подмножеств данным методом осуществляется следующим образом: до начала свёртки в качестве кандидатов на объединение рассматриваются все элементы множества Х.На первом шаге оценивают соответствие элементов некоторому критерию и выбирают элементы, в наибольшей степени удовлетворяющие ему. В общем случае могут объединятся 2,3 и т.д. элементов. Сформированные подмножества рассматриваются, как элементы нового множества, по отношению к которому процедура может быть повторена. Включение в состав формирующегося множества элементов или частей других подмножеств, как правило, не возможна в соответствии со смыслом задачи. При объединении элементов происходит отсечение других вариантов состава подмножеств, следовательно, точность получаемого решения определяется тем, является ли критерий выбора отсекающей оценкой или оценкой перспективности. В первом варианте решение может быть получено точное, во втором – приближённое.
Возможно два варианта окончания свертки:
Свертка заканчивается, когда все вершины объединены в одно подмножество. С практической точки зрения это необходимо, если требуется установить, обладает ли в целом множество некоторым определенным свойством.
Требуется выделить подмножество удовлетворяющее некоторым ограничениям. Процесс свёртки заканчивается при удовлетворении всех условий.
Алгоритм сортировки слиянием:
Алгоритм сортировки слиянием является примером точного алгоритма, реализующего метод уравновешенной двоичной свёртки.
Идея алгоритма: попарно сравнивая числа исходного множества (впоследствии это числа, принадлежащие двум разным подмножествам), заносят их в подмножества, состоящие из двух, четырёх и т.д. чисел, записывая, например, сначала меньшее из чисел пары. Алгоритм заканчивает работу, когда исходные числа объединены в одно (новое) множество.
Характерными особенностями реализации метода уравновешенной двоичной свёртки в данном случае являются:
Критерий слияния подмножеств – их принадлежность одному уровню дерева свёртки; он не связан с целевой функцией, но позволяет построить достаточно эффективную схему сортировки
Сортировка обеспечивается упорядочиванием элементов каждого подмножества при его получении слиянием двух подмножеств предыдущего уровня
Окончание процесса свёртки означает реализацию на множестве чисел Хотношения порядка (по возрастанию их значений)
Оценка количества операций сравнения
Nc,
необходимых для упорядочиванияnэлементов множестваХалгоритма
слияния. Еслиn–
степень двойки, то количество подмножеств
(вершин) на уровнеи число элементов в них –2j-1,
где
.
Число сравнений элементов двух подмножеств
уровня будет
.
Суммарное количество сравнений на
уровнеjравно:
.
Суммируя поj,получим:
.
Очевидно, что
,
в то время как алгоритм сортировки
«выбором» (посредством поиска максимального
или минимального элемента) требует
операций сравнения чисел.