Возможности организации интегрированной инструментальной среды поддержки процедур генетического поиска и оптимизации решений
Особенности эволюционного моделирования. Актуальность и возможность реализации универсальной среды поддержки генетических алгоритмов. Средства помощи кругов потоков ввода-вывода рабочих программ. Применение конструкторов для различных описаний задачи.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 16.01.2018 |
Размер файла | 44,5 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
УДК 658.?
Возможности организации интегрированной инструментальной среды поддержки процедур генетического поиска и оптимизации решений
В.В. Курейчик
Е.В. Нужнов
Введение
Одной из основных проблем науки и техники является разработка теории, принципов, математических методов и моделей для эффективного принятия решений в сложных системах. Сложность и уникальность реальных систем, отсутствие адекватного математического аппарата приводят к необходимости поиска новых направлений моделирования и синтеза. Эти направления в настоящее время активно разрабатываются и составляют основы понятия «искусственный интеллект». Именно на пути применения перспективных интеллектуальных технологий большинство исследователей надеется найти решение стоящих перед учеными и инженерами проблем и задач. При этом важнейшими задачами являются: оптимизация, построение интеллектуальных искусственных систем (ИИС) поддержки принятия решений; моделирование процессов эволюционного развития природы; адаптация и взаимодействие ИИС с внешней средой; исследование открытых систем; построение порядка из хаоса; поддержание гомеостаза в ИИС; использование иерархической самоорганизации.
При построении общей стратегии создания ИИС перед учеными все время возникают аналогии, связанные с развитием природы. Какие пути эволюции выбирает природа? Почему природа экономна? Почему она идет оптимальным путем? Каким образом природе удается найти наиболее устойчивые формы? Каким образом происходит самоорганизация? Какие механизмы лежат в основе алгоритмов построения порядка из хаоса? Как природа научилась ускорять эволюцию? И многие другие. Д. Дидро говорил: «Похоже природе доставляет удовольствие варьировать один и тот же механизм бесконечным числом различных способов». Моделирование развития и совершенствования природы позволяет найти новые пути построения ИИС. При этом перспективными становятся эволюционные стратегии, генетические алгоритмы (ГА) и генетическое программирование [1 - 6].
Основным языком ИИС является математический аппарат системного анализа, теории сложных систем, графов и множеств, математического моделирования, имитации. Способность формировать математические структуры и оперировать с ними краеугольный камень человеческого интеллекта. Математические модели и алгоритмы это те формы, в которых теория эволюционного моделирования и искусственного интеллекта описывают знания и способы работы с ними.
1. Некоторые особенности эволюционного моделирования
Отметим, что в последнее время проявляется тенденция использования естественных аналогов при создании моделей, технологий, методик, алгоритмов для решения тех или иных задач проектирования, конструирования и производства, стоящих перед человечеством. В большинстве случаев использование естественных аналогов дает положительные результаты. Как правило, это объясняется тем, что аналог, взятый из природы, совершенствовался в течение многих лет эволюции и имеет на данный момент самую совершенную в своем роде структуру.
Эволюционное моделирование (ЭМ) представляет собой одно из быстро развивающихся направлений математического моделирования, объединяющее компьютерные методы моделирования эволюционных процессов в естественных и искусственных системах, такие как ГА, эволюционные стратегии, эволюционное программирование и другие эвристические методы. Характерно, что моделируемые биологические системы, в отличие в моделирующих их ИИС, достаточно хаотичны, не имеют очевидных целей или ограничений своего развития, но обладают завидными свойствами воспроизводства, адаптации, самоисправления, устойчивости, гибкости и многими другими, которые могут радикально изменить облик ИИС.
ЭМ - хорошо известная и эффективная оптимизационная методология, которую применяют для решения различных оптимизационных задач в науке и технике. Она основана на аналогии с естественными процессами селекции и генетическими преобразованиями, протекающими в природе [4 - 6]. В быстро прогрессирующей теории ЭМ содержится анализ класса адаптивных, управляющих, ИИС, в которых структурные модификации осуществляются последовательными и параллельными преобразованиями.
ЭМ может предоставить алгоритмические средства для решения комплексных задач науки и техники (с использованием хаотических возмущений, вероятностного подхода, нелинейной динамики), которые нельзя было решить традиционными методами. В общих чертах, эволюция может быть описана как многоступенчатый итерационный процесс, состоящий из случайных изменений и последующей затем селекции. Таким образом, достаточно просто обнаружить взаимосвязь между таким определением эволюции и оптимизационными алгоритмами [7 - 9].
При использовании для решения задач традиционных методов все вычисления обычно приходится начинать заново, что приводит к большим затратам машинного времени. При эволюционном подходе популяцией служит база знаний, которую можно анализировать, дополнять и видоизменять применительно к изменяющимся условиям. Для этого не требуется полный перебор вариантов решения задачи. Кроме того, ЭМ обеспечивает быструю генерацию достаточно хороших решений [7 - 9].
При решении практических задач с использованием ЭМ необходимо выполнить четыре следующих предварительных этапа:
· выбрать способ представления решения;
· разработать операторы случайных изменений;
· определить законы выживания решения;
· создать начальную популяцию.
Для представления решения в виде, понятном компьютеру, требуется такая структура, которая позволит кодировать любое возможное решение и производить его оценку. Математически доказано, что идеальной структуры представления не существует. Поэтому для создания хорошей структуры требуются анализ, перебор и эвристические подходы [7 - 9].
«Двигателем» ЭМ являются ГА - эффективный аппарат оптимизации, моделирующий процессы селекции и генетических преобразований в биологии. Основой ГА явилась модель эволюции Ч. Дарвина [1, 4].
Обычно трудоемкость оптимизационных задач с ростом числа элементов резко возрастает, делая невозможным использование алгоритмов полного перебора. Поэтому требуется проведение модернизации структуры, как самих традиционных ИИС, так и основных блоков, стратегий, концепций, алгоритмов и методов решения оптимизационных задач. Перспективным подходом является использование альтернативных принципов и моделей различных эволюций: Ч.Дарвина («выживание сильнейших»), Ж. Ламарка («наследование благоприобретенных признаков»), де Фриза («внезапные скачки»), К. Поппера («проб и ошибок»), М. Кимуры («нейтральный отбор»), Н. Дубинина («самоорганизация под воздействием внешней среды»), а также их комбинаций [4 - 10]. Ключевыми в каждой модели являются: анализ популяции, ее направленное преобразование и эволюционная смена форм, что реализуется на основе поиска с использованием ГА и эволюционных алгоритмов. ГА начинают работать с несколькими начальными решениями, распараллеливая процесс, и позволяют частично решать проблему выхода из локальных оптимумов, при этом комбинируя, изменяя и наследуя элементы и ансамбли элементов качественных альтернативных решений за приемлемое время.
2. Актуальность и возможность реализации универсальной среды поддержки ГА
ГА сегодня стали мощным средством эффективного решения многих задач поиска и оптимизации решений в различных областях техники. Но разработка и программная реализация ГА, а также их применение и распространение, совершенствование и развитие сдерживаются целым рядом причин, среди которых доминируют следующие:
· разработка практически каждого ГА является уникальной ввиду жесткой привязки к задаче на этапах кодирования и декодирования ее решений в виде генов и хромосом. Разработчики обычно «наследуют» и развивают только опыт построения отдельных генетических операторов (ГО) и общей организации процедур генетического поиска (ПГП) решений в ГА;
· программная реализация ГА производится практически с нуля. При этом в новых проектах обычно теряются все наработки программистов, связанные с оптимизацией структур данных, построения и кода самой программы, а также средствами повышения эффективности вычислений на основе различных эвристик;
· программная реализация ГА, как правило, заканчивается разработкой «вещи в себе» - программного продукта, ни в коей мере не относящегося к категории открытых систем. При этом теряется возможность оперативных сравнительных исследований эффективности применения для решения рассматриваемой задачи данного ГА наряду с ему подобными или алгоритмами других классов;
· ГА относятся к алгоритмам случайно-направленного поиска. Поэтому программы ГА, как правило, не позволяют воспроизводить при новых запусках программы поведение ГА и результаты поиска лучших решений, достигнутые при определенных сочетаниях значений управляющих параметров генетического поиска. При этом теряется уникальная по сути и ключевая по своей роли информация о поведении самой задачи, отражающая взаимное влияние основных факторов (ГА, данные, общая организация ПГП);
· Разработчики отдельных ГА часто ограничиваются использованием лишь самых распространенных схем ГА и ГО, после чего делают упрощенные выводы о применимости или недостаточно обоснованные выводы-приговоры, касающиеся ГА или самой решаемой задачи. В то же время весь спектр возможностей применения математического аппарата ГА для решения любой и каждой конкретной задачи не используется.
Наличие отмеченных факторов подчеркивает актуальность создания универсальной инструментальной интегрированной среды поддержки ГА (СПГА) для решения целого множества различных задач поисковой оптимизации [11].
Возможность реализации СПГА. Возможность реализации подобной среды поддержки основана на следующих положениях.
1. Число математических моделей, используемых для решения задач поисковой оптимизации конечно. Поэтому можно:
Ш систематизировать их;
Ш построить некоторую систему сведения многих задач, подлежащих решению, к ограниченному числу известных постановок задач поисковой оптимизации на основе генетического поиска решений.
2. Число известных элементов ГА и процедур генетического поиска конечно. Поэтому можно:
Ш систематизировать их;
Ш выявить их структурную общность;
Ш на ее основе построить систему автоматизированной генерации генетических алгоритмов и процедур различной сложности на заказ, например, для решения различных народно-хозяйственных задач упаковки, размещения, назначения, разбиения и объединения объектов.
3. ГА направлены на многократную обработку общей информации по разным правилам (модификациям ГО, модифицированным маршрутам генетического поиска, различным вариантам селекции и т.п.). Следовательно, актуальна разработка эффективных средств распараллеливания процессов генетического поиска. Это возможно в двух вариантах:
Ш использование многозадачных режимов работы операционной системы персонального компьютера;
Ш построение новых схем распараллеливания процедур генетического поиска для решения задач в сетевой среде распределенной обработки с несколькими узлами (компьютерами).
4. ГА не обладают свойством воспроизводимости результатов своей работы. Поэтому для повышения эффективности их применения следует обеспечить реализацию «памяти» в ПГП, что можно обеспечить путем сохранения, например:
Ш фрагментов лучших популяций;
Ш фрагментов лучших решений;
Ш лучших сочетаний значений параметров генетического поиска.
5. В конечном счете, эффективность применения ГА во многом определяется качеством декодирования хромосом-результатов. Большинство реализаций ориентированы на простейшие варианты последовательных алгоритмов декодирования. Повысить эффективность декодирования можно, обеспечив более тесную связь с природой задачи с помощью дополнительных эвристик, функции и ограничений, или сделав его процессом итерационной оптимизации.
3. Основные идеи реализации СПГА
При реализации программ решения задач на основе ПГП аппарат ГА обычно встраивается в вычислительную среду задачи, по сути перехватывая поток ввода ее данных. Поэтому предлагаемая СПГА должна обеспечивать поддержку следующих информационных потоков: внутренний (результаты вычислений) и ввода-вывода решаемой задачи, внутренний и ввода-вывода ГА. При этом поток вывода окончательных результатов работы ГА образует исходные данные для формирования потока вывода задачи.
В основу построения СПГА положены следующие соображения.
1. СПГА должна моделировать действия разработчика ГА.
Процесс решения некоторой задачи генетического поиска может быть представлен следующей укрупненной и обобщенной последовательностью действий (рис.1).
В общем случае ПГП может быть обычной циклической, альтернативной или параллельной.
2. При разработке средств пользовательского интерфейса СПГА целесообразно найти удачное сочетание средств разработчика и пользователя.
Рис.1
Использование различных, избыточных или альтернативных возможностей организации ГО и ГА может быть осуществлено на одном из двух следующих уровней:
· на уровне разработчика программы ГА, когда все возможности ГА запрограммированы в составе программного продукта его разработчиком, функционируют независимо от желания пользователя;
· на уровне интерфейса пользователя, когда решение о применении избыточных или альтернативных компонент принимает пользователь программы, делая их выбор и настройку. Конечно, второй вариант обеспечивает бульшую гибкость и универсальность системы.
3. Обеспечить возможность замены синтеза варианта элемента ГА его выбором из имеющихся готовых к применению.
В общем случае различные варианты элемента ГА, некоторой функции или получения решения некоторой задачи по степени повышения их эффективности можно упорядочить следующим образом:
· выбор готового варианта из имеющихся;
· выбор варианта и параметрическая адаптация модели;
· выбор варианта и структурная адаптация модели;
· разработка (задание, описание) алгоритма
Ш на языке описания поведения,
Ш на языке интерпретации сценариев,
Ш на алгоритмическом языке высокого уровня,
Ш на алгоритмическом языке низкого уровня.
4. Действия, связанные с описанием, выбором варианта какого-то решения, сборкой целого из частей и т.п. удобно выполнять в среде визуального мастера - конструктора.
Такой конструктор отвечает, в частности, за выбор элемента ГА из соответствующего перечня имеющихся - банка. А конструктор более высокого уровня обеспечивает сборку ПГП из элементов.
Связь элементов среды конструкторов с банками элементов ГО и ГА показана на рис.2. Но сложность состоит в том, что для решения своей задачи конструктору может понадобиться не только информация из одного или нескольких банков, но и помощь одного или даже нескольких конструкторов, а также информация их банков. Последнее обстоятельство может вызывать дополнительные организационные проблемы взаимодействия конструкторов.
5. СПГА должна поддерживать определенные типовые варианты математического описания природы решаемой задачи.
К ним относятся варианты структурного описания ее элементов (списки, кортежи, матрицы, графы и др.), а также функционального описания зависимостей и ограничений, которыми связаны элементы задачи.
6. СПГА должна поддерживать определенные типовые варианты кодирования и декодирования хромосом.
Возможность их выбора обеспечивается также с помощью соответствующих конструкторов.
Рис.2
7. При декодировании хромосом должны поддерживаться типовые варианты интерпретации результатов решения задачи.
К ним относятся естественная визуально-графическая или некоторая условная (перечень, последовательность, порядок, условное взаимное расположение объектов и т.п.).
8. СПГА должна быть ориентирована на самый сложный вариант интерпретации результатов решения задачи.
Поэтому в общем случае должен обеспечиваться вывод пространственного взаимного расположения (в общем случае разногабаритных) 3D-объектов в объеме некоторого конструктива заданных габаритов. Тогда вывод одномерных последовательностей объектов или расположений 2D-объектов на плоскости ограниченных размеров является частным случаем. эволюционный моделирование генетический алгоритм
4. Система элементов ГА
Анализ известных разработок [2-6] позволил выявить и систематизировать все важнейшие элементы ГА, необходимые и достаточные для построения процедур генетического поиска для новых ГА. Наполнение банков СПГА (рис.2) составляют различные
· типы функций (аддитивная, мультипликативная, комбинированная);
· типы генов (двоичный, десятичный, символьный);
· типы хромосом (гомологичные, негомологичные);
· типы и виды ГО [4 - 9, 11]:
Ш оператор кроссинговера (одноточечный, двухточечный, многоточечный, порядковый, частично соответствующий, циклический, универсальный, «жадный», на основе множества Кантора, на основе дихотомии, на основе метода «золотого сечения», на основе чисел Фибоначчи),
Ш оператор мутации (одноточечный, двухточечный, многоточечный, порядковый, универсальный, «жадный», на основе множества Кантора, на основе дихотомии, на основе метода «золотого сечения», на основе чисел Фибоначчи, аргументированный знаниями, дупликация, делеция, внутрихромосомный, межхромосомный),
Ш оператор инверсии (перецентрический, параценрический, одноточечный, двухточечный, многоточечный, порядковый, универсальный, «жадный», на основе множества Кантора, на основе дихотомии, на основе метода «золотого сечения», на основе чисел Фибоначчи),
Ш оператор транслокации (реципрокный, нереципрокный, полицентрический, робертсоновский, комбинированный «кроссинговер+инверсия», «жадный», на основе множества Кантора, на основе дихотомии, на основе метода «золотого сечения», на основе чисел Фибоначчи),
Ш оператор сегрегации (одноточечный, двухточечный, «жадный», на основе множества Кантора, на основе дихотомии, на основе метода «золотого сечения», на основе чисел Фибоначчи),
Ш оператор удаления и вставки (одноточечный, двухточечный);
· стратегии формирования популяции (случайная, направленная, комбинированная);
· варианты селекции или оператор репродукции («колесо рулетки», случайный, на основе заданной шкалы, турнирный, элитный, вероятностный, детерминированный, комбинированный);
· стратегии усечения пространства решений (проверка легальности хромосом, эвристические);
· стратегии рекомбинации (случайная, направленная, комбинированная).
5. Архитектура СПГА
Архитектура предлагаемой универсальной СПГА представлена на рис.3. Ее основу составляют две части:
· общесистемная (управляющая) среда, которая включает управляющую программу (монитор), банк данных и знаний СПГА, представляющий базу данных (БД) и знаний (БЗ) об элементах ГО, ПГП и ГА со своими системами управления БД и БЗ, а также среду сборки рабочих программ формируемых ГА;
· среда поддержки действий пользователя, включающая интерфейсы и среды поддержки четырех основных групп действий пользователя при построении новых ГА:
· среда выбора варианта реализации искомого элемента ГА с использованием соответствующего конструктора элемента;
· среда описания функции элемента ГА с использованием конструктора описания программы его работы на выбранном языке программирования процедурного или сценарного типа;
· среда настройки параметров разработанных (выбранных) ГО и ГА с помощью соответствующих диалоговых окон;
Ш среда потоков ввода-вывода рабочих программ ГА, обеспечивающая подготовку определенных форматов исходных данных для решения конкретных задач, а также графическую или иную интерпретацию результатов генетического поиска (на основе типовых вариантов декодирования хромосом).
6. Средства поддержки среды потоков ввода-вывода рабочих программ ГА
При создании рабочей программы ГА пользователь СПГА должен обеспечить поддержку последовательности преобразований (рис.4), что по сути представляет определение потоков ввода-вывода рабочей программы ГА. При этом для потока ввода должны быть осуществлены: выбор форматов представления, функциональное описание критериев и ограничений, а также ввод конкретных значений исходных данных решаемой задачи. Для потока вывода
Рис.4
Для различных описаний задачи используются следующие конструкторы:
· конструктор соответствия: «объект - ген», «группа объектов - хромосома»;
· конструктор 3D-объектов и их ориентаций. Для каждого объекта i задаются размеры (xi, yi, zi) в трехмерной системе координат (рис.5) и пространственная ориентация каждого объекта (в общем случае для 3D-объекта можно задать до 12 вариантов ориентации (k=1,…,12) - по 4 для каждой из трех осей координат). Универсальной точкой «привязки» объекта служит его точка, являющаяся ближайшей к началу координат. Тогда задачи пространственного расположения объекта решаются по отношению к координатам (xi*, yi*, zi*) этой точки привязки. Отметим, что тройка {(xi, yi, zi), k, (xi*, yi*, zi*)} однозначно определяет пространственное расположение объекта i в объеме конструктива. Альтернативой является задание для каждого объекта координат двух его противоположных точек в трехмерном пространстве, что не всегда удобно из-за отсутствия и необходимости многократных вычислений ориентации объекта;
· конструктор объемов (площадей, полос) и их ограничений. Задаются габариты (X, Y, Z) конструктивов, а также габариты и точки привязки их запрещенных областей;
· конструктор последовательного пространственного (3D-) расположения объектов. На рис.5 номерами в скобках показан естественный порядок использования направлений расположения объектов, полученный в результате анализа многих реальных задач. Такое расположение для организации «сканирования», кроме собственно расположения по выбранному направлению di (i = 1, 2,…, 6), может содержать еще и смещение sj (j = 1, 2,…, 6) в определенном направлении, перпендикулярном выбранному (рис.6). Отметим, что расположение и смещение производится до достижения соответствующей границы объема. В общем случае порядок пространственного расположения объектов может быть задан циклическим, последовательным или комбинированным описанием. Примеры: циклического описания для рис.6 - (d1, s2); последовательного - d3, d1, d6, d4 ; комбинированного - (d2, d1, d5, d3). Последний пример задает расположение по сужающейся «спирали»;
· конструктор структур - математических описаний взаимных связей объектов задачи, поддерживающий списки, матрицы, графы, гиперграфы и др.;
· конструктор зависимостей (дополнительных формул поиска оптимальных решений - критериев и оценок качества решения задачи). Задаются функциональные зависимости и наборы ограничений, обязательные соответственно для вычислений и проверки в ходе решения задачи.
7. Возможности интеграции компонент СПГА как открытой системы
Предлагаемая СПГА должна поддерживать концепцию построения открытых систем, в соответствии с которой ее элементы должны строиться с использованием типовых интерфейсов (стандартных или специально разработанных удобных средств информационного и программного сопряжения). Например, взаимодействие элементов ГА посредством системы управления БД удобно организовать на основе типовых конструкций (форматов) языка SQL. Кроме того, пополнение и развитие среды возможно только на основе использования единых форматов обмена данными между ее программными компонентами, реализующими элементы ГА.
Еще более перспективным является использование в качестве интегрирующей основы СПГА набирающей популярность платформы .Net, разработанной и активно развиваемой компанией Microsoft. На ее основе организовано комплексное использование целого ряда новых технологий и языков программирования, облегчающих как включение в приложение новых элементов (модулей), так и передачу данных между этими элементами. В первую очередь, это технология и среда разработки Visual Studio for Applications (VSA), являющаяся развитием технологии Active Script в рамках в рамках платформы .Net [12]. Технология Active Script поддерживает набор спецификаций основных компонентов приложений - интерпретатора языка сценариев (script engine) и приложения-хозяина (script host), реализующих среду выполнения сценариев на языках JScript, VBScript и других. Кроме того, она поддерживает автоматическое связывание и встраивание объектов (Object Linking and Embeding, OLE).
В рамках платформы .Net для взаимодействия сценариев используется уже не OLE-автоматизация, так называемый управляемый код (Managed Code). Бинарные модули (EXE- и DLL-файлы) предоставляют динамическую информацию обо всех своих типах данных и функциях. Благодаря этому стала возможной полная интеграция сценариев в платформу .Net, не только предоставляя им возможность пользоваться ее компонентами, но и самим удовлетворять спецификациям платформы Net. Это означает, что объекты, созданные, например, на языке JScript.Net, могут быть доступны для программы, написанной на языке VBScript.Net или VisualBasic.Net и наоборот. В принципе, технология VSA позволяет одинаково легко использовать любой язык, удовлетворяющий новой спецификации Common Language Specification [12].
Использование такого подхода выводит СПГА на принципиально новый уровень гибкости и функциональности. Например, включение элементов ГА в среду можно существенно упростить, используя конструкции языка XML - в качестве средства описания данных (представлений, структур, расположений и т.п.) и обмена данными, а также JScript.Net наряду с Visual C++.Net или совершенно новым языком C# и другими - для программирования элементов (ГО, ПГП, зависимостей и т.п.).
Таким образом обеспечиваются:
· возможность реализации СПГА посредством разработки новой среды управления (монитор, пользовательские интерфейсы представления (конструкторы) и диалоги, средства сборки рабочих программ ГА) с использованием и включением уже имеющихся наработок, программных и информационных компонент;
· возможность развития СПГА на основе известного принципа «поэтапного ввода» с использованием как испытанных временем технологий разработки программного обеспечения с использованием языков C/C++, так и новых технологий его интеграции, с последующим постепенным вытеснением старых технологических программных решений компонентов СПГА новыми.
Заключение
Разработка и реализация предлагаемой универсальной СПГА обеспечивает:
· существенное сокращение сроков разработки, программной реализации и практического применения новых ГА для решения различных практических задач;
· учет накопленного опыта предшествующих разработок элементов ГА и возможность использования компонентов ранее разработанного программного обеспечения;
· снижение сложности и повышение степени интуитивности действий пользователя на основе использования визуальных средств интерфейса (конструкторов и диалогов);
· расширенные возможности оперативного исследования эффективности сведения реальных задач к различным ПГП, вопросов повышения эффективности применения конкретных схем поиска, настройки и использования отдельных ГО;
· возможность постепенного повышения степени интеллектуализации ГА на основе накопления и совершенствования механизмов представления знаний как о конкретных решаемых задачах, так и об элементах ГА;
· возможность достижения новых уровней функциональности и соответствия новым промышленным стандартам в области разработки программного обеспечения.
Литература
1. Дубинин Н.П. Избранные труды. Том 1. Проблемы гена и эволюции. М.: Наука, 2000.
2. Букатова И.Л. Эволюционное моделирование и его приложения. - М.: Наука, 1994.
3. Тарасов В.Б. От многоагентных систем к интеллектуальным организациям: философия, психология, информатика. - М.: Эдиториал УРСС, 2002. - 352 с.
4. Holland John H., Adaptation in Natural and Artificial Systems: An Introductory Analysis with Application to Biology, Control, and Artificial Intelligence. USA: University of Michigan, 1975.
5. Goldberg David E. Genetic Algorithms in Search, Optimization and Machine Learning. USA: Addison-Wesley Publishing Company, Inc., 1989.
6. Koza J.R. Genetic Programming. Cambridge / MA: MIT Press, 1998.
7. Курейчик В.М. Генетические алгоритмы и их применение: Монография. Таганрог: Изд-во ТРТУ, 2002.
8. Батищев Д.А. Генетические алгоритмы решения экстремальных задач. Воронеж: Изд-во ВГТУ, 1995.
9. Курейчик В.В. Эволюционные, синергетические и гомеостатические методы принятия решений. Монография. Таганрог: Изд-во ТРТУ, 2001.
10. Редько В.Г. Эволюционная кибернетика. - М.: Наука, 2001.
11. Гладков Л.А., Зинченко Л.А., Курейчик В.В., Курейчик В.М., Лебедев Б.К., Нужнов Е.В., Сорокин С.Н. Методы генетического поиска: Научное издание / Под ред. В.М. Курейчика. - Таганрог: Изд-во ТРТУ, 2002. - 122 с.
12. MSDN Library. Visual Studio .Net. Microsoft Corporation, 2001.
Размещено на Allbest.ru
...Подобные документы
Описание генетических алгоритмов. Применение генетического алгоритма для решения задачи коммивояжера. Постановка задачи безусловной оптимизации. Изучение распространения генетических алгоритмов на модель с несколькими взаимодействующими популяциями.
дипломная работа [979,1 K], добавлен 30.05.2015Комплексное исследование истории развития, основных понятий, области применения и особенностей генетических алгоритмов. Анализ преимуществ генетических алгоритмов. Построение генетического алгоритма, позволяющего находить максимум целочисленной функции.
курсовая работа [27,9 K], добавлен 23.07.2011Классификация задач системы поддержки принятия решений, их типы и принципы реализации при помощи программы "Выбор". Обзор современных систем автоматизированного проектирования "Компас", "AutoCad", "SolidWorks", оценка преимуществ и недостатков программ.
курсовая работа [1,4 M], добавлен 22.07.2014Средства интегрированной среды Microsoft Visual Studio, предоставляемые программисту для реализации программ на языке С++. Особенности стиля написания программ. Типовые приемы и методы создания и отладки программ. Листинги программ и их тестирование.
лабораторная работа [814,3 K], добавлен 26.05.2013Характеристика методов нечеткого моделирования и изучение системы кластеризации в пакетах прикладных программ. Разработка и реализация алгоритма для оптимизации базы правил нечеткого классификатора с помощью генетического алгоритма аппроксимации функции.
дипломная работа [1,9 M], добавлен 21.06.2014Проектирование баз данных, реализация ее серверной части, методика создания таблиц, различных триггеров, хранимых процедур, клиентского приложения. Процедура поиска данных, фильтрации данных, вывода отчета, ввода SQL запросов и вывода хранимых процедур.
контрольная работа [50,1 K], добавлен 30.10.2009История появления эволюционных алгоритмов. Нейрокомпьютерные исследования в России. Реализация генетических алгоритмов. Расчет эффективности процедур поиска конкурирующей процедуры. Schema и теорема шим. Примеры использования нейросетевых технологий.
курсовая работа [43,0 K], добавлен 20.10.2008Концепция систем поддержки принятия решений. Диапазон применения Analytica 2.0. Программное обеспечение количественного моделирования. Графический интерфейс для разработки модели. Основные способы моделирования. Диаграмма влияния и дерево решений.
контрольная работа [1,1 M], добавлен 08.09.2011Трудности использования эволюционных алгоритмов. Построение вычислительных систем, основанных на принципах естественного отбора. Недостатки генетических алгоритмов. Примеры эволюционных алгоритмов. Направления и разделы эволюционного моделирования.
реферат [187,4 K], добавлен 21.01.2014Основные особенности эволюционных алгоритмов. Описание алгоритмов селекции, мутации, скрещивания, применяемых для реализации генетических алгоритмов. Вычисление функции приспособленности. Программная реализация. Тестирование и руководство пользователя.
курсовая работа [1,3 M], добавлен 11.03.2014Рассмотрение и анализ моделей и алгоритмов семантического поиска в мультиагентной системе поддержки пользователей. Ознакомление с интерфейсом чата с ботом. Изучение и характеристика экспериментальных оценок релевантности и пертинентности запросов.
дипломная работа [3,0 M], добавлен 13.10.2017Основные генетические операторы. Схема функционирования генетического алгоритма. Задачи, решаемые с помощью генетических алгоритмов. Математическая постановка задачи оптимизации. Решение Диофантова уравнения. Программная реализация. Создание пособия.
курсовая работа [391,4 K], добавлен 20.02.2008Приемы работы с инструментальной средой программирования С++. Кодирование арифметических и логических выражений с использованием стандартных библиотечных функций ввода, вывода в С++. Описание переменной вещественного типа в языке программирования С++.
лабораторная работа [137,9 K], добавлен 13.06.2014Разработка алгоритмического и программного обеспечения для решения задачи поддержки принятия решений о выпуске новой продукции. Математическое обеспечение задачи поддержки принятия решений о выпуске новой продукции, основные входные и выходные данные.
дипломная работа [943,0 K], добавлен 08.03.2011Программирование линейных алгоритмов. Процедуры ввода READ и READLN и вывода WRITE и WRITELN. Примеры решения задач на языке Паскаль. Оператор присваивания и выражения. Основные способы формирования структурных операторов. Операторы вызова процедур.
курсовая работа [44,3 K], добавлен 18.03.2013Использование программой функции ввода-вывода данных для реализации дружественного интерфейса с пользователем. Функции консоли и особенности их применения для обеспечения аккуратного ввода информации и упорядоченного вывода. Обзор стандартных функций.
лабораторная работа [40,4 K], добавлен 06.07.2009Методика и основные этапы реализации, информационное обеспечение компьютерной системы поддержки составления учебного плана. Разработка алгоритмов решения функциональной задачи, программного обеспечения. Расчет сметы затрат и экономической эффективности.
дипломная работа [2,4 M], добавлен 21.04.2014Методы реализации алгоритмов сортировки и алгоритмов поиска на языках программирования высокого уровня. Программирование алгоритмов сортировки и поиска в рамках создаваемого программного средства на языке Delphi. Создание руководства пользователя.
курсовая работа [1,7 M], добавлен 16.04.2012Первые работы по симуляции эволюции. Основные понятия генетических алгоритмов. Постановка задачи и функция приспособленности. Инициализация, формирование исходной популяции. Выбор исходной популяции для генетического алгоритма, решение задач оптимизации.
курсовая работа [714,1 K], добавлен 31.03.2015Изучение системной поддержки, применения, конфигурирования параллельного (LPT) и последовательного (СОМ) интерфейсов ввода-вывода компьютерных систем, проведение их технической диагностики, устранение неисправностей. Разработка собственных устройств USB.
дипломная работа [7,3 M], добавлен 10.07.2010