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