Под-алгоритм AlgMove

Под-алгоритм AlgMove

sergey shishkin

Алгоритм AlgMove анализирует содержимое внутреннего состояния, реализует:

  • смещение управляющего устройства к одной из соседних ячеек;
  • завершение выполнения алгоритма AlgTM;
  • переход управляющего устройства в другое состояние.

Опишем алгоритм AlgMove:

  • формула объектов:

AlgMove(ObjMove,t2…t4)ObjMove≡moverMacro​ ∪ state_masMacro​ ∪ cellic−1, ic, ic+1​Macro​ ∪ next_moveMacro​ ∪ next_stateMacro​​

WorkerAlgMove​(moverMacro​,state_masMacro​,cellic−1, ic, ic+1​Macro​)

MaterialAlgMove​(next_moveMacro​,next_stateMacro​)

В макро-объекте next_moveMacro​ хранится символ конечного алфавита. Этот символ кодируется наличием связей его под-объектов.

[Link(⟨next_moveMacro​⟩)]SomeLink​

Необходим алфавит из четырёх символов [MoveNone], [MoveLeft], [MoveRight] и [MoveEnd], которые можно закодировать наличием связи между тремя одинаковыми объектами obj_move множества next_moveMacro​:

[MoveNone](next_moveMacro​)≡∀ [¬Link(next_moveMacro​)]

[MoveLeft](next_moveMacro​)≡[Link(next_moveMacro​)]Count(1)​

[MoveRight](next_moveMacro​)≡[Link(next_moveMacro​)]Count(2)​

[MoveEnd](next_moveMacro​)≡∀ [Link(next_moveMacro​)]

  • реализация группировкой:

Реализация алгоритма AlgMove производится методом группировки под-алгоритмов AlgMoveLeft, AlgMoveRight, AlgSelectState.

https://telegra.ph/Obshchaya-teoriya-algoritmov-01-20

Report Page