隐马尔可夫

#第一天的概率
P = {'s': 0.4, 'r': 0.6, }

#前一天的天气条件下,今天的各种天气的概率
CP = {'ss': 0.6, 'rr': 0.7, 
		'sr': 0.4, 'rs': 0.3}
		
#不同天气下,各种行为的概率
MP = {'rw': 0.1, 'rs': 0.4, 
		'rc': 0.5, 'sw': 0.6,
		 'ss': 0.3,'sc': 0.1}

#第一天
p11 = 1 * P['s'] * MP['sw']
p12 = 1 * P['r'] * MP['rw']
print(max(p11, p12))

#第二天
p21 = max(p11 * CP['ss'] * MP['ss'], p12 * CP['rs'] * MP['ss'])
p22 = max(p11 * CP['sr'] * MP['rs'], p12 * CP['rr'] * MP['rs'])
print(max(p21, p22))

#第三天
p31 = max(p21 * CP['ss'] * MP['sc'], p22 * CP['rs'] * MP['sc'])
p32 = max(p21 * CP['sr'] * MP['rc'], p22 * CP['rr'] * MP['rc'])
print(max(p31, p32))

if p32 > p31:
    print("雨天")
    if p32 == p22 * CP['rr'] * MP['rc']:
        print("雨天")
        if p22 == p11 * CP['sr'] * MP['rs']:
            print("晴天")
        else:
            print("雨天")
    else:
        print("晴天")
        if p21 == p12 * CP['rs'] * MP['ss']:
            print("雨天")
        else:
            print("晴天")

else:
    print("晴天")
    if p31 == p21 * CP['ss'] * MP['sc']:
        print("晴天")
    else:
        print("雨天")
0.24
0.043199999999999995
0.01344

雨天
雨天
晴天
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值