2017-09-15 20 views
5

Tôi đã nhận được câu hỏi sau đây gần đây,Thuật toán cho số tiền được mong đợi tối ưu trong trò chơi lợi nhuận/thua lỗ

"Bạn có một ô có đồng tiền màu xanh lá cây G và B. +1 và xanh dương mất -1. Nếu bạn chơi tối ưu lợi nhuận dự kiến ​​là gì. " Tôi đã nghĩ đến việc sử dụng thuật toán bạo lực, tôi xem xét tất cả các khả năng kết hợp đồng tiền xanh và xanh nhưng tôi chắc chắn phải có giải pháp tốt hơn cho điều này (phạm vi của B và G là từ 0 đến 5000) . Ngoài ra những gì chơi có ý nghĩa tối ưu? Nó có nghĩa là nếu tôi chọn tất cả tiền xu màu xanh thì tôi sẽ tiếp tục chơi cho đến khi tất cả tiền xu màu xanh lá cây cũng được chọn? Nếu vậy thì điều này có nghĩa là tôi không nên xem xét tất cả các khả năng của đồng tiền màu xanh lá cây và màu xanh?

+2

Tôi nghĩ rằng chơi tối ưu có nghĩa là bạn chọn khi nào nên dừng chọn tiền xu. –

+1

Các hướng dẫn nhất định chỉ cần nói để chọn một đồng xu ngẫu nhiên (số ít). Người chơi không có lựa chọn ở đây, do đó không có chiến lược. Bạn chọn một đồng xu, và kết quả mong đợi của bạn là (G-B)/(G + B). Rõ ràng, đây không phải là những gì bạn dự định, vì vậy hãy xây dựng. – Prune

+0

Câu hỏi đặt ra là mong đợi lợi nhuận từ trò chơi như vậy, do đó chúng tôi không chỉ xem xét chọn một đồng xu đơn lẻ mà còn tất cả các khả năng, vì người chơi có thể thực hiện nhiều lựa chọn và dừng lại khi muốn. – user2980096

Trả lời

3

Câu trả lời "hiển nhiên" là phát bất cứ khi nào có nhiều đồng tiền xanh hơn đồng tiền màu xanh lam. Trong thực tế, điều này là sai. Ví dụ, nếu có 999 đồng tiền màu xanh lá cây và 1000 tiền xu màu xanh, đây là một chiến lược mà phải mất một lợi nhuận dự kiến:

Take 2 coins 
If GG -- stop with a profit of 2 
if BG or GB -- stop with a profit of 0 
if BB -- take all the remaining coins for a profit of -1 

Kể từ khi các khả năng đầu tiên và cuối cùng cả hai xảy ra với gần 25% xác suất, kỳ vọng tổng thể của bạn là xấp xỉ 0,25 * 2 - 0.25 * 1 = 0.25

Đây chỉ là một chiến lược đơn giản trong một ví dụ cực đoan cho thấy vấn đề không đơn giản như lần đầu tiên.

Nói chung, sự mong đợi với g đồng tiền màu xanh lá cây và màu xanh b đồng tiền được đưa ra bởi một mối quan hệ tái phát:

E(g, 0) = g 
E(0, b) = 0 
E(g, b) = max(0, g(E(g-1, b) + 1)/(b+g) + b(E(g, b-1) - 1)/(b+g)) 

Các max ở hàng thức xảy ra bởi vì nếu nó -EV để chơi, sau đó bạn dừng lại tốt hơn.

Các mối quan hệ lặp lại này có thể được giải quyết bằng cách sử dụng lập trình động trong thời gian O (gb).

from fractions import Fraction as F 

def gb(G, B): 
    E = [[F(0, 1)] * (B+1) for _ in xrange(G+1)] 
    for g in xrange(G+1): 
     E[g][0] = F(g, 1) 
    for b in xrange(1, B+1): 
     for g in xrange(1, G+1): 
      E[g][b] = max(0, (g * (E[g-1][b]+1) + b * (E[g][b-1]-1)) * F(1, (b+g))) 
    for row in E: 
     for v in row: 
      print '%5.2f' % v, 
     print 
    print 
    return E[G][B] 

print gb(8, 10) 

Output:

0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 
1.00 0.50 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 
2.00 1.33 0.67 0.20 0.00 0.00 0.00 0.00 0.00 0.00 0.00 
3.00 2.25 1.50 0.85 0.34 0.00 0.00 0.00 0.00 0.00 0.00 
4.00 3.20 2.40 1.66 1.00 0.44 0.07 0.00 0.00 0.00 0.00 
5.00 4.17 3.33 2.54 1.79 1.12 0.55 0.15 0.00 0.00 0.00 
6.00 5.14 4.29 3.45 2.66 1.91 1.23 0.66 0.23 0.00 0.00 
7.00 6.12 5.25 4.39 3.56 2.76 2.01 1.34 0.75 0.30 0.00 
8.00 7.11 6.22 5.35 4.49 3.66 2.86 2.11 1.43 0.84 0.36 

7793/21879 

Từ đây bạn có thể thấy rằng sự kỳ vọng là tích cực để chơi với 8 màu xanh lá cây và 10 đồng tiền xanh (EV = 7793/21879 ~ = 0,36), và thậm chí bạn có kỳ vọng tích cực với 2 đồng tiền xanh và 3 xanh dương (EV = 0.2)

0

Câu trả lời này sai; xem câu trả lời của Paul Hankin đối với các mẫu đối kháng và phân tích thích hợp. Tôi để lại câu trả lời ở đây như là một ví dụ học tập cho tất cả chúng ta.


Giả sử lựa chọn của bạn chỉ khi dừng chọn xu, bạn tiếp tục miễn là G> B. Phần đó rất đơn giản. Nếu bạn bắt đầu với G < B, sau đó bạn không bao giờ bắt đầu vẽ, và đạt được của bạn là 0. Đối với G = B, không có chiến lược sẽ giúp bạn có được một lợi thế toán học; mức tăng còn 0.

là Đối với phần thưởng dự kiến, thực hiện việc này theo hai bước:

(1) giá trị dự kiến ​​trên bất kỳ trình tự bốc thăm. Làm điều này đệ quy, tìm cơ hội nhận được màu xanh lá cây hoặc màu xanh trên bản vẽ đầu tiên, và sau đó các giá trị dự kiến ​​cho trạng thái mới (G-1, B) hoặc (G, B-1). Bạn sẽ nhanh chóng thấy rằng giá trị kỳ vọng của bất kỳ số tiền được rút nào số (chẳng hạn như tất cả các khả năng cho lần rút thứ 3) giống như bản gốc.

Do đó, giá trị kỳ vọng của bạn trên bất kỳ hình vẽ nàoe = (G-B)/(G + B). Giá trị dự kiến ​​tổng thể của bạn là e * d, trong đó d là số lần vẽ bạn chọn.

(2) Số lần rút thăm dự kiến ​​là bao nhiêu? Bao nhiêu lần bạn mong đợi để vẽ trước khi G = B? Tôi sẽ để đây như là một bài tập cho học sinh, nhưng lưu ý ý tưởng trước đây về việc thực hiện điều này một cách đệ quy. Bạn có thể thấy mô tả trạng thái của trò chơi dễ dàng hơn (bổ sung, tổng cộng), trong đó thêm = G-Btổng = G + B.

Bài tập minh họa: cho G = 4, B = 2, cơ hội mà bạn sẽ vẽ GG trên hai bản vẽ đầu tiên (và sau đó dừng trò chơi) là gì? Lợi ích từ đó là gì? Làm thế nào để so sánh với lợi thế (4-2)/(4 + 2) trên mỗi trận hòa?

+0

Cảm ơn bạn đã giải thích. Bạn có thể vui lòng xây dựng một chút về cách giá trị xpected là giống nhau cho bất kỳ số lượng nhất định. Ví dụ trong ví dụ G = 4 và B = 2, cơ hội vẽ GG là 4/6 x 3/5 không giống như (4-2/​​4 + 2). Tôi nghĩ rằng tôi đang hiểu nhầm điều gì đó ở đây .. – user2980096

+0

Tôi nghĩ rằng bạn đã tạo ra một lỗi đăng nhập (hoặc tôi không hiểu nhận xét của bạn về ev của bất kỳ trận hòa nào là (GB)/(G + B). -B)/(G + B-1)! = (G- (B-1))/(G + B-1) –

+0

Ngoài ra, câu trả lời này là sai - có thể chơi đúng khi G

0

Câu trả lời đơn giản và trực quan:

bạn nên bắt đầu với ước tính tổng số tiền màu xanh và màu xanh lục. Sau mỗi lần chọn, bạn sẽ cập nhật ước tính này. Nếu bạn ước tính có nhiều đồng tiền màu xanh hơn đồng tiền màu xanh lá cây tại bất kỳ điểm nào bạn nên dừng lại.

Ví dụ:

bạn bắt đầu và bạn chọn đồng xu. Màu xanh lá cây của nó, do đó bạn ước tính 100% của các đồng tiền có màu xanh lá cây. Bạn chọn một màu xanh để bạn ước tính 50% tiền xu có màu xanh lá cây. Bạn chọn một đồng tiền màu xanh khác để bạn ước tính 33% tiền xu có màu xanh lục. Tại thời điểm này không phải là giá trị chơi nữa, theo ước tính của bạn, vì vậy bạn dừng lại.

+0

Điều này là sai - nó có thể đúng khi chơi khi G

Các vấn đề liên quan