Тип работы:
Предмет:
Язык работы:


Применение эвристических алгоритмов к задачам поиска максимально нелинейных векторных булевых функций

Работа №118175

Тип работы

Бакалаврская работа

Предмет

программирование

Объем работы46
Год сдачи2022
Стоимость4800 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
87
Не подходит работа?

Узнай цену на написание


Аннотация 2
Введение 5
1 Исследование предметной области и уточнение границ максимальной нелинейности 6
1.1 Постановка задачи максимально нелинейных векторных булевых функций 6
1.2 Границы максимальной нелинейности 10
1.3 Таблица ограничений максимальной нелинейности 15
2 Описание и реализация эвристических алгоритмов 18
2.1 Генетический алгоритм 19
2.2 Алгоритм имитации Отжига 22
2.3 Алгоритм роя частиц 26
2.4 Восхождение на вершину 28
2.5 Реализация генетического алгоритма 29
2.6 Реализация алгоритма имитации отжига 35
3 Тестирование 40
3.1 Сравнительный анализ выбранных алгоритмов 40
3.2 Результат работы алгоритмов и их сравнение 40
Заключение 44
Список используемой литературы 45

Векторные булевы функции применяются в криптографических приложениях, ради чего они обязаны владеть нужными особенностями для того, чтобы гарантировать стойкость к известным видам криптоанализа. Такие функции должны обладать относительно простой структурой. Одним из условий обеспечения устойчивости против криптографических атак является высокая или максимальная нелинейность. Именно это и интересует нас в рамках выпускной квалификационной работы.
Для реализации нашей работы, мы найдем и построим верхние и нижние границы максимальной нелинейности. Благодаря построенным границам, после реализации эвристических алгоритмов, мы сможем их сравнить.
Цель выпускной квалификационной работы - сравнительный анализ эвристических алгоритмов решение задачи поиска максимально нелинейных векторных булевых функций.
Для поставленной цели необходимо выполнить следующие задачи:
1. Описать задачу поиска максимально нелинейных векторных булевых функций;
2. Найти и построить верхние и нижние границы максимальной нелинейности;
3. Сформулировать существующие эвристические алгоритмы решения данной задачи;
4. Реализовать эти алгоритмы;
5. Провести сравнительный анализ реализованных алгоритмов.

Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В данной квалификационной выпускной работе мы исследовали предметную область и сформулировали задачу максимально нелинейных векторов булевых функций, для этого рассмотрели основные понятия и ввели необходимые определения, леммы и теоремы. После уточнили границы максимальной нелинейности векторных булевых функций, которые помогли нам определить максимальные значения, чтобы решение задачи было более корректным.
Далее, в ходе исследования алгоритмов мы рассмотрели некоторые виды эвристических алгоритмов решения поставленной задачи. Выбранные нами алгоритмы были успешно реализованы на языке MATLAB. Мы протестировали работу алгоритмов по всем определяемым нами значениям (п = 3, m = 2)( п = 6, m = 7)( п = 10, m = 3) и можно отметить что алгоритм имитации отжига работает в разы быстрее, чем генетический алгоритм, но при этом генетический алгоритм является более эффективным, так как среднее значение нелинейности больше. Также можно сделать вывод, что алгоритм имитации отжига имеет меньшей разброс в максимальной нелинейности [256;258], а генетический алгоритм [257;261].
На основе приведенного сравнения двух алгоритмов можно сделать вывод о том, что алгоритм имитации отжига является более быстрым и имеет меньший разброс по сравнению с генетическим алгоритмом.
Все поставленные задачи выполнены, и цель выпускной квалификационной работы была достигнута.


1. Агафонова И.В. Алгебраическая нормальная форма булевой функции и бинарное преобразование Мёбиуса, 2013.
2. Вишняков П.О. Планирование маршрутов с использованием модифицированного метода «ближайшего соседа» //Математические методы в технике и технологиях - ММТТ. 2014. No 6 (65). С. 63-67.
3. Гладков Л.А., Гладкова Н.В. Особенности использования нечетких генетических алгоритмов для решения задач оптимизации и управления // Известия ЮФУ. Технические науки. 2009. No 4 (93). С. 130-136.
4. Курбатова Н.В., Пустовалова О.Г. Основы MatLab в примерах и задачах. - Ростов-на-Дону: Южный федеральный университет, 2017. - 146 с.
5. Лопатин А. Метод отжига. Стохастическая оптимизация в информатике, 1:133-149, 2005.
6. Марченков С. С. Основы теории булевых функций. - 1 изд. - Москва: Физматлит, 2014. - 134 с.
7. Н. В. Тимофеева Линейная алгебра. Современная алгебра. - Ярославль: ЯрГУ, 2017. - 134 с.
8. Н. Ю. Прокопенко МЕТОДЫ ОПТИМИЗАЦИИ. - Нижний Новгород: ННГАСУ, 2018. - 118 с.
9. Панченко Т. В. Генетические алгоритмы. - Астрахань: Астраханский университет, 2007. - 86 с.
10. Писарук Н. Н. Исследование операций. - Минск: БГУ, 2015. - 298 с.
11. Пожидаев М. С., Сбалансированная эвристика для решения задачи маршрутизации транспорта с учетом грузоподъемности [Text] / Ю. Л. Костюк, М. С. Пожидаев // Вестник ТГУ. УВТиИ. — 2010. — No 3.
12. Скиена С.С Алгоритмы руководство по разработке. - 2-е изд. - Санкт-Петербург : БХВ-Петербург, 2011. - 713 с.
13. Смоленцев Н. К. MATLAB. Программирование на С++, С#, Java и VBA. - 2-е изд. - Москва: ДМК Пресс, 2015. - 495 с.
14. Токарева Н. Н. Нелинейные булевы функции: бент-функции и их обобщения. Издательство LAP LAMBERT Academic Publishing (Saarbrucken, Germany), 2011. - 146 с.
15. Ященко В.В., Логачев О.А., Сальников А.А. Булевы функции в теории кодирования и криптологии. - Москва: МЦНМО, 2004. - 468 с.
...


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ