Goal 代理程序的实证研究
1. 研究方法
为了对 Goal 代理程序进行研究,我们邀请了三位程序员为动态积木世界编写 Goal 代理程序,分别命名为 A、B 和 C。编写程序 A 的程序员对 Goal 的经验最少,而编写程序 C 的程序员经验最多,不过他们都对积木世界领域有一定了解。
程序员们以给定的动作规范和感知规则为起点进行编程,并且代理只能有一个目标配置要实现。同时,他们还获得了一组测试用例来测试程序的功能。程序提交后不再进行修改。
我们对这些程序进行了三种分析:
1. 代码分析 :使用定量指标(如动作规则数量)和定性分析详细研究代码。
2. 可读性实验 :邀请六位对 Goal 语言有一定了解但经验不丰富的测试对象查看代码并评价其可读性。在提供代码前,去除了所有注释,但保留了空格。
3. 有限测试 :对程序进行有限测试,以获取执行动作序列的定量指标。
2. 定量分析
2.1 代码分析
我们对 Goal 程序的各部分(除动作规范和感知规则部分,因为它们是所有程序的起点且基本相同)提供了数值度量,结果如下表所示:
| 数值度量 | A | B | C |
| — | — | — | — |
| 知识库子句数 | 16 | 4 | 8 |
| 知识库中定义的 Prolog 谓词数 | 11 | 2 | 3 |
| (初始)信念库子句数 | 0 | 0 | 1 |
| (初始)目标库目标数 | 0 | 1 |
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



