Giải quyết mê cung tối ưu


10

Tôi đã bị lừa với bản demo Mê cung của Google Block và nhớ quy tắc cũ rằng nếu bạn muốn giải quyết một mê cung, chỉ cần giữ tay trái của bạn vào tường. Điều này hoạt động cho bất kỳ mê cung kết nối đơn giản và có thể được thực hiện bởi một bộ chuyển đổi hữu hạn.

Hãy để robot của chúng tôi được đại diện bởi một bộ chuyển đổi với các hành động và quan sát sau đây:

  • Hành động: đi tiếp ( ), rẽ trái ( ), rẽ phải ( )
  • Đài quan sát: tường phía trước ( ), không có tường phía trước ( )

Sau đó, chúng ta có thể xây dựng trình giải mê cung bên trái như (xin lỗi bản vẽ lười biếng của tôi):

đầu dò để giải quyết mê cung

Trường hợp nhìn thấy một quan sát sẽ làm cho chúng ta theo cạnh thích hợp ra khỏi trạng thái trong khi thực hiện hành động liên quan đến cạnh đó. Máy tự động này sẽ giải quyết tất cả các mê cung được kết nối đơn giản, mặc dù có thể mất thời gian theo ngõ cụt. Chúng tôi gọi một máy tự động tốt hơn nếu:AB A

  1. B thực hiện nhiều bước hơn nữa chỉ với một số lượng mê cung hữu hạn và

  2. B thực hiện ít bước hơn (trung bình; đối với các biến thể xác suất) trên một số lượng mê cung vô hạn.

Hai câu hỏi của tôi:

  1. Có một máy tự động hữu hạn tốt hơn so với cái được vẽ ở trên? Điều gì nếu chúng ta cho phép đầu dò xác suất?

  2. Có một máy tự động hữu hạn để giải quyết các mê cung không nhất thiết phải được kết nối đơn giản?


@jmad và tôi đã có một cuộc thảo luận khá hiệu quả trong cuộc trò chuyện về câu hỏi này. Nếu bạn đang suy nghĩ về câu hỏi (đặc biệt là các định nghĩa tốt hơn ) thì tôi khuyên bạn nên kiểm tra bảng điểm.
Artem Kaznatcheev

Tôi không thấy câu hỏi này liên quan đến AI như thế nào (đặc biệt là các tác nhân của chúng tôi không thay đổi hành vi của họ đối với dữ liệu cá thể), nhưng tôi không phải là chuyên gia trong lĩnh vực đó.
Raphael

3
@Raphael giải quyết mê cung và tìm đường (từ đánh giá BFS, DFS, đến A * và trên phường) là các chương trình giảng dạy cơ bản trong khóa học giới thiệu về AI. Tôi đồng ý, là một người thông minh, đây không phải là một điều đặc biệt thú vị, nhưng nếu AI đã dạy tôi bất cứ điều gì: hầu hết AI chỉ là vấn đề tìm kiếm.
Artem Kaznatcheev

Câu trả lời:


6

Nếu tôi hiểu rõ câu hỏi, tôi nghĩ rằng bạn có thể áp dụng thủ thuật tăng tốc để có được automata nhanh hơn trên vô số mê cung (với điều kiện lối ra được đặt trên một trong các đường viền): bạn chỉ cần sử dụng trạng thái bên trong để lưu trữ số bước hữu hạn và nhận ra ngõ cụt giống như trong hình:

nhập mô tả hình ảnh ở đây

A

Theo cách tương tự, bạn có thể mã hóa một số hữu hạn các hình dạng kích thước cố định khác nhau để tránh ngõ cụt và tăng tốc độ tự động của bạn. Kết quả là, không có người giải mê cung "tối ưu" cho mê cung được kết nối đơn giản với lối ra được đặt trên đường viền.

Thủ thuật hoạt động nếu lối vào được đặt bên trong mê cung và lối ra trên biên giới, quá; nhưng nếu lối ra được đặt bên trong mê cung, thì nó không hoạt động vì tất cả các vị trí phải được truy cập và trong trường hợp này, bộ giải cận thị của bạn là tối ưu.

Rõ ràng bạn không thể áp dụng cùng một mẹo để giải quyết các mê cung không được kết nối đơn giản (nhưng nó sẽ hoạt động nếu có một giới hạn trên cố định trên kích thước của từng thành phần không được kết nối).


Đây là một mẹo hay cho trường hợp lối vào-lối ra trên ranh giới (là một lớp con của mê cung được kết nối đơn giản). Nó cho thấy rằng trong trường hợp hạn chế này, thứ tự tôi xác định không có yếu tố tối thiểu. Tôi không nghĩ rằng nó có thể được khái quát cho tất cả các mê cung được kết nối đơn giản (đó là bộ bên trái hoạt động trên).
Artem Kaznatcheev

@ArtemKaznatcheev: Tôi nghĩ rằng thủ thuật này hoạt động trên mê cung với lối vào bên trong mê cung và lối ra trên ranh giới, quá. Hơn nữa, nó hoạt động trên (vô số) mê cung trong đó có một mê cung giống như trong hình). Tôi sẽ chỉnh sửa câu hỏi để làm rõ điểm này.
Vor

k

4k1

5

Câu hỏi 1

Tôi nghĩ định nghĩa tốt hơn của bạn quá khắt khe theo nghĩa là hữu hạn quá hạn chế (nhưng tôi không có định nghĩa nào tốt hơn).

R=(Ri)iRiiLARALRLARAL

ARRAR

Đầu dò xác suất có thể loại trừ vì đầu dò xác định sẽ nhanh hơn trên các bộ mê cung vô hạn này.

Câu hỏi 2 (nhờ thảo luận với OP )

Không. (Nguồn: bài viết đột phá này của Lothar Budach. Định lý được nêu rõ hơn trong phần tóm tắt của bài viết này của Frank Hoffmann.)


vâng, chúng ta sẽ cần xác định một số lớp tương đương trên các mê cung theo các phép biến đổi tiêu chuẩn (như phép quay và phản xạ) để làm cho bức tường bên trái và bên phải theo sau tương đương. Thật không may, phần câu hỏi 1 của bạn không trả lời câu hỏi đầu tiên của tôi . Bạn cho thấy rằng có các bộ giải không thể so sánh (theo thứ tự 'tốt hơn so với') (chẳng hạn như tay trái và tay phải nếu chúng ta không đưa ra các giả định đối xứng) nhưng điều đó không chứng minh rằng không có cái nào là tốt hơn tay trái.
Artem Kaznatcheev

ABABLRRLA A L L ALRAALLA

ABBA

AB

#{A(M)<B(M)|M|n}/#{M|M|n}=o(1)
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.