Адаптивный бионический алгоритм решения задачи о потоке данных минимальной стоимости

Представление адаптивного алгоритма решения задачи о потоке данных минимальной стоимости в статической и динамической постановке. Комбинирование методов эволюционной и альтернативной адаптации. Адаптация процесса передачи данных к предлагаемым параметрам.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 30.07.2017
Размер файла 112,6 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Адаптивный бионический алгоритм решения задачи о потоке данных минимальной стоимости

Ю.О. Чернышев

А.Ю. Полуян

Н.Н. Венцов

П.А. Панасенко

Аннотация

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

Ключевые слова: поток данных, адаптация, эволюция, оптимизация, эволюционный поиск.

Введение

При построении статической модели задачи о потоке минимальной стоимости постоянными являются данные о смежности вершин графа и стоимости передачи сообщений. Две вершины графа i и j соединяются дугой (i,j) только в том случае если из вершины Ai можно передать данные в вершину Aj. Каждой такой дуге назначается вес, соответствующий времени передачи единицы информации от Ai к Aj. Таким образом, матрица смежности ||ai,j||n,m описывает возможные направления передачи данных, матрица ||ci,j||n,m предельно допустимое количество данных передаваемых от вершины Ai к Aj. Матрица ||xi,j||n,m отражает количество данных фактически передаваемых в единицу времени.

Граф, описываемый матрицей ||ai,j||n,m является ориентированным и может быть циклическим. Так как при решении задач оптимизации удобнее использовать граф, не содержащий циклов, имеющийся циклический граф можно привести к эквивалентной ациклической форме. Графы подразумеваются эквивалентными в контексте однозначности описываемых ими маршрутов передачи данных. Задачу получения ациклического графа в терминах целочисленного линейного программирования можно трактовать как задачу о покрытии. Из полученного ациклического графа можно получить последовательный, т.е. удовлетворяющий трем свойствам [1,2]:

- граф обладает порядковой функцией Р (х) со значениями 0, 1,..., n, где n - количество слоев, на которые разбит граф;

- вершины, находящиеся в одном слое не инциденты друг другу;

- количество дуг, исходящих из слоя Si, i=1,.., n-1 совпадает с количеством дуг, входящих в слой Si+1, i=1,.., n, причем в слой Si могут входить лишь дуги из слоев Sk с номерами k<i, k =1, 2, .. .,i-1.

Модернизируем матрицу ||ai,j||n,m, добавив в качестве (m+1) -го столбца вектор столбец, координаты которого вычисляются на основе формулы:

где i=1,2,..,n.

Вершины k для которых ak,m+1 =0 не имеют исходящих дуг и образуют первый слой S1 для которого справедливо P(S1)=1.

Элементы вектора столбца ak,m+2 определяются по формуле:

где i=1,2,..,n.

Второй слой S2 составляют нулевые значения столбца ak,m+2. Для вершин, образующих слой S2, справедливо P(S2)=2. Аналогично вычисляются последующие слои, общее количество всех слоев не превышает n.

На основе матрицы ||ai,j||n,m и функции P вводятся фиктивные вершины и дуги. Если ai,j =1, т.е. от вершины ai дуга ведет к вершине aj и P(ai)< P(aj), то во все промежуточные слои вводятся вершины соединяемые дугами нулевого веса. Первая фиктивная дуга, идущая от ai к первой фиктивной вершине, обретает вес ci,j. Фиктивные дуги и вершины не вводятся в случае, если вершинам i и j соответствуют значения порядковой функции P, отличающиеся на единицу.

В полученном последовательном графе, двудольный граф разбивается на два подграфа. К полученным подграфам применяется метод Форда, исходя из которого, образуются подпопуляции А 1, ...А_Count формирующие начальные решения. [2,3].

Предмет исследования

На рис. 1 приведена структурная схема алгоритма решения задачи о потоке данных минимальной стоимости. В данной схеме используется концепция интеграции различных моделей эволюции (совмещение микро-, макро-, метаэволюции), реализовано активное взаимодействие с внешней средой и адаптация к внешней среде, поддерживается иерархическое управление бионическим поиском, применение модифицированных генетических операторов, построенных на основе различных эволюционных стратегий и поисковых методов. На рис.1 БП 1, БП_Count - унифицированные процедуры бионического поиска для подпопуляций, которые выполняются параллельно и независимо. Периодически происходит обмен особями между подпопуляциями при помощи модифицированного оператора мутации с равновероятностным распределением потомков. Процедуры распараллеливания и обмена могут осуществляться многократно.

Рис. 1. - Структурная схема алгоритма решения задачи о потоке данных минимальной стоимости

Рассмотрим основные этапы бионического поиска [1]:

1. Определение граничных условий, задание критерия оптимальности, вычисление значений целевых функций для особей подпопуляции.

2. Проверка особей подпопуляции на соответствие условию попадания в "локальные ямы", если условие выполняется, то переход к п.6, в противном случае выполнение действий из п. 3.

3. Осуществление процедуры генетического поиска при помощи модифицированных генетических операторов.

4. Проверка на соответствие критерию остановки генетического поиска - сравнение числа выполненных итераций с минимально необходимым. В случае соответствия критерию, осуществляется переход к эволюционному поиску.

5. Реализация оператора миграции, формирование новых подпопуляций с учетом наилучших решений, полученных при реализации генетического поиска.

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

7. Проверка на соответствие критерию эволюционного поиска - определение числа итерационных реализаций модифицированных операторов мутации. В случае соответствия критерию, осуществляется переход к моделированию генетического поиска, или вывод оптимального решения.

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

9. Реализация оператора миграции, формирование новой популяции с учетом наилучших решений, полученных на этапе эволюционного поиска.

10. Оценка особей, образующих популяцию, и популяции в целом.

11. Применение оператора редукции, генерация новой популяции с учетом наилучших решений.

12. Проверка на предварительную сходимость (концентрацию решений в "локальных ямах"), в случае выполнения условия, к популяции применяется блок адаптации, иначе переход к п.13.

13. Определение достижения критерия остановки бионического алгоритма - выполнение заданного числа итераций и/или истечение времени отводимого для работы алгоритма.

Предлагаемый подход

При решении статической задачи оптимизации автомат адаптации можно использовать для управления процессом поиска при исполнении нечеткой команды вида "стоимость передачи потока должна быть близка к x" (рис.2).

Рис. 2. - Схема переходов автомата адаптации решающего, статическую задачу

В зависимости от близости полученного промежуточного решения к x автомат адаптации принимает решение о переходе в новое состояние. Альтернатива A1 подразумевает остановку алгоритма, а A2 -заключается в необходимости локального пересмотра промежуточного решения, а альтернатива A3 заключается в полном пересмотре промежуточного решения.

В случае динамической модели указанные выше матрицы приобретают вид: ||ai,j(t)||n,m, ||ci,j(t)||n,m и ||xi,j(t)||n,m. соответственно. Рассмотрим ситуацию, когда динамичность модели подразумевает изменение пропускаемых потоков или стоимости передачи заданных потоков. В подобных ситуациях границы допустимых значений скорости и стоимости передачи данных целесообразно задавать не в четкой, а в расплывчатой форме. Например, допустимая скорость передачи данных может быть задана на основе известной формулы определения нечеткой близости µx(b) переменной b к заданной величине x [4,5,6]:

,

где зависит от требуемой степени нечеткости µx(b) и определяется из выражения

,

где расстояние между точками b1 и b2 для которых справедливо равенство µx(b1)=µx(b2)= 0,5.

Тогда критерием соответствия текущей скорости передачи данных может быть неравенство µx(b)?µдоп, где µдоп - минимально допустимая степень принадлежности. Если неравенство µx(b)?µдоп не соблюдается, то это является признаком необходимости пересмотра маршрутов передачи данных, чтобы снизить скачкообразность принятия решений, которая может быть обусловлена кратковременными пиковыми нагрузками, предлагается использовать автомат адаптации. Автомат адаптации, поддерживает три альтернативы A1, A2, A3 (рис. 3). Состояние S11 - соответствует альтернативе A1, а состояния S21 и S22 - альтернативе A2, состояние S31- альтернативе A3. Альтернатива A1 подразумевает неизменность имеющихся распределений маршрутов передачи данных; A2 -заключается в необходимости локальной переоптимизации потоков документов, а альтернатива A3 заключается в полной переоптимизации потоков документов.

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

Таблица.

Правила выработки управляющих сигналов

№п/п

Текущая

альтернатива

Условие

Рекомендуемая альтернатива

Управляющий сигнал

1

A1

µx(b)?µдоп

A1

+

2

A1

µx(b)?µдоп

A2

-

3

A2

µx(b)?µдоп

A1

+

4

A2

µx(b)?µдоп

A3

-

5

A3

µx(b)?µдоп

A1

+

6

A3

µx(b)?µдоп

A3

-

В соответствии с правилами, приведенными в таблице, автомат адаптации изменяет своё состояние.

Рис. 3. - Схема переходов автомата адаптации

В случае, если необходимо провести оптимизацию процесса передачи данных, автомат адаптации переходит в состояние соответствующее альтернативе A2- оптимизация более быстро сходящимся алгоритмом. Если алгоритм сходится преждевременно, используются более ресурсоемкие модификации.

Заключение

В настоящее время интеллектуальные подходы активно используются для решения оптимизационных задач [7-12]. Предложен адаптивный бионический алгоритм решения задачи о потоке данных минимальной стоимости в статической и динамической постановке. При решении статической задачи алгоритм обеспечивает получение решения близкого к требуемому, а в случае динамической постановки - адаптацию процесса передачи данных под изменяющуюся модель сети. Отличительной особенностью алгоритма является использование автоматов адаптации для определения необходимости и способа модификации промежуточных решений, а также оценки необходимости изменения полученного ранее решения.

Благодарность

Работа выполнена при финансовой поддержке РФФИ - проекты 15-01-05129, 16-01-00390, 16-01-00391.

Литература

1. Чернышев Ю.О., Полуян А.Ю. Решение задачи оптимизации на основе параллельного бионического поиска // Известия ЮФУ. Технические науки. 2009. №4(93). С. 34-39.

2. Чернышев Ю.О. Остроух Е.Н. Решение задачи оптимизации алгоритмов сетевыми методами // Электроника и моделирование. 1977. № 15. С. 34-36.

3. Липский. В. Комбинаторика для программистов. М.: Мир, 1988. 200 с.

4. Борисов А.Н., Алексеев А.В., Крумберг О.А. и др. Модели принятия решений на основе лингвистической переменной. Рига: Зинатне, 1982. 256 с.

5. Чернышев Ю.О., Венцов Н.Н., Панасенко П.А. Алгоритм управления информационными процессами на основе нечетких и адаптивных подходов // Международный конгресс по интеллектуальным системам и информационным технологиям "IS-IT`15". М.: Физматлит, 2015, Т.1, С.281-286.

6. Чернышев Ю.О., Венцов Н.Н., Панасенко П.А. Анализ вариантов построения обобщенных расплывчатых ограничений // Международный конгресс по интеллектуальным системам и информационным технологиям "IS-IT`15". М.: Физматлит, 2015, Т.1, C.275-281.

7. Гинис Л.А. Развитие инструментария когнитивного моделирования для исследования сложных систем // Инженерный вестник Дона, 2013, №3 URL: ivdon.ru/ru/magazine/archive/n3y2013/1806

8. Венцов Н.Н. Разработка алгоритма управления процессом адаптации нечетких проектных метаданных // Инженерный вестник Дона, 2012, №1 URL: ivdon.ru/ru/magazine/archive/n1y2012/630

9. Valiant Leslie. Probably Approximately Correct: Nature's Algorithms for Learning and Prospering in a Complex World. New York: Basic Books, 2013. 208 p.

10. Novбk V. "Are fuzzy sets a reasonable tool for modeling vague phenomena?" // Fuzzy Sets and Systems 156. 2005. pp. 341-348.

11. Earl Cox. Fuzzy Modeling and Genetic Algorithms for Data Mining and Exploration. Amsterdam: Elsevier/Morgan Kaufmann. 2005. 530 p.

12. Остроух Е.Н., Золотарева Л.И., Бычков А.А., Долгов В.В. Векторная оптимизация перерабатывающих процессов с учетом сырьевого дефицита // Фундаментальные исследования. 2011. №12-1. С. 224-227.

References

1. Chernyshev Yu. O., Poluyan A. Yu. Izvestiya YuFU. Tekhnicheskie nauki. 2009. №4(93). pp. 34-39.

2. Chernyshev Yu.O. Ostroukh E.N. Elektronika i modelirovanie. 1977. № 15. pp. 34-36.

3. Lipskiy V. Kombinatorika dlya programmistov [Combinatorics for programmers]. M.: Mir, 1988. 200 p.

4. Borisov A.N., Alekseev A.V., Krumberg O.A. i dr. Modeli prinyatiya resheniy na osnove lingvisticheskoy peremennoy [The decision-making model based on linguistic variable]. Riga: Zinatne, 1982. 256 p.

5. Chernyshev Yu.O., Ventsov N.N., Panasenko P.A. Mezhdunarodnyy kongress po intellektual'nym sistemam i informatsionnym tekhnologiyam "IS-IT`15" (International Congress on intellectual systems and information technologies "IS-IT`15"). M.: Fizmatlit, 2015, T.1, pp.281-286.

6. Chernyshev Yu.O., Ventsov N.N., Panasenko P.A. Mezhdunarodnyy kongress po intellektual'nym sistemam i informatsionnym tekhnologiyam "IS-IT`15" (International Congress on intellectual systems and information technologies "IS-IT`15"). M.: Fizmatlit, 2015, T.1, pp.275-281.

7. Ginis L.A. Inzhenernyj vestnik Dona, 2013, №3 URL: ivdon.ru/ru/magazine/archive/n3y2013/1806

8. Vencov N.N. Inzhenernyj vestnik Dona, 2012, №1 URL: ivdon.ru/ru/magazine/archive/n1y2012/630

9. Valiant Leslie. Probably Approximately Correct: Nature's Algorithms for Learning and Prospering in a Complex World. New York: Basic Books, 2013. 208 p.

10. Novбk V. "Are fuzzy sets a reasonable tool for modeling vague phenomena?". Fuzzy Sets and Systems 156. 2005. pp. 341-348.

11. Earl Cox. Fuzzy Modeling and Genetic Algorithms for Data Mining and Exploration. Amsterdam: Elsevier/Morgan Kaufmann. 2005. 530 p.

12. Ostroukh E.N., Zolotareva L.I., Bychkov A.A., Dolgov V.V. Fundamental'nye issledovaniya. 2011. №12-1. рр. 224-227.

Размещено на Allbest.ru

...

Подобные документы

  • Описание решения задачи, ее постановка, общий подход к решению. Представление исходных данных, условий задачи и целей ее решения. Составление алгоритма решения поставленной задачи. Написание программного обеспечения и тестирование конечного продукта.

    курсовая работа [1,1 M], добавлен 03.07.2011

  • Рассмотрение общей характеристики данных. Исследование особенностей и назначения линейных, табличных и иерархических структур данных, анализ процесса их упорядочения. Рассмотрение основных режимов обработки данных. Описание алгоритма решения задачи.

    реферат [27,4 K], добавлен 20.04.2019

  • Организационно-экономическая характеристика задачи выгрузки необходимых данных на магнитный носитель. Информационное, техническое и программное обеспечение решения данной задачи. Блок-схема алгоритма решения задачи. Экономическое обоснование программы.

    дипломная работа [559,3 K], добавлен 08.11.2010

  • Анализ входной информации необходимой для решения задачи. Разработка исходных данных контрольного примера создания базы данных. Описание технологии и алгоритмов решения задачи и их математических реализаций. Разработка диалогов приложения пользователя.

    курсовая работа [1,3 M], добавлен 26.04.2015

  • Оптимизация решения задачи с помощью алгоритма отжига. Анализ теории оптимизации как целевой функции. Метод градиентного спуска. Переменные и описание алгоритма отжига. Представление задачи коммивояжера через граф. Сведение задачи к переменным и решение.

    курсовая работа [784,0 K], добавлен 21.05.2015

  • Моделирование передвижения муравьев. Метод ветвей и границ, ближайшего соседа. Ограничения, накладываемые на агента в стандартной постановке задачи коммивояжера. Использование графа видимости в алгоритме муравья. Структура данных алгоритма муравья.

    дипломная работа [1,7 M], добавлен 07.02.2013

  • Получение сведений о стоимости доставки по заказам клиентов: определение состава выходного сообщения, разработка модели процесса, общее описание решения задачи. Представление подсистемы базы данных, подготовка примера, формирование и отладка запроса.

    контрольная работа [1,5 M], добавлен 21.11.2010

  • Разработка алгоритма аппроксимации данных методом наименьших квадратов. Средства реализации, среда программирования Delphi. Физическая модель. Алгоритм решения. Графическое представление результатов. Коэффициенты полинома (обратный ход метода Гаусса).

    курсовая работа [473,6 K], добавлен 09.02.2015

  • Теоретические сведения, касающиеся метода. Алгоритм решения задачи. Обоснование выбора структур данных. Программа. Тестирование программы. Создание программного продукта, находящего решения головоломки "Y-пентамино".

    курсовая работа [55,9 K], добавлен 08.06.2006

  • Отличительные особенности программы для создания каталога видеокарт на Visual Basic с ее занесением, изменением и удалением. Расчет максимальной и минимальной стоимости видеоносителя в порядке увеличения его стоимости и выбор параметров сортировки.

    реферат [2,9 M], добавлен 12.10.2010

  • Исследование асимптотической временной сложности решения шахматной задачи; разработка наиболее эффективных алгоритмов и структуры данных; аналитическая и экспериментальная оценка методов сокращения перебора в комбинаторных задачах; программная реализация.

    курсовая работа [36,6 K], добавлен 25.06.2013

  • Задачи, решаемые методом динамического программирования. Основные этапы нахождения деревянного алгоритма решения задачи. Выполнение алгоритма Прима. Построение Эйлерового цикла. Решение задач средствами Excel. Алгоритм основной программы - Derevo.

    курсовая работа [586,3 K], добавлен 04.04.2015

  • Представление (построение, создание) списка данных в виде линейного однонаправленного списка. Формирование массива данных. Вывод данных на экран. Алгоритм удаления, перемещения данных. Сортировка методом вставки. Алгоритм загрузки данных из файла.

    курсовая работа [2,1 M], добавлен 16.05.2015

  • Разработка технологии обработки информации, а также структуры и формы представления данных. Подбор алгоритма и программы решения задачи. Определение конфигурации технических средств. Специфика процесса тестирования и оценки надежности программы.

    курсовая работа [959,1 K], добавлен 12.12.2011

  • Программа перенесения данных из таблицы Word в таблицу базы данных. Алгоритм решения задачи в виде текстового описания. Описание базы данных (структура таблиц, схема). Копии с экрана форм для работы с базой данных при разработке их в конструкторе.

    контрольная работа [914,3 K], добавлен 26.03.2011

  • Разработка информационной системы и базы данных магазина "Автозапчасти". Выбор технических средств и программной реализации задачи АЗ-01. Составление алгоритма, программы, руководства пользователя и примера, демонстрирующего корректность решения задачи.

    курсовая работа [2,2 M], добавлен 19.10.2012

  • Создание базы данных, построение на ее основе информационной системы в виде веб-сайта. Обоснование и выбор системы управления базой данных. Датологическое проектирование, разработка алгоритма решения задачи, создание форм. Результаты обработки данных.

    отчет по практике [904,1 K], добавлен 13.04.2015

  • Подбор подходящего прокатного профиля балки из базы данных профилей. Разработка программы для решения статической задачи. Описание сущности и ее атрибутов. Определение геометрических характеристик профиля. Применение Visual Studio Express 2010.

    курсовая работа [1,1 M], добавлен 13.11.2016

  • Этапы работы генетического алгоритма, область его применения. Структура данных, генерация первоначальной популяции. Алгоритм кроссинговера - поиск локальных оптимумов. Селекция особей в популяции. Техническое описание программы и руководство пользователя.

    реферат [1014,2 K], добавлен 14.01.2016

  • Метод половинного деления как один из методов решения нелинейных уравнений, его основа на последовательном сужении интервала, содержащего единственный корень уравнения. Алгоритм решения задачи. Описание программы, структура входных и выходных данных.

    лабораторная работа [454,1 K], добавлен 09.11.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.