‘실내가 덥다’는 조건은 온도 25도에서 갑자기 거짓이고 25.1도에서 갑자기 참이 되지 않습니다. 사람의 말에는 경계가 서서히 바뀌는 표현이 많습니다. 퍼지 집합(fuzzy set)은 어떤 대상이 집합에 속하는 정도를 0과 1 사이의 값으로 나타냅니다. 1965년 로트피 자데(Lotfi A. Zadeh)가 발표한 논문은 각 대상에 0부터 1까지의 소속도를 대응시키는 소속 함수로 퍼지 집합을 정의하고 합집합, 교집합, 여집합 같은 연산을 확장했습니다.
고전 집합과 퍼지 집합의 차이
고전 집합에서 원소는 집합에 속하거나 속하지 않습니다. 특성 함수는 속하면 1, 아니면 0을 냅니다. 예를 들어 ‘온도가 30도 이상인 측정값’이라는 집합을 정확히 정하면 29.9도는 0이고 30도는 1입니다. 이 경계는 규칙이 명확한 분류에 알맞습니다.
퍼지 집합 A는 정의역 X의 각 원소 x에 소속도 μA(x)∈[0,1]을 대응합니다. ‘따뜻한 온도’라는 집합에서 18도의 소속도를 0.1, 24도를 0.7, 28도를 1로 정할 수 있습니다. 값이 0이면 소속되지 않음, 1이면 완전히 소속됨을 뜻하고 그 사이는 부분적인 소속 정도입니다. 어떤 숫자를 줄지는 관측 자료, 전문가 지식, 제어 목적과 설계 기준에 맞춰 소속 함수로 정합니다.
퍼지 집합 A의 소속 함수: μA:X→[0,1]
소속도 0.7은 확률 70%가 아닙니다
퍼지 소속도와 확률은 모두 0과 1 사이지만 묻는 질문이 다릅니다. 확률은 결과가 일어날지 모르는 불확실성을 나타냅니다. 동전 앞면 확률 0.5는 던지기 전에 어느 면이 나올지 모른다는 뜻입니다. 반면 ‘키 178cm가 큰 사람 집합에 0.7만큼 속한다’는 말은 키를 모르는 것이 아니라 ‘크다’라는 경계가 점진적임을 표현합니다.
| 구분 | 퍼지 소속도 | 확률 |
|---|---|---|
| 주요 질문 | 이 대상이 개념에 어느 정도 속하는가 | 사건이 일어날 가능성은 얼마인가 |
| 예 | 24도가 ‘따뜻함’에 0.7 소속 | 내일 비가 올 확률 0.7 |
| 합이 1이어야 하나 | 서로 다른 집합의 소속도 합은 일반적으로 제한 없음 | 서로 배반이고 전체를 이루는 사건의 확률 합은 1 |
| 불확실성 종류 | 모호한 경계와 정도 | 무작위성 또는 지식 부족 |
한 온도가 ‘따뜻함’에 0.7이면서 ‘더움’에 0.4일 수 있고 두 값의 합이 1.1이어도 모순이 아닙니다. 소속 함수들이 확률분포처럼 서로의 몫을 나누는 것이 아니기 때문입니다. 퍼지 논리와 확률을 결합하는 모형도 있지만 기본 개념은 구분해야 합니다.
삼각형 소속 함수 계산
간단한 소속 함수로 삼각형 함수가 자주 사용됩니다. 세 점 a<b<c를 정하고 a 이하와 c 이상에서는 0, a에서 b까지는 0에서 1로 선형 증가, b에서 c까지는 1에서 0으로 선형 감소하게 만듭니다. 꼭짓점 b에서 소속도가 1입니다.
μ(x)=0 (x≤a 또는 x≥c), (x-a)/(b-a) (a<x≤b), (c-x)/(c-b) (b<x<c)
‘따뜻함’을 (a,b,c)=(18,24,30)으로 정하면 21도의 소속도는 (21-18)/(24-18)=0.5입니다. 24도는 1이고 27도는 (30-27)/(30-24)=0.5입니다. 이 숫자는 예시로 정한 함수의 결과이며 모든 환경에서 통용되는 객관적 온도 기준은 아닙니다. 같은 단어라도 주거 공간, 냉장 시설, 공정 제어에 따라 범위를 다르게 설계합니다.
교집합·합집합·여집합의 기본 연산
자데의 고전적 정의에서는 두 퍼지 집합 A와 B의 교집합 소속도를 min(μA,μB), 합집합을 max(μA,μB), 여집합을 1-μA로 정합니다. 어떤 대상의 ‘따뜻함’ 소속도가 0.7이고 ‘습함’ 소속도가 0.4라면 ‘따뜻하고 습함’은 min(0.7,0.4)=0.4, ‘따뜻하거나 습함’은 max(0.7,0.4)=0.7입니다. ‘따뜻하지 않음’은 1-0.7=0.3입니다.
| 연산 | 고전적 퍼지식 | μA=0.7, μB=0.4 |
|---|---|---|
| NOT A | 1-μA | 0.3 |
| A AND B | min(μA,μB) | 0.4 |
| A OR B | max(μA,μB) | 0.7 |
min과 max만이 유일한 퍼지 AND·OR는 아닙니다. AND를 곱 μAμB로 정하는 product t-norm, OR를 μA+μB-μAμB로 정하는 probabilistic sum 등 여러 t-norm과 t-conorm이 있습니다. 선택한 연산은 추론 결과를 바꾸므로 시스템 명세에서 명확히 밝혀야 합니다. ‘퍼지 논리는 언제나 min과 max를 쓴다’고 단정하면 정확하지 않습니다.
퍼지 제어기의 네 단계
- 퍼지화: 센서의 정확한 입력값을 여러 언어 변수의 소속도로 바꿉니다.
- 규칙 평가: ‘온도가 높고 습도가 높으면 팬을 빠르게’ 같은 IF–THEN 규칙의 활성도를 계산합니다.
- 집계: 여러 규칙이 제안한 출력 퍼지 집합을 하나로 합칩니다.
- 비퍼지화: 합쳐진 퍼지 출력을 모터 속도처럼 실행 가능한 하나의 수치로 바꿉니다.
에어컨 팬 속도 예제로 보는 퍼지 추론
현재 온도에서 ‘보통’ 소속도가 0.3, ‘높음’ 소속도가 0.7이라고 하겠습니다. 습도는 ‘낮음’ 0.2, ‘높음’ 0.8입니다. 규칙 1이 ‘온도가 높고 습도가 높으면 팬을 빠르게’, 규칙 2가 ‘온도가 보통이면 팬을 중간으로’라면 min AND를 쓸 때 규칙 1 활성도는 min(0.7,0.8)=0.7이고 규칙 2는 0.3입니다.
Mamdani 방식의 한 구현에서는 각 규칙의 출력 소속 함수를 활성도 높이에서 잘라 낸 뒤 max로 합칩니다. 그 결과는 ‘중간’과 ‘빠름’이 겹친 하나의 퍼지 집합입니다. 실제 팬 모터에는 한 숫자가 필요하므로 마지막에 비퍼지화를 합니다.
무게중심 비퍼지화
대표적인 비퍼지화 방법은 합쳐진 출력 소속 함수 μ(y)의 면적 중심을 구하는 무게중심법입니다. 연속형에서는 yμ(y)를 적분한 값을 μ(y)의 적분으로 나눕니다. 이산 표본에서는 가중평균 형태로 계산할 수 있습니다.
y* = ∫yμ(y)dy / ∫μ(y)dy
예를 들어 단순화한 출력 후보가 팬 속도 50에 활성도 0.3, 속도 90에 활성도 0.7이라고 가정하면 가중평균은 (50×0.3+90×0.7)/(0.3+0.7)=78입니다. 다만 이는 싱글턴 출력으로 단순화한 계산입니다. 실제 Mamdani 무게중심은 잘리거나 축소된 출력 함수 전체의 모양과 겹침을 적분하므로 단순히 규칙 중심값만 평균한 결과와 다를 수 있습니다.
Mamdani 방식과 Sugeno 방식
Mamdani 계열은 규칙의 결론도 ‘느림·중간·빠름’ 같은 퍼지 집합으로 표현하고 이를 집계한 뒤 비퍼지화합니다. Sugeno 계열은 규칙의 결론을 상수 또는 입력의 함수로 둡니다. 각 규칙의 출력값을 활성도로 가중평균하기 쉬워 계산이 간결합니다. 두 방식 모두 퍼지 규칙을 쓰지만 출력 표현과 계산 절차가 다릅니다.
소속 함수 모양과 규칙은 어떻게 정하나
삼각형과 사다리꼴 함수는 계산과 해석이 간단하고, 가우스 함수는 부드럽게 변합니다. 함수의 중심과 폭, 겹침 구간은 전문가가 공정 지식을 바탕으로 정하거나 측정 자료에 맞춰 조정할 수 있습니다. 어떤 방법을 쓰든 같은 입력에 같은 출력을 재현하려면 소속 함수, AND·OR 연산, 함의 방식, 집계와 비퍼지화 방법을 모두 명세해야 합니다.
소속도는 자연에서 자동으로 하나만 주어지는 값이 아닙니다. ‘키가 크다’의 함수는 연령과 집단, 적용 목적에 따라 달라질 수 있습니다. 이 점은 퍼지 논리가 자의적이라는 뜻이 아니라 모형의 가정이 함수에 들어간다는 뜻입니다. 통계 모형에서 분포나 손실 함수를 공개하듯 퍼지 시스템도 설계 기준을 공개해야 검증할 수 있습니다.
퍼지 논리와 다값 논리의 관계
퍼지 집합은 소속 정도를 다루고, 퍼지 논리는 이 값을 논리 규칙에 사용합니다. 참값이 0 또는 1만 있는 고전 논리와 달리 중간값을 허용하지만, 값이 0.7이라는 이유만으로 문장이 70% 확률로 참이라는 뜻은 아닙니다. 또한 모든 다값 논리가 동일한 min·max 연산을 쓰는 것도 아닙니다. 퍼지 논리는 소속 함수와 선택한 연산 체계로 정의됩니다.
장점과 한계를 사실대로 구분하기
- 언어적 규칙과 점진적인 경계를 수식으로 표현할 수 있습니다.
- 복잡한 물리 모형이 없어도 전문가 규칙으로 제어기를 구성할 수 있습니다.
- 규칙과 소속 함수를 읽을 수 있어 작동 논리를 설명하기 쉬운 경우가 많습니다.
- 소속 함수와 규칙 설계가 부적절하면 결과도 부적절합니다. 자동으로 정확성을 보장하지 않습니다.
- 확률적 잡음과 미래 사건의 가능성을 다루는 확률 모형을 소속도만으로 대체할 수 없습니다.
- 규칙과 입력 변수가 많아지면 조합 수가 급증하는 규칙 폭발 문제가 생길 수 있습니다.
자주 묻는 질문
소속도는 반드시 합이 1이어야 하나요?
아닙니다. 한 대상이 여러 퍼지 집합에 겹쳐 속할 수 있고 각 소속도의 합이 1일 필요가 없습니다. 확률분포의 정규화 조건을 퍼지 소속도에 그대로 적용하지 않습니다.
0.5는 반만 참이라는 뜻인가요?
선택한 소속 함수에서 해당 개념에 속하는 정도가 0.5라는 뜻입니다. 이 값을 어떻게 언어적으로 읽을지는 개념과 설계에 달려 있습니다. 사건이 절반의 확률로 발생한다는 뜻은 아닙니다.
퍼지 논리는 정확한 계산을 하지 않나요?
입력, 소속 함수와 연산 규칙이 정해지면 출력은 정확한 수식으로 계산됩니다. ‘퍼지’는 계산이 대충이라는 말이 아니라 집합의 경계와 언어적 개념을 단계적인 소속도로 표현한다는 뜻입니다.
퍼지 논리 핵심 정리
퍼지 집합 A는 각 대상 x에 0부터 1까지의 소속도 μA(x)를 줍니다. 고전적 연산에서는 교집합을 min, 합집합을 max, 여집합을 1-μ로 계산하지만 다른 t-norm과 t-conorm도 사용할 수 있습니다. 제어 시스템은 정확한 입력을 소속도로 바꾸고, IF–THEN 규칙을 평가하고, 출력을 합친 뒤 무게중심 같은 방법으로 하나의 실행값을 얻습니다.
소속도는 확률과 같은 숫자 범위를 쓰지만 의미는 다릅니다. 확률은 사건 발생의 불확실성을, 퍼지 소속도는 개념 경계의 정도를 나타냅니다. 두 값을 구별하고 소속 함수와 연산 규칙을 명확히 공개해야 퍼지 계산을 재현하고 해석할 수 있습니다.