GPG 3.8 퍼지 논리

Post on 10-Aug-2015

120 views 3 download

Transcript of GPG 3.8 퍼지 논리

퍼지 논리GPG STUDY 3.8

기존 명제 논리

Q. 세빈이는 키가 크다• TRUE or FALSE?• 180cm 이상이면 키가 크다 .

100 110 120 130 140 150 160 170 180 190 2000

1

TRUEFALSE

Q. 세빈이는 키가 크다 ?• 절대적인 기준이 되는가 ?• 180cm 쯤이면 키가 큰 축에 속한다 .

100 110 120 130 140 150 160 170 180 190 2000

1

쫌 커

안 커

키 커

퍼지 집합A 키가 대략 6 피트인 사람의 집합 B 키가 제법 큰 사람의 집합

퍼지 논리의 연산A and B A or B not B

퍼지논리를 게임에 써보자•심시티의 교통 시뮬레이션을 만들자

교통 시뮬레이션•차들이 도로에서 움직이는 모습을 구현• 앞차와 적당한 거리를 유지하면서• 최대한 빠르게 이동

•고려할 변수• 차 사이의 거리• 앞차와의 거리 변화량

교통 시뮬레이션•차들의 움직임 규칙과 목표

• 목표• 거리가 차 두 대의 길이 : 안전 거리• 거리 변화량 0 : 안정적인 속도

• 규칙• 거리 변화량이 0 보다 작다 , 거리가 차 두대의 길이보다 작다 . 감속• 거리 변화량이 0 보다 크다 , 거리가 차 두대 길이보다 크다 가속• 기타 등등

교통 시뮬레이션•논리 제어 형식으로 변경• 거리 , 상대속도 , 행동 에 대한 집합을 정의

교통 시뮬레이션•논리 제어 형식으로 변경• 행동 규칙을 정의

퍼지 제어 시스템◦ 실제로 어떻게 동작하는가 ?• 입력 ( 거리 , 거리 변화량 ) 에 대한 결과 ( 행동 ) 제어

• 예시를 통해 알아보는 퍼지 제어 시스템 동작 방식• 입력 : 거리 = 1.3 * 차 길이 , 거리 변화량 = 0.25• 위의 논리 집합 정의에 의거• 거리 1.3 은 작음과 완벽 사이에 있다 .• 거리 변화량 0.25 는 안정과 증가 사이에 있다 .• 이 입력 자체가 애매 (Fuzzy) 하므로 Fuzzy 논리식으로 처리한다 .• Fuzzy 제어 시스템 !

퍼지 제어 시스템• 거리 1.3 에 대한 Fuzzy 해석 • 작음집합에 0.75 정도• 완벽 집합에 0.1 정도

• 거리변화량 0.25 에 대한 Fuzzy 해석 • 안정집합에 0.6 정도• 증가 집합에 0.3 정도

퍼지 제어 시스템• 행동 규칙 표에 의거 위 2x2 입력 쌍에 대한 4 가지 행동 결과 산출• 거리 작음 AND 거리 변화량 안정 감속• 거리 작음 AND 거리 변화량 증가 유지• 거리 완벽 AND 거리 변화량 증가 가속• 거리 완벽 AND 거리 변화량 안정 유지

• Fuzzy 논리의 AND 연산 값으로 각 행동선택의 weight 를 부여한다 .• 거리 작음 (0.75) AND 거리 변화량 안정 (0.6) 감속 ( 0.6 )• 거리 작음 (0.75) AND 거리 변화량 증가 (0.3) 유지 (0.3)• 거리 완벽 (0.1) AND 거리 변화량 증가 (0.3) 가속 (0.1)• 거리 완벽 (0.1) AND 거리 변화량 안정 (0.6) 유지 (0.1)

퍼지 제어 시스템• 감속 0.6 + 유지 0.3 + 가속 0.1 • 산출된 참 영역의 무게 중심으로 계산• 감속의 0.25 위치

• 행동 정의• 감속이 1 로 참일때 행동이 현재 속도의 절반 감속

( speed -= speed/2 )• 감속 0.25 이면 현재 속도의 1/8 감속 ( speed -= speed/8 )

• 행동 해석• 앞차와의 거리는 멀지 않지만 변화가 조금씩 커지는 상황에 속도를 약간 줄이는 적절한 행동 제어• 이 제어 프로세스를 전체 자동차에 대하여 적용하면 원하는 모습을 볼 수 있다 .

퍼지 제어 시스템 다른 사용 사례들◦ 게임에서 NPC 인공지능의 행동 결정

• 어떤 플레이어에게 더 분노하는가 ?• 플레이어의 행동에 호감을 느끼는가 ?

• 물리현상의 해석• 현재 바람 상태에 구름이 어떻게 이동하는가 ?

• 플로킹 알고리즘에서• 보이드들이 현재 상황을 파악하는 근거 ( 분리 / 정렬 / 응집 / 회피 )