商人安全过河matlab程序,商人们怎样安全过河-(附MATLAB程序完整).doc

本文介绍了一个利用MATLAB程序解决商人安全过河的问题。通过建立模型,确定状态转移律,并采用穷举法和图解法,最终得出安全渡河的方案。程序中包括状态数组生成和Dijkstra算法的实现,确保在限制条件下所有人员能安全过河。
摘要由CSDN通过智能技术生成

商人们怎样安全过河

随从们密约, 在河的任一岸, 一旦随从

的人数比商人多, 就杀人越货. 但是乘船渡河的方案由商人决定. 商人们怎样才能安全过河?

问题分析:D多步决策过程

决策~ 每一步(此岸到彼岸或彼岸到此岸)船上的人员

要求~在安全的前提下(两岸的随从数不比商人多),经有限步使全体人员过河.

建立模型

xk~第k次渡河前此岸的商人数 xk, yk=0,1,2,3;

yk~第k次渡河前此岸的随从数 k=1,2,|....

sk=(xk , yk)~过程的状态 S ~ 允许状态集合

S={(x , y)| x=0, y=0,1,2,3; x=3, y=0,1,2,3; x=y=1,2}

uk~第k次渡船上的商人数 uk, vk=0,1,2;

vk~第k次渡船上的随从数 k=1,2,.....

dk=(uk , vk)~决策 D={(u , v)| u+v=1, 2} ~允许决策集合

~状态转移律

多步决策问题 求dkD(k=1,2, n), 使skS, 并按转移律由 s1=(3,3)到达 sn+1=(0,0).

模型求解

穷举法 ~ 编程上机 S={(x , y)| x=0, y=0,1,2,3;x=3, y=0,1,2,3; x=y=1,2}

图解法

状态s=(x,y) ~ 16个格点允许状态~ 10个 点

允许决策 ~ 移动1或2格; k奇,左下移; k偶,右上移.

d1,.......,d11给出安全渡河方案

评注和思考

规格化方法,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值