1 膳食規劃專家系統 第 12 章. 2 參與成員 食品營養師 烹飪專家 餐飲業者...
Post on 19-Dec-2015
256 views
TRANSCRIPT
1
膳食規劃專家系統
第 12 章
2
參與成員
食品營養師 烹飪專家 餐飲業者 採購專家 知識工程師
3
Block of Rules
首先提出 block of rules and transfer rules Explanation of Forward inference
4
使用者輸入有關資料
計算各成員基本營養需求
調整營養需求喜好及限制
配三餐
詢問使用者理由及要更改甚麼
整體流程
告訴使用者矛盾部分
W
使用者是否滿意目前
結果?
輸出結果是否
與原始資料矛盾?
YES
NO
W
NO
YES
5
B1
B2
B3
B6
B7
a
配早餐
各區塊組關係圖
6
B8
B9
B10
B11
B12
b
檢查指定菜名、菜材…等
各區塊組關係圖
a
B13
B14
B15
計算各口味的分配比例
7
B17
B18
B19
B20
B21
c 各區塊組關係圖
b
B22
配有加強營養需求之成員
配完所有菜 ?
步驟 ?
B23
B24
B25
B30
B24
B29
B16
Yes
配不均或剩餘
均平衡
配營養
均已符合
有未平衡
有成員未
滿足
B23若沒有
菜材需
求
若在此已找
到菜
B23若沒人在
加強
營
養需求
B16
配不夠
no
8
c
B26
B27
B28
B29
B30
B22
配完所有菜 ?
步驟?
各區塊組關係圖
B23
no
yes
B24
推理結束
無指定材料、存貨
未找到
有存貨、指定材料
配不均或配剩餘
若在此已
找到菜
9
區 塊 組 規 則 數 區 塊 組 規 則 數B1B2B3B4B5B6B7B8B9
B10B11B12B13B14B15B16
31769696665766
251210
B17B18B19B20B21B22B23B24B25B26B27B28B29B30
2315102012947
2315259
133
計 28 個區塊組, 309 條規則
10
實例說明
M1 : 男 60 歲,不喜牛肉、喜中口味、不喜辣味、不喜炸、低能量消耗。
M2 : 男 35 ,肝病、喜甜之口味、喜煮之煮法、中能量消耗。
M3 : 女 30 歲,哺乳、喜酸之口味、喜炒之煮法、中能量消耗。
M4 : 男 18 歲,高能量消耗。
M5 : 男 6 歲,喜鹹、不喜辣、低能量消耗。
- 存貨:雞蛋
- 指定菜類:豆蛋類
- 開銷:高
11
步驟1:計算各成員的基本能量、蛋白質及脂肪需求量。
根據能量表及各成員之年紀、性別、能量消耗程度求得基本能
量要求,再依蛋白質、脂肪的分配比例,求得對應的需求量。
步驟 2 :調整各成員的要求條件。
根據成員有否疾病、哺乳、懷孕或特殊年紀等調整成員的限制、
喜好、加強營養等條件。
如 M3 :哺乳,故需加強鈣、磷、鐵、維生素 A,D 及蛋白質等營養。
12
Facts transformation
M1 :能量要求 2100 卡 , 蛋白質 68.3 克
M2 :脂 肪 56 克 , 蛋白質 00 卡 , 脂肪 84.5 克
M3 :能量要求 2100 卡 , 蛋白質 68.3 克 , 脂 肪 56 克
M4 :能量要求 2900 卡 , 蛋白質 94.3 克 , 脂 肪 77.3 克
M5 :能量要求 1550 卡 , 蛋白質 50.3 克 , 脂 肪 41.3 克
M3 因為有哺乳,能量、蛋白質、脂肪需求量都要增加 ; 在下一步驟中,將會再做調整。
13
M1 M2 M3 M4 M5
加強營養
蛋白質 蛋白質 鈣、磷、鐵、維生素 A,D 蛋白質
鈣、磷、鐵 維生素 D
動物性蛋白質、鈣、磷、鐵、維生素 D
口味限制
鹹、甜、辣 鹹、辣 辣
質地限制
煮法限制 炸 炸
材料限制
牛肉、肥肉、蝦、蚌、肝、墨魚、雞蛋
肥肉、花生
口味 中 甜 酸 鹹質地 中、軟
煮法 煮 炒
14
原始的規則
R1 若 (1) 人數>0
則 (1) 取出家中的第一個成員檢查
(2) 設定成員尚未做疾病、懷孕之檢查
R2 若 (1) 成員尚未檢查疾病
(2) 成員有疾病
R3 若 (1) 成員尚未檢查疾病
(2) 成員沒有疾病
則 (1) 設定成員已檢查完疾病
15
Rule refinement
R4 若 (1) 成員已檢查完疾病 (2) 成員已檢查完懷孕
則 (1) 取下一成員檢查
(2) 設定成員尚未檢查疾病、懷孕
R5 若 (1) 成員尚未檢查懷孕 (2) 成員懷孕
R6 則 (1) 調整成員因懷孕而需改變的資料
則 (1) 設定成員已檢查懷孕
R7 若 (1) 已沒有成員可檢查
則 (1) 轉移至配早餐
16
例如專家修改規則 R5、 R6 及加入新規則 R8 如下:
R5 若 (1) 成員未檢查懷孕
(2) 成員是女性 ( 加入一條件 )(3) 成員懷孕
則 (1) 調整成員因懷孕而需改變之資料
(2) 設定成員已檢查懷孕
R6 若 (1) 成員未檢查懷孕
(2) 成員是女性(加入一條件)未懷孕
則 (1) 設定成員已檢查懷孕
R8 若 (1) 成員未檢查懷孕 (2) 成員是男性
則 (1) 設定成員已檢查懷孕
17
表 2 原則規則經知識管理系統整理後之結果
規則型態 規則名 條件部分 動作部分 影響之規則
0 R1 A=A1 C←C1 (R2,
R4,R5)
0 R5 C=C1,E=E1 D←D1,E←E2 (R2,R5,
R6)
0 R3 B=C1,F=F2 D←D2,F←F1 (R2,R3,R
4,R6)
0 R2 C=C1,D=D1,F=F3 B←B1,E←E3,F←F2 (R2,R
3,R4,R5,R6)
S R6 D=D2,F Switch B8 S R4 C=C1,F=F1 Switch B7
18
表 3 表 2 規則執行的情形,假設最初工作記憶區分為 (A1, - , - , - ,E1,F3) 影響之轉步驟 檢查的規則 成立否 工作記憶區的變化 移性規則 指標 候選集合1 R1 Yes (A1, - ,C1, - ,E1,F3) B4 B1 -2 R4 No (A1, - ,C1, - ,E1,F3) - R1 -3 R5 Yes (A1, - ,C1,D1,E2,F3) R6 R5 R5
4 R6 No (A1, - ,C1,D1,E2,F3) - R5 R5
5 R5 No (A1, - ,C1,D1,E2,F3) - R5 -6 R3 No (A1, - ,C1,D1,E2,F3) - R5 -7 R2 Yes (A1,B1,C1,D1,E3,F2) R6,R4 R2 R5,R3,R2
8 R6 No (A1,B1,C1,D1,E3,F2) R4 R2 R5,R3,R2
9 R4 No (A1,B1,C1,D1,E3,F2) - R2 R5,R3,R2
10 R5 No (A1,B1,C1,D1,E3,F2) - R2 R3,R2
11 R3 Yes (A1,B1,C1,D2,E3,F1) R6,R4 R2 R3,R2
12 R6 No (A1,B1,C1,D2,E3,F1) R4 R2 R3,R2
13 R3 Yes (A1,B1,C1,D2,E3,F1) - R2 R3,R2
14 已轉移至 47執行。
19
表 7 修改後之規則以同樣的例子執行之順序
工作記憶區與規則有關部分之 影響之轉 變 化 移性規則 1 R1 成員=夫 R7 R1 - (R7) 未檢查疾病、懷孕2 R8 成員=夫,懷孕已檢查 - R8 - 未檢查疾病 (R4,R3)
3 R2 成員=夫 - R2 (R4)
疾病、懷孕均已檢查4 R4 成員=婦 R7 R2 (R8,R3,R2) 未檢查疾病、懷
孕 (R7,R8) 5 R5 成員=婦,懷孕已檢查 - R2 (R4,R2)
未檢查疾病 (R4,R2,R6)
6 R3 成員=婦 - R5 (R4)
懷孕、疾病均已檢查7 R4 成員=-- R7 R2 (R8,R3,R2,
未檢查懷孕、疾病 R6,R5) 8 R7 轉移至配早餐
指標 候選集合步驟 啟動的規則
20
還有指定菜名
符合供應月份
?
還有存貨或指定
材料?
還有指定菜類
?
已有要求此類之菜
名材料?
設定菜類的需求值增加 1
將此菜名 去掉,向使用者說明
符合供應月份
?
系統有提供?
找出對應的菜類,並設定菜類需求值加 1
將此材料去掉,向使用者說明
系統有提供?
找出對應的菜類,並設定菜類需求值加 1
yes
yes
no
no
yes
no
no
yes
yes
yes
yes
no
no
no
yes
至調整菜類分配
no
21
Conclusion
Build up a menu planning expert system less than two years
Include self-developed knowledge acquisition, knowledge representation, and inference engine
Propose block of rules concept Shallow knowledge about this domain is
popular and enough for normal requirement