Найти тему
Практика

ФинитаАвтомата, темпоральные функции и причём здесь муравьи?

Основная статья

Создание трейдинг бота. Концепт.
Практика9 февраля 2023

Вступление

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

Немного прошвырнувшись по просторам гугла, наткнулся на интересную кандидатскую к моему огромному сожалению код не доступен в публичном доступе, оно и понятно. В ней автор рассматривает муравьиный алгоритм для генерации конечных автоматов для управления системами в реальном мире.

Использованные материалы:

Теория

Основной матрериал

Темпоральная логика — Википедия

https://cyberleninka.ru/article/n/temporalnye-logiki-dlya-spetsifikatsii-svoystv-programmnyh-i-apparatnyh-sistem/viewer

Функция приспособленности

Царев 2012

Егоров 2013

Реализации темпоральной логики:

GitHub - mvcisback/py-metric-temporal-logic: Python library for working with Metric Temporal Logic (MTL)
GitHub - STLInspector/STLInspector: Tool for STL specification validation

Какая-то реализация алгоритма, вероятно возьму за основу

GitHub - tobiasw225/python-aco: Implementations of Ant Colony Optimizer

SAT

Extended Finite-State Machine Induction using SAT-Solver Vladimir I. Ulyantsev ∗ Fedor N. Tsarev ∗∗

https://pysathq.github.io/docs/html/index.html

Что надо:

  • Темпоральные функции как критерии переходов в FA
  • Реализация конечного автомата
  • Муравьиный алгоритм
  • Далее всё подружить
  • Также генератор/модератор темпоральных формул (для поиска нового решения)
  • Генератор/модератор конечного автомата
  • Функция полезности
  • Наверное графовые пакеты, хотя может и на numpy запилю

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

Пару моментов из труда:

-2
-3

Остаётся выяснить про SAT...

Продолжение будет...