Có bất kỳ automata không hữu hạn?


35

Trong lý thuyết automata, tất cả chúng ta đều đọc automata là automata hữu hạn, ngay từ đầu. Những gì tôi muốn biết là, tại sao automata là hữu hạn? Để rõ ràng, cái gì trong một máy tự động là hữu hạn - bảng chữ cái, ngôn ngữ, chuỗi được tạo bằng các biểu thức thông thường, hoặc cái gì? Và có (về lý thuyết) bất kỳ automata không hữu hạn?


1
Chắc chắn không phải là ngôn ngữ hoặc "chuỗi được tạo bằng biểu thức chính quy"; nhiều biểu thức chính quy đơn giản khớp với số lượng chuỗi vô hạn (nhưng chúng có thể được nhận ra bởi một máy tự động hữu hạn.)
alexis

Tôi đã hỏi một câu hỏi có một câu hỏi trong đầu: cs.stackexchange.com/questions/55864/
Lời

Câu trả lời:


34

Tất cả các mô hình tự động mà bạn thường gặp phải được trình bày chính xác; nếu không thì sẽ có rất nhiều, điều đó có nghĩa là chúng không bị bắt bởi các mô hình Turing-perfect. Hoặc, trong CS-think, họ sẽ vô dụng¹.

"Máy tự động hữu hạn" được gọi là hữu hạn vì chúng chỉ có một bộ cấu hình hữu hạn (chuỗi đầu vào sang một bên). Chẳng hạn, Pushdown automata có một ngăn xếp có thể có nội dung tùy ý - có vô số cấu hình có thể có.


Ghi chú: Cấu hình của các thiết bị PDA vẫn được trình bày chính xác! Trên thực tế, bất kỳ mô hình tính toán nào nằm trong khả năng tính toán của Turing đều phải có cấu hình có thể biểu diễn chính xác, nếu không, các TM sẽ không thể mô phỏng chúng.


  1. Tôi có ý thức bỏ qua sự siêu tính ở đây cho mục đích của câu hỏi này.

Bình luận không dành cho thảo luận mở rộng; cuộc trò chuyện này đã được chuyển sang trò chuyện .
Raphael

32

Tên đầy đủ là " automata trạng thái hữu hạn ". Phần quan trọng là trạng thái của máy tự động có thể được đặc trưng hoàn toàn bởi một yếu tố của một số tập hợp hữu hạn của các trạng thái riêng biệt. Điều này có nghĩa là nếu trạng thái (có liên quan) của máy tự động liên quan đến biến có giá trị thực thì sẽ có vô số trạng thái tiềm năng (đặt tính hữu hạn của biểu diễn dấu phẩy động) và máy tự động không hữu hạn.

Điều này có thể không bao giờ xảy ra trong khoa học máy tính lý thuyết, nhưng nó không quá kỳ lạ trong lĩnh vực mô hình hóa các chuỗi số thực. Các mô hình Markov ẩn có thể được sử dụng để mô hình một chuỗi số là đầu ra của hệ thống xác suất bao gồm một bộ lọc đầu ra cho mỗi trạng thái của mô hình Markov (rời rạc, hữu hạn) với các trạng thái không quan sát được. Các bộ lọc tính toán đầu ra có giá trị thực tiếp theo từ một vectơ của các đầu ra trước đó (mô hình "tự phát"), nhưng mô hình Markov cơ bản là hữu hạn do xác suất chuyển tiếp của nó chỉ phụ thuộc vào trạng thái Markov hiện tại.

Tuy nhiên, bài viết này ( toàn văn ) phát triển một biến thể trong đó xác suất chuyển tiếp cũng phụ thuộc vào vectơ số thực của các đầu ra trước đó. Trạng thái của hệ thống này là sự kết hợp giữa trạng thái Markov rời rạc và bộ số thực ("mô hình Markov trạng thái hỗn hợp"), do đó nó có thể ở vô số trạng thái khác nhau.

Nói tóm lại, automata không hữu hạn được xác định rõ về mặt lý thuyết và đôi khi còn gặp phải.


1
Tiết lộ đầy đủ: Tôi là một trong những tác giả của bài báo được đề cập. Tôi không chắc đó có được coi là tiết lộ phù hợp hoặc tự quảng cáo không liên quan không ...
alexis

6
Tôi nghĩ hoàn toàn ổn khi tham khảo công việc của chính mình khi thích hợp - nếu bạn là một trong những chuyên gia hàng đầu về một chủ đề, chúng tôi rất vui khi có bạn! - và một tiết lộ đơn giản như của bạn là khá đủ. Cảm ơn!
Raphael

Máy tự động trạng thái hữu hạn không bao gồm máy tự động đẩy xuống, phải không? Có một lý do cụ thể tất cả các cách để trạng thái số thực? Tôi không chắc chắn nếu tôi thiếu một cái gì đó ở đây về lý do tại sao ví dụ rõ ràng này sẽ không hoạt động hoặc nếu bạn chỉ tình cờ chọn một ví dụ bất thường thay thế.
Mehrdad

1
Tôi nghĩ rằng anh ta đang cố gắng hỏi tại sao bạn không sử dụng một loại phi FSA thông thường hơn như máy tự động đẩy xuống thay vì chuyển sang một thứ như các biến trạng thái có giá trị thực.
user2357112 hỗ trợ Monica

1
Chà, chủ yếu là vì đó là ví dụ tôi nghĩ đến! Nhưng cũng là "trạng thái" của mô hình Markov trạng thái hỗn hợp bao gồm một số tham số cố định, nhưng vẫn có vô số trạng thái (được xác định là vị trí hiện tại + xác suất chuyển tiếp) vì một số tham số là số thực (nhưng ảnh hưởng sự chuyển đổi, không chỉ là đầu ra). Trong trường hợp PDA, tính không chính xác đến từ kích thước không giới hạn của ngăn xếp; nhưng vẫn chỉ có một số quy tắc hữu hạn, có độ dài hữu hạn, vì vậy, tại một bước chỉ có một số hữu hạn các bebaviors có thể.
alexis

19

Trong một máy tự động hữu hạn, có khá nhiều độ chính xác: số lượng trạng thái, kích thước của bảng chữ cái bên dưới và độ dài của chuỗi được máy chấp nhận.

Bạn chắc chắn có thể nới lỏng điều kiện hữu hạn trên những điều này bằng cách cho phép, máy có vô số trạng thái nhưng nếu bạn làm như vậy, máy kết quả sẽ trở nên không thú vị, theo nghĩa là các máy đó có thể được thiết kế để chấp nhận mọi ngôn ngữ.


Và nếu đó chỉ là bảng chữ cái là vô hạn thì sao? Điều gì xảy ra nếu chúng ta đang làm việc với một biểu thức chính quy trên các số tự nhiên chẳng hạn? điều đó có thể không?
parvin

8
Nếu máy tự động là hữu hạn nhưng bảng chữ cái là vô hạn, thì máy tự động sẽ có số lần chuyển tiếp hữu hạn ra khỏi mỗi trạng thái. Bất kỳ ký tự nào không liên quan đến một trong các chuyển đổi sẽ không được nhận dạng bởi máy tự động. Do đó, bạn có thể thay thế bảng chữ cái vô hạn bằng bảng chữ cái hữu hạn chỉ chứa các ký tự xuất hiện trong quá trình chuyển đổi của máy tự động và máy tự động vẫn sẽ chấp nhận chính xác cùng một ngôn ngữ.
Kevin - Tái lập Monica

3
@parvin Không thật. Bạn cần có số lượng chuyển tiếp vô hạn giữa các trạng thái (số lượng hữu hạn) của bạn sau đó - mà bạn vẫn không thể đại diện. Nếu bạn chọn các vị từ (như "tất cả các đầu vào chẵn đi từ A đến B, tất cả các đầu vào lẻ ​​đều đi từ A đến C"), về cơ bản, bạn chia bảng chữ cái của bạn thành một số hữu hạn các lớp tương đương.
Bergi

@Kevin, điều đó phụ thuộc vào cách bạn xác định "số lần chuyển đổi hữu hạn". Hãy xem xét một FSA thông thường (hữu hạn), với trạng thái tiếp theo được chọn theo bất kỳ phân vùng hữu hạn nào của các số tự nhiên: ví dụ: phần còn lại của phép chia bằng 7. Hoặc xem xét một tình huống tương tự liên quan đến số thực. Biểu đồ trạng thái là hoàn toàn hữu hạn, nhưng nó được xác định rõ qua một bảng chữ cái vô hạn.
alexis

@Parvin Tôi muốn nói câu trả lời là "có" (xem bình luận trước của tôi).
alexis

10

Trên thực tế, trong lý thuyết automata (khởi hành rất nhiều từ nguồn gốc của Kleene, Rabin và Scott), có rất nhiều hình thức automata không hữu hạn. Điều này phát sinh vì một số lý do.

Chẳng hạn, Pushdown automata là automata có một bộ cấu hình vô hạn (những trạng thái này có số lượng trạng thái hữu hạn, nhưng thực tế là chúng nên được coi là 'automata vô hạn').

Trong cùng một hướng, có các ví dụ khác về automata vô hạn mà không gian trạng thái là vô hạn, nhưng có rất nhiều cấu trúc. Ví dụ, người ta xem xét lớp automata có không gian vectơ (chiều hữu hạn) và là chức năng chuyển đổi ánh xạ tuyến tính (cộng với một số điều ban đầu là một điều cuối cùng). Chúng được gọi là automata có trọng số trên một trường cơ sở (do Schützenberger năm 61). Đây có thể được giảm thiểu và kiểm tra sự bình đẳng. Các ví dụ khác bao gồm automata đăng ký (các automata này có một bộ thanh ghi hữu hạn và hoạt động trên một bảng chữ cái vô hạn: chúng có thể so sánh các chữ cái với các thanh ghi và lưu trữ các chữ cái trong các thanh ghi), và dạng automata danh nghĩa hiện đại hơn(có cùng tính biểu cảm, nhưng có nền tảng và tính chất tốt hơn). Sự trống rỗng của automata như vậy là có thể quyết định.

Aauuavà một nhà nước chấp nhận nếu nó thuộc về L). Ngoài ra còn có một đối tượng cuối cùng (có ngôn ngữ trạng thái!). Sự tồn tại của hai đối tượng này là một cách để giải thích ở mức độ cao tại sao automata xác định có thể được giảm thiểu và được liên kết chặt chẽ với sự đồng dạng Myhill - Nerode.

Để kết luận, có automata vô hạn, nhưng các mô hình được nghiên cứu đầu tiên trong một bài giảng luôn luôn là trạng thái hữu hạn.


2

Tôi nghĩ rằng câu hỏi giả định rằng kết luận rằng không có automata trạng thái vô hạn khi có, chúng chỉ không đáng để đưa lên.

Trong Lý thuyết Automata, có một hệ thống phân cấp quyền hạn của các mô hình ảo khác nhau. Cái tôi học được có 4 cái (mà tôi nhớ, đã có một thời gian), cái tôi tìm thấy trên Wikipedia có 5. Điểm yếu nhất trong cả hai máy tự động hữu hạn và mạnh nhất là máy Turing. Có một số khái niệm về một cấp độ mạnh hơn các máy Turing được gọi là siêu tính toán. Nhiều mô tả khác nhau về máy ảo rơi vào một trong những cấp độ này. Máy Turing đặc biệt được biết đến với nhiều mô hình đều có cùng mức độ tính toán.

Một automata trạng thái vô hạn, ít nhất một định nghĩa chính thức, sẽ rơi vào một trong những cấp độ này. Có thể có một điều gì đó thú vị khi chỉ ra một định nghĩa khắt khe nhất định về một máy tự động trạng thái vô hạn phù hợp với một trong các cấp độ này, nhưng ngoài ra, nó sẽ không được sử dụng nhiều khi có nhiều máy ảo được nghiên cứu kỹ lưỡng hơn đại diện cho từng cấp độ . Nó tương tự như cách mà không có nhiều hứng thú với một máy Turing băng tỷ, vì nó sẽ không mạnh hơn một máy Turing băng đơn lẻ nhưng phức tạp hơn để xử lý.

Bây giờ, nếu bạn tình cờ tìm thấy một automata trạng thái vô hạn không tương đương với mức phân cấp hiện có, điều đó có thể thú vị. Nhưng không có điều đó, các máy tự động trạng thái vô hạn đã bị bắt trong hệ thống phân cấp hiện có và đưa ra các phức tạp thêm khi xử lý vô cực, chúng tôi chỉ tránh chúng theo cùng một cách chúng tôi tránh mọi mô hình máy Turing quá phức tạp.


2

Phiên bản vô hạn (ngây thơ) của máy trạng thái hữu hạn xác định là quá mạnh . Một thứ như vậy sẽ có khả năng "ghi nhớ" bất kỳ ngôn ngữ nào, vì vậy không có gì nhiều để học từ việc xem xét chúng.

Ví dụ: qua bảng chữ cái nhị phân, hãy xem xét một máy tự động dưới dạng cây nhị phân hoàn chỉnh có chiều cao vô hạn. Mỗi chuỗi có thể bạn có thể xem là đầu vào tương ứng duy nhất với một nút của cây, vì vậy bạn có thể xây dựng một bộ quyết định cho bất kỳ ngôn ngữ nào chỉ bằng cách làm cho các nút tương ứng chấp nhận trạng thái.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.