현실감각 0% :: 에어컨 작동을 위한 퍼지 추론 예제

컴퓨터 관련 2016. 7. 21. 16:57

에어컨 작동을 위한 퍼지 추론 예제



기온과 습도를 퍼지집합화 하고 이를 이용하여 퍼지 추론하는 예제

퍼지라는 녀석이 알면 쉽고 간단한데도 불구하고 수식의 압박으로 이해가 힘든 사람(나 포함)이 있을것을 우려해서 이해하기 쉬운 예제를 하나 올려봅니다. 따로 기본적인 수식이나 이론은 최대한 배제하였음요.

넘나 간단한것!



X = 온도

Y = 습도

Z =에어컨 ON/OFF

라고 할 경우


[퍼지함수]

X = {A1(덥지않다), A2(약간덥다), A3(매우덥다)}

Y = {B1(건조하다), B2(약간습하다), B3(매우습하다)}

Z = {C1(에어컨 최대출력), C2(에어컨 70%출력), C3(에어컨 40% 출력), C4(에어컨 OFF)}


[퍼지규칙]

규칙1 : if X is A1 and Y is B1 then Z is C4

규칙2 : if X is A1 and Y is B2 then Z is C3

규칙3 : if X is A1 and Y is B3 then Z is C3

규칙4 : if X is A2 and Y is B1 then Z is C3

규칙5 : if X is A2 and Y is B2 then Z is C2

규칙6 : if X is A2 and Y is B3 then Z is C1

규칙7 : if X is A3 and Y is B1 then Z is C2

규칙8 : if X is A3 and Y is B2 then Z is C1

규칙9 : if X is A3 and Y is B3 then Z is C1


[예제]

온도 28도, 습도 74%인 경우...

μA1(X') = 28, μB1(Y') = 74


Mamdani 방법 = MIN(μA1(28), μB1(74))


A1 and B1 의 경우 = MIN(0, 0) = 0


A1 and B2 의 경우 = MIN(0, 0) = 0

A1 and B3 의 경우 = MIN(0, 1.0) = 0

.

.

.

생략

.

.

.


A2 and B3 의 경우 = MIN(0.75, 1.0) = 0.75

A3 and B3 의 경우 = MIN(0.5, 1.0) = 0.5


[규칙 계산]

규칙1 : C4 = 0

규칙2 : C3 = 0

규칙3 : C3 = 0

규칙4 : C3 = 0

규칙5 : C2 = 0

규칙6 : C1 = 0.75

규칙7 : C2 = 0

규칙8 : C1 = 0

규칙9 : C1 = 0.5


[Mamdani 방법 결과]

에어컨 최대출력!!!



[무게중심법 계산]

수식

∑(퍼지함수 결과값 * 소속값(에어컨 출력값%)) / ∑(퍼지함수 결과값) = 결과


[무게중심법 결과]

0 * 0% + 0 * 40% + 0 * 40% + 0 * 40% + 0 * 70% + 0.75 * 100% + 0 * 70% + 0 * 100% + 0.5 * 100% 

/ 0 + 0 + 0 + 0 + 0 + 0.75 + 0 + 0 + 0.5 = 156.25% 출력...ㄷㄷ



맘다니 방법은 에어컨, 세탁기 등 각종 가전제품의 인공지능을 구성할 때 쓰는것이 좋고

무게중심법은 인식이나 예측 등에 응용해서 사용하면 좋을듯