第三篇
核心认知系统工程实现
第7章
感知系统 Perception Engine
7.1 感知系统概述
在 WSaiOS-ICAI 人工个体智能体系中:
感知系统是整个智能循环的起点。
它承担人工个体与外部世界之间的信息连接作用。
人的智能活动:
首先不是思考,而是:
获取外部世界信息。
例如:
人面对一个问题:
发现问题
↓
观察现象
↓
收集信息
↓
形成问题对象
↓
进入理解阶段
人工个体同样如此。
因此:
WSaiOS-ICAI 定义:
感知系统是人工个体获取外部元素,并将其转换为内部可认知对象的基础能力系统。
7.2 感知 = 获取
7.2.1 感知的核心定义
传统程序:
输入
↓
处理
↓
输出
输入只是数据。
人工个体:
外部世界
↓
信息获取
↓
元素识别
↓
对象建立
↓
认知输入
因此:
感知不是简单读取数据。
感知包含三个过程:
第一:
发现元素。
例如:
发现:
用户
设备
任务
问题
第二:
获取属性。
例如:
设备:
名称
状态
功能
环境
第三:
形成对象。
例如:
形成:
DeviceObject
供认知系统理解。
7.3 感知系统在 EOM 理论中的位置
按照:
元素—对象—方法(EOM)
模型:
感知负责:
元素 Element
↓
对象 Object
完整过程:
外部世界
↓
元素
↓
感知系统
↓
对象
↓
认知系统
↓
方法调用
↓
能力形成
例如:
外部:
服务器异常
感知:
发现:
Problem Element
转换:
ProblemObject
进入:
CognitionObject。
7.4 感知系统总体架构
WSaiOS-ICAI 感知引擎:
Perception Engine
|
┌───────────┼───────────┐
↓ ↓ ↓
Input Parser Sensor
输入层 解析层 获取层
三个核心对象:
Input 输入对象
负责:
接收外部信息。
Parser 解析对象
负责:
将原始信息转换为结构化元素。
Sensor 感知对象
负责:
获取外部状态。
7.5 感知模块工程目录设计
PHP OOP 模块:
modules/
└── perception/
├── Input.php
├── Parser.php
├── Sensor.php
├── PerceptionEngine.php
└── ObjectBuilder.php
结构:
PerceptionEngine
↓
Input
↓
Parser
↓
ObjectBuilder
↓
Perception Object
7.6 Input 输入对象设计
7.6.1 Input 职责
Input 是感知系统入口。
负责:
- 接收信息;
- 保存原始输入;
- 创建感知任务。
例如:
用户输入:
网站访问速度很慢,如何优化?
Input 接收:
class Input
{
protected $data;
public function receive($data)
{
$this->data=$data;
}
public function getData()
{
return $this->data;
}
}
Input 不负责理解。
它只负责:
获取。
7.7 Parser 解析对象设计
7.7.1 Parser 职责
Parser 将:
原始输入:
网站访问速度很慢
转换为:
结构化元素:
对象:
Website
状态:
Slow
问题:
Performance
代码:
class Parser
{
public function parse($data)
{
return [
‘type’=>’problem’,
‘content’=>$data
];
}
}
Parser 输出:
不是答案。
而是:
可供认知系统理解的对象结构。
7.8 Sensor 感知对象设计
7.8.1 Sensor 职责
Sensor 模拟人工个体感知器官。
例如:
人:
- 视觉;
- 听觉;
- 触觉。
人工个体:
- 数据接口;
- 文件接口;
- 网络接口;
- 系统状态接口。
代码:
class Sensor
{
public function collect()
{
return [];
}
}
Sensor 获取:
环境状态
系统状态
外部数据
7.9 PerceptionEngine 核心调度
感知引擎:
class PerceptionEngine
{
protected $input;
protected $parser;
public function perceive($data)
{
$this->input
->receive($data);
$element =
$this->parser
->parse(
$this->input->getData()
);
return $element;
}
}
运行:
外部输入
↓
Input
↓
Parser
↓
元素结构
↓
认知系统
7.10 感知系统与认知系统接口
感知输出:
不是知识。
不是答案。
而是:
对象元素
例如:
输出:
[
‘type’=>’problem’,
‘name’=>’website’,
‘state’=>’slow’
]
交给:
CognitionEngine。
接口关系:
PerceptionEngine
↓
ProblemObject
↓
CognitionEngine
7.11 感知系统设计原则
原则一:
感知与认知分离。
感知:
获取。
认知:
理解。
原则二:
感知不产生决策。
决策属于能力系统。
原则三:
所有外部信息必须对象化。
因为:
对象才能进入:
认知、知识、能力系统。
7.12 本章总结
WSaiOS-ICAI 感知系统完成:
外部世界
↓
元素获取
↓
对象建立
↓
进入认知
感知系统核心:
将不可理解的外部信息转换为人工个体可以理解的对象。
工程实现:
Input
+
Parser
+
Sensor
+
ObjectBuilder
=
Perception Engine
下一章:
第8章 认知系统 Cognition Engine
重点:
- 认知 = 理解;
- 对象理解模型;
- 属性、关系、意义建立;
- CognitionObject 工程设计;
- Analyzer、Relation、Understanding PHP OOP 实现。