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


РАЗРАБОТКА ИНТЕРФЕЙСА СИСТЕМЫ ДЛЯ РАБОТЫ С КОНЕЧНЫМИ АВТОМАТАМИ

Работа №190177

Тип работы

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

Предмет

физика

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

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


АННОТАЦИЯ 3
ВВЕДЕНИЕ 3
1. ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ 5
1.1 КОНЕЧНЫЕ АВТОМАТЫ 5
1.2 ФУНКЦИИ ДЛЯ РАБОТЫ С КОНЕЧНЫМИ АВТОМАТАМИ 10
2. ПРОЕКТИРОВАНИЕ ИНТЕРФЕЙСА СИСТЕМЫ ДЛЯ РАБОТЫ С
КОНЕЧНЫМИ АВТОМАТАМИ 12
2.1 ОБЗОР СУЩЕСТВУЮЩИЙ ПРОЕКТОВ 12
2.2 ОПРЕДЕЛЕНИЕ ТРЕБОВАНИЙ К ИНТЕРФЕЙСУ 16
2.3 ВЫБОР ТЕХНОЛОГИИ РАЗРАБОТКИ 18
3. РЕАЛИЗАЦИЯ ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА 22
3.1 СТРУКТУРА ВЕБ-ПРИЛОЖЕНИЯ 22
3.2 РЕАЛИЗАЦИЯ ИНТЕРФЕЙСА СИСТЕМЫ 23
ЗАКЛЮЧЕНИЕ 30
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ И ЛИТЕРАТУРЫ 32

В современном мире информационные технологии играют ключевую роль в различных областях деятельности человека. Одним из важных направлений является разработка и применение алгоритмов, основанных на теории автоматов. Отдельного внимания заслуживают конечные автоматы (КА).
Конечные автоматы — это инструмент позволяющий автоматизировать и оптимизировать множество процессов и сегодня они находят применения во многих сферах, а именно: в финансовых рынках, производстве, маркетинге, управлении рисками, страховании и многие другие [1].
Из ярких примеров можно выделить: применение КА торговых алгоритмах, определение и выполнение операции по заданным параметрам, машина анализирует рыночные данные распознает шаблонные ситуации и принимают решение - купить или продать активы [1]. КА также могут анализировать запасы и историю спроса, учитывать сезон и определять оптимальный уровень закупок и выдавать заказы на поставки. КА могут моделировать и оценивать риски путем анализа данных, факторов и затем разрабатывать новые стратегии для предотвращения нежелательной ситуации как потеря прибыли или не реализованный товар.
Однако для эффективного использования конечных автоматов в практических задачах необходимо разработать удобные инструменты и методы работы с ними. В связи с этим возникает необходимость создания специализированных систем и интерфейсов, которые позволят упростить процесс разработки алгоритмов и синтеза систем на основе конечных автоматов.
Актуальность темы исследования обусловлена растущим интересом к применению конечных автоматов в различных сферах деятельности, а также необходимостью разработки удобных инструментов для работы с ними. Благодаря данному интерфейсу люди, изучающие тему конечных автоматов, смогут проводить исследования эффективнее за счет функций автоматизации тестирования, и сохранять результаты в удобном текстовом варианте. Люди более углубленные в тему исследования, смогут получить исходный код программы и доработать программу для своих нужд.
Целью данной научно-исследовательской работы является разработка интерфейса системы для работы с конечными автоматами.
Для достижения поставленной цели необходимо решить следующие задачи:
• Изучить основные понятия и принципы работы с конечными автоматами;
• Изучение основ веб - разработки;
• Обзор существующих решений;
• Изучение требований к интерфейсу системы;
• Реализация прототипа интерфейса системы.
Результаты исследования могут быть полезны для специалистов в области информационных технологий, разработчиков программного обеспечения и исследователей, занимающихся применением конечных автоматов в своих работах.


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

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

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


В ходе выполнения выпускной квалификационной работы были разработаны: функции оценки тестового покрытия, симуляции автомата с выводом трасс, а также веб - интерфейс. Реализация проекта осуществлялась на языке Python с использованием фреймворка Flask, что позволило создать гибкое и масштабируемое веб-приложение с открытым исходным кодом.
В первой главе работы были рассмотрены теоретические основы конечных автоматов, их свойства и функции, что заложило фундамент для дальнейшего проектирования системы. Во второй главе проведён анализ существующих решений, а именно: JFLAP, Stateflow, IAR visual state, Fsm test online, были сформулированы требования к интерфейсу. Третья глава посвящена непосредственной реализации веб-приложения, в ней был обоснован выбор технологий разработки , изучены основы разработки веб - интерфейсов, структура веб - приложений. Были описаны функциональные модули и их представление в пользовательском интерфейсе.
Разработанная система предоставляет пользователю интуитивно понятный интерфейс с базовыми функциями для работы с файлами формата .fsm, .efsm, .fa, а именно: загрузка автомата из файла формата ".fsm’”, ".efsm", “.fa””, скачивание автомата в файл формата ".fsm“, “.efsm””, “.fa””, проверка корректности описания автомата в формате “.fsm””, “.efsm””, “.fa””, [4]
доопределение частичного конечного автомата, симуляция конечного автомата с выводом трасс, симуляции расширенного автомата, симуляция полуавтомата, функция построения l - эквивалента для расширенного автомата. Данные функции помогут студентам, начинающим исследовать сферу конечных автоматов. Применение веб - фреймворка Flask обеспечило простоту разработки и дальнейшего расширения функционала системы, благодаря простоте структуры веб - приложения, система будет полезна и для исследователей, занимающихся синтезом систем, а также алгоритмов, построенных с использованием конечных автоматов.
Проделанная работа подтверждает актуальность темы и демонстрирует практическую значимость системы для учебных и исследовательских целей. В перспективе проект может быть дополнен новыми возможностями, такими как поддержка визуализации результатов работы конечных автоматов, симуляция автомата, при помощи заданной пользователем, диаграммы состояний, построение таблицы переходов -выходов.
Таким образом, поставленные цели и задачи выпускной квалификационной работы достигнуты, что позволяет считать проект успешно завершённым.



1. Что такое конечный автомат и как его создать [Электронный ресурс] / URL: https://gitverse.ru/blog/articles/data/288-chto- takoe-konechnyj-avtomat-i-kak-ego-sozdat (дата обращения: 27.11.2024)
2. Конечные автоматы в реальной жизни: где мы их используем и почему [Электронный ресурс] / URL:
https://habr.com/ru/companies/yandex praktikum/articles/564800/(дата обращения: 05.09.2024)
3. Математика в тестировании дискретных систем
[Электронный ресурс] URL: https: //stepik. org/course/73866/syllabus (дата обращения: 12.09.2024)
4. Test generation for FSM and EFSM [Электронный ресурс] / URL: http://www.fsmtestonline.ru/ (дата обращения: 12.09.2024)
5. Гилл А. Введение в теорию конечных автоматов - Москва: Изд-во Наука, 1966. - 272 с.
6. JFLAP Version 7.1 [Электронный ресурс] / URL: https://www.jflap.org/ (дата обращения: 16.02.2025)
7. Stateflow [Электронный ресурс] / URL: https: //www.mathworks. co m/products/stateflow.html (дата обращения: 17.02.2025)
8. IAR Visual State [Элеткронный ресурс] / URL: https://www.iar.com/embedded-development-tools/iar-visual-state(дата обращения: 18.02.2025)
9. “Поколение Python”: курс для начинающий [Электронный ресурс] URL: https://stepik.org/course/58852/syllabus (дата обращения: 10.10.2024)
10. Мега-Учебник Flask Глава 1: Привет, мир! (издание 2024) [Электронный ресурс] / URL: https://habr.com/ru/articles/804245/ (дата обращения: 07.01.2025)
11. Мигель Гринберг Разработка веб-приложений с использованием Flask на языке Python / пер. c анг А.Н Киселева. - Москва : Изд-во ДМК Пресс, 2016, - 272 с.
12. Общий синтаксис шаблона jinja2 в Python [Электронный ресурс]
URL: https://docs-python.ru/packages/modul-jinja2-python/sintaksis-shablona-
jinja2/ (дата обращения: 10.02.2025)
13. Flask для начинающих [Электронный ресурс] URL:
https://habr.com/ru/articles/783574/ (дата обращения: 08.01.2025)
14. Джереми Кит HTML5 для веб-дизайнеров / Москва : Изд-во Манн, Иванов и Фербер, 2013. - 80 с.
15. Дока [Электронный ресурс] / URL: https://doka.guide/ (дата обращения: 18.03.2025)
..16


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



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


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