Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/grindelfp/avia-expert-system
A project which aims to create a simple expert system for flights advising.
https://github.com/grindelfp/avia-expert-system
Last synced: about 1 month ago
JSON representation
A project which aims to create a simple expert system for flights advising.
- Host: GitHub
- URL: https://github.com/grindelfp/avia-expert-system
- Owner: GrindelfP
- Created: 2023-09-25T13:01:38.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-02T20:58:05.000Z (over 1 year ago)
- Last Synced: 2023-10-04T04:40:53.303Z (over 1 year ago)
- Language: Kotlin
- Size: 1.3 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README-RU.adoc
Awesome Lists containing this project
README
= Авиаэкспертная система =
== Описание ==
Это проект, целью которого является создание простой экспертной системы, которая будет способна посоветовать пользователю шаги для достижения определенной цели: полететь в столицу другой страны.== Использование ==
Программа представляет собой приложение JavaFX, написанное на языке Kotlin, которое предоставит пользователю несколько вариантов выбора для определения ситуации пользователя и правильного курса действий для успешного полета к месту назначения.== База знаний ==
База знаний экспертной системы заранее объявлена в виде текстового файла в формате .json. Модель представления знаний — это производственная модель, хранящаяся в виде списка записей, содержащих следующую информацию:1. Идентификатор записи, который будет использоваться для формализации логических правил и получения результатов.
2. Имя объекта, с которым связана запись.
3. Свойство записи, которое само по себе является объектом, содержащим строку лексического описания записи.Логические правила хранятся в виде объекта Kotlin, который содержит функции генерации результата, который будет представлен пользователю. Он будет представлен в виде текста, содержащего инструкции и советы, основанные на вводе пользователя.
== Модель представления знаний ==
В следующей таблице показана модель представления знаний базы знаний, которая формализует различные свойства 10 объектов, влияющих на поездку.
==== __Таблица 1. Логическая модель представления знаний__ ====
|===
|Объект № |Объект |ID |Свойство.2+|1
.2+|Виза
|А1
|без визы|А2
|виза получена.2+|2
.2+|Билет
|А3
|нет билета|А4
|билет получен.2+|3
.2+|Бесплатный багаж
|А5
|багаж не требуется|А6
|требуется багаж.2+|4
.2+|Климат в пункте назначения
|A7
|похожий на место отправления|А8
|отличается от места отправления.3+|5
.3+|Обычная заполненность аэропорта людьми
|A9
|очень заполненный|А10
|средне-заполненный|А11
|малозаполненный.3+|6
.3+|Дорожное движение в месте отправления
|А12
|пробки|А13
|средняя загруженность|А14
|свободное движение.3+|7
.3+|Знание местного языка места назначения
|А15
|нет знания языка|А16
|базовое и среднее знание языка|А17
|продвинутое знание языка.3+|8
.3+|Состояние здоровья
|А18
|больной|А19
|недомогание|А20
|здоровый.3+|9
.3+|Финансовое состояние
|А21
|ограниченный бюджет|А22
|средств достаточно для поездки|А23
|более чем достаточно средств.2+|10
.2+|Личные вещи, подлежащие декларации
|А24
|нет вещей, подлежащих декларации|A25
|есть вещи, подлежащих декларации
|===== Логические правила ==
В следующей таблице показаны логические правила, которые используются для генерации ответа пользователю. Если ситуация пользователя соответствует условию правила, рекомендация правила будет добавлена в ответ экспертной системы.
==== _Таблица 2. Логические правила_ ====
|===
|Состояние |Совет|А1
|Получите туристическую визу страны назначения.|А2
|Проверьте, действительна ли ваша виза и не истек ли срок ее действия.|А3
|Купите билет на самолет, учитывая свои планы, чтобы не пропустить рейс и возможные задержки не нарушили ваши планы.|А4
|Тщательно проверьте информацию на своем билете, чтобы не пропустить свой рейс.|А5
|Проверьте, предусмотрен ли в вашем билете бесплатный багаж и можете ли вы получить возмещение за непровоз багажа.|А6
|Проверьте, предусмотрен ли в вашем билете бесплатный багаж, и, если нет, узнайте, сколько вам придется заплатить за него.|A7
|Берите только ту одежду, которая вам необходима для вашего комфорта в поездке.|А8
|Имейте в виду, что вам необходимо проверить погодные условия в пункте назначения и иметь при себе одежду, соответствующую погоде в пункте назначения.|A9
|Попробуйте зарегистрироваться на рейс онлайн и обязательно прибудьте в аэропорт как минимум за 2,5 часа до вылета.|А10
|Зарегистрируйтесь на рейс онлайн и обязательно прибудьте в аэропорт как минимум за 2 часа до вылета. Если вы хотите зарегистрироваться в аэропорту, обязательно прибудьте как минимум за 2,5–3 часа до вылета.|А11
|Зарегистрируйтесь на рейс онлайн и обязательно прибудьте в аэропорт как минимум за 1,5–2 часа до вылета. Если вы хотите зарегистрироваться в аэропорту, обязательно прибудьте как минимум за 2–2,5 часа до вылета.|А12
|Постарайтесь выходить из дома, имея достаточно времени, чтобы потратить его на пробки. Имейте в виду, что пробки возможны в любое время суток и могут быть непредсказуемыми.|А13
|Постарайтесь покинуть дом, оставив достаточно времени на дорогу. Имейте в виду, что пробки и затрудненное движение могут возникнуть в любое время суток и быть непредсказуемыми.|А14
|Выйдите из дома и прибудьте в аэропорт как минимум за 15 минут до запланированного вами прибытия в аэропорт, чтобы непредсказуемые затруднения на дорогах не повлияли на ваш рейс.|А15
|Постарайтесь выучить основные фразы на местном языке страны назначения. Также составьте список фраз, которые могут вам понадобиться в поездке, как на местном, так и на вашем языке так, чтобы вы могли показать нужную фразу собеседнику. Также убедитесь, что на вашем телефоне установлено приложение-переводчик и загружен пакет на местном языке, чтобы вам не приходилось полагаться на подключение к Интернету.|А16
|Подумайте о ситуациях, с которыми вы можете столкнуться в своей жизни. Определите и заполните лексические и грамматические пробелы, которые могут вам помешать.|А17
|Найдите способ практиковать и совершенствовать свои языковые навыки в реальной жизни или онлайн, чтобы в стрессовой ситуации, пока вы можете нервничать, у вас не возникало трудностей в общении.|А18
|Рассмотрите возможность задержки рейса, поскольку перегрузки полета могут ухудшить состояние вашего здоровья.|А19
|Проконсультируйтесь с врачом о состоянии вашего здоровья и о том, можете ли вы лететь. Если полет разрешен врачом, обязательно защитите свое здоровье во время и после полета, поскольку вы встретите много людей, и некоторые из них могут болеть.|А20
|Обязательно берегите свое здоровье во время и после полета, поскольку вы встретите много людей, и некоторые из них могут болеть.|А21
|Планируйте свою поездку так, чтобы не потратить больше денег, чем у вас есть. Также узнайте, возможны ли скидки в поездке. Подумайте о том, чтобы отложить поездку, если вы не можете себе её позволить без чрезмерных ограничений себя в средствах.|А22
|Планируйте свою поездку так, чтобы не потратить больше денег, чем у вас есть. Также узнайте, возможны ли скидки в поездке. Однако не будьте слишком жадными, ведь вы можете пропустить много интересного.|А23
|Отслеживайте свои расходы, чтобы не тратить больше денег, чем намереваетесь. Легко потратить больше, чем требуется, когда у вас больше денег, чем требуется, но и не будьте слишком жадными, ведь можно упустить много интересного.|А24
|Изучите правила относительно норм ввоза личных вещей, которые следует декларировать при пересечении границы страны назначения. Если у вас нет таких вещей, вам следует узнать, что делать с листами декларации по прибытии.|A25
|Изучите правила относительно норм ввоза личных вещей, которые следует декларировать при пересечении границы страны назначения. Если у вас есть такие вещи, вам следует узнать, как их декларировать и что делать с листами декларации по прибытии.
|===