퍼지전문가시스템
퍼지 논리 : 모호한 대상을 다루는 논리 , 퍼지 집합 , 모호한 정도를 조절할 수 있는 집합에 대한 이론 , 퍼지 용어를 표현하고 조작하기 위한 새로운 논리
불 논리 ( Boolean Logic ) : 전통적인 논리는 참과 거짓이 확실하게 구분된다 .
퍼지의 장점
1. 퍼지라는 용어는 구체적이고 직접적이며 , 설명적이어서 무엇을 의미하는지 쉽게 이해할 수 있음
왜 논리일까??
1. 모호성은 퍼지 집합론에 항상 존재하고 , 퍼지 논리는 이 이론의 일부분일 뿐이다. 그러나 자데는 퍼지 논리라는 용어를 좀 더 넓은 뜻으로 사용했음
2. 2차 논리인 불 논리와 달리 퍼지 논리는 다치 논리이다 . 퍼지 논리는 소속도와 진리도를 다룬다.
3. 퍼지 논리는 0(완전한 거짓) 과 1(완전한 참) 사이에 있는 연속된 논리값을 사용한다.
4. 퍼지 논리는 검정과 하양만 다루는 대신 다양한 색깔을 사용함
5. 즉 , 어떤 대상이 동시에 참이면서도 거짓인 경우를 허용한다는 것
퍼지 집합
퍼지 집합론
1. 퍼지 집합론의 기본 발상
è 원소가 퍼지 집합에 어느 정도 속한다는 것이 퍼지 집합의 기본 발상
è 명제는 참 또는 거짓이 아니라 어느 정도는 부분적으로 참으로 나타낸다.
è 정도는 보통 [ 0 , 1 ] 범위의 실수값으로 표현된다 .
예를 들어서 비교해 보자면 ,
“ 그 사람은 키가 클까? “ 라는 질문이 주어졌을 때 ,
크리스프 집합의 답변 : 180 cm같은 기준선을 긋는다 , 180보다 크면 큰것이고 , 작으면 작은 것이다
퍼지 집합의 답변 : “ 그 사람은 키가 어느정도 클까 ? “ 라고 생각한다 . 그리고 집합의 부분적인 소속도가 된다. 톰의 키가 181cm이면 , 톰은 0.82만큼 크다 라고 표현이 가능한 것이다.
퍼지 집합론
퍼지 집합은 경계를 넘을 때 , 점진적으로 전이하게 된다.
“매우 키가 작은 남자” , “키가 작은 남자” , “키가 보통인 남자”, “매우 키가 큰 남자” 같은 집합도 생각할 수 있게 된다.
퍼지 집합에서는 데이비드와 그 외의 남자들이 키가 작아질수록 점점 “키가 큰 남자” 집합에서 빠지게 된다.
퍼지 집합은 단순히 경계가 모호한 집합으로 정의할 수 있다.
X를 논의 영역 , X를 이 영역의 원소라고 하자.
고전적인 집합론에서 X상의 크리스프 집합A는 A에 대한 특성 수 Fa(x)를 써서 정의한다
Fa(x) : X à[0,1]
여기서 Fa(x)는 다음과 같다.
Fa(x) = 1 , if x E A
0, if x not E A
이 집합은 영역 X를 두 원소로 이루어진 집합에 대응시킨다.
영역X의 특정 원소 x가 있을 때 , 특성함수 Fa(x)는 x가 A의 원소이면 1이고 , x가 A의 원소가 아니면 0 이다.
퍼지 이론에서 영역X에 속한 퍼지 집합A는 함수 UA(x)를 써서 정의한다.
이 함수를 집합A에 대한 소속 함수라 한다.
UA(x) : X à [0,1]
여기서 UA(x)는 다음과 같다.
UA(x) =1 / x가 완전히 A에 속한 경우
UA(x) =0 / x가 완전히 A에 속하지 않는 경우
0 < UA(x) < 1 / x가 부분적으로 A에 속한 경우
이 집합에서 가능한 선택지는 연속적인 값이 될 수 있다.
영역 X의 특정 원소 x가 있을 때 , 소속함수 UA(x)는 x가 집합A에 속하는 정도다.
이는 0~1사이의 값으로 소속도를 나타내며 , 집합A에서 원소 x의 소속값이라고도 한다.
퍼지 집합의 표현을 알아보자 .
위에서 예를 든 “키가 큰 남자”의 예를 들어보자.
이 집합들의 논의 영역인 남자의 키는 키가 작은 남자, 키가 보통인 남자, 키가 큰 남자라는 세 집합으로 이루어진다.
여기서 볼 수 있듯 , 퍼지 논리에서는 키가 184츠인 남자는 키가 보통인 남자 집합의 구성원으로 소속도가 0.1이고 , 동시에 키가 큰 남자 집합의 구성원으로서 소속도가 0.4이다.
이는 키가 184츠인 남자가 여러 집합에 부분적으로 소속되어 있음을 뜻한다.
퍼지 집합과 크리스프 집합은 다음과 같이 나타낼 수도 있다.
언어 변수와 헤지
언어 변수는 퍼지 변수이다.
예를 들어서 , “존은 크다” 라는 문장은 언어 변수 “존”이 언어값 “크다”를 취한다는 뜻이다.
퍼지 전문가 시스템에서는 언어 변수를 퍼지 규칙에 사용한다.
다음 예를 보자.
언어 변수 하나에 할당되는 값의 범위는 해당 변수에 대한 논의 영역을 나타낸다.
언어변수 “속도”에 대한 논의 영역은 0km/h~220km/h까지고 , ‘매우 느리다’,’느리다’,
‘보통이다’,’빠르다’,’매우 빠르다’ 같은 퍼지 부분 집합을 포함할 수 있다.
각 퍼지 부분 집합 역시 대응하는 언어 변수에 대한 언어 값을 나타낸다.
언어 변수는 헤지(hedge)라 하는 퍼지 집합 한정사의 개념을 수반한다.
è 헤지는 퍼지 집합의 모양을 바꾸는 용어다
è 헤지는 매우 , 얼마간 , 꽤 , 다소 , 조금 같은 부사를 포함한다
è 헤지는 동사, 형용사, 부사 심지어 전체 문장을 조작할 수 있다.
헤지 자신은 연산자처럼 작동한다.
è ‘매우’는 집중연산을 수행하고 새로운 집합을 만든다.
키가 큰 남자 집합에서 헤지 ‘매우’는 매우 키가 큰 남자 라는 부분 집합을 이끌어 낸다.
헤지 ‘ 몹시’는 같은 효과를 좀 더 크게 만든다.
집중과 반대되는 연산으로 확장(dilation)이 있다. 확장 연산은 집합을 확장한다.
헤지 ‘다소’는 확장 연산을 수행한다.
다소 키가 큰 남자 라는 집합은 키가 큰 남자의 집합보다 범위가 넓다.
헤지는 연산으로도 유용하지만 , 연속체를 퍼지 구간으로 끓을 수도 있다.
실제 응용에서 자주 사용하는 헤지
1. 매우(very) : 집중 연산이다. 집합의 범위를 좁히고 , 퍼지 원소의 소속도를 낮춘다 . 이 연산은 수학의 제곱 연산이다.
2. 몹시 (extremely) : 매우와 비슷한 효과가 있는데 , 그 정도가 더 크다 . 이 연산은 UA(x)를 세제곱한 것이다.
3. 매우매우(very very) : 집중 연산을 단순히 확장한 것이다. 이 연산은 집중 연산을 제곱한 것이다.
4. 다소(more or less) : 확장 연산이다. 집합을 확장함으로써 퍼지 원소들의 소속도를 높인다. 이 연산은 다음과 같이 나타낸다.
5. 확실히(Indeed) : 강화(intensification)연산이다. 모든 문장의 의미를 강화한다.
소속도가 0.5이상이면 소속도를 더 높이고 , 0.5보다 낮은 경우에는 더 낮추는 역할을 한다. 헤지 확실히는 두 가지 방법으로 수행될 수 있다.
만약 톰이 키가 큰 남자집합에 0.86만큼 속한다면 확실히 키가 큰 남자 집합에는 0.9608만큼 속한다.
반대로 키가 큰 남자 집합에 0.24만큼 속하는 마이크는 확실히 키가 큰 남자 집합에는 0.1152만큼 속한다.
헤지에 대한 수식과 그래프 표현 요약
헤지의 표현이 강할수록 그래프의 모양이 꼭짓점을 기준으로 휘어짐이 커지는 것을 볼 수 있다.
이제 퍼지 집합 연산에 대해서 알아보자.
집합들이 어떻게 상호작용하는지를 설명한다.
이러한 상호작용을 연산(operation)이라 한다.
여집합(complement)
è 크리스프 집합 : 어떤 원소가 그 집합에 속하지 않을까?
è 퍼지 집합 : 원소들이 그 집합에 얼마만큼 속하지 않을까 ??
집합의 여집합은 해당 집합의 반대를 의미한다
è 키가 큰 남자 집합의 여집합은 키가 크지 않은 남자집합이다.
논의 영역에서 키가 큰 남자 집합을 빼면 여집합을 얻는다.
A가 퍼지 집합이라면 여집합 ㄱA는 다음과 같이 나타낼 수 있다.
UㄱA(x) = 1 – UA(x)
è 이를 테면 , 키가 큰 남자 퍼지 집합이 있다면 키가 크지 않은 남자 퍼지 집합을 다음과 같이 쉽게 구할 수 있다.
Ex) 키가 큰 남자 = (0/180, 0.25/182.5 , 0.5/185 , 0.75/187.5 , 1/190)
키가 크지 않은 남자 = ( 1/180 , 0.75/182.5, 0.5/185 , 0.25/187.5, 0/190)
포함관계(Containment)
è 크리스프 집합 : 어떤 집합이 다른 집합에 속할까?
è 퍼지 집합 : 어느 집합이 다른 집합에 속할까?
교집합(intersection)
è 크리스프 집합 : 어느 원소가 두 집합 모두에 속할까?
è 퍼지 집합 : 원소가 두 집합 모두에 얼마만큼 속할까?
합집합 ( union )
è 크리스프 집합 : 원소가 두 집합 어느 쪽이든 속할까?
è 퍼지 집합 : 원소가 두 집합 어느 쪽이든 얼마만큼 속할까?
è 각 원소의 합집합에 대한 소속 값은 두 집합에 대한 소속 값 중 높은 값이다
퍼지 집합에서 자주 쓰이는 연산
교환법칩 (commutativity)
A U B = B U A
A n B = B n A
결합법칙(associativity)
A U (B U C) = (A U B) U C
A n (B n C) = (A n B) n C
분배법칙(distributivity)
A U (B n C) = (A U B) n (A U C)
A n (B U C) = (A n B) U (A n C)
멱등법칙(idempotency)
A U A = A
A n A = A
항등식(identity)
여기서 정의되지 않은 공집합 , 즉 모든 소속도가 0인 집합이고 ,
모름은 모든 소속도가 1인 집합이다.
퍼지 집합에서 자주 쓰이는 연산
대합(involution)
ㄱ(ㄱA) = A
이행성(transitivity)
(A c B) n ( B c C ) 이면 A c C 이다.
모든 집합은 부분 집합의 부분 집합 역시 부분 집합으로 포함한다.
드모르간 법칙(de Morgan’s laws)
ㄱ(A n B) = ㄱA U ㄱB
ㄱ(A U B) = ㄱA n ㄱB
퍼지 규칙이란 무엇일까
퍼지 규칙은 다음과 같은 형태로 된 조건문으로 정의할 수 있다.
IF x가 A
THEN y는 B
여기서 x와y는 언어변수이고 , A와B는 각각 논의 영역 X 와 Y의 퍼지 집합에서 결정된 언어 값이다 .
퍼지 규칙의 추론 방법
퍼지 추론(Fuzzy reasoning)에는 두 단계가 있다.
1. 규칙의 전건(규칙의 IF부분)을 평가하는 단계
2. 후건(규칙의 THEN부분)에 결과를 함축, 즉 적용하는 단계
퍼지 시스템에서는 전건이 퍼지 구문이면 모든 규칙이 어느정도 수행된다.
다음 예를 보자 .
퍼지 집합들은 가중치 추정 모델의 기반을 제공한다.
이 모델에서는 사람의 키와 몸무게의 관계에 바탕을 두며 , 이는 퍼지 규칙 하나로 나타낼 수 있다.
IF 키가 크다
THEN 몸무게가 무겁다.
규칙 후건의 출력 값이나 소속도는 전건의 소속도에서 직접 추정할 수 있다.
남자의 키를 나타낸 다양한 값으로 다양한 몸무게를 유도하는 과정을 확인해 보자 .
퍼지 규칙에는 전건에 여러 항목이 있을 수 있을까??
생성 규칙으로서 퍼지 규칙의 전건은 여러 개일 수 있다.
IF 프로젝트 지속기간이 길다
AND 프로젝트 인력이 많다
AND 프로젝트 자금이 부족하다
THEN 위험도가 높다
IF 서비스가 훌륭하다
OR 음식이 맛있다
THEN 팁이 후하다
전건의 모든 부분은 동시에 계산되고 , 숫자 하나로 결정된다.
여기에서는 앞 절에서 설명한 퍼지 집합 연산을 사용한다.
퍼지 규칙에는 후건에 여러 항목이 있을 수 있을까??
퍼지 규칙의 후건 역시 여러 개일 수 있다.
다음 예를 보자 . 이 경우에는 후건의 모든 부분이 전건에 의해 똑같이 영향을 받는다.
IF 기온이 높다
THEN 뜨거운 물은 줄어든다
시원한 물은 늘어난다
일반적으로 퍼지 전문가 시스템은 하나가 아니라 여러 규칙을 통합한다
이 규칙들은 전문 지식을 기술하고 서로 영향을 준다.
각 규칙의 출력은 퍼지 집합이다.
그러나 , 일반적으로 전문가 시스템의 출력을 나타내는 숫자 하나를 필요로 한다.
다시 말해서 , 모호한 것이 아니라 정확한 해답을 얻길 원한다.
그렇다면 , 출력으로 나온 퍼지 집합을 어떻게 결합하여 , 숫자 하나로 변환할까??
퍼지 전문가 시스템은 출력값에서 분명한 해 하나를 얻기 위해 모든 출력 퍼지 집합을 단일 출력퍼지 집합으로 통한한다.
그리고 , 결과 퍼지 집합을 숫자 하나로 역퍼지화한다.
퍼지 추론 방법에는 2가지가 있다.
1. 맘다니형 추론
2. 스게노형 추론
맘다니형 추론은 무엇일까? ( Mamdani method )
ㄱ. 1단계 : 입력 변수의 퍼지화
ㄴ. 2단계 : 규칙 평가
ㄷ. 3단계 : 출력으로 나온 규칙의 통합
ㄹ. 4단계 : 역퍼지화
맘다니형 추론 예제를 통해서 이해를 해보자 .
# 입력 2개 , 출력 1개 , 규칙 3개로 된 문제
위의 규칙은 다음과 같이 설정되어 있다.
x,y,z ( 프로젝트 자금 , 프로젝트 인력 , 위험도 )는 언어 변수
A1,A2,A3(부족하다, 한계 수익점에 있다, 충분하다)는 논의 영역X(프로젝트 자금)상의 퍼지 집합에서 정해지는 언어 값
B1과 B2는 논의 영역 y(프로젝트 인력)상의 퍼지 집합에서 정해지는 언어 값이다.
C1,C2,C3(낮다,중간이다,높다)는 논의 영역 Z(위험도)상의 퍼지 집합에서 정해지는 언어 값이다.
맘다니형 퍼지 추론의 기본 구조를 보면 다음과 같다.
위의 그림들을 바탕으로 1단계~4단계 까지 구해보면 다음과 같다.
1단계 : 퍼지화
è 첫 단계인 퍼지화(fuzzification)에서는 크리스프 입력 x1과 y1(프로젝트 자금과 프로젝트 인력)을 받고 , 이를 적합한 퍼지 집합 각각에 어느 정도로 속할지를 결정한다.
크리스프 입력
è 크리스프 입력은 언제나 논의 영역으로 한정된 수치값 이다.
è 위의 예제에서는 x1과 y1의 값은 각각 논의 영역 X와 Y로 한정된다.
è 논의 영역의 범위는 전문가의 판단에 따라 결정된다.
è 크리스프 입력 x1과 y1를 얻으면 적절한 언어 퍼지 집합에 대해 퍼지화한다.
è 크리스프 입력 x1(전문가가 35%로 평가한 프로젝트 자금)은 소속 함수 A1과 A2(부족하다와 한계 수익점에 있다)에 각각 0.5와 0.2 만큼 대응한다.
è 그리고 크리스프 입력 y1(전문가가 60%로 평가한 프로젝트 자금)은 소속 함수 B1과 B2(적다와 많다)에 각각 0.1과 0.7만큼 대응한다.
è 각 입력을 퍼지 규칙이 사용하는 모든 소속 함수를 퍼지화 한다.
2단계 : 규칙 평가 (rule evaluation)
è 규칙 평가 단계에서는 퍼지 입력 u(x=A1) = 0.5 , u(x=A2) = 0.2 , u(x=B1) = 0.1 , u(x=B2) = 0.7을 받아 퍼지 규칙의 전건에 적용한다.
è 주어진 퍼지 규치에 전건이 여러 개 있다면 , 퍼지 연산자 (AND 나 OR)를 사용하여 전건의 평가 결과를 나타내는 숫자 하나를 얻는다. 그리고 이 숫자(진리값)를 후건의 소속 함수에 적용한다.
è 규칙 전건의 논리합을 평가하려면 OR 퍼지 연산을 사용한다. 일반적으로 퍼지 전문가 시스템은 고전적인 퍼지 연산인 합집합을 사용한다.
è 그러나 OR 연산은 필요하면 동작을 쉽게 바꿀 수 있다. 이를테면 MATLAB fuzzy Logic Toolbox는 두 가지 내장 OR 함수를 제공한다.
è 규칙 전건의 논리곱을 평가하려면 AND 퍼지 연산인 교집합을 사용한다.
“클리핑되거나 스케일링된다”는 말은 무슨 뜻일까??
è 규칙 후건과 규칙 전건의 진리값을 연관지을 때 , 가장 흔히 쓰이는 방법은 단순히 후건의 소속 함수를 전건의 진리값 수준에서 자르는 것이다.
è 이 방법을 클리핑 또는 상관 최소값이라 한다.
è 소속 함수의 상단이 잘리기 때문에 클리핑된 퍼지 집합은 정보를 어느 정도 잃는다.
è 그러나 클리핑은 덜 복잡하고 계산이 빠르며 , 역퍼지화하기 쉬운 출력층을 만들기 때문에 자주 쓰인다. 클리핑을 더 많이 사용하지만 , 상관 곱이 퍼지 집합의 원형을 더 잘 보존한다.
è 규칙 후건에 대한 원래의 소속 함수는 모든 소속도에 규칙 전건의 진리값을 곱함으로써 조정된다.
그림으로 나타내면 다음과 같은 그림이 나오게 된다.
3단계 : 출력으로 나온 규칙을 통합한다.
è 통합은 모든 규칙의 출력을 단일화하는 과정이다.
è 앞 단계에서 클리핑되거나 , 스케일링된 모든 규칙 후건의 소속 함수를 퍼지집합 하나로 결합한다.
è 따라서 통합 과정의 입력은 클리핑되거나 스케일링된 후건 소속 함수의 목록이고 , 출력은 출력 변수 각각에 대한 단일 퍼지 집합이다.
4단계 : 역퍼지화
è 퍼지 추론 과정의 마지막 단계는 역퍼지화(defuzzification)이다.
è 퍼지성은 규칙을 평가하는데 도움이 되지만 , 퍼지 시스템의 최종 출력은 분명한 숫자여야 한다.
è 역퍼지화 과정에서 입력은 통합된 출력 퍼지 집합이고 , 출력은 숫자 하나이다.
위의 그림에서 보듯이 무게 중심법은 퍼지 집합의 무게 중심을 나타내는 점 A를 구간 [a,b]에서 찾아낸다.
이론적으로 무게 중심은 통합된 출력 소속함수에 있는 점들의 연속체에 대해 계산된다.
그러나 실제로는 위에서 보듯 점들의 표본을 추출하여 계산함으로써 합리적인 추정치를 얻는다.
이런 경우에는 다음 수식을 사용해서 구한다.
이제 우리 문제에서 무게 중심을 구해보자 .
일일이 구하게 되면 다음과 같은 결과값을 얻을 수 있다.
스게노형 추론
è 스게노형 퍼지 추론은 맘다니 방법과 매우 비슷하다.
è 스게노는 규칙 후건만 바뀌었을 뿐이다. 퍼지 집합 대신 스게노는 입력 변수에 대한 수학함수를 사용한다.
è 규칙 후건에 대한 소속 함수로써, 막대 하나로 된 단일체를 쓸 수 있다.
è 단일체 , 더 정확히 말하면 , 퍼지 단일체는 소속 함수가 논의 영역 위의 특정 점에서는 1이고 , 다른 모든 점에서는 0인 퍼지 집합이다.
스게노형 퍼지 규칙의 형식은 다음과 같다.
IF x가 A
AND y가 B
THEN Z는 f(x,y)
여기서 x,y,z는 언어 변수고 , A와B는 각각 논의 영역을 X와Y로 하는 퍼지 집합이다.
그리고 f(x,y)는 수학 함수이다.
퍼지 추론 시간을 줄일 수 있을까??
è 가장 흔히 쓰이는 0차 스게노 퍼지 모델은 퍼지 규칙을 다음과 같은 형태로 적용한다.
è 여기서 k는 상수다
IF x가 A
AND y가 B
THEN z는 k
이 경우 각 퍼지 규칙의 출력은 상수다.
모든 후건 소속 함수를 단일체로 표현한다.
스게노와 맘다니 방법의 유사성은 매우 비슷하다.
차이점은 규칙 후건이 스게노 방법에서는 단일체라는 점뿐이다.
결과 ( 크리스프 출력) 를 얻는 방법
다음 그림에서 보듯이 통합 연산은 단순하게 모든 단일체를 포함한다.
단일체의 가중평균 ( WA , weighted Average )
따라서 0차 스게노 시스템은 우리가 풀려는 문제의 조건을 충분히 만족시킬 것이다.
다행히 , 단일체 출력 함수는 주어진 문제의 요구 조건을 만족시키는 경우가 많다.
그렇다면 , 맘다니와 스게노 , 어느 방법을 적용할지 어떻게 결정하는것일까?
맘다니 방법은 전문가의 지식을 얻는 데 많이 쓰인다.
이 방법을 사용하면 전문 지식을 더욱 직관적이고 , 인간의 방식으로 설명할 수 있다.
그러나 맘다니형 퍼지 추론은 계산 비용이 많이 든다.
반면에 , 스게노 방법은 계산을 효율적으로 할 수 있고, 최적화나 적응형 기법과 함께 잘 작동한다.
따라서 , 스게노 방법은 제어 문제 , 특히 동적 비선형 시스템에서 매우 매력적이다.
스게노형 퍼지 추론의 기본 구조는 다음과 같다.
스게노와 다른 점은 규칙 후건의 통합을 할 때 , 연속적인 것이 아니라 , 개별적인 값들로써
역퍼지화 한다.
퍼지 전문가 시스템 구축
퍼지 전문가 시스템 설계를 설명할 예제로 , 교체 부품 서비스 센터의 운영 문제를 생각해 볼 것이다.
퍼지 전문가 시스템을 개발하는 정형적인 절차는 다음 단계와 같다.
1. 문제를 명확히 하고 언어 변수를 정의한다.
2. 퍼지 집합을 결정한다.
3. 퍼지 규칙을 구성하고 도출한다.
4. 퍼지 집합 , 퍼지 규칙 , 퍼지 추론을 수행하는 절차를 퍼지 시스템에 부호화해 넣는다
5. 시스템을 평가하고 조정한다.
이제 , 각 단계에 있어서 알아보자.
1단계
전문가 시스템을 구축하는 첫 단계이자 가장 중요한 단계는 문제를 명확히 하는 단계이다.
문제의 입출력 변수와 그 범위를 결정한다.
문제에는 핵심 언어 변수가 4개 있다. 평균 대기 시간 ( 평균 지연 시간 ) m , 서비스 센터의 수리 가동률 p , 직원수 s , 예비 부품의 초기 개수 n이다
고객의 평균 대기 시간 m은 서비스 센터의 성과를 평가하는 가장 중요한 기준이다.
실제 서비스 평균 지연 시간은 고객이 받아들일 수 있는 한계를 넘으면 안 된다.
서비스 센터의 수리 가동률 p는 고객이 방문하는 정도와 고객이 떠나는 정도의 비율이다.
고객이 방문하는 정도와 고객이 떠나는 정도의 크기는 각각 부품의 고장률과 수리율을 가리킨다.
수리율은 분명히 직원 수 s에 비례한다.
직원수가 많을수록 수리가 되는 정도는 당연히 증가할 것이기 때문이다.
서비스 센터의 생산성을 높이려면 운영자는 수리 가동률을 최대한 높여야 할 것이다.
진원수 s와 예비 부품 초기 개수 n은 고객의 평균 대기 시간에 직접 영향을 미친다.
당연한 것이다 , 부품의 초기 개수가 많을수록 고객의 평균 대기 시간은 줄어들 것이기 때문이다.
따라서 서비스 센터의 성과에 많은 영향을 줄 것이다.
S와 n을 늘림으로써 평균 대기 시간을 낮출 수 있게 될 것이다.
그러나 , 이와 함께 새 직원을 고용하는 비용과 예비 부품을 준비해 두는 비용과 서비스 센터의 재고 허용량을 늘리는 비용이 늘어날 것이다.
2단계 : 퍼지 집합을 결정
퍼지 집합은 다양한 형태를 띤다.
그러나 , 삼각형이나 사다리꼴은 전문 지식을 나타내기에 적절하고 , 계산 과정이 간편하다.
평균 지연 시간과 지원수를 정의해 준다.
수리 가동률과 , 예비 부품 개수를 정의해 준다.
정규화된 평균 지연시간과 정규화된 직원수를 다음과 같이 나타낼 수 있다.
수리 가동률과 , 정규화된 예비 부품 개수를 다음과 같이 나타낼 수 있다.
3단계 : 퍼지 규칙을 구성하고 도출한다
퍼지 규칙을 구한다.
이를 위해 전문가에게 앞에서 정의한 퍼지 언어 변수를 써서 문제를 어떻게 해결하는지 설명해 달라고 해야 한다.
필요한 지식은 책 , 컴퓨터 데이터베이스 , 흐름도 , 인간 행동 관찰 등 여러 추처를 통해 수집할 수 있다.
다른 입력 변수가 고정되었다고 가정하고 , 수리 가동률 p와 예비 부품 개수 n 사이의 매우 기본적인 관계를 먼저 이용해 본다.
이 관계는 p가 늘어나면 n은 줄어들지 않을 것이라는 식으로 나타낼 수 있다.
따라서 다음 세 규칙을 쓸 수 있다.
IF(수리 가동률이L) THEN (예비 부품 개수는S)
IF(수리 가동률이M) THEN (예비 부품 개수는 M)
IF(수리 가동률이 H) THEN (예비 부품 개수는 L)
이 결과를 바탕으로 다음과 같은 2차원 FAM을 만들 수 있다.
비례관계이다.
‘전문가의 손길’을 써서 서비스 센터 운영을 자세히 분석해 보면 , 전문가 시스템에서 사용하는 모든 변수 사이의 복잡한 관계를 나타내는 27가지 규칙을 이끌어 낼 수 있다.
다음은 3차원 FAM표현을 보여준다.
3차원으로 나타내 보면 다음과 같다.
4단계 : 퍼지 집합 , 퍼지 규칙 , 퍼지 추론을 수행하는 절차를 퍼지 시스템에 부호화
퍼지 집합과 퍼지 규칙을 정의하는 다음 단계에서는 이들을 부호화하여 실제 퍼지 전문가 시스템을 구축한다.
여기에는 두 가지 방법이 있다.
1. 프로그래밍언어를 써서 직접 시스템을 구축하는 방법
2. 퍼지 논리 개발 도구를 쓰는 방법
5단계 : 시스템을 평가하고 조정한다.
평가
시스템을 평가하고 , 조정하는 단계로써 , 손이 가장 많이 간다.
퍼지 시스템이 최초로 제시한 요구 사항을 만족하는지 확인해야 한다.
테스트 상황은 평균 지연 시간 , 직원 수 , 수리 가동률에 따라 여러 가지가 있을 수 있다.
조절
3차원 이상을 넘어설 수 있을까?? 3차원을 넘어가면 결과를 표시하기 어려워진다.
다행이도 , Fuzzy Logic Toolbox에는 특별한 기능이 있다 .
임의의 두 입력은 변화시키고 , 나머지 입력은 고정시킨 3차원 도면을 생성하는 기능이다.
퍼지 시스템 조정은 다음과 같은 순서로 수행한다.
1. 모델의 입출력 변수를 재검토하고 , 필요하면 범위를 재조정한다. 특히 변수 단위에 주의한다. 같은 영역에서 사용하는 변수는 논의 영역에서 동일한 단위를 적용해야 한다
2. 퍼지 집합을 재검토하고 , 필요하면 논의 영역에 집합을 추가한다. 범위가 넓은 퍼지 집합을 쓰면 퍼지 시스템이 세밀하지 않게 동작할 수 있기 때문이다
3. 인접한 집합들이 충분히 겹치게 한다. 얼마나 겹치면 최적인지 결정하는 정확한 방법은 없지만 , 삼각형 – 삼각형이나 사다리꼴-삼각형 퍼지 집합이 인접할 때는 일반적으로 아랫변의 25~50%가 겹치는 것을 권한다.
4. 규칙을 재검토 하고 , 필요하면 기반 규칙에 새로운 규칙을 추가한다.
5. 기반 규칙을 검토하고 , 헤지 규칙을 작성해서 시스템의 이상한 동작을 잡아낼 가능성이 있는지 알아본다
6. 규칙 실행 가중치를 바꾼다.
7. 퍼지 집합의 모양을 바꾼다 . 퍼지 시스템은 대부분 모양 근사에 높은 내성이 있다. 따라서 시스템은 퍼지 집합의 모양이 정확하게 정의되지 않은 경우에도 여전히 잘 작동할 것이다.
'학부공부 > 인공지능' 카테고리의 다른 글
Jess 기초 실습3 (0) | 2018.11.30 |
---|---|
Jess 기초 실습2 (0) | 2018.11.26 |
Jess 기초 실습 (0) | 2018.11.23 |
Jess_Download + eclipse plugins (0) | 2018.11.20 |
LISP의 Lambda 함수 ( Lambda Functions ) (0) | 2018.10.13 |
#IT #먹방 #전자기기 #일상
#개발 #일상