Automat probabilistyczny

W matematyce i informatyce automat probabilistyczny ( PA ) jest uogólnieniem niedeterministycznego automatu skończonego ; zawiera prawdopodobieństwo danego przejścia do funkcji przejścia , przekształcając ją w macierz przejścia . W ten sposób automat probabilistyczny uogólnia również pojęcia łańcucha Markowa i przesunięcia podrzędnego typu skończonego . Języki probabilistyczne to tzw języki stochastyczne ; obejmują one języki regularne jako podzbiór. Liczba języków stochastycznych jest niezliczona .

Koncepcja została wprowadzona przez Michaela O. Rabina w 1963 roku; pewien szczególny przypadek jest czasami nazywany automatem Rabina (nie mylić z podklasą automatów ω, zwaną również automatami Rabina). W ostatnich latach sformułowano wariant w kategoriach prawdopodobieństw kwantowych, kwantowy automat skończony .

Nieformalny opis

Dla danego stanu początkowego i znaku wejściowego deterministyczny automat skończony (DFA) ma dokładnie jeden następny stan, a niedeterministyczny automat skończony (NFA) ma zbiór następnych stanów. Zamiast tego automat probabilistyczny (PA) ma ważony zbiór (lub wektor ) następnych stanów, w których wagi muszą sumować się do 1 i dlatego można je interpretować jako prawdopodobieństwa (co czyni go wektorem stochastycznym ). Stany pojęć i akceptacja muszą również zostać zmodyfikowane, aby odzwierciedlić wprowadzenie tych wag. Stan maszyny jako dany krok musi teraz być również reprezentowany przez stochastyczny wektor stanów, a stan zaakceptowany, jeśli jego całkowite prawdopodobieństwo znalezienia się w stanie akceptacji przekracza pewną granicę.

PA jest w pewnym sensie krokiem w połowie drogi od deterministycznego do niedeterministycznego, ponieważ pozwala na zestaw kolejnych stanów, ale z ograniczeniami co do ich wagi. Jest to jednak nieco mylące, ponieważ PA wykorzystuje pojęcie liczb rzeczywistych do określenia wag, czego nie ma w definicji zarówno DFA, jak i NFA. Ta dodatkowa swoboda umożliwia im decydowanie o językach, które nie są regularne, takich jak języki p-adyczne z irracjonalnymi parametrami. Jako takie, PA są potężniejsze niż zarówno DFA, jak i NFA (które są równie potężne).

Definicja formalna

Automat probabilistyczny można zdefiniować jako rozszerzenie niedeterministycznego automatu skończonego wraz z dwoma prawdopodobieństwami : prawdopodobieństwo określonej zmiany stanu i zastąpieniu stanu początkowego wektor stochastyczny , że automat będzie w danym stanie początkowym.

Dla zwykłego niedeterministycznego automatu skończonego tak

  • skończony zbiór stanów
  • skończony zestaw symboli wejściowych
  • funkcja przejścia
  • zbiór stanów wyróżnionych jako akceptujące (lub Q { .

Tutaj oznacza zestaw mocy .

Używając curry , funkcję przejścia niedeterministycznego automatu skończonego można zapisać jako członkostwo δ funkcjonować

jeśli δ i inaczej. Funkcję przejścia curry można rozumieć jako macierz z wpisami macierzy

θ zero lub jeden, wskazując, czy przejście jest dozwolone przez NFA. Taka macierz przejść jest zawsze zdefiniowana dla niedeterministycznego automatu skończonego.

Automat probabilistyczny zastępuje te macierze rodziną prawych macierzy stochastycznych dla każdego symbolu w alfabecie, tak że prawdopodobieństwo przejścia jest podane przez P za

Zmiana stanu z jakiegoś stanu na dowolny musi oczywiście nastąpić z prawdopodobieństwem jeden, i tak musi być

dla wszystkich liter wejściowych stanów wewnętrznych . Stan początkowy automatu probabilistycznego jest określony przez wierszowy , którego składnikami są prawdopodobieństwa poszczególnych stanów początkowych które sumują się do 1: v {\

Macierz przejść działa po prawej stronie, tak że stan automatu probabilistycznego po zużyciu ciągu wejściowego byłby następujący

W szczególności stan automatu probabilistycznego jest zawsze wektorem stochastycznym, ponieważ iloczyn dowolnych dwóch macierzy stochastycznych jest macierzą stochastyczną, a iloczyn wektora stochastycznego i macierzy stochastycznej jest znowu wektorem stochastycznym. Ten wektor jest czasami nazywany rozkładem stanów , podkreślając, że jest to dyskretny rozkład prawdopodobieństwa .

Formalnie definicja automatu probabilistycznego nie wymaga mechaniki automatu niedeterministycznego, z której można zrezygnować. Formalnie probabilistyczny automat PA jest definiowany jako krotka . Automat Rabina to taki, dla którego początkowy jest wektorem ; to znaczy ma zero dla wszystkich wpisów oprócz jednego, a pozostały wpis to jeden.

Języki stochastyczne

Zbiór języków rozpoznawanych przez automaty probabilistyczne nazywa się językami stochastycznymi . Obejmują one języki regularne jako podzbiór.

Niech ” stanów automatu. Przez notacji można również rozumieć, że jest to wektor kolumnowy, który jest funkcją przynależności dla ; to znaczy ma 1 w miejscach odpowiadających elementom w , a zero w przeciwnym razie. Wektor ten można skrócić z prawdopodobieństwem stanu wewnętrznego, tworząc skalar . Język rozpoznawany przez określony automat jest wtedy definiowany jako

gdzie jest zbiorem wszystkich ciągów w (tak, Kleene ) . Język zależy od wartości punktu , zwykle przyjmowanego jako mieszczący w zakresie .

Język nazywa się η -stochastyczny wtedy i tylko wtedy, gdy istnieje jakiś PA, który rozpoznaje język, na stałe . Język nazywa się i , gdy istnieje jakiś którego η

Mówi się, że punkt odcięcia jest odosobnionym punktem odcięcia wtedy i tylko wtedy, gdy istnieje taki, że δ

dla wszystkich

Nieruchomości

Każdy język regularny jest stochastyczny, a co ważniejsze, każdy język regularny jest η -stochastyczny. Słabą odwrotnością jest to, że każdy język 0-stochastyczny jest regularny; jednak ogólna odwrotność nie zachodzi: istnieją języki stochastyczne, które nie są regularne.

Każdy η jest dla

Każdy język stochastyczny jest reprezentowany przez automat Rabina.

Jeśli jest izolowanym punktem przecięcia językiem

języki p -adyczne

Języki p -adyczne dostarczają przykładu języka stochastycznego, który nie jest regularny, a także pokazują, że liczba języków stochastycznych jest niepoliczalna. Język p -adic jest zdefiniowany jako zbiór ciągów znaków

literami .

Oznacza to, że p -adic język jest po prostu zbiorem liczb rzeczywistych w [0, 1], zapisanych w base- p , tak że są one większe niż . Łatwo jest pokazać, że wszystkie języki p -adyczne są stochastyczne. W szczególności oznacza to, że liczba języków stochastycznych jest niepoliczalna. Język p -adic jest regularny wtedy i tylko wtedy, gdy .

Uogólnienia

Automat probabilistyczny ma interpretację geometryczną: wektor stanu można rozumieć jako punkt, który znajduje się na powierzchni standardowego simpleksu , naprzeciw kąta ortogonalnego. Macierze przejścia tworzą monoid , działając na punkt. Można to uogólnić, mając punkt z jakiejś ogólnej przestrzeni topologicznej , podczas gdy macierze przejścia są wybierane ze zbioru operatorów działających w przestrzeni topologicznej, tworząc w ten sposób półautomat . Gdy punkt przecięcia jest odpowiednio uogólniony, mamy automat topologiczny .

Przykładem takiego uogólnienia jest kwantowy automat skończony ; tutaj stan automatu jest reprezentowany przez punkt w zespolonej przestrzeni rzutowej , podczas gdy macierze przejść są ustalonym zbiorem wybranym z grupy unitarnej . Punkt odcięcia rozumiany jest jako granica maksymalnej wartości kąta kwantowego .

Notatki