Có hai giả thuyết cạnh tranh H1,H2 với xác suất tiên nghiệm ban đầu P(H1),P(H2) (P(H1)+P(H2)=1). Ta quan sát tuần tự m bằng chứng O1,…,Om, được giả định độc lập có điều kiện khi biết mỗi giả thuyết. Với bằng chứng Ok, biết trước P(Ok∣H1) và P(Ok∣H2).
Sau khi quan sát O1, cập nhật xác suất hậu nghiệm bằng công thức Bayes, rồi dùng hậu nghiệm đó làm tiên nghiệm để cập nhật tiếp với O2, cứ thế đến Om (cập nhật Bayes tuần tự). Cụ thể, nếu (q1,q2) là cặp xác suất tiên nghiệm trước khi xét Ok, thì sau khi xét Ok: q1′=q1P(Ok∣H1)+q2P(Ok∣H2)q1P(Ok∣H1),q2′=1−q1′
Với mỗi k=1,…,m, in ra P(H1∣O1,…,Ok) ngay sau khi cập nhật xong bằng chứng thứ k.
Ví dụ: P(H1)=P(H2)=0.5, m=1, P(O1∣H1)=0.8, P(O1∣H2)=0.2. Kết quả: P(H1∣O1)=0.5×0.8/(0.5×0.8+0.5×0.2)=0.8.
Dòng 1: hai số thực P(H1),P(H2). Dòng 2: số nguyên m (m≥0). m dòng tiếp theo, mỗi dòng gồm hai số thực P(Ok∣H1),P(Ok∣H2) (theo thứ tự k=1,…,m).
In ra m dòng (nếu m=0 thì không in dòng nào). Dòng thứ k là P(H1∣O1,…,Ok), làm tròn 6 chữ số thập phân. Nếu tại bước k mẫu số Bayes bằng 0 (không giả thuyết nào phù hợp với bằng chứng), in "undefined" ở dòng đó và xem như cặp hậu nghiệm tại bước đó là (0,0) cho các bước sau (nếu mẫu số tiếp tục bằng 0, các dòng sau cũng in "undefined").
Ví dụ:
Đầu vào:
0.5 0.5
0
Đầu ra:
Đầu vào:
0.5 0.5
1
0.8 0.2
Đầu ra:
0.800000
Đang tải editor...