Học luật cờ vua


11

Một câu hỏi tương tự hỏi liệu một máy tính có thể học cách chơi tối ưu trong cờ vua hay không bằng cách phân tích hàng ngàn trò chơi.

Nếu một cỗ máy có thể nhìn vào trạng thái của bàn cờ cho một vài ván cờ (hoặc một vài ván cờ) vào đầu và sau mỗi lần di chuyển, nó có thể được lập trình để tìm hiểu các quy tắc của trò chơi không?

Nếu nó có thể, ở mức độ nào (ví dụ, nó có thể tính đến việc đúc hoặc quảng cáo) thì nó có hoạt động không? Những thuật toán máy học sẽ làm điều này có thể?


3
Máy sẽ có thể chuyển sang trạng thái có thể nói "Tôi đã thấy động tác này được thực hiện, vì vậy tôi sẽ cho rằng tôi có thể thực hiện nó trong những trường hợp tương tự." Cho dù điều đó cấu thành "học các quy tắc" gần như là một câu hỏi triết học. ;)
lừa dối

@deceze Vâng, bạn không hoàn toàn đúng. Bằng cách học các quy tắc, người ta có nghĩa là có thể thực hiện di chuyển với bố cục chưa từng xảy ra với chương trình trước đó. Nếu không, nó không phải là học các quy tắc mà là ghi nhớ các động tác.

2
@Max Máy tính có thể thực hiện chính xác các di chuyển mà nó chưa từng thấy trước đây không? Nói, nó đã thấy các hiệp sĩ di chuyển hai về phía trước và một bên nhiều lần, nhưng không bao giờ hai trở lại, một bên. Làm thế nào nó có thể tự tin nói những gì các quy tắc liên quan đến sự di chuyển của các hiệp sĩ? Có thể có một điều khoản đặc biệt trong các quy tắc nói rằng "các hiệp sĩ không thể di chuyển trở lại, chỉ tiến về phía trước" (giống như những con tốt). Do đó suy ra các quy tắc với sự chắc chắn dường như là một điều không thể. Điều đó cũng khá tốt cho con người.
lừa dối

8
@Max Trên thực tế, có thể có vô số quy tắc mà máy tính không thể suy ra . On the 8th turn the knight may not turn right. On a sunny day the pawns may jump over bishops.Máy tính không thể nói lý do tại sao con tốt đó không di chuyển trên một ngã rẽ cụ thể. Có lẽ có một quy tắc chống lại nó di chuyển trong hoàn cảnh cụ thể đó. Do đó, máy tính chỉ có thể tái tạo các mẫu tương tự (thực tế, chính xác), nhưng không bao giờ có thể suy ra các quy tắc với độ tin cậy 100%.
lừa dối

@deceze Có thể nếu bạn thể hiện quy tắc đó bằng cách nào đó. Tương tự như cách bạn cần dạy cho con người các quy tắc (ví dụ đưa cho anh ta bản in quy tắc để đọc) bạn cần bằng cách nào đó cung cấp quy tắc đó cho máy. Cách dễ nhất là phát lại TẤT CẢ các quy tắc trong một số lượng trò chơi để máy học. Con người cũng vậy - con người sẽ không biết rằng On a sunny day the pawns may jump over bishops.nếu bạn chưa bao giờ thể hiện điều đó với anh ta.

Câu trả lời:


10

Nếu một cỗ máy có thể nhìn vào trạng thái của bàn cờ cho một vài ván cờ (hoặc một vài ván cờ) vào đầu và sau mỗi lần di chuyển, nó có thể được lập trình để tìm hiểu các quy tắc của trò chơi không?

Chắc chắn không phải cho một vài trò chơi cờ vua; bạn cần phân tích số lượng cực lớn trong số chúng để ngăn không cho nó di chuyển không hợp lệ. Bao nhiêu, tôi không biết; vấn đề này thuộc về lĩnh vực lý thuyết học tập tính toán, học PAC và vấn đề học tập trong giới hạn .

Các thuật toán phân loại được đề xuất bởi các áp phích khác có thể có khả năng học phân biệt các quy tắc cờ vua: đưa ra hai thiết lập bảng, họ có thể trả lời "có" hoặc "không" cho câu hỏi liệu một nước đi hợp lệ có biến đổi cái này thành cái khác không. Với một số nỗ lực, chúng cũng có thể được sử dụng để tạo ra các động thái. Tuy nhiên, sau đó, họ sẽ chỉ tạo ra các động tác mà họ đã thấy trong các trò chơi mà họ đã được đào tạo hoặc tạo ra một sự kết hợp của các động tác hợp lệ và không hợp lệ, mỗi lần có một số điểm cho biết khả năng họ xem xét di chuyển trong câu hỏi, với các quy tắc không hợp lệ hy vọng nhận được xác suất rất nhỏ.

(Tức là, chương trình sẽ không nhận ra một số động thái hợp lệ theo ý của mình; hoặc bạn có thể gian lận mà không nhận ra; hoặc bạn phải huấn luyện nó quá lâu đến nỗi bạn mất hết hứng thú với trò chơi.)

Đối với các kỹ thuật có thể học các quy tắc, hãy kiểm tra lập trình logic quy nạplập trình di truyền . Tôi không chắc có ai đã từng thử áp dụng chúng vào việc học cờ vua chưa; vì các quy tắc của cờ vua đã được sửa, nên sẽ thú vị hơn nhiều (ngay cả đối với giới hàn lâm) để xây dựng các chương trình chơi cờ tốt hơn là các quy tắc phải học các quy tắc cơ bản từ đầu.


4

Các quy tắc của cờ vua khá phức tạp và một số rất hiếm khi được thực hiện trong một trò chơi.

Ví dụ quy tắc en passant . Bạn cần quan sát bao nhiêu trò chơi để suy ra nó chỉ được phép di chuyển đầu tiên sau khi di chuyển hai bước?

Một vi dụ khac. Quảng trường b có thể bị tấn công trong lâu đài. Có bao nhiêu trò chơi bạn thấy nơi này xảy ra?

Nói cách khác, bạn sẽ cần nhiều, rất nhiều, rất nhiều trò chơi để rút ra tất cả các quy tắc một cách chính xác.

Nhưng, có lẽ, Google sẽ tìm thấy một góc trên đám mây của họ để lưu trữ đầy đủ các trò chơi cờ vua "sớm" ...


"Quảng trường b có thể bị tấn công trong lâu đài" đây là động thái gì? Bạn có thể giải thích nó hoặc liên kết nó cho tôi?
CaffGeek

@chad, còn được gọi là castling queenside - ký hiệu "0-0-0" được sử dụng. Chỉ có ba lĩnh vực mà các vị vua "chạm" có thể không bị tấn công.

2
Ngoài ra, hình vuông d không thể bị tấn công khi castling quresside (hoặc f-vuông khi castling kingside) ; bạn cũng không thể lâu đài sau khi di chuyển vua của bạn. Làm thế nào bạn có thể biết rằng một cái gì đó không thể được thực hiện bằng cách quan sát các trò chơi mà nó đã không được thực hiện? Như Lars đề cập, máy tính có thể chỉ định xác suất di chuyển là hợp lệ, nhưng việc xác định quy tắc cụ thể đó bằng cách quan sát các trò chơi là không thể.
BlueRaja - Daniel Pflughoeft

Ngoài ra, đã có những trò chơi, thậm chí bởi các đại kiện tướng trong một thiết lập giải đấu, nơi các quy tắc đã bị phá vỡ , và không người chơi nào chú ý! Theo quy định của giải đấu, nếu không có người chơi nào thông báo trong vòng 10 lần di chuyển, trò chơi sẽ hợp lệ và tiếp tục. (Tôi nhớ rất rõ một trò chơi mà một ông chủ đã di chuyển vị vua của mình, sau đó chuyển nó trở lại và sau đó bị ném. Tôi không thể tìm thấy nó ngay bây giờ)
BlueRaja - Danny Pflughoeft

1
en passant là đủ hiếm nhưng có một số quy tắc rút ra bắt buộc là FAR hiếm hơn. Tôi đã chơi 40 năm và tôi chưa bao giờ thấy một trò chơi mà bạn có thể có một trận hòa bắt buộc khi có 50 bước di chuyển mà không có động tác cầm đồ và không bị bắt. Tôi nghĩ có thêm một quy tắc như vậy mà tôi thậm chí không nhớ lại. Trong thực tế, người chơi sẽ đồng ý với một trận hòa trước khi họ được gọi. (Chúng tồn tại để đảm bảo rằng bạn không thể "giành" một vị trí được rút ra bằng cách kéo nó ra cho đến khi đối thủ của bạn thoát ra.)
Loren Pechtel

2

Có và không

Tôi không chắc liệu bạn có hỏi liệu có thể học các quy tắc của cờ vua bằng cách sử dụng máy học / mạng lưới thần kinh hay không hoặc có thể đào tạo một máy đánh cờ cấp "đại sư" bằng cách sử dụng nó không.

Bạn chắc chắn có thể dạy cho máy tính các quy tắc và một số cấp độ cờ vua bằng cách sử dụng chúng. Tuy nhiên tôi không nghĩ rằng bạn có thể đào tạo nó đến một cấp độ cao hơn bằng cách sử dụng nó. Khoa học máy tính vẫn chưa thể tạo ra một cỗ máy có thể "hiểu" cờ vua theo quan điểm vị trí / trực quan. Tất cả các máy tính cờ vua hiện tại sử dụng một cơ sở dữ liệu rộng lớn, tính toán sức mạnh vũ phu và có thể học máy trên đó.

Đoán nó phụ thuộc vào việc bạn có sử dụng cơ sở dữ liệu tham chiếu là gian lận hay không :) Ngoài ra, thật khó để biết liệu bạn có thực sự có thể tách biệt việc biết nhiều trò chơi khỏi việc giỏi nó hay không. Con người giỏi cờ vua chính xác là tốt bởi vì họ đã xem rất nhiều trò chơi được tham chiếu bởi một phần của bộ não thường được biết là nhận diện khuôn mặt. Từ hồi tưởng này, có vẻ như người chơi cờ người có thể phát triển một "trực giác" về sức mạnh của một vị trí.


các đại kiện tướng giỏi nhất ghi nhớ những cuốn sách mở đầu rộng lớn và điều đó không được coi là gian lận. Và dù sao đi nữa, điều đó luôn xảy ra khi những gì từng được coi là một biến thể mở tốt được đưa ra bởi một ý tưởng mới. Vì vậy, "cheat" của việc chơi sách di chuyển thậm chí có thể không phải là cách tối ưu cho máy tính để chơi.
Kevin

2

Như nhiều ý kiến ​​đã nói, đây gần như là một câu hỏi triết học tranh luận về định nghĩa 'học'. Hầu hết các chương trình trí tuệ nhân tạo đều dựa vào việc xác định các giải pháp hợp lý. Cung cấp đủ dữ liệu, một chương trình học cờ vua sẽ xác định một danh sách các nước đi hợp lý để thực hiện trong các tình huống nhất định. Điều này không có nghĩa là nó biết các quy tắc của cờ vua, nó chỉ hiểu những gì di chuyển có lợi và những gì không. Ngay cả khi bộ dữ liệu bao gồm những người chơi thực hiện di chuyển bất hợp pháp, di chuyển bất hợp pháp sẽ gây ra tổn thất tức thì vì vậy ai sẽ bỏ qua nó và không bao giờ sử dụng di chuyển đó vì nó không bao giờ có lợi.

Không quan trọng việc sử dụng mạng thần kinh hay thuật toán tiến hóa hay bất kỳ loại thuật toán học tập nào khác, ai không bao giờ có thể học rõ ràng các quy tắc khi xem một cái gì đó, nó chỉ có thể xác định danh sách các tùy chọn có lợi hợp lý.


2

Nếu bạn nghĩ rằng các quy tắc của Cờ vua là động cơ vật lý của trò chơi và Luật Vật lý là các quy tắc được chấp nhận vĩnh viễn và không bị ràng buộc của vũ trụ thì hãy nghĩ về số lượng "Luật" thực tế có trong vũ trụ tự nhiên của chúng ta. Thật khó khăn nếu không thể tạo ra một QUY TẮC khó và nhanh, nhưng chúng ta có thể đưa ra một số lý thuyết được kiểm tra và chấp nhận theo thời điểm cụ thể.

Có thể giả sử rằng máy tính quan sát và ghi lại các chuyển động, nhưng KHÔNG đưa ra các xác nhận trực tiếp về các di chuyển hợp lệ.

Ví dụ, nó sẽ quan sát một con tốt di chuyển về phía trước một mảnh và đưa ra giả thuyết mới rằng tất cả các mảnh chỉ có thể di chuyển về phía trước chỉ một không gian, và một con khác mà một con tốt chỉ có thể tiến về phía trước một không gian. Nó sẽ hình thành càng nhiều giả thuyết hạn chế càng tốt cho đến khi bước tiếp theo xảy ra và một số trong số chúng có thể được ném ra hoặc làm cho chúng ta tự do hơn.

Cuối cùng, sau rất nhiều lần di chuyển, bạn sẽ có một bộ các lý thuyết vững chắc nhưng nó sẽ là một bộ dữ liệu sống tiếp cận 0 nhưng không bao giờ đạt tới nó.

Vì vậy, câu trả lời là một máy tính có thể đoán đúng nhưng nó sẽ (EDIT: KHÔNG) biết các quy tắc chắc chắn.


1

Về lý thuyết - vâng, nó có thể. Nó thậm chí có thể trở thành một đại kiện tướng trong cờ vua. Câu trả lời bạn đang tìm kiếm là mạng lưới thần kinh . Mạng lưới thần kinh về bản chất là điều tương tự xảy ra trong não của chúng ta. Hơn nữa, với mạng lưới thần kinh được thiết kế hoàn hảo (đọc - hoàn hảo một cách hoàn hảo) và một phần cứng hoàn hảo - nó có thể học mọi thứ mà con người có thể học theo những cách tương tự hoặc thậm chí tốt hơn.

Đọc thêm về nó:


2
"Câu trả lời" này chỉ là một loạt các liên kết Wikipedia, hai trong số đó mô tả cùng một khái niệm, một trong số đó là cực kỳ rộng và một trong số đó không liên quan gì đến vấn đề trong tay. Vui lòng cho biết bản đồ Kohonen sẽ được sử dụng như thế nào để học hiệu quả các quy tắc của cờ vua.
Fred Foo

1
ANN và NN không có cách nào gần với sự phức tạp của một tế bào thần kinh / não người thực sự, ANN tốt nhất là một xấp xỉ thô sơ ghê tởm.
Đêm tối

"trong lý thuyết, lý thuyết và thực hành là như nhau, nhưng trong thực tế chúng không bao giờ như vậy." Các chương trình cờ vua có thể chơi như các đại kiện tướng, nhưng tôi không nghĩ đó là do mạng lưới thần kinh hoặc học máy. Hầu hết các chương trình tốt đều sử dụng sách mở rộng, bảng kết thúc và tìm kiếm đầu tiên chuyên sâu ("negamax với alpha beta pruning") và có lẽ là một chức năng đánh giá rất phức tạp (rất có thể được viết với sự trợ giúp của các đại gia).
Kevin

Mạng lưới thần kinh chỉ có thể học những gì họ được đào tạo để làm. Cờ vua có một số quy tắc rất hiếm khi được áp dụng, nhưng là một phần của trò chơi. Nó sẽ là hợp pháp để thúc đẩy thành một giám mục? Nó sẽ là hợp pháp để thăng chức thành một vị vua?

2
Hà ... thăng chức lên làm vua khó hơn một chút!
Kevin

1

Tôi nghĩ rằng nó có thể học được những động tác mà nó được phép thực hiện chỉ bằng cách phân tích, nhưng làm thế nào nó học được những động tác mà nó không được phép thực hiện? Ví dụ, con tốt dường như không bao giờ tiến về phía trước một hình vuông khi một mảnh đối diện ở phía trước nó. Làm thế nào để máy tính biết liệu đây là do người chơi lựa chọn hay nó không được phép làm điều đó? Bạn có thể đưa ra một số thuật toán cho biết nếu 99,99% thời gian hoặc lớn hơn một sự kiện không xảy ra thì điều đó có nghĩa là bạn không được phép làm điều đó, nhưng cũng có thể là 99,99% thời gian được coi là một di chuyển xấu, nhưng 0,01% thời gian đó là di chuyển chiến thắng trò chơi. Vì vậy, câu trả lời của tôi là không, nó không thể học tất cả các quy tắc chỉ bằng cách phân tích các trò chơi, nhưng nó có thể học đủ để chơi một trò chơi.


1

Đây là một câu hỏi triết học. Bạn cũng có thể hỏi nếu một người có thể học chơi cờ chỉ bằng cách quan sát mọi người trong khi họ chơi cờ. Trên thực tế, về cơ bản, đây là loại câu hỏi tương tự mà Nelson Goodman hỏi trong cuốn sách lớn Sự thật, Tiểu thuyết và Dự báo : làm thế nào chúng ta có thể chuyển từ một tập hợp quan sát hữu hạn đã được đưa ra để dự đoán các quan sát trong tương lai. Các quan sát đã được thực hiện sẽ là các nước cờ được quan sát cho đến nay và các quan sát trong tương lai sẽ là tất cả các nước cờ chưa xảy ra. Các câu hỏi là, có một mối quan hệ danh nghĩa giữa các quan sát trong quá khứ và các quan sát trong tương lai (trái ngược với mối quan hệ nhân quả thuần túy giữa các sự kiện trong quá khứ và các sự kiện trong tương lai)?

Nếu chúng ta giải thích các từ nomological như bởi một đạo luật của thiên nhiên hoặc logickhông có gì bao giờ có thể xảy ra trong bất hòa luật này sau đó, chắc chắn là có mối quan hệ không như vậy, kể từ khi người đầu tiên di chuyển một lâu đài theo đường chéo, sẽ phá vỡ quy luật của thiên nhiên và vũ trụ như chúng ta biết nó sẽ sụp đổ.

Nhưng ngay cả khi, trên thực tế, do một sự tình cờ kỳ lạ của tự nhiên, mọi động thái mà bất kỳ người chơi cờ nào trên thế giới đều thực hiện kể từ bây giờ, đều hợp lệ (không ai có thể phạm sai lầm hoặc cố gắng gian lận và thậm chí mọi người không biết gì về luật cờ vua sẽ bắt đầu đẩy các quân cờ xung quanh một cách ngẫu nhiên trên bàn cờ, nhưng vô tình luôn tuân theo các quy tắc), điều đó sẽ không thuyết phục chúng ta rằng có một quy luật tự nhiên (hoặc một quy luật logic) buộc tất cả những điều này. Chúng tôi sẽ xem xét nó hoàn toàn tình cờ.

Ludwig Wittgenstein bao phủ mặt bằng tương tự trong các cuộc điều tra triết học của mình . Ông nhấn mạnh rằng bất kỳ tập hợp các quan sát là phù hợp với nhiều quy tắc tùy tiện, và thậm chí mâu thuẫn. Ví dụ, nếu tất cả các trò chơi cờ mà tôi quan sát có thể xảy ra vào buổi chiều, thì quy tắc của tôi có thể là vào buổi chiều, giám mục chỉ có thể được di chuyển theo đường chéo . Thời gian trong ngày không quan trọng với trò chơi là điều mà tôi không thể quan sát được vì tôi không quan sát các trò chơi cờ vua trong các thời điểm khác nhau trong ngày. Hoặc, tình cờ, nếu tôi chưa bao giờ quan sát một người phụ nữ chơi cờ, thì quy tắc có thể là giám mục chỉ có thể được di chuyển bởi đàn ông. Những gì có liên quan đến một quan sát và những gì không được xác định là điều kiện tiên quyết để quan sát và không thể là một phần của chính quan sát đó.

BTW: Giải pháp cho vấn đề của Wittgenstein khá giống với giải pháp của Goodman. Tôi sẽ không làm hỏng bất ngờ, mặc dù;-)

Phụ lục:

Vào thời mà Sussman là một người mới, Minsky đã từng đến với anh ta khi anh ta ngồi hack tại PDP-6.

"Anh đang làm gì vậy?", Minsky hỏi. "Tôi đang đào tạo một mạng lưới thần kinh có dây ngẫu nhiên để chơi Tic-tac-toe", Sussman trả lời. "Tại sao mạng có dây ngẫu nhiên?", Minsky hỏi. "Tôi không muốn nó có bất kỳ định kiến ​​nào về cách chơi", Sussman nói.

Minsky sau đó nhắm mắt lại. "Tại sao bạn nhắm mắt lại?" Sussman hỏi giáo viên của mình. "Vì vậy, căn phòng sẽ trống rỗng." Ngay lúc đó, Sussman đã giác ngộ.


-4

Không

Bởi vì đơn giản là học các kiểu (thông qua phương pháp từng có) không giống như "học chơi cờ một cách tối ưu".

Điều này đòi hỏi lập kế hoạch & chiến lược, rất khác biệt so với việc chỉ học các mẫu thiết lập.


1
Bạn không thực sự biết điều đó; bên cạnh đó, câu hỏi là liệu có thể (đối với máy tính, nhưng những hạn chế tương tự có lẽ cũng sẽ áp dụng cho con người) để tìm hiểu các quy tắc thực tế của cờ vua chỉ bằng cách phân tích các trò chơi ví dụ.
tdammers

1
Tôi nghĩ rằng bạn đã hiểu nhầm câu hỏi ...
maple_shaft

Sau khi làm việc (luận văn thạc sĩ) với AI (mạng lưới thần kinh), tôi khá chắc chắn rằng nó không thể. Trừ khi bạn có bằng chứng để nói khác, bạn không thể nói đơn giản là "bạn không biết điều đó"
Darknight
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.