附录B
MVC框架实现与 WSaiOS-ICAI 智能流程控制
B.1 MVC 在 WSaiOS-ICAI 中的工程定位
MVC(Model-View-Controller)是一种软件架构模式。
在传统 Web 系统中:
MVC 用于:
分离数据、逻辑和界面。
WSaiOS-ICAI 对 MVC 进行智能系统映射:
不是简单用于网页开发。
而是作为:
人工个体内部状态、智能流程和外部表达的工程组织结构。
对应关系:
| MVC | WSaiOS-ICAI |
|---|---|
| Model | 智能状态与资源 |
| Controller | 智能流程调度 |
| View | 认知结果表达 |
完整结构:
IndividualAI
↓
Controller
智能流程控制
↓
┌─────────┴─────────┐
↓ ↓
Model View
知识/记忆/能力 智能表达
B.2 为什么人工个体需要 MVC
人工个体不是一个简单函数。
如果全部写在一个程序:
function AI()
{
感知;
理解;
学习;
执行;
}
问题:
- 模块无法扩展;
- 能力无法独立升级;
- 状态无法管理;
- 个体无法进化。
因此:
必须分层。
WSaiOS-ICAI:
采用:
智能对象层
↓
业务调度层
↓
状态数据层
↓
表达层
B.3 Model:人工个体状态模型
Model:
负责保存人工个体内部资源。
包括:
知识状态
Knowledge
记忆状态
Memory
经验状态
Experience
能力状态
Capability
结构:
Model
├── KnowledgeModel
├── MemoryModel
├── ExperienceModel
├── LearningModel
└── CapabilityModel
B.4 Model 基础类设计
文件:
core/Model.php
代码:
<?php
abstract class Model
{
protected $db;
public function __construct($db)
{
$this->db=$db;
}
abstract public function save($data);
}
说明:
所有数据模型:
统一管理数据库。
B.5 KnowledgeModel 实现
知识模型:
负责:
知识资源管理。
文件:
models/KnowledgeModel.php
代码:
class KnowledgeModel
extends Model
{
public function save($data)
{
$sql=”
INSERT INTO ai_knowledge
(title,content)
VALUES
(?,?)
“;
}
public function search($keyword)
{
//知识查询
}
}
作用:
支持:
- 知识获取;
- 知识查询;
- 知识更新。
B.6 CapabilityModel 实现
能力:
不是静态数据。
需要保存成长状态。
代码:
class CapabilityModel
extends Model
{
public function getLevel($name)
{
}
public function upgrade($name)
{
}
}
例如:
查询:
PHP开发能力
Level 3
升级:
Level 4
B.7 Controller:人工个体智能调度器
Controller:
是 MVC 核心。
传统:
Controller 接收用户请求。
WSaiOS-ICAI:
Controller:
接收:
问题。
然后:
调度:
智能流程。
流程:
输入问题
↓
Controller
↓
感知对象
↓
认知对象
↓
能力对象
↓
行为对象
B.8 AIController设计
文件:
controllers/AIController.php
代码:
class AIController
{
protected $ai;
public function solve($problem)
{
return
$this->ai
->think(
$problem
);
}
}
作用:
作为:
人工个体入口。
B.9 Controller 与 Kernel关系
WSaiOS-ICAI:
增加:
Kernel层。
关系:
Controller
↓
Kernel
↓
AI Objects
Controller:
负责请求。
Kernel:
负责智能调度。
B.10 Kernel智能流程控制
Kernel:
相当于:
人工个体运行中枢。
代码:
class Kernel
{
protected $components=[];
public function run($input)
{
$perception =
$this->components[‘perception’]
->process($input);
$cognition =
$this->components[‘cognition’]
->process(
$perception
);
$solution =
$this->components[‘capability’]
->apply(
$cognition
);
return $solution;
}
}
B.11 View:人工个体表达系统
View:
负责:
把内部状态表达出来。
例如:
内部:
Capability Level 3
Knowledge 5000
Experience 200
View:
显示:
当前能力:
系统开发 Level 3
已有知识:
5000条
经验:
200次
B.12 Smarty View封装
文件:
core/View.php
代码:
class View
{
protected $smarty;
public function render(
$template,
$data
)
{
$this->smarty
->assign(
$data
);
$this->smarty
->display(
$template
);
}
}
B.13 完整 MVC 运行流程
用户提出:
如何设计一个电商系统?
运行:
Request
↓
AIController
↓
Kernel
↓
Perception
↓
Cognition
↓
KnowledgeModel
↓
CapabilityModel
↓
Behavior
↓
ExperienceModel
↓
Smarty View
↓
Result
B.14 MVC 与人的思维过程对应
这是 WSaiOS-ICAI 的核心映射。
人的思考:
接受信息
↓
理解
↓
调用经验
↓
形成方案
↓
表达
MVC:
Controller
↓
Model
↓
Capability
↓
View
软件结构:
模拟:
人的问题处理流程。
B.15 MVC扩展能力
未来增加:
新能力。
例如:
增加:
视觉能力。
新增:
VisionModel
VisionController
VisionView
核心:
Kernel不改变。
符合:
对象化扩展原则。
B.16 本附录总结
WSaiOS-ICAI 中:
MVC 不只是 Web 框架。
而是:
人工个体智能流程的软件组织方式。
最终结构:
Controller
智能调度
↓
Model
智能资源
↓
Object
智能能力
↓
View
智能表达
完成:
人工个体智能工程 MVC 映射。
下一部分:
附录C
Smarty模板开发与人工个体智能表达系统
重点:
- Smarty基础;
- 模板继承;
- 智能状态页面;
- 认知结果展示;
- 学习状态展示;
- 能力成长仪表盘;
- WSaiOS-ICAI Console实现。