디지털 라이브러리[ 검색결과 ]
유사 패치 기반 자동 프로그램 수정 기법
http://doi.org/10.5626/JOK.2025.52.2.152
휴리스틱 기반 자동 프로그램 수정(Automated Program Repair, APR) 기술의 주요 관심사는 탐색 공간의 크기 문제이다. 본 연구에서는 버그를 생성한 수정(Bug Introducing Change)의 유사성을 활용하여 탐색 공간을 줄이고, 적절한 수정 연산자를 제안하는 새로운 접근 방식인 Similar Patch Identifier(SPI)를 제안한다. 이 접근법을 평가하기 위해, 기존의 문맥 기반 APR 도구인 ConFix와 자바 결함 벤치 마크인 Defects4J를 활용했다. 실험을 통해 SPI가 탐색 공간을 각 결함에 적합한 10개의 버그 수정 커밋 후보로 줄였음에도, 기존 APR 도구인 ConFix가 고치지 못했던 4개의 버그에 대한 수정을 만들어내는 유의미한 결과를 확인할 수 있었다.
그리드 맵의 수직 분할에 의한 탐색 공간 축소
그리드 맵에서의 경로 찾기는 로보틱스, 지능형 에이전트, 컴퓨터 게임 등의 분야에서 보편적으로 다루어지는 문제이다. 기술의 발전에 따라 게임의 가상 세계는 점점 정교하고 사실적으로 표현되는 추세인데, 이는 그리드 타일의 수가 너무 많아져 경로 탐색 시간이 증가한다는 단점을 수반한다. 본 논문에서는 축소된 상태 공간을 생성하고 이에 대한 경로를 사전계산하는 오프라인 전처리 과정을 통해, 실시간 질의에 대해 빠른 응답을 가능하게 하는 경로 찾기 알고리즘을 제안한다. 전처리 과정에서는 그리드 맵상의 자유 공간을 수직 분할하고, 분할된 영역들을 노드로 하는 연결 그래프를 생성하고, 모든 노드 쌍에 대한 경로를 행렬 형태로 저장한다. 실시간 쿼리 단계에서는 질의 점이 속하는 노드들을 찾고, 그에 해당하는 저장된 경로를 검색한다. 그리드 기반 경로 찾기의 수준기표로 이용되는 맵들의 집합에 대해 제안한 방법을 시뮬레이션하여, 탐색 공간과 탐색 시간이 획기적으로 감소됨을 확인한다.