The problem of the Smart Ant-3
The problem of the Smart Ant-3

1.2. Основные понятия

Базовым понятием автоматного программирования является «состояние». Это понятие в том смысле, как оно используется в описываемой парадигме, было введено А. Тьюрингом и с успехом применяется во многих развитых областях науки, например в теории управления и теории формальных языков.
Основное свойство состояния системы в момент времени t0 заключается в «отделении» будущего (t > t0) от прошлого (t < t0) в том смысле, что текущее состояние несет в себе всю информацию о прошлом системы, необходимую для определения ее реакции на любое входное воздействие, формируемое в момент времени t0.

basic-concepts

В параграфе 1.1 при описании понятия «сложное поведение» упоминалось, что реакция сущности со сложным поведением на входное воздействие может зависеть в том числе и от предыстории. При использовании понятия «состояние» знание предыстории более не требуется. Состояние можно рассматривать как особую характеристику, которая в неявной форме объединяет все входные воздействия прошлого, влияющие на реакцию сущности в настоящий момент времени. Реакция зависит теперь только от входного воздействия и текущего состояния. По распространенному представлению эффективность объектно-ориентированного подхода к разработке ПО объясняется тем, что для человека естественно мыслить в терминах объектов (сущностей) и взаимодействия между ними. У автоматного подхода, по мнению авторов, также есть все шансы стать эффективным, так как люди живут в состояниях (например, спят или бодрствуют, сыты или голодны) и в зависимости от текущего состояния по-разному реагируют на внешние раздражители. Вспомните, например, пословицу: «Сытое брюхо к учению глухо».Понятие входное воздействие также является одним из базовых для автоматного программирования. Чаще всего входное воздействие — это вектор. Его компоненты подразделяются на события и входные переменные в зависимости от смысла и механизма формирования. Совокупность конечного множества состояний и конечного множества входных воздействий образует (конечный) автомат без выходов. Такой автомат реагирует на входные воздействия, определенным образом изменяя текущее состояние. Правила, по которым происходит смена состояний, называют функцией переходов автомата. То, что в автоматном программировании, собственно, и называется (конечным) автоматом (рис. 1.4), получается, если соединить понятие автомата без выходов с понятием «выходное воздействие». Такой автомат реагирует на входное воздействие не только сменой состояния, но и формированием определенных значений на выходах. Правила формирования выходных воздействий называют функцией выходов автомата.

1.3. Парадигма автоматного программирования

1.2.Процессор

Программирование логических контроллеров ПЛК-автоматов