汽车诊断系统code
来源:互联网 发布:wifi室内定位算法 编辑:程序博客网 时间:2024/05/01 09:07
KNOWLEDGE-MODEL Diagnosis;
/* ---------------------------------------------------------------------------------------*/
DOMAIN-KNOWLEDGE car-domain;
DOMAIN-SCHEMA car-schema;
/* ------------CONCEPTS------------*/
CONCEPT car-observable;
ATTRIBUTES:
value:universal;
END CONCEPT car-observable;
VALUE-TYPE dial-value;
VALUE-LIST:{ zero , low , normal };
TYPE:ORDINAL;
END VALUE-TYPE dial-value;
CONCEPT gas-dial;
SUB-TYPE-OF:car-observable;
ATTRIBUTES:
value:dial-value;
END CONCEPT gas-dial;
CONCEPT fuse-inspection;
SUB-TYPE-OF:car-observable;
ATTRIBUTES:
value:{normal , broken};
END CONCEPT gas-dial;
CONCEPT battery-dial;
SUB-TYPE-OF:car-observable;
ATTRIBUTES:
value:dial-value;
END CONCEPT gas-dial;
CONCEPT car-state;
ATTRIBUTES:
status:universal;
observable:boolean;
END CONCEPT car-state;
CONCEPT invisible-car-state;
SUB-TYPE-OF:car-state;
ATTRIBUTES:
observable:{false};
END CONCEPT invisible-car-state;
CONCEPT visible-car-state;
SUB-TYPE-OF:car-state;
ATTRIBUTES:
observable:{true};
END CONCEPT visible-car-state;
CONCEPT engine-behavior;
SUB-TYPE-OF:visible-car-state;
ATTRIBUTES:
status:{normal,does-not-start,stops};
END CONCEPT visible-car-state;
CONCEPT fuse;
SUB-TYPE-OF:in-visible-car-state;
ATTRIBUTES:
status:{normal,blown};
END CONCEPT fuse;
CONCEPT battery;
SUB-TYPE-OF:in-visible-car-state;
ATTRIBUTES:
status:{normal,low};
END CONCEPT battery;
CONCEPT fuel-tank;
SUB-TYPE-OF:in-visible-car-state;
ATTRIBUTES:
status:{full,almost-empty,empty};
END CONCEPT fuel-tank;
CONCEPT power;
SUB-TYPE-OF:in-visible-car-state;
ATTRIBUTES:
status:{on,off};
END CONCEPT power;
CONCEPT gas-in-engine;
SUB-TYPE-OF:in-visible-car-state;
ATTRIBUTES:
status:boolean;
END CONCEPT power;
/* ------------CONCEPTS------------*/
/* ------------RULE-TYPES----------*/
RULE-TYPE state-dependency;
ANTECEDENT : invisible-car-state;
CARDINALITY : 1;
CONSEQUENT : car-state;
CARDINALITY : 1;
CONNECTION-SYMBOL:
causes;
END RULE-TYPE state-dependency;
RULE-TYPE manifestation-rule;
ANTECEDENT : invisible-car-state;
CONSEQUENT : car-observable;
CONNECTION-SYMBOL:
has-manifestation;
END RULE-TYPE manifestation-rule;
/* ------------RULE-TYPES----------*/
END DOMAIN-SCHEMA diagnosis-schema;
KNOWLEDGE-BASE car-network;
USES:
state-dependency FROM car-schema,
manifestation-rule FROM car-schema;
EXPRESSIONS:
/* state dependencies */
fuse.status = blown CAUSES power.status = off; // 2
battery.status = low CAUSES power.status = off; // 3
power.status = off CAUSES engine-behavior.status = does-not-start; // 7
fuel-tank.status = empty CAUSES gas-in-engine.status = false; // 6
gas-in-engine.status = false CAUSES engine-behavior.status = does-not-start; // 8
gas-in-engine.status = false CAUSES engine-behavior.status = stops; // 9
/* manifestation rules */
fuse.status = blown HAS-MANIFESTATION fuse-inspection.value = broken; // 1
battery.status = low HAS-MANIFESTATION battery-dial.value = zero; // 4
fuel-tank.status = empty HAS-MANIFESTATION gas-dial.value = zero; // 5
END KNOWLEDGE-BASE car-network;
END DOMAIN-KNOWLEDGE car-domain;
/* ---------------------------------------------------------------------------------------*/
INFERENCE-KNOWLEDGE diagnosis-inferences;
KNOWLEDGE-ROLE complaint;
TYPE:DYNAMIC;
DOMAIN-MAPPING : visible-state;
END KNOWLEDGE-ROLE complaint;
KNOWLEDGE-ROLE hypothesis;
TYPE:DYNAMIC;
DOMAIN-MAPPING : invisible-state;
END KNOWLEDGE-ROLE complaint;
KNOWLEDGE-ROLE causual-model;
TYPE:STATIC;
DOMAIN-MAPPING : state-dependency FROM car-network;
END KNOWLEDGE-ROLE causual-model;
INFERENCE cover;
ROLES:
INPUT : complaint;
OUTPUT : hypothesis;
STATIC : causual-model;
END INFERENCE cover;
END INFERENCE-KNOWLEDGE diagnosis-inferences;
/* ---------------------------------------------------------------------------------------*/
TASK-KNOWLEDGE diagnosis-tasks;
TASK diagnosis-task;
DOMAIN-NAME:diagnosis-car-application;
ROLES:
INPUT:
complaint:"Find ....";
OUTPUT:
faults:"the faults .....";
evidence:"sdfsdfsdf ....";
END TASK diagnosis-task;
TASK-METHOD diagnosis-method;
REALIZES:diagnosis-task;
DECOMPOSITION:
INFERENCES:cover,select,specify,verify;
TRANSFER-FUNCTIONS:obtain;
ROLES:
INTERMEDIATE:
differential:"asdd";
hypothesis:"df";
result:"ff";
expected-finding:"sd";
actual-finding:"sdf";
CONTROL-STRUCTURE:
WHILE NEW-SOLUTION cover(complaint -> hypothesis) DO
differential := hypothesis ADD differential;
END WHILE
REPEAT
select(differential -> hypothesis);
specify(hypothesis -> observable);
obtain(observable -> finding);
evidence := finding ADD evidence;
FOR-EACH hypothesis IN differential DO
verify(hypothesis + evidence -> result);
IF result == false
THEN differential := differential SUBTRACT hypothesis;
END IF
END FOR-EACH
UNTIL
SIZE differential =< 1 or "no more observables left"
END REPEAT
faults := differential;
END TASK-METHOD diagnosis-method;
TASK select-subtask;
DOMAIN-NAME:select-car-application;
ROLES:
INPUT:
OUTPUT:
END TASK select-subtask;
TASK-METHOD select-method;
END TASK-MOTHOD select-method;
END TASK-KNOWLEDGE diagnosis-tasks;
/* ---------------------------------------------------------------------------------------*/
END KNOWLEDGE-MODEL Diagnosis;
- 汽车诊断系统code
- 汽车诊断系统图
- 汽车诊断
- 汽车诊断简介
- 汽车诊断协议ISO15765
- 汽车诊断协议ISO14230
- 汽车诊断工具的实现
- 【翻译】使用AIR构建的汽车诊断系统Car Diagnostic System built in Adobe AIR
- CAN中文版汽车诊断协12
- 诊断系统错误信息
- 系统诊断工具
- Systemtap系统诊断工具
- 车载诊断系统-OBD
- ECS 控制台诊断系统
- 汽车总线系统通信协议
- 汽车的电子系统
- 汽车牌照自动识别系统
- 汽车维修管理系统
- 我的Websphere Portal升级的艰难之旅
- 打开生命的栅栏 或许空空荡荡
- 开始运行命令集合分类:电脑知识
- 关闭网络端口分类:电脑知识
- 电脑故障
- 汽车诊断系统code
- javascript进度条2
- 天气很好
- 亲爱的老板
- 汽车诊断系统图
- 关于inputstream的一点问题
- 《日本语句型辞典》学习笔记 - あいだ - 1
- Asp.Net2.0无刷新客户端回调
- 人性的贪婪