LLMs-Powered Real-Time Fault Injection: An Approach Toward Intelligent Fault Test Cases Generation
이 논문은 ISO 26262 표준에 따른 자동차 소프트웨어의 실시간 고장 주입 테스트에서 수동 작업의 한계를 극복하고, GPT-4o 를 활용한 대규모 언어 모델 기반의 고장 테스트 케이스 자동 생성 기법을 제안하여 테스트 효율성과 안전성을 동시에 향상시키는 방법을 제시합니다.
원저자:Mohammad Abboush, Ahmad Hatahet, Andreas Rausch
현대 자동차는 컴퓨터로 제어되는 기능이 정말 많습니다. 브레이크, 핸들, 엔진 등 수많은 부품이 서로 연결되어 있죠. 하지만 부품이 많을수록 고장 날 가능성도 커집니다.
기존 방식 (수동 검사): 과거에는 엔지니어들이 "어디가 고장 날까?"를 직접 상상해서 테스트했습니다.
"혹시 속도계가 멈출까?"
"브레이크와 액셀레이터가 동시에 고장 나면 어떨까?"
문제점: 자동차가 복잡해질수록 이걸 사람이 일일이 다 찾아내기는 불가능에 가깝습니다. 시간이 너무 오래 걸리고, 비용도 많이 들며, 중요한 고장 상황을 놓칠 수도 있습니다.
🤖 2. 해결책: "AI 비서 (LLM) 가 고장 시나리오를 짜주다"
이 논문은 **거대 언어 모델 (LLM, 예: GPT-4 등)**을 이용해 이 문제를 해결합니다.
비유: "요리 레시피 (안전 요구사항) 를 보고 AI 가 '재난 상황'을 상상하다"
자동차 개발자들은 "이 차는 비가 오면 브레이크가 미끄러져도 멈춰야 한다" 같은 **안전 규칙 (요리 레시피)**을 가지고 있습니다.
기존에는 이 규칙을 보고 사람이 직접 "그럼 브레이크 패드가 고장 나면 어떨까?"라고 고민하며 테스트를 만들었습니다.
새로운 방식: 이 규칙들을 AI 에게 주면, AI 가 **"아, 이 규칙을 위반할 만한 고장 상황은 이런 것들이 있겠네!"**라고 자동으로 테스트 시나리오를 만들어냅니다.
🛠️ 3. 어떻게 작동할까? (3 단계 과정)
이 연구는 크게 세 단계로 이루어집니다.
분류하기 (Sorting):
AI 가 안전 규칙을 읽어보고, "이건 센서 (눈) 관련 고장인가?", "아니면 액추에이터 (손/발) 관련 고장인가?"를 자동으로 분류합니다.
비유: 요리사가 "이 재료는 채소인가, 고기인가?"를 먼저 구분하는 것과 같습니다.
생성하기 (Creating):
분류된 규칙을 바탕으로 AI 가 구체적인 고장 테스트를 만듭니다.
"속도 센서 값이 2 배로 튀어 오르면 어떨까?", "브레이크 신호가 1 초 늦게 오면 어떨까?" 같은 구체적인 시나리오를 JSON이라는 컴퓨터가 읽기 쉬운 형태로 뽑아냅니다.
특이점: AI 는 한 번에 하나의 고장뿐만 아니라, 두 가지가 동시에 고장나는 상황 (예: 브레이크와 핸들이 동시에 고장) 도 만들어낼 수 있습니다.
실행하기 (Testing - HIL):
만들어진 테스트 시나리오를 실제 자동차 부품 (ECU) 과 연결된 **가상 실험실 (하드웨어 인 더 루프, HIL)**에서 실행합니다.
비유: 실제 차를 타고 위험한 도로를 나가는 게 아니라, 실제 운전석과 핸들은 그대로 둔 채, 시뮬레이터 화면에서만 가상의 폭풍우와 고장을 만들어보는 것입니다. 이렇게 하면 실제 차를 망가뜨릴 위험 없이 안전하게 테스트할 수 있습니다.
📊 4. 결과는 어땠을까?
연구진은 여러 AI 모델 (GPT-4, Llama, Qwen 등) 을 실험해 보았습니다.
결과:GPT-4o라는 모델이 가장 잘했습니다. 안전 규칙을 분류하는 정확도가 88%, 고장 테스트를 만들어내는 정확도가 **97.5%**에 달했습니다.
의미: 사람이 몇 달 걸려서 만들 테스트를, AI 가 몇 분 만에 거의 완벽하게 만들어냈다는 뜻입니다.
실제 효과: 실험 결과, AI 가 만든 테스트로 인해 시스템이 어떻게 반응하는지 (예: 엔진이 과열되거나, 차가 멈추는지) 를 정확히 파악할 수 있었습니다.
💡 5. 왜 중요한가요? (한 줄 요약)
이 연구는 **"복잡한 자동차의 안전을 검증하는 일을, AI 가 대신해서 더 빠르고, 더 싸게, 더 안전하게 해주는 방법"**을 제시합니다.
비용 절감: 사람이 일일이 테스트할 필요가 줄어듭니다.
안전 향상: 사람이 놓칠 수 있는 복잡한 고장 상황까지 AI 가 찾아냅니다.
미래 지향: 자동차가 더 똑똑해질수록, 이 AI 기반 테스트는 필수적이 될 것입니다.
결론적으로, 이 논문은 자동차 엔지니어들에게 "더 이상 수동으로 고장 시나리오를 고민하지 마세요. AI 가 그 일을 대신해 줄 테니, 그 결과만 확인하세요"라고 말하는 혁신적인 제안입니다.
1. 연구 배경 및 문제 제기 (Problem)
배경: 자동차 소프트웨어 시스템 (ASS) 의 복잡성이 급증함에 따라 ISO 26262 표준에 따른 기능 안전 (Functional Safety) 검증이 필수적입니다. 특히 시스템 통합 및 테스트 단계에서 **결함 주입 (Fault Injection, FI)**은 시스템의 안전성과 내결함성을 평가하는 핵심 방법론입니다.
문제점: 기존 FI 방법론은 결함 유형, 위치, 발생 시간 등의 속성을 수동으로 식별해야 합니다. 시스템이 복잡해질수록 이 과정은 비용, 시간, 인력 측면에서 매우 비효율적이게 됩니다. 또한, 무작위 (Random) 또는 포괄적 (Exhaustive) 인 테스트 수행은 테스트 커버리지 부족 또는 과도한 테스트 케이스 생성이라는 두 가지 극단을 초래합니다.
목표: 기능 안전 요구사항 (FSRs) 을 기반으로 실시간 테스트 시나리오에 적합한 현실적인 결함 테스트 케이스 (TCs) 를 자동화 및 지능적으로 생성하는 프레임워크가 필요합니다.
2. 제안된 방법론 (Methodology)
논문은 대규모 언어 모델 (LLMs) 을 활용하여 FSRs 에서 결함 테스트 케이스를 생성하고, 이를 하드웨어 인 더 루프 (HIL) 시스템에서 실시간으로 실행하는 3 단계 프로세스를 제안합니다.
A. 제안된 프레임워크 (Proposed Framework)
결함 테스트 케이스 생성 (Generation Phase):
입력: 자연어로 작성된 기능 안전 요구사항 (FSRs).
전처리: 기존 ML 과 달리 LLM 은 텍스트 전처리 없이 자연어 처리 능력을 직접 활용합니다.
분류 (Classification): LLM 이 FSRs 를 센서 관련 또는 구동기 (Actuator) 관련 요구사항으로 자동 분류합니다. 이는 특정 구성 요소에 집중하여 생성 정확도를 높이기 위함입니다.
생성 (Generation): 분류된 요구사항을 바탕으로 결함 유형 (Gain, Offset, Stuck-at, Delay, Noise 등) 과 위치 (센서/구동기 ID) 를 식별합니다.
출력: 결함 주입 위치를 나타내는 JSON 객체 (키 - 값 쌍). 단일 결함 또는 ISO 26262 기준 최대 2 개의 동시 결함 (Concurrent faults) 을 지원합니다.
기법:Few-shot prompting을 사용하여 모델 재학습 없이도 지원 센서 목록 등을 동적으로 업데이트하고 실시간 재구성이 가능하도록 했습니다.
실행 (Execution Phase):
생성된 결함 파라미터는 RTI-CANMM 인터페이스를 통해 HIL 시뮬레이션 환경에 실시간으로 주입됩니다.
시스템 아키텍처를 블랙박스로 유지하며, 모델 수정 없이 CAN 신호 레벨에서 결함을 주입하여 실제 ECU 와의 상호작용을 검증합니다.
결과 분석 (Analysis Phase):
결함 주입 시의 시스템 동작 (Engine speed, Torque, Temperature 등) 을 정상 동작 (Golden run) 과 비교합니다.
FSR 위반 여부 및 안전 메커니즘의 작동 여부를 평가하여 개발팀에 피드백을 제공합니다.
B. 실험 설정
사용 모델: GPT-4o, GPT-4o-mini (Proprietary), Phi-4, Llama-3-70b, Qwen2.5-7b (Open-source).
데이터셋: 기존 연구에서 선별된 134 개의 FSR 데이터셋 (센서 97 개, 구동기 37 개).
평가 지표: 정확도 (Accuracy) 및 F1-Macro Score (불균형 클래스 고려).
3. 주요 기여 (Key Contributions)
LLM 기반 자동 생성 프레임워크: FSRs 에서 실시간 결함 주입을 위한 테스트 케이스를 자동 생성하는 새로운 접근법 제시.
지능형 분류 및 생성: LLM 을 이용한 센서/구동기 관련 요구사항 분류 및 이를 기반으로 한 대표적 결함 TCs 생성.
실시간 HIL 검증: 생성된 결함 TCs 를 고충실도 자동차 시스템 모델 (엔진, 차량 동역학) 이 탑재된 HIL 시스템에서 실시간으로 실행하여 유효성을 입증.
모델 성능 비교 분석: 다양한 LLM(상용 및 오픈소스) 의 데이터 양과 유형에 따른 결함 생성 성능에 대한 포괄적 분석 수행.
최초 연구: HIL 시뮬레이션 시스템에서 실시간 검증 시 LLM 과 결함 주입 테스트를 통합한 최초의 연구로 기록됨.
4. 실험 결과 (Results)
FSR 분류 성능:
GPT-4o가 가장 우수한 성능을 보였으며 (F1-Score: 88.0%), 오픈소스 모델 중에서는 Qwen2.5-7b(85.7%) 와 Phi-4(83.2%) 가 좋은 결과를 보였습니다.
결함 테스트 케이스 생성 성능:
GPT-4o가 단일 센서 기반 테스트 케이스 생성에서 **97.5%**의 F1-Score 를 기록하여 가장 높은 정확도를 보였습니다.
Phi-4-14b는 오픈소스 모델 중 가장 강력한 성능 (F1-Score: 96.6%) 을 보이며, GPT-4o 와 근접한 성능을 입증했습니다.
Batch 처리: GPT-4o 는 배치 처리 시에도 높은 성능을 유지했으나, Phi-4-14b 는 컨텍스트 윈도우 제한으로 인해 많은 예시가 포함된 요청 시 포맷 오류가 발생했습니다.
지원되지 않는 센서 필터링: 모델들은 지원되지 않는 센서를 제외하고 빈 리스트를 반환하는 능력 (Negative constraint) 을 잘 수행했습니다 (Phi-4-14b 가 97.7% 로 최고).
실시간 실행 결과:
HIL 환경에서 지연 (Delay) 결함이나 고정 (Stuck-at) 결함을 주입했을 때, 엔진 회전수, 차량 속도, 토크, 엔진 온도 등 시스템 변수가 FSR 위반 조건을 명확히 보여주며 안전 메커니즘의 작동 여부를 성공적으로 검증했습니다.
5. 의의 및 결론 (Significance & Conclusion)
효율성 및 비용 절감: 수동으로 수행되던 복잡한 결함 테스트 케이스 생성 과정을 자동화하여 개발 시간과 비용을 크게 절감합니다.
안전성 향상: 체계적이고 포괄적인 결함 시나리오를 생성함으로써 복잡한 자동차 시스템의 안전 속성을 더욱 강화합니다.
모델 선택 가이드라인:
고사양 인프라가 가능할 때는 GPT-4o가 최고의 성능을 제공합니다.
데이터 주권, 오프라인 접근성, 비용 효율성이 중요한 경우 Phi-4-14b와 같은 오픈소스 모델이 강력한 대안이 됩니다.
향후 과제: 통신 레벨 결함 및 ECU 레벨 고장 모드 포함, LLM 의 예측 근거 (Rationale) 제공을 통한 의사결정 지원, Few-shot prompting 을 통한 다른 요구사항 유형으로의 확장성 연구가 필요합니다.
이 논문은 LLM 기술을 자동차 기능 안전 검증 프로세스에 성공적으로 통합하여, 기존 수동 방식의 한계를 극복하고 지능형 실시간 테스트의 새로운 표준을 제시했다는 점에서 의의가 큽니다.