8. 교통 시뮬레이션
• 차들이 도로에서 움직이는 모습을 구현
• 앞차와 적당한 거리를 유지하면서
• 최대한 빠르게 이동
• 고려할 변수
• 차 사이의 거리
• 앞차와의 거리 변화량
9. 교통 시뮬레이션
• 차들의 움직임 규칙과 목표
• 목표
• 거리가 차 두 대의 길이 : 안전 거리
• 거리 변화량 0 : 안정적인 속도
• 규칙
• 거리 변화량이 0보다 작다, 거리가 차 두대의 길이보다 작다. 감속
• 거리 변화량이 0보다 크다, 거리가 차 두대 길이보다 크다 가속
• 기타 등등
12. 퍼지 제어 시스템
◦ 실제로 어떻게 동작하는가?
• 입력 ( 거리, 거리 변화량)에 대한 결과( 행동 )제어
• 예시를 통해 알아보는 퍼지 제어 시스템 동작 방식
• 입력 : 거리 = 1.3 * 차 길이, 거리 변화량 = 0.25
• 위의 논리 집합 정의에 의거
• 거리 1.3은 작음과 완벽 사이에 있다.
• 거리 변화량 0.25는 안정과 증가 사이에 있다.
• 이 입력 자체가 애매(Fuzzy)하므로 Fuzzy논리식으로 처리한다.
• Fuzzy 제어 시스템!
13. 퍼지 제어 시스템
• 거리 1.3 에 대한 Fuzzy 해석
• 작음집합에 0.75 정도
• 완벽 집합에 0.1 정도
• 거리변화량 0.25 에 대한 Fuzzy 해석
• 안정집합에 0.6 정도
• 증가 집합에 0.3 정도
14. 퍼지 제어 시스템
• 행동 규칙 표에 의거 위 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)
15. 퍼지 제어 시스템
• 감속 0.6 + 유지 0.3 +가속 0.1
• 산출된 참 영역의 무게 중심으로 계산
• 감속의 0.25 위치
• 행동 정의
• 감속이 1로 참일때 행동이 현재 속도의 절반 감속
( speed -= speed/2 )
• 감속 0.25이면 현재 속도의 1/8 감속
( speed -= speed/8 )
• 행동 해석
• 앞차와의 거리는 멀지 않지만 변화가 조금씩 커지는 상황에 속도를 약간 줄이는 적절한 행동 제어
• 이 제어 프로세스를 전체 자동차에 대하여 적용하면 원하는 모습을 볼 수 있다.
16. 퍼지 제어 시스템 다른 사용 사례들
◦ 게임에서 NPC 인공지능의 행동 결정
• 어떤 플레이어에게 더 분노하는가?
• 플레이어의 행동에 호감을 느끼는가?
• 물리현상의 해석
• 현재 바람 상태에 구름이 어떻게 이동하는가?
• 플로킹 알고리즘에서
• 보이드들이 현재 상황을 파악하는 근거 ( 분리/정렬/응집/회피 )