分布式系统课程设计
题 目 | 积木世界问题动态规划 |
学 院 | 计算机科学与技术学院 |
专 业 | 软件工程 |
学 号 | 1506210341国内旅游攻略 |
姓 名 | 白猛猛 |
| |
1设计目的
研究智能规划及程序的自动编程技术,解决积木世界问题。
2设计要求
1)输入积木的当前状态和目标状态,系统能够自动生成一个规划,使当前状态变为目标状态,并将该动作序列输出。
2)有良好的交互界面,可以显示程序的运行及其算法的运算过程。
3)机械臂只有一个,积木有多个。
4)选择有效的规划算法实现机械臂的自动规划功能。
3冠服算法设计
3.1问题描述
积木世界问题如图1所示,其中,初始状态到目标状态是通过一个一次性只能抓取一个积木块放到某处的机械手臂的一系列动作实现。设计的系统需能在输入当前状态和目标状态后,自动生成机械手臂抓取的动作序列。
(1)当前状态 (2)目标状态
图1
3.2问题的形式化表示
学习方法初中
积木问题的形式化采用STRIPS形式表示
状态用公式化描述为:
● onTable(x)表示x在桌面上;
● on(x,y)表示x积木块在y积木块上;
● clear(x)表示x上面没有积木块;
● holding(x)表示机械手臂拿着x积木。
动作用公式化描述为:
● putdown(x)常州美食表示当前状态有holding(x)时,删除holding(x),增加gta5赚钱clear(x)、onTable(x)和armempty;
● Pickup(x)表示当前状态有clear(x)、onTable(x)和armempty时,删除科学名人onTable(x)和armempty,增加holding(x)状态。
● 谄媚怎么读拼音stack(x,y)表示当前状态中有clear(x)和holding(y)时,删除clear(x)和 holding(y),增加armempty和on(x,y)家庭晚餐状态;
● unstack(x,y)表示当前状态中有armempty,on(x,y)和clear(x),删除armempty和on(x,y),增加holding(x)和claer(y)状态。