Jump to content

Коммуникационный конечный автомат

В информатике взаимодействующий конечный автомат — это конечный автомат, помеченный операциями «получения» и «отправки» по некоторому алфавиту каналов. Их познакомили Бранд и Зафиропуло. [1] и может использоваться в качестве модели параллельных процессов, таких как сети Петри . Коммуникационные конечные автоматы часто используются для моделирования протокола связи, поскольку они позволяют обнаруживать основные ошибки проектирования протокола, включая ограниченность, взаимоблокировки и неопределенные приемы. [2]

Преимущество взаимодействия конечных автоматов заключается в том, что они позволяют определять многие свойства протоколов связи, выходящие за рамки простого обнаружения таких свойств. Это преимущество исключает необходимость человеческой помощи или ограничений в целом. [1]

Коммуникационные конечные автоматы могут быть более мощными, чем конечные автоматы, в ситуациях, когда задержка распространения не является незначительной (так что несколько сообщений могут передаваться одновременно) и в ситуациях, когда естественно описать стороны протокола и среду связи. как отдельные сущности. [1]

Коммуникационная иерархическая машина состояний

[ редактировать ]

Иерархические автоматы — это конечные автоматы, состояния которых сами могут быть другими автоматами. Поскольку взаимодействующий конечный автомат характеризуется параллелизмом, наиболее примечательной чертой взаимодействующего иерархического конечного автомата является сосуществование иерархии и параллелизма. Это считается очень подходящим, поскольку означает более сильное взаимодействие внутри машины.

Однако было доказано, что сосуществование иерархии и параллелизма по своей сути обходится включением языка, языковой эквивалентностью и всей универсальностью. [3]

Определение

[ редактировать ]

Протокол

[ редактировать ]

Для произвольного положительного целого числа , протокол [1] : 3  с процесс(ы) представляет собой четверку с:

  • , последовательность непересекающиеся конечные множества. Каждый набор используется для представления процесса, а каждый элемент представляет собой возможное состояние -й процесс.
  • ), последовательность, представляющая начальное состояние каждого процесса.
  • , конечная последовательность непересекающиеся конечные множества такие, что каждое множество представляет возможные сообщения, которые могут быть отправлены из процесса обрабатывать . Если , затем пусто.
  • представляет собой последовательность функций перехода. Каждая функция моделирует переход, который можно совершить, отправив или получив любое сообщение. Что касается процесса , символ используется для обозначения сообщения, которое может быть получено и сообщение, которое можно отправить.

Глобальное состояние

[ редактировать ]

Глобальное состояние — это пара где

  • представляет собой упорядоченную совокупность состояний, каждое из которых представляет собой состояние -й процесс.
  • это матрица такая, что каждый является подпоследовательностью .

Начальное глобальное состояние представляет собой пару где

  • определяется как матрица такая, что для всех , равно пустому слову, .

Существует два типа шагов: этапы получения сообщения и этапы отправки сообщений.

Шаг, на котором процесс получения сообщенияранее отправленный -й процесс представляет собой пару вида когда , с . Аналогично, пара, в которой сообщение отправляется -й процесс к -й является парой вида когда

Запуск это последовательность глобальных состояний, в которой шаг связывает состояние со следующим и первое состояние является начальным.

Говорят, что глобальное государство достижим , если существует пробег, проходящий через это состояние.

Проблемы

[ редактировать ]

С введением самой концепции было доказано, что, когда два конечных автомата обмениваются сообщениями только одного типа, могут быть определены и идентифицированы ограниченность, взаимоблокировки и неопределённое состояние приема, в то время как это не тот случай, когда автоматы обмениваются данными с двумя или несколько типов сообщений. Позже было дополнительно доказано, что когда только один конечный автомат обменивается сообщениями одного типа, в то время как общение его партнера является неограниченным, мы все равно можем решить и определить ограниченность, взаимоблокировки и неопределенное состояние приема. [2]

Далее было доказано, что когда отношение приоритета сообщения пусто, ограниченность, взаимоблокировки и неопределённое состояние приема могут быть определены даже при условии, что в связи между конечными автоматами имеется два или более типов сообщений. [4]

Ограниченность, взаимоблокировки и неопределенное состояние приема все разрешимы за полиномиальное время (что означает, что конкретная проблема может быть решена за приемлемое, а не бесконечное количество времени), поскольку проблемы решения, относящиеся к ним, являются полными в недетерминированном лог-пространстве. [2]

Расширения

[ редактировать ]

Некоторые рассматриваемые расширения:

  • наличие обозначения, указывающего, что некоторые состояния могут не получать никаких сообщений,
  • сообщения принимаются в разных порядках, например FILO,
  • некоторые сообщения могут потеряться,

Канальная система

[ редактировать ]

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

Формально, учитывая протокол , связанная с ним система каналов , где это набор и из .

  1. ^ Перейти обратно: а б с д Д. Бранд и П. Зафиропуло. Об общении конечных автоматов. Журнал ACM, 30 (2): 323–342, 1983.
  2. ^ Перейти обратно: а б с Розье, Луи Э; Гауда, Мохамед Г. Решающий прогресс для класса взаимодействующих конечных автоматов. Остин: Техасский университет в Остине, 1983.
  3. ^ Алур, Раджив; Каннан, Сампат; Яннакакис, Михалис. «Взаимодействие иерархических конечных автоматов», Автоматы, языки и программирование. Прага: ICALP, 1999.
  4. ^ Гауда, Мохамед Дж; Розье, Луи Э. «Связь конечных автоматов с приоритетными каналами», Автоматы, языки и программирование. Антверпен: ICALP, 1984 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 8852fe610b86b5280b752beb49f1f886__1710176700
URL1:https://arc.ask3.ru/arc/aa/88/86/8852fe610b86b5280b752beb49f1f886.html
Заголовок, (Title) документа по адресу, URL1:
Communicating finite-state machine - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)