방송대 인공지능 7강: 퍼지집합과 퍼지추론
“수위가 조금 높다”는 입력을 받아 밸브를 얼마나 열어야 할까? 퍼지이론은 모호한 말을 0과 1 사이의 소속도로 표현하고, 연산과 IF-THEN 규칙을 거쳐 실제 제어값으로 바꾸는 방법을 제공한다. 이 글에서는 고전집합과의 차이부터 Mamdani 퍼지추론과 비퍼지화까지를 하나의 판단 흐름으로 연결한다.
경계값 하나로 자르면 37.9℃의 의미를 놓친다
고전적인 판정은 대상이 집합에 속하는지를 0또는 1로 나눈다. 예를 들어 38℃ 미만을 ‘정상’으로 정하면 37.9℃는 정상이고 38.0℃는 정상이 아니다. 그런데 0.1℃의 차이가 개념의 성격을 완전히 바꾸는 것으로 보기 어려운 상황이 있다. 퍼지이론은 이처럼 참과 거짓, 포함과 비포함의 경계가 점진적인 문제를 다룬다.
핵심은 경계를 없애는 것이 아니라, 경계 근처의 ‘얼마나 그런가’를 수치로 표현하는 것이다. 예컨대 ‘수위가 높다’의 소속도가 0.8이라면 입력이 ‘높다’는 언어적 개념에 강하게 부합한다는 뜻이다. 이 값을 이용하면 ‘높다면 밸브를 연다’는 규칙을 부분적으로 발화시킬 수 있다.
전제를 분명히 하기: 이 글의 체온과 수위 예시는 퍼지 개념을 익히기 위한 학습 상황이다. 실제 의료 판단이나 제어기 설계에서는 도메인 기준과 검증된 소속함수를 사용해야 한다.
소속함수는 대상과 언어적 개념을 연결한다
퍼지집합 A의 소속함수 μA(x)는 정의역 X의 각 원소 x를 [0, 1]의 값에 대응시킨다. μA(x)=1이면 x가 A에 완전히 속하고, 0이면 속하지 않으며, 사이값은 부분적 소속을 나타낸다. 고전집합은 소속도로 0과 1만 허용하는 퍼지집합의 특수한 경우로 볼 수 있다.
| 비교 기준 | 고전집합 | 퍼지집합 |
|---|---|---|
| 소속도 | 0 또는 1 | 0부터 1 사이의 실수 |
| 경계 | 명확한 포함·비포함 | 부분적 소속을 허용 |
| 표현 예 | {2, 3} | {(2, 1.0), (3, 0.5)} |
| 적합한 질문 | “원소인가?” | “얼마나 그 개념에 부합하는가?” |
소속도를 “그 사건이 발생할 확률”로 읽으면 오류가 난다. 소속도는 정해진 원소가 특정 개념에 부합하는 정도다. 예를 들어 키 175cm의 ‘큰 사람’ 소속도가 0.6이라는 표현은 그 사람의 키가 175cm일 확률이 60%라는 뜻이 아니다. ‘크다’는 개념에 대한 부합도가 0.6이라는 뜻이다.
판단 핵심: 불확실성은 ‘무슨 결과가 일어날지 모른다’에 초점을 두고, 퍼지성은 ‘개념의 경계가 모호하다’에 초점을 둔다.
max·min·1−μ로 연산하면 부분적 소속을 보존한다
강의에서 퍼지집합의 여집합은 1에서 소속도를 뺀 값, 합집합은 두 소속도의 최댓값, 교집합은 최솟값으로 정의한다.
- 여집합: μĀ(x)=1−μA(x)
- 합집합: μA∪B(x)=max(μA(x), μB(x))
- 교집합: μA∩B(x)=min(μA(x), μB(x))
직접 계산하는 새 예제
정의역을 {18, 22, 26, 30}℃로 두고, 학습을 위해 임의로 구성한 퍼지집합 A=‘쾌적하다’와 B=‘따뜻하다’의 소속도를 다음과 같이 정하자. 이 수치는 실제 기상·생리 기준이 아니라 연산 연습용 가정이다.
| x(℃) | μA(x) | μB(x) | μA∪B(x) | μA∩B(x) | μĀ(x) |
|---|---|---|---|---|---|
| 18 | 0.2 | 0.0 | 0.2 | 0.0 | 0.8 |
| 22 | 1.0 | 0.3 | 1.0 | 0.3 | 0.0 |
| 26 | 0.6 | 0.8 | 0.8 | 0.6 | 0.4 |
| 30 | 0.0 | 1.0 | 1.0 | 0.0 | 1.0 |
26℃에서 합집합은 max(0.6, 0.8)=0.8, 교집합은 min(0.6, 0.8)=0.6, A의 여집합은 1−0.6=0.4다. 각 연산을 행별로 적용하면 표 전체를 복원할 수 있다.
이 연산들은 교환법칙·결합법칙·분배법칙·드모르간 법칙 등 고전집합의 성질을 대부분 만족한다. 하지만 소속도가 0과 1 사이이면 A∪Ā=U와 A∩Ā=∅가 일반적으로 성립하지 않는다. 예를 들어 μA(x)=0.6이면 μA∪Ā(x)=max(0.6,0.4)=0.6이고 μA∩Ā(x)=min(0.6,0.4)=0.4다.
퍼지논리는 참의 정도를 계산하되 연산자를 구분한다
고전논리의 명제는 참 1 또는 거짓 0을 갖지만, 퍼지논리의 논리값은 [0,1]의 범위를 갖는다. 강의가 제시한 Łukasiewicz 연산자에서 부정은 1−a, 논리곱은 min(a,b), 논리합은 max(a,b), 조건명제는 min(1, 1−a+b)다.
| 연산 | Łukasiewicz 계산식 | a=0.7, b=0.3일 때 | 해석 |
|---|---|---|---|
| 부정 | ~a=1−a | 0.3 | a에 부합하지 않는 정도 |
| 논리곱 | a∧b=min(a,b) | 0.3 | 두 조건 중 약한 쪽이 제한 |
| 논리합 | a∨b=max(a,b) | 0.7 | 두 조건 중 강한 쪽을 반영 |
| 조건명제 | a→b=min(1,1−a+b) | 0.6 | min(1, 1−0.7+0.3) |
조건명제는 정의가 하나로 고정되지 않을 수 있다. 강의에 소개된 Kleene 식 max(1−a,b)를 같은 값에 적용하면 max(0.3,0.3)=0.3이다. 두 식은 a,b가 0또는 1일 때는 고전 조건명제와 같은 끝점을 만들지만, 중간값에서는 결과가 다르다. 따라서 문제에 어떤 연산자를 사용하라고 했는지를 먼저 확인해야 한다.
오개념 방지: Łukasiewicz의 조건명제 min(1,1−a+b)와 Mamdani 퍼지추론에서 퍼지관계를 구현하는 min(a,b)를 같은 식으로 혼동하지 않는다. 어떤 논리 또는 추론 방식을 선택했는지가 식을 결정한다.
IF-THEN 규칙은 언어적 입력을 부분적 결론으로 전파한다
퍼지규칙은 “IF A THEN B”의 형태로 쓰며, 조건부 A와 결론부 B에 ‘높다’, ‘조금 높다’, ‘연다’ 같은 언어적 레이블을 쓴다. 사실 A′이 규칙의 조건 A와 정확히 같지 않아도 두 소속함수가 겹치는 정도를 구해 규칙을 부분적으로 적용할 수 있다.
강의의 Mamdani 방식에서 입력 사실 A′과 퍼지관계 A→B를 합성하면 B′=A′∘(A→B)를 얻는다. 조건부의 일치도 α는 A′과 A의 각 지점 소속도를 min으로 결합한 뒤 그 값들의 max를 취해 구한다. 그런 다음 결론 B의 소속함수를 α 높이에서 자른다. 수식으로는 μB′(y)=min(α,μB(y))다.
중간 계산을 생략하지 않는 연습
어떤 세 지점에서 입력 A′의 소속도가 (0.2, 0.8, 0.4), 규칙 조건 A의 소속도가 (0.3, 0.6, 0.9)라고 가정하자. 지점별 min은 (0.2, 0.6, 0.4)이고, 그 중 max는 0.6이므로 α=0.6이다. 결론 B의 세 지점 소속도가 (0.1, 0.5, 0.9)라면 추론된 B′는 (0.1, 0.5, 0.6)이 된다. 마지막 0.9가 0.6으로 잘린 이유는 규칙의 발화 강도보다 강한 결론을 내지 않기 위해서다.
두 번의 취합: 하나의 규칙 안에서는 조건 일치도가 결론 모양을 제한한다. 여러 규칙이 동시에 발화되면 각 규칙의 결론을 다시 max, 즉 OR로 합쳐 하나의 퍼지 출력을 만든다.
퍼지제어기는 퍼지화·추론·비퍼지화를 순환시킨다
제어 대상의 센서가 내놓는 값은 수위, 온도, 속도처럼 하나의 수치다. 그러나 규칙은 ‘낮다’, ‘높다’처럼 퍼지 개념을 사용한다. 따라서 퍼지제어기는 입력과 출력의 표현을 바꾸는 단계를 필요로 한다.
- 퍼지화: 실수 입력을 여러 언어적 레이블의 소속도로 바꾼다. 하나의 수위가 ‘낮다’ 0.2이면서 ‘높다’ 0.7일 수도 있다.
- 지식베이스 참조: 소속함수의 정의와 IF-THEN 규칙 목록이 어떤 결론을 낼지 결정한다.
- 추론: 각 규칙의 발화 강도를 구하고, 결론부를 자른 뒤 여러 결론을 종합한다.
- 비퍼지화: 종합된 퍼지 출력을 밸브 각도처럼 제어 대상에 전달할 단일 실수값으로 바꾼다.
- 피드백: 제어 결과로 바뀐 상태가 다시 입력이 되어 다음 판단을 만든다.
흐름 판별: 퍼지화는 ‘수치→소속도’, 비퍼지화는 ‘소속도로 표현된 결론→제어 수치’다. 두 단계를 반대로 기억하면 제어기 구조 문제를 틀리기 쉽다.
물탱크 제어는 두 규칙의 타협을 하나의 각도로 바꾼다
강의의 물탱크 예제는 배수 밸브를 조절해 수위를 적정 수준으로 유지하는 시스템이다. 규칙 1은 “IF 수위가 높다 THEN 밸브를 연다”이고, 규칙 2는 “IF 수위가 낮다 THEN 밸브를 닫는다”다. 중간 수위에서는 ‘높다’와 ‘낮다’의 소속도가 모두 0보다 클 수 있으므로 두 규칙이 동시에 서로 다른 강도로 발화한다.
추론부는 입력 수위가 ‘높다’에 부합하는 정도 α1로 ‘연다’ 결론을 자르고, ‘낮다’에 부합하는 정도 α2로 ‘닫는다’ 결론을 자른다. 두 결론을 OR로 합치면 밸브 각도 전체에 대한 퍼지 출력 모양이 된다. 강의 예시에서는 이 모양을 비퍼지화해 58°라는 단일 제어값을 얻는다.
여기서 58°는 어느 하나의 규칙이 직접 낸 값이 아니다. 두 규칙의 부분적 결론을 합친 퍼지 집합을 실제 구동기가 사용할 수 있는 값으로 환산한 결과다. 따라서 수치를 외우기보다 ‘입력의 중첩 소속→복수 규칙 발화→결론 종합→단일 값’의 인과 흐름을 이해해야 한다.
식을 고르기 전에 질문의 대상을 확인한다
퍼지이론 문제에서 계산 실수는 대부분 어떤 대상을 연산하는지 구분하지 않아서 생긴다. 아래 순서로 확인하면 집합 연산, 논리 연산, 추론, 제어 단계를 섞지 않을 수 있다.
- 묻는 값이 소속도인가? 여집합이면 1−μ, 합집합이면 max, 교집합이면 min을 적용한다.
- 명제의 논리값을 묻는가? 부정·논리곱·논리합을 구분하고, 조건명제라면 지정된 연산자가 Łukasiewicz인지 Kleene인지 확인한다.
- 규칙의 발화 강도를 묻는가? A′과 A의 겹침을 지점별 min 후 전체 max로 요약해 α를 구한다.
- 퍼지 결론을 묻는가? 각 y에서 min(α,μB(y))로 결론 집합을 자른다.
- 실제 제어값을 묻는가? 복수 규칙의 결론을 종합한 뒤 비퍼지화 단계까지 수행해야 한다.
자가 점검: ‘방 온도가 26℃일 때 따뜻함의 소속도가 0.8이다’에서 입력 수치, 언어적 레이블, 소속도를 각각 짚어 보자. 답은 26℃, ‘따뜻하다’, 0.8이다. 이 세 역할을 구분해야 퍼지화와 추론의 입력을 혼동하지 않는다.
핵심 개념 정리
- 모호성의 표현: 퍼지집합은 원소의 소속을 [0,1]의 정도로 표현하며, 고전집합은 0과 1만 쓰는 특수한 경우다.
- 집합 연산: 여집합은 1−μ, 합집합은 max, 교집합은 min으로 구하며 배중률과 모순율은 일반적으로 성립하지 않는다.
- 퍼지논리: 참의 정도를 중간값으로 다루며, 조건명제의 결과는 선택한 연산자에 따라 달라질 수 있다.
- 퍼지추론: 사실과 규칙 조건의 겹침으로 발화 강도를 구하고, 결론부를 그 강도로 제한한다.
- 퍼지제어: 퍼지화로 입력을 언어적 소속도로 바꾸고, 지식베이스의 규칙을 추론한 뒤, 비퍼지화로 단일 제어값을 얻는다.
퍼지이론을 풀 때는 ‘수치 입력이 어느 개념에 얼마나 속하는가→어떤 규칙이 얼마나 발화하는가→결론이 어떤 모양으로 제한되는가→여러 결론을 어떻게 하나의 제어값으로 바꾸는가’의 순서를 따라간다. 이 흐름이 소속함수, max-min 연산, IF-THEN 규칙과 퍼지제어기를 하나의 시스템으로 묶어 준다.
예상문제 10선
1. 퍼지집합의 소속도에 대한 설명으로 가장 적절한 것은?
정답입니다.
오답입니다. 답안을 다시 선택해 보세요.
정답 및 해설 보기
정답: ②
- ① 오답: 발생 빈도나 확률이 아니라 모호한 개념에 대한 부합 정도를 다룬다.
- ② 정답: 소속함수 μA(x)는 원소 x를 [0,1]의 부합도로 대응시킨다.
- ③ 오답: 0과 1만 허용하는 것은 고전집합이며, 퍼지집합은 중간값을 허용한다.
- ④ 오답: 측정값은 소속함수의 입력이고, 소속도는 그 입력을 개념에 대해 평가한 값이다.
2. μA(x)=0.35, μB(x)=0.8일 때 μA∪B(x), μA∩B(x), μĀ(x)를 순서대로 올바르게 나열한 것은?
정답입니다.
오답입니다. 답안을 다시 선택해 보세요.
정답 및 해설 보기
정답: ④
- ① 오답: 합집합에 min, 교집합에 max를 거꾸로 적용한 결과다.
- ② 오답: 교집합은 1−0.35가 아니라 min(0.35,0.8)=0.35다.
- ③ 오답: 0.65는 A의 여집합 값이며 합집합 값이 아니다.
- ④ 정답: 합집합은 max로 0.8, 교집합은 min으로 0.35, 여집합은 1−0.35=0.65다.
3. “퍼지집합도 고전집합처럼 A∪Ā=U와 A∩Ā=∅를 항상 만족한다”는 주장을 평가한 것으로 올바른 것은?
정답입니다.
오답입니다. 답안을 다시 선택해 보세요.
정답 및 해설 보기
정답: ①
- ① 정답: 예를 들어 μ=0.6이면 합집합은 0.6, 교집합은 0.4이므로 배중률과 모순율이 성립하지 않는다.
- ② 오답: 퍼지집합은 0과 1 사이의 소속도를 허용하며, 그것이 예외가 생기는 이유다.
- ③ 오답: 강의의 기본 연산에서 합집합은 max, 교집합은 min이며 평균이 아니다.
- ④ 오답: 퍼지 여집합은 1−μ로 명확히 정의된다.
4. a=0.7, b=0.3일 때 Łukasiewicz 조건명제와 Kleene 조건명제의 값을 순서대로 올바르게 구한 것은?
정답입니다.
오답입니다. 답안을 다시 선택해 보세요.
정답 및 해설 보기
정답: ③
- ① 오답: 두 연산자의 계산 결과를 거꾸로 배치했다.
- ② 오답: 0.7은 max(a,b)인 논리합 값이며 Łukasiewicz 조건명제 값이 아니다.
- ③ 정답: min(1,1−0.7+0.3)=0.6이고 max(1−0.7,0.3)=0.3이다.
- ④ 오답: 1이 되려면 Łukasiewicz 식의 1−a+b가 1 이상이어야 하는데 주어진 값에서는 0.6이다.
5. 입력 A′과 규칙 조건 A의 지점별 min 값이 (0.2, 0.6, 0.4)이고, 결론 B의 소속도가 (0.1, 0.5, 0.9)일 때 Mamdani 방식의 발화 강도 α와 B′은?
정답입니다.
오답입니다. 답안을 다시 선택해 보세요.
정답 및 해설 보기
정답: ④
- ① 오답: α는 지점별 min 값의 최솟값이 아니라 최댓값이다.
- ② 오답: 0.4는 세 겹침 값 중 하나일 뿐이며, 전체 max는 0.6이다.
- ③ 오답: α를 결론 B의 최댓값에서 골랐다. α는 A′과 A의 겹침으로 구한다.
- ④ 정답: max(0.2,0.6,0.4)=0.6이고 각 결론값에 min(0.6,·)를 적용하면 (0.1,0.5,0.6)이다.
6. 퍼지제어기가 실수 센서 입력을 받아 실수 제어값을 내기까지의 주요 순서로 가장 적절한 것은?
정답입니다.
오답입니다. 답안을 다시 선택해 보세요.
정답 및 해설 보기
정답: ②
- ① 오답: 비퍼지화는 퍼지 결론을 얻은 후에 실수 출력으로 바꾸는 마지막 단계다.
- ② 정답: 실수 입력을 소속도로 바꿈 후 규칙을 적용하고, 종합된 결론을 다시 실수로 바꾼다.
- ③ 오답: 규칙과 소속함수는 제어기의 지식베이스를 이루며 제거 대상이 아니다.
- ④ 오답: 추론이 이루어지기 전에 비퍼지화할 퍼지 결론이 존재하지 않는다.
7. 물탱크의 현재 수위가 ‘높다’와 ‘낮다’에 모두 부분적으로 속할 때 퍼지제어기의 처리로 올바른 것은?
정답입니다.
오답입니다. 답안을 다시 선택해 보세요.
정답 및 해설 보기
정답: ③
- ① 오답: 중첩 영역에서는 여러 규칙의 부분적 결론을 함께 반영하는 것이 퍼지제어의 장점이다.
- ② 오답: 0또는 1로 강제하면 중간 소속도를 이용하는 정보가 사라진다.
- ③ 정답: 각 조건의 소속도가 규칙 발화 강도가 되고, 잘린 결론들을 종합해 하나의 퍼지 출력을 만든다.
- ④ 오답: 각 규칙은 먼저 퍼지 결론을 내며, 실수 각도는 결론 종합 후 비퍼지화에서 얻는다.
8. 퍼지화와 비퍼지화의 역할을 올바르게 비교한 것은?
정답입니다.
오답입니다. 답안을 다시 선택해 보세요.
정답 및 해설 보기
정답: ①
- ① 정답: 퍼지화와 비퍼지화는 제어기 입구와 출구에서 반대 방향의 표현 변환을 담당한다.
- ② 오답: 퍼지화는 고전집합으로 자르는 과정이 아니라 중첩된 소속도를 구하는 과정이다.
- ③ 오답: 규칙 관리는 지식베이스의 역할이며, 두 변환 단계의 정의가 아니다.
- ④ 오답: 적용 위치를 거꾸로 설명했다. 퍼지화는 입력, 비퍼지화는 출력 단계다.
9. 퍼지규칙의 특징으로 올바른 것은?
정답입니다.
오답입니다. 답안을 다시 선택해 보세요.
정답 및 해설 보기
정답: ④
- ① 오답: 퍼지규칙의 조건부와 결론부는 ‘높다’처럼 언어적 변수와 레이블을 사용할 수 있다.
- ② 오답: 완전 일치가 아니어도 소속함수의 겹침으로 발화 강도를 구할 수 있다.
- ③ 오답: 여러 규칙의 결론을 OR로 종합해 하나의 퍼지 출력을 만든다.
- ④ 정답: 언어적 레이블과 부분적 규칙 발화가 퍼지추론이 모호한 입력을 다룰 수 있게 하는 핵심이다.
10. 새로운 퍼지 온도 제어기를 설명한 것 중 입력에서 출력까지의 정보 흐름이 가장 완전한 것은?
정답입니다.
오답입니다. 답안을 다시 선택해 보세요.
정답 및 해설 보기
정답: ③
- ① 오답: 0과 1로 즉시 자르면 경계 근처의 중간 정보와 복수 규칙의 타협을 활용하지 못한다.
- ② 오답: 퍼지화와 비퍼지화의 순서와 변환 방향을 모두 반대로 설명했다.
- ③ 정답: 입력 퍼지화, 규칙 추론과 결론 종합, 출력 비퍼지화까지 전체 제어 흐름을 바르게 연결했다.
- ④ 오답: 소속함수의 중첩과 여러 규칙의 동시 발화는 제거할 오류가 아니라 퍼지제어의 핵심 자원이다.
참고 자료와 작성 기준
이 글은 해당 차시 강의자료를 바탕으로 학습 목적에 맞게 재구성한 비공식 학습자료입니다. 개념 관계, 계산 예제, 오개념 분석과 문제 해설은 학습자의 이해를 돕도록 새로 구성하고 검토했습니다.
- 작성·편집: 올에이클래스 학습연구팀
- 주요 근거: 한국방송통신대학교 컴퓨터과학과 『인공지능』 7강 “퍼지이론” 강의록(2025년 제작 파일)
- 보충 자료: 외부 보충 자료 없음
- 편집 원칙: 올에이클래스 편집 정책
- 최종 내용 검토: 2026-08-17
댓글
댓글 쓰기