RSS    

   Дипломная работа: Использование алгоритмов искусственного интеллекта в процессе построения UFO-моделей

Рисунок 2.8 – Примеры контекстных диаграмм компонентов

Тогда вход a и выход b системы могут быть соединены с помощью компонентов С1 и С2 так, как показано на рис. 2.9.

Рисунок 2.9 – Примеры соединений компонентов

2.3 Элементарное перемещение муравья

2.3.1 Перемещение из входа контекстной диаграммы

Пусть изначально муравей находится в конце входной стрелки In (n). Он может случайным образом выбрать из библиотеки компонентов любой компонент , у которого есть вход , который можно присоединить к входу In (n). После присоединения входа  компонента  к входу In (n) контекстной диаграммы, муравей "переползает" по входу  на компонент  и пытается присоединять "висящие" входы компонента  либо к еще свободным входам контекстной диаграммы системы, либо к еще свободным выходам других компонентов. Аналогично муравей пытается присоединять "висящие" выходы компонента  либо к еще свободным выходам контекстной диаграммы системы, либо к еще свободным входам других компонентов (рис. 2.10).

Рисунок 2.10 – Присоединение компонента к входу системы

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

Если же у компонента  остались "висящие" входы и выходы, то муравей случайным образом размещается на любом из них. Если муравей оказался в конце "висящего" входа компонента , то далее он должен действовать так, как описано ниже в пункте 2.3.3. Если муравей оказался в начале "висящего" выхода компонента , то далее он должен действовать так, как описано ниже в пункте 2.3.4.

2.3.2 Перемещение из выхода контекстной диаграммы

Пусть изначально муравей находится в начале выходной стрелки Out (m). Он может случайным образом выбрать из библиотеки компонентов любой компонент , у которого есть выход , который можно присоединить к выходу Out (m). После присоединения выхода  компонента  к выходу Out (m) контекстной диаграммы, муравей "переползает" по выходу  на компонент  и пытается присоединять "висящие" входы компонента  либо к еще свободным входам контекстной диаграммы системы, либо к еще свободным выходам других компонентов. Аналогично муравей пытается присоединять "висящие" выходы компонента  либо к еще свободным выходам контекстной диаграммы системы, либо к еще свободным входам других компонентов (рис. 2.11).

Рисунок 2.11 – Присоединение компонента к выходу системы

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

Если же у компонента  остались "висящие" входы и выходы, то муравей случайным образом размещается на любом из них. Если муравей оказался в конце "висящего" входа компонента , то далее он должен действовать так, как описано ниже в пункте 2.3.3. Если муравей оказался в начале "висящего" выхода компонента , то далее он должен действовать так, как описано ниже в пункте 2.3.4.


2.3.3 Перемещение из входа UFO-компонента

Пусть изначально муравей находится в начале входной стрелки  компонента . Он может случайным образом выбрать из библиотеки компонентов любой компонент , у которого есть выход , который можно присоединить к входу . После присоединения выхода  компонента  к входу  компонента , муравей "переползает" по выходу  на компонент  и пытается присоединять "висящие" входы компонента  либо к еще свободным входам контекстной диаграммы системы, либо к еще свободным выходам других компонентов. Аналогично муравей пытается присоединять "висящие" выходы компонента  либо к еще свободным выходам контекстной диаграммы системы, либо к еще свободным входам других компонентов (рис. 2.12).

Рисунок 2.12 – Присоединение компонента  к входу компонента

Если после вышеперечисленных действий муравья у компонента  не осталось "висящих" входов и выходов, то муравей "переползает" из компонента  по выходу  назад через вход  в компонент . Если у компонента  еще остались "висящие" входы и выходы, то муравей случайным образом размещается на любом из них. Иначе – покидает компонент  по тому пути, по которому он на него попал.

Если же у компонента  остались "висящие" входы и выходы, то муравей случайным образом размещается на любом из них.

2.3.4 Перемещение из выхода UFO-компонента

Пусть изначально муравей находится в конце выходной стрелки  компонента . Он может случайным образом выбрать из библиотеки компонентов любой компонент , у которого есть вход , который можно присоединить к выходу . После присоединения входа  компонента  к выходу  компонента , муравей "переползает" по входу  на компонент  и пытается присоединять "висящие" входы компонента  либо к еще свободным входам контекстной диаграммы системы, либо к еще свободным выходам других компонентов. Аналогично муравей пытается присоединять "висящие" выходы компонента  либо к еще свободным выходам контекстной диаграммы системы, либо к еще свободным входам других компонентов (рис. 2.13).

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.