第15章 个体边界
一、个体内部
**个体内部(Individual Internal)**是指在个体边界所确定的范围内,直接属于该个体结构、组成和运行体系的对象、属性、状态、知识、能力、方法、行为以及其他结构。
第11章已经将个体定义为一种具有内部结构的独立存在对象。因此,个体不能只表示一个身份编号,而必须具有内部组成。
可以表示为:
Internal(I)={O,A,S,R,K,M,E,G,C,Md,B,H}internalInternal(I)=\{O,A,S,R,K,M,E,G,C,Md,B,H\}_{internal}
其中:
- OO:内部对象;
- AA:内部属性;
- SS:内部状态;
- RR:内部关系;
- KK:内部知识;
- MM:内部记忆;
- EE:内部经验;
- GG:内部目标;
- CC:内部能力;
- MdMd:内部方法;
- BB:内部行为;
- HH:内部历史。
例如,一个工厂个体:
工厂A
├── 车间
├── 生产线
├── 工作站
├── 工业设备
├── 机器人
├── 产品
├── 生产数据
├── 运行状态
├── 生产知识
└── 生产历史
这些结构属于工厂个体的内部组成。
因此:
Object∈Internal(I)Object\in Internal(I)
表示某个对象属于个体内部。
但是,内部对象之间仍然可能存在不同层次:
I→O1→O2→O3I\rightarrow O_1\rightarrow O_2\rightarrow O_3
例如:
Factory→Workshop→ProductionLine→DeviceFactory\rightarrow Workshop\rightarrow ProductionLine\rightarrow Device
这说明个体边界内部可以继续形成层级结构。
个体内部并不是简单的数据集合,而是:
InternalStructure=Objects+Attributes+States+Relations+Knowledge+Capabilities+BehaviorsInternalStructure= Objects+Attributes+States+Relations+Knowledge+Capabilities+Behaviors
内部结构决定了个体“自身具有什么”。
二、个体外部
**个体外部(Individual External)**是指不属于个体内部结构,但存在于个体边界之外,并可能与该个体发生关系、交互、影响或者被该个体影响的对象和环境。
可以表示为:
External(I)=World−Internal(I)External(I)=World-Internal(I)
例如一个企业个体:
企业A
│
├── 内部
│ ├── 员工
│ ├── 产品
│ ├── 部门
│ └── 设备
│
└── 外部
├── 客户
├── 供应商
├── 竞争企业
├── 政府机构
└── 市场环境
外部对象虽然不属于企业内部,但可以与企业建立关系:
R(Enterprise,Customer)R(Enterprise,Customer) R(Enterprise,Supplier)R(Enterprise,Supplier)
因此:
ExternalObject≠InternalObjectExternalObject\neq InternalObject
但是:
ExternalObject∈Relation(I)ExternalObject\in Relation(I)
这一区分非常重要。
如果没有外部边界,机器系统就无法判断:
什么是自己
什么是环境
什么是内部状态
什么是外部事件
什么是自身行为
什么是外部行为
因此,个体边界建立:
Self↔EnvironmentSelf\leftrightarrow Environment
的基本计算关系。
三、环境边界
**环境(Environment)**是个体之外,与个体存在空间、结构、信息、资源、状态、行为或者因果关系的对象集合。
个体与环境可以表示为:
Individual⊂WorldIndividual\subset World
同时:
Environment=World−IndividualBoundaryEnvironment=World-IndividualBoundary
因此:
世界
│
├── 个体内部
│
└── 个体外部
└── 环境
环境并不是简单的“外面所有东西”。
对于不同个体,同一个对象可能具有不同的环境意义。
例如:
机器人A
↓
工作站B
工作站B可能属于机器人A的外部环境。
而对于工厂个体:
工厂
↓
工作站
工作站可能属于工厂内部。
因此:
Boundary(I1)≠Boundary(I2)Boundary(I_1)\neq Boundary(I_2)
同一个对象在不同个体模型中的内部/外部归属可能不同。
环境还具有动态性:
Et→Et+1E_t\rightarrow E_{t+1}
环境变化可能影响个体状态:
EnvironmentChange→IndividualStateChangeEnvironmentChange \rightarrow IndividualStateChange
也可能触发个体行为:
EnvironmentEvent→Cognition→Decision→BehaviorEnvironmentEvent \rightarrow Cognition \rightarrow Decision \rightarrow Behavior
因此,个体边界并不是把个体与世界完全隔离,而是建立一个明确的:
Individual↔EnvironmentIndividual\leftrightarrow Environment
交互边界。
四、数据边界
**数据边界(Data Boundary)**是指机器个体能够读取、使用、修改、保存和管理的数据范围。
并不是所有系统中的数据都属于一个机器个体。
可以定义:
Data(I)=Dinternal+DexternalData(I)=D_{internal}+D_{external}
其中:
- DinternalD_{internal}:属于个体的数据;
- DexternalD_{external}:个体外部数据。
内部数据可以包括:
身份数据
属性数据
状态数据
关系数据
知识数据
记忆数据
经验数据
目标数据
能力数据
方法数据
行为数据
历史数据
外部数据则可能来自:
环境
其他个体
外部系统
传感器
业务系统
互联网
数据库
设备
因此:
ReadableData≠OwnDataReadableData\neq OwnData
一个机器个体可以读取外部数据,但外部数据并不因此自动成为该个体内部数据。
例如:
ExternalData→Read→AnalysisExternalData \rightarrow Read \rightarrow Analysis
并不必然意味着:
ExternalData→InternalDataExternalData\rightarrow InternalData
只有经过明确的接收、验证、归属和存储规则之后,外部数据才可能进入个体知识、记忆或者经验结构。
因此,数据边界决定:
机器个体能够接触什么数据,以及什么数据可以成为个体自身的数据。
五、能力边界
**能力边界(Capability Boundary)**是指个体在自身知识、经验、状态、方法、资源和规则条件下能够实际完成的任务、操作或者行为范围。
个体不是无限能力对象。
可以定义:
AvailableCapability(I)=f(C,K,E,S,Md,Resource,Rule)AvailableCapability(I) = f(C,K,E,S,Md,Resource,Rule)
其中:
- CC:基础能力;
- KK:知识;
- EE:经验;
- SS:状态;
- MdMd:方法;
- ResourceResource:可用资源;
- RuleRule:规则约束。
因此:
AvailableCapability⊆PotentialCapabilityAvailableCapability\subseteq PotentialCapability
例如某机器人理论上具有:
移动
抓取
运输
定位
但是当前状态为故障:
S=FaultS=Fault
则:
AvailableCapability⊂PotentialCapabilityAvailableCapability\subset PotentialCapability
可能只能执行:
停止
报警
状态报告
因此,能力边界是动态的:
Ct→Ct+1C_t\rightarrow C_{t+1}
个体不能因为“类型上具有某项能力”,就认为当前一定能够执行该能力。
所以:
TypeCapability≠AvailableCapabilityTypeCapability\neq AvailableCapability
能力边界直接影响决策:
Goal→CapabilityCheck→MethodCheck→DecisionGoal \rightarrow CapabilityCheck \rightarrow MethodCheck \rightarrow Decision
如果目标超出能力边界:
Goal∉AvailableCapabilityGoal\notin AvailableCapability
则系统不能直接执行,应当进入:
能力不足
↓
替代方法
↓
请求外部能力
↓
等待条件变化
↓
调整目标
这使能力边界成为个体决策的重要约束。
六、行为边界
**行为边界(Behavior Boundary)**是指个体在目标、能力、状态、方法、规则和环境条件允许的范围内能够产生的行为集合。
行为可以表示为:
B=f(G,C,Md,S,Condition)B=f(G,C,Md,S,Condition)
因此:
BehaviorBoundary=Goal+Capability+Method+State+Rule+ConditionBehaviorBoundary= Goal+Capability+Method+State+Rule+Condition
一个个体并不是可以任意产生所有行为。
例如:
机器人
├── 允许:移动
├── 允许:抓取
├── 允许:运输
├── 条件允许:高速移动
└── 禁止:超负载操作
行为边界可以由规则明确规定:
IF ConditionTHEN Allow(B)IF\ Condition THEN\ Allow(B)
或者:
IF Risk>ThresholdTHEN Block(B)IF\ Risk>Threshold THEN\ Block(B)
因此:
Behavior∈AllowedBehaviorBehavior\in AllowedBehavior
才能进入执行阶段。
行为边界还与个体当前状态相关:
St→AllowedBehaviortS_t\rightarrow AllowedBehavior_t
例如设备正常时:
Running→OperationRunning\rightarrow Operation
设备故障时:
Fault→StopFault\rightarrow Stop
因此:
AllowedBehaviort≠AllowedBehaviort+1AllowedBehavior_t\neq AllowedBehavior_{t+1}
行为边界是机器个体实现安全、可控和可验证运行的重要基础。
七、保护边界
**保护边界(Protection Boundary)**是指机器个体需要保护的自身结构、数据、状态、能力、资源、关系和运行过程的范围。
保护边界可以定义为:
ProtectionBoundary(I)=ProtectedObjects+ProtectedData+ProtectedState+ProtectedCapability+ProtectedRuntimeProtectionBoundary(I) = ProtectedObjects+ ProtectedData+ ProtectedState+ ProtectedCapability+ ProtectedRuntime
其中可以包括:
身份保护
数据保护
知识保护
记忆保护
状态保护
能力保护
关系保护
结构保护
资源保护
行为保护
Runtime保护
保护机制首先需要明确:
什么属于需要保护的对象。
因此:
Boundary→ProtectionBoundary\rightarrow Protection
例如:
Identity∈ProtectionBoundaryIdentity\in ProtectionBoundary
则身份不能被任意修改。
如果:
Knowledge∈ProtectionBoundaryKnowledge\in ProtectionBoundary
则知识更新必须经过验证。
如果:
Runtime∈ProtectionBoundaryRuntime\in ProtectionBoundary
则异常运行可能触发停止、隔离或者恢复机制。
保护过程可以表示为:
个体运行
↓
边界检测
↓
风险检测
↓
保护判断
↓
保护执行
↓
验证
↓
继续运行
因此:
Protection=f(Risk,Boundary,Rule,State)Protection=f(Risk,Boundary,Rule,State)
保护边界是自我保护机制的结构基础。
八、机器个体边界
现实个体具有现实世界中的边界,而机器个体必须建立对应的机器边界(Machine Individual Boundary)。
机器个体边界不是简单的数据库表范围,而是机器系统中确定:
哪些对象属于机器个体
哪些数据属于机器个体
哪些状态属于机器个体
哪些能力属于机器个体
哪些行为属于机器个体
哪些关系属于机器个体
哪些资源受到个体控制
的整体结构。
机器个体可以表示为:
MI={ID,T,O,A,S,R,K,M,E,G,C,Md,B,F,H}MI= \{ID,T,O,A,S,R,K,M,E,G,C,Md,B,F,H\}
因此机器边界可以表示为:
Boundary(MI)={ID,T,O,A,S,R,K,M,E,G,C,Md,B,F,H}Boundary(MI)= \{ID,T,O,A,S,R,K,M,E,G,C,Md,B,F,H\}
但是,机器个体与外部世界之间仍然存在接口:
MI↔ExternalWorldMI\leftrightarrow ExternalWorld
例如:
外部输入
↓
输入接口
↓
机器个体
↓
认知
↓
决策
↓
行为
↓
执行接口
↓
外部世界
机器个体边界因此包含两个部分:
MachineBoundary=InternalStructure+InteractionInterfaceMachineBoundary= InternalStructure+ InteractionInterface
内部结构负责个体自身状态和运行,接口负责与外部世界交换信息和产生行为。
工程上可以体现为:
Individual
├── Identity
├── Objects
├── Attributes
├── States
├── Relations
├── Knowledge
├── Memory
├── Experience
├── Goals
├── Capabilities
├── Methods
├── Behaviors
└── History
External
├── Input
├── Environment
├── Other Individuals
└── External Systems
二者之间通过明确接口建立联系。
因此:
MachineIndividual≠ExternalWorldMachineIndividual\neq ExternalWorld
但:
MachineIndividual↔ExternalWorldMachineIndividual\leftrightarrow ExternalWorld
这构成机器个体独立运行的基础。
九、边界变化
个体边界不是绝对固定的。
现实个体可能增加、减少、合并、拆分或者改变内部组成。
因此:
Boundaryt→Boundaryt+1Boundary_t\rightarrow Boundary_{t+1}
例如企业增加一个新的工厂:
Internalt→Internalt+1Internal_t \rightarrow Internal_{t+1}
原本属于外部关系的对象,在特定条件下可能进入个体内部结构。
反过来:
Internalt→Externalt+1Internal_t \rightarrow External_{t+1}
例如企业出售某项设备以后,该设备不再属于企业内部。
因此:
BoundaryChange=Add+Remove+Merge+Split+TransferBoundaryChange= Add+ Remove+ Merge+ Split+ Transfer
边界变化可能进一步影响:
ObjectsObjects RelationsRelations CapabilitiesCapabilities BehaviorsBehaviors ProtectionProtection
例如:
增加生产线
↓
内部对象增加
↓
设备关系增加
↓
生产能力增加
↓
可执行行为增加
↓
机器个体结构更新
因此:
BoundaryChange→StructureChange→CapabilityChange→BehaviorChangeBoundaryChange \rightarrow StructureChange \rightarrow CapabilityChange \rightarrow BehaviorChange
机器个体也必须能够记录边界变化历史:
BoundaryHistory={B1,B2,⋯ ,Bn}BoundaryHistory= \{B_1,B_2,\cdots,B_n\}
从而保证个体连续性。
边界变化并不一定意味着身份变化:
IDt=IDt+1ID_t=ID_{t+1}
同时:
Boundaryt≠Boundaryt+1Boundary_t\neq Boundary_{t+1}
因此:
个体可以保持身份连续,同时发生内部结构和边界变化。
十、个体边界的统一模型
综合本章内容,可以建立统一的个体边界模型:
Boundary(I)=Internal(I)+External(I)+Interface(I)\boxed{ Boundary(I)= Internal(I) + External(I) + Interface(I) }
其中:
- Internal(I)Internal(I):个体内部结构;
- External(I)External(I):个体外部环境;
- Interface(I)Interface(I):个体与外部世界之间的交互接口。
进一步:
Internal(I)=Object+Attribute+State+Relation+Knowledge+Memory+Experience+Goal+Capability+Method+BehaviorInternal(I)= Object+Attribute+State+Relation+Knowledge+Memory+Experience+Goal+Capability+Method+Behavior
外部:
External(I)=Environment+OtherIndividuals+ExternalData+ExternalResourcesExternal(I)= Environment+OtherIndividuals+ExternalData+ExternalResources
接口:
Interface(I)=Input+Output+InteractionInterface(I)= Input+Output+Interaction
由此形成:
世界
│
┌─────────┴─────────┐
│ │
个体内部 个体外部
│ │
┌─────┴─────┐ ┌────┴─────┐
│ │ │ │
结构 Runtime 环境 其他个体
│ │ │ │
└─────┬─────┘ └────┬─────┘
│ │
└──── Interface ────┘
机器个体的完整边界关系为:
Environment↔Interface↔MachineIndividualEnvironment \leftrightarrow Interface \leftrightarrow MachineIndividual
个体边界进一步约束:
DataData CapabilityCapability BehaviorBehavior ProtectionProtection
最终形成:
Boundary→Data→Capability→Behavior→Protection\boxed{ Boundary \rightarrow Data \rightarrow Capability \rightarrow Behavior \rightarrow Protection }
十一、工程映射
个体边界进入ICAI工程以后,需要形成明确的数据、对象和运行边界。
理论模型:
IndividualBoundaryIndividualBoundary
映射为:
BoundaryObjectBoundaryObject
再映射为:
BoundaryServiceBoundaryService
和:
BoundaryEngineBoundaryEngine
例如:
Individual
↓
Boundary Object
↓
BoundaryService
↓
BoundaryEngine
↓
Repository
↓
MySQL
数据库可以通过个体ID区分内部数据:
individual_id
object_id
attribute_id
state_id
relation_id
knowledge_id
capability_id
behavior_id
所有属于机器个体的数据都必须能够追溯到:
individual_idindividual\_id
因此:
individual_id→IndividualDataindividual\_id \rightarrow IndividualData
这就把理论上的“个体边界”转化成了数据库层面的数据归属边界。
在运行层:
External Input
↓
Input Boundary
↓
Individual Runtime
↓
Decision
↓
Behavior
↓
Output Boundary
↓
External Environment
由此形成机器个体的完整输入—运行—输出边界。
十二、本章小结
个体边界解决的是ICAI中的一个基础问题:
什么属于个体,什么不属于个体。
个体边界可以概括为:
Boundary(I)=Internal+External+InterfaceBoundary(I)=Internal+External+Interface
其中内部包含:
Object+Attribute+State+Relation+Knowledge+Memory+Experience+Goal+Capability+Method+BehaviorObject+Attribute+State+Relation+Knowledge+Memory+Experience+Goal+Capability+Method+Behavior
外部包括:
Environment+OtherIndividuals+ExternalData+ExternalResourcesEnvironment+OtherIndividuals+ExternalData+ExternalResources
二者通过接口建立联系:
External↔Interface↔IndividualExternal \leftrightarrow Interface \leftrightarrow Individual
个体边界同时决定:
DataBoundaryDataBoundary CapabilityBoundaryCapabilityBoundary BehaviorBoundaryBehaviorBoundary ProtectionBoundaryProtectionBoundary
因此:
Boundary→DataControl→CapabilityControl→BehaviorControl→ProtectionBoundary \rightarrow DataControl \rightarrow CapabilityControl \rightarrow BehaviorControl \rightarrow Protection
个体边界还具有动态性:
Boundaryt→Boundaryt+1Boundary_t\rightarrow Boundary_{t+1}
而身份可以保持:
IDt=IDt+1ID_t=ID_{t+1}
所以:
BoundaryChange≠IdentityChangeBoundaryChange\neq IdentityChange
在机器个体中,边界最终需要落实为:
Theory→BoundaryModel→BoundaryObject→BoundaryService→BoundaryEngine→Repository→MySQL→RuntimeTheory \rightarrow BoundaryModel \rightarrow BoundaryObject \rightarrow BoundaryService \rightarrow BoundaryEngine \rightarrow Repository \rightarrow MySQL \rightarrow Runtime
本章的核心结论是:
个体边界是确定个体内部、个体外部以及二者交互范围的结构基础。它不仅决定机器系统中哪些对象、数据、状态、能力和行为属于某一个体,也决定个体能够接触什么、能够执行什么以及需要保护什么。个体边界可以随着个体结构和运行过程发生变化,但身份可以保持连续。通过明确的机器个体边界,ICAI才能真正建立一个具有独立数据、独立能力、独立行为和独立运行范围的机器个体。