About: Automata-based programming is a research topic. Over the lifetime, 15 publications have been published within this topic receiving 77 citations.
TL;DR: The extended finite-state machine (EFSM) induction method that uses SAT-solver is described, which has been tested on randomly generated scenario sets of size from 250 to 2000 and on the alarm clock controlling EFSM induction problem where it has greatly outperformed genetic algorithm.
Abstract: In the paper we describe the extended finite-state machine (EFSM) induction method that uses SAT-solver. Input data for the induction algorithm is a set of test scenarios. The algorithm consists of several steps: scenarios tree construction, compatibility graph construction, Boolean formula construction, SAT-solver invocation and finite-state machine construction from satisfying assignment. These extended finite-state machines can be used in automata-based programming, where programs are designed as automated controlled objects. Each automated controlled object contains a finite-state machine and a controlled object. The method described has been tested on randomly generated scenario sets of size from 250 to 2000 and on the alarm clock controlling EFSM induction problem where it has greatly outperformed genetic algorithm.
TL;DR: This paper describes the method of finite state machine (FSM) induction using genetic algorithm with fitness function, cross-over and mutation based on testing and model checking, and shows how this approach can be tested on the problem of elevator doors controlling.
Abstract: In this paper, we describe the method of finite state machine (FSM) induction using genetic algorithm with fitness function, cross-over and mutation based on testing and model checking. Input data for the genetic algorithm is a set of tests and a set of properties described using linear time logic. Each test consists of an input sequence of events and the corresponding output action sequence. In previous works testing and model checking were used separately in genetic algorithms. Usage of such an approach is limited because the behavior of system usually cannot be described by tests only. So, additional validation or verification is needed. Calculation of fitness function based only on verification do not perform well because there are very few possible values of fitness function (verification gives only "yes" or "no" answer). The approach described is tested on the problem of finite state machine induction for elevator doors controlling. Using tests only the genetic algorithm constructs the finite machine working improperly in some cases. Usage of verification allows to induct the correct finite state machine.
TL;DR: In this paper, the authors propose a SPIN-based SPIN, which is an extension of the SPIN SPIN 2.0 toolkit, and they use it to train SPIN this paper.
Abstract: Рассматривается способ использования верификатора SPIN для верификации автоматных программ. При использовании этого верификатора модель описывается на языке Promela, а требования – на языке LTL. В работе предлагается метод автоматизированного преобразования автоматных программ в модели на языке Promela. Для преобразования формулы на языке LTL в вид, пригодный для использования верификатором, разработано специальное программное средство. Использование предлагаемого метода иллюстрируется на примере верификации модели банкомата. Ключевые слова: верификация программ, верификация на моделях, автоматное программирование, верификатор SPIN
TL;DR: A realization of neuro-automata controlling based on neural networks and automaton paradigm is proposed and an example of how this paradigm could be used in real application is considered.
Abstract: Artificial intelligence — one of the most interesting theoretical and applied areas of computer science There is a wide range of techniques and approaches for creation of artificial intelligence in the applications and real-time control systems In this paper, we propose a realization of neuro-automata controlling based on neural networks and automaton paradigm and considering an example of how this paradigm could be used in real application