第二篇
WSaiOS-ICAI 系统工程架构
第4章
面向对象思想模拟人工个体
4.1 从软件对象到智能对象
面向对象编程(Object-Oriented Programming,OOP)的核心思想:
将现实世界中的事物抽象为软件对象,通过对象属性和对象方法描述其状态与行为。
传统软件工程中:
一个对象:
对象 Object
=
属性 Attribute
+
方法 Method
例如:
汽车对象:
Car Object
属性:
品牌
速度
状态
方法:
启动()
加速()
停止()
WSaiOS-ICAI 将这一思想进一步扩展:
如果现实事物可以被对象化,那么人工个体的智能能力同样可以被对象化。
因此:
人工个体智能系统不是一个不可分割的黑箱,而是由多个智能对象组合形成。
4.2 人工个体智能对象模型
自然人的能力不是单一结构。
一个人解决问题时:
需要:
- 感知信息;
- 理解问题;
- 调用知识;
- 运用能力;
- 执行动作;
- 总结经验;
- 学习提升。
因此,人工个体可以抽象为:
IndividualAI
人工个体智能对象
|
|
┌─────┴─────┐
↓ ↓
Perception Cognition
感知对象 认知对象
Knowledge Capability
知识对象 能力对象
Behavior Learning
行为对象 学习对象
Memory
记忆对象
这些对象共同组成:
一个具有认知和成长能力的人工个体。
4.3 元素—对象—方法(EOM)与 OOP 关系
WSaiOS-ICAI 的底层建模理论:
Element(元素)
是世界中的基本信息单元。
例如:
人
设备
任务
问题
知识
经验
Object(对象)
元素经过结构化后形成智能对象。
例如:
元素:
设备
转换为:
DeviceObject
包含:
属性:
型号
状态
功能
关系:
属于系统
服务用户
方法:
检测()
运行()
维护()
Method(方法)
对象能够执行的行为。
例如:
知识对象:
KnowledgeObject
方法:
查询()
匹配()
更新()
最终:
元素
↓
对象
↓
方法
↓
能力
↓
行为
4.4 为什么人工个体必须采用对象化设计
4.4.1 智能系统具有复杂性
人工个体包含:
感知
认知
知识
能力
行为
学习
记忆
经验
如果采用单程序结构:
AI程序
{
所有功能
}
随着系统发展:
- 难以维护;
- 难以扩展;
- 难以理解。
对象化后:
PerceptionObject
负责感知
CognitionObject
负责理解
CapabilityObject
负责解决问题
LearningObject
负责学习
每个对象拥有明确职责。
4.4.2 智能能力可以独立成长
例如:
学习能力提升:
不需要修改整个系统。
只需要:
LearningObject
↓
更新学习方法
知识增加:
KnowledgeObject
↓
增加知识资源
能力增强:
CapabilityObject
↓
增加解决方法
这符合人工个体成长特点。
4.5 IndividualAI 核心对象设计
WSaiOS-ICAI 顶层对象:
IndividualAI
代表:
一个完整人工个体。
4.5.1 IndividualAI 属性设计
class IndividualAI
{
protected $perception;
protected $cognition;
protected $knowledge;
protected $capability;
protected $behavior;
protected $learning;
protected $memory;
}
对应:
| 属性 | 智能功能 |
|---|---|
| perception | 感知 |
| cognition | 认知 |
| knowledge | 知识 |
| capability | 能力 |
| behavior | 行为 |
| learning | 学习 |
| memory | 记忆 |
4.5.2 IndividualAI 方法设计
人工个体主要方法:
class IndividualAI
{
public function perceive()
{
}
public function understand()
{
}
public function solve()
{
}
public function act()
{
}
public function learn()
{
}
}
对应智能流程:
输入问题
↓
perceive()
感知
↓
understand()
认知
↓
solve()
能力解决
↓
act()
行为执行
↓
learn()
学习提升
4.6 智能对象之间的组合关系
WSaiOS-ICAI 不采用简单功能堆叠。
采用:
智能对象组合模型。
关系:
IndividualAI
|
|
+– PerceptionObject
|
+– CognitionObject
|
+– KnowledgeObject
|
+– CapabilityObject
|
+– BehaviorObject
|
+– LearningObject
|
+– MemoryObject
执行流程:
例如解决一个技术问题:
ProblemObject
↓
PerceptionObject
获取问题
↓
CognitionObject
理解问题
↓
KnowledgeObject
查询知识
↓
CapabilityObject
形成方案
↓
BehaviorObject
执行方案
↓
MemoryObject
保存经验
↓
LearningObject
提升能力
4.7 对象化智能系统的工程优势
1. 可扩展
增加能力:
增加对象即可。
例如:
增加语言能力:
LanguageCapabilityObject
增加视觉能力:
VisionPerceptionObject
2. 可维护
每个对象负责独立功能。
3. 可复用
知识对象:
可以服务多个能力对象。
4. 可进化
对象内部可以不断优化。
4.8 本章总结
WSaiOS-ICAI 采用面向对象思想,将人工个体智能系统重新定义为:
人工个体
=
多个智能对象组合
+
对象关系
+
对象方法
+
能力循环
核心思想:
智能系统不是一个不可解释的黑箱,而是可以通过软件对象进行结构化建模、组合和扩展的人工个体系统。
下一章进入:
第5章 MVC 架构设计
重点:
- MVC 与人工个体模拟关系;
- Model、Controller、View 在智能系统中的角色;
- WSaiOS-ICAI MVC 调度流程;
- PHP MVC 工程实现基础。