- •Первое определение системы. Модель чёрного ящика.
- •Сложности выявления целей
- •Второе определение системы
- •Третье определение системы.
- •Классификация систем
- •По происхождению
- •Целостность системы.
- •Анализ систем на основе функционально-структурного подхода.
- •Модель "черного ящика"
- •Модель состава системы Основные положения.
- •Теория множеств как средства отображения модели состава.
- •Отношения на множествах.
- •Операции над множествами.
- •Упорядоченное множество
- •Модель структуры системы
- •Математический аппарат, используемый для построения модели структуры системы.
- •Соответствия.
- •Классификация соответствий.
- •Графы. Теория графов. Основные определения.
- •Особые типы графов.
- •Отношения на графах.
- •Комплексные элементы графа.
- •Частные случаи графов.
- •Методы задания графов.
- •Структурная схема системы
- •Динамика системы
- •Функционирование и развитие
- •Построении динамических моделей систем.
- •Типы динамических моделей
- •Общая математическая модель динамики
- •Понятие системы управления.
- •Классификация систем в зависимости от положения системы управления.
- •Классификация систем по используемому принципу управления.
- •Работа по заданной траектории
- •Регулирование.
- •Понятие больших и сложных систем.
- •Ресурсный подход к оценки сложности и величины системы.
- •Методы анализа систем.
- •Анализ структуры системы на основе не взвешенных графов.
- •Задача нахождения циклов и цепей в графовой модели структуры системы.
- •Задача поиска цепи на не взвешенных графах.
- •Задача соединения всех элементов системы без дублирующих связей.
- •Анализа структуры системы на основе взвешенных графов.
- •Взвешенные графы.
- •Оптимизационные задачи на взвешенных графах.
- •Задача поиска наименьшего остового дерева.
- •Задача поиска цепи наименьшего веса между двумя вершинами взвешенного графа. Общая постановка задачи.
- •Методы решения задачи.
- •I)Метод направленного поиска (динамического программирования) он же алгоритм Дейкстры. (Дайкстры)
- •Методы решения задачи коммивояжера.
- •Метод ветвей и границ.
- •Исследование структуры систем с помощью потоковых моделей.
- •5.1. Комплексные характеристики сетевого графа.
- •5.2. Алгоритм расчета пропускной способности сети (величины установившегося потока).
- •Исследование переходных процессов систем на основе теории конечных автоматов.
- •Объектно-ориентированный подход к анализу и разработке систем (ооп).
- •Основные положения объектно-ориентированного подхода.
- •Основные элементы объектной модели
- •Язык uml как средство построения моделей систем на основе ооп.
- •Строительные блоки uml
- •Автомат или модель состояний.
- •Моделирование динамические связи систем на основе моделей состояний объектов.
- •Процесс обмена данными между экземплярами объектов системы.
- •Понятие обмена данными. Реализация обмена.
- •Модели состояний объектов:
- •Информация и информационные системы.
- •Определение информации
- •Информационноя система
Задача поиска цепи на не взвешенных графах.
Дано: - не взвешенный граф
N1 – начальная вершина цепи
N2 – конечная вершина цепи.
Найти: цепь, соединяющую вершины N1 и N2.
Решение:
Существует два алгоритма решения данной задачи:
Поиск в глубину
Поиск в ширину
При поиске в глубину для каждой очередной рассматриваемой вершины берется одна смежная. Затем от одной из смежных берется следующая смежная. Затем от одной из смежных берется следующая смежная из еще не просмотренных и т.д. пока не будет найдена N2 или не образуется тупик или не будут просмотрены все вершины.
При поиске в ширину от очередной просматриваемой вершины находятся все смежные с ней, затем последовательно просматриваются выбранные смежные, и для каждой из них определяются смежные из еще не просмотренных, пока не будет обнаружена N2 или не будут просмотрены все вершины.
Оба алгоритма разделены на две части: прямой обратный ход. При прямом ходе ищется N2 и одновременно формируется остовое дерево для исходного графа начиная от вершины N1. Остовое дерево оформляется в виде списков смежности для вершин графа, т.е. в процессе алгоритма строится список смежности для остового дерева исходного графа. При обратном ходе выявляется цепь, по которой найдена N2, начиная от вершины N1.
Пусть граф задан дугами:
(5,2), (6,2), (7,2), (8,2), (8,3), (9,3), (10,3), (10,4), (11,4), (2,1), (3,1),(4,1)
N1= 11 N2= 9
Алгоритм поиска в глубину:
Все вершины графа заносятся в множество I – множество не просмотренных вершин.
Начальная вершина N1 заносится в матрицу – столбец «основная цепь» (ОЦ) в ее начальный элемент. ОЦ используется для выбора очередной просматриваемой вершины (ОП). Вершина ОП – это вершина для которой в данный момент ищется смежная вершина. В качестве вершины ОП принимается первая вершина из основной цепи, т.е. сначала это вершина цепи N1.
Вершина ОП вычеркивается из множества I.
Выявляется очередная вершина из множества I смежная с ОП. Найденная вершина заносится очередным элементом в список смежности для вершины ОП.
Если вершины смежной с ОП нет, то вершина ОП отмечается в ОЦ как неиспользуемая. В качестве вершины ОП принимается предшествующая вершина из ОЦ не отмеченная как неиспользуемая. Переход к этапу 3.
Если найденная вершина, смежная с ОП не является вершиной N2, то вершина смежная с ОП подставляется в ОЦ очередным элементом, иначе (т.е. найденная вершина – N2) переход к пункту 7.
В качестве новой ОП вершины берется следующая вершина из ОЦ. Переход к пункту 2.
Конец прямого хода.
Алгоритм поиска в ширину:
Прямой ход:
Все вершины графа заносятся в множество I.
Вершина N1 заносится в ОЦ. В качестве ОП принимается первая вершина ОЦ.
Вершина ОП вычеркивается из множества I.
Выявляются все вершины из множества I, смежные с ОП. Выявленные вершины заносятся в список смежности и вычеркиваются из множества I и заносятся в ОЦ.
Если среди смежных вершин нет вершины N2, то в качестве вершины ОП берется следующая вершина из основной цепи. Переход к пункту 3. Иначе (т.е. вершина N2 найдена среди смежных) конец прямого хода.
При обратном ходе необходимо проследить по списку смежности начиная с вершины N2, относительно какой вершины была найдена данная вершина, и т.д. до начальной вершины.
Данные алгоритмы (поиск в глубину и ширину) можно использовать и для поиска циклов, при этом необходимо изменить алгоритмы так, чтобы на начальном шаге вершина N1 не вычеркивалась из множества I.