> 모바일 게임 튜토리얼 > 게임 뉴스 > 게임 플레이를 포함한 시스템 기능 테스트를 자동화하는 AI 기술이란? PS5의 시스템 소프트웨어 QA 팀의 대처를 소개한 세션을 보고 [CEDEC 2024]

게임 플레이를 포함한 시스템 기능 테스트를 자동화하는 AI 기술이란? PS5의 시스템 소프트웨어 QA 팀의 대처를 소개한 세션을 보고 [CEDEC 2024]

王林
풀어 주다: 2024-08-26 16:07:02
원래의
492명이 탐색했습니다.

2024년 8월 21일, 게임 개발자용 컨퍼런스 「CEDEC 2024」에서, 세션 「PlayStation 5상에서 인간의 플레이어와 동조건으로 게임 플레이 자동화를 실현하는 AI 기술」가 행해졌다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

이 세션에서는, PS5의 시스템 소프트웨어의 QA(품질 보증)에 있어서의 일부의 기능 테스트로 활용하고 있다고 하는, 게임 플레이 자동화를 실현하는 AI 기술이 소개되었다. 스피커는 다음 3명이다.

소니 인터랙티브 엔터테인먼트 게임 서비스 R&D부 Machine Learning Researcher 야베 히로유키
부엔터테인먼트 기반 시스템 경험 설계 본부 S 부문 3 부 3과 Software Engineer, Software QA Engineering 나카하라 히로키 씨
ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]


시스템 소프트웨어 품질보증 노력

PS5는 홈이나 컨트롤 센터 등의 시스템 기능을 가지고 있지만, 이들 시스템 소프트웨어의 표시 내용이나 화면 천이 등의 내용에 관한 품질을 담보하기 위해 시스템 소프트웨어 QA팀(이하 QA팀)에서는 테스트 자동화 을 적극적으로 채용하고 있다고 한다.




테스트 자동화의 장점은 몇 가지 있다고 하지만, 예로서 소프트웨어가 릴리스될 때까지 계속해서 테스트를 실시할 수 있다는 것을 들 수 있었다. 이것이 수동 테스트라면, 케이스 바이 케이스이지만, 많은 경우는 1 프로젝트의 사이에 몇회에 머무르는 것. 그렇게 되면 이하의 슬라이드와 같이 빨간색 화살표의 타이밍으로 버그가 혼입되었다고 되었을 경우, 그 검출은 파란 화살표로 표시된 프로젝트 종반의 테스트시가 되어, 릴리스에 영향을 주는 리스크가 나온다.
ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]




ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]
한편, 자동 테스트라면 매일이라도 실시 가능하고, 녹색 화살표의 타이밍에서 곧바로 버그를 검출할 수 있기 때문에, 「버그의 조기 발견」이라고 하는 메리트가 생긴다. 또한 개발 코드의 커밋 전에 자동 테스트를 실시할 수 있으면 버그의 혼입도 방지할 수 있다는 것.

그런 관점에서 QA팀에서는 테스트 자동화를 추진하고 있는 것이지만, 게임플레이에 연동한 시스템 기능에 관해서는 조금 고려할 필요가 있다고 한다.
그 중 하나가 현재 플레이 중인 게임에 있어서의 진행 상황 등을 카드로 표시하는 「액티비티」로, 카드에 진행도나 추정 플레이 시간 등이 바르게 표시되는지 여부도 QA의 대상이 된다. 또, 카드의 내용이 게임 플레이에 따라 변화하는 일도 있어, 그 변화에 관한 부분이 올바르게 움직이고 있는지 등도 QA의 대상인 것이 나타났다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

또한 시스템 소프트웨어의 기능 테스트에는 액티비티의 갱신 내용을 확인할 때 등 어느 정도의 게임 플레이가 필요한 경우도 있다. 그 때문에, 효율화나 불량의 조기 발견 등의 관점에서는, 이 게임 플레이도 자동화하는 것이 바람직하다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

게임 플레이에 연동한 시스템 소프트웨어의 기능은 액티비티 이외에도 있어, 타이틀에 의해 사용되고 있는 것과 그렇지 않은 것이 있다. 따라서, 게임 플레이에 연동한 기능의 테스트를 자동화할 때에는, 타이틀 의존이 없는 범용적인 형태로의 자동화가 요구된다.
또한 자동 테스트는 사람의 플레이어와 동일한 조건, 즉 화면 정보와 음성 정보 만 사용해야합니다. 그러한 제약 때문에 게임 플레이에 연동한 기능의 자동 테스트는 매우 장애물이 높았다고 한다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]


자동 플레이 시스템 개요


상기한 바와 같이, PS5의 시스템 소프트웨어의 기능 테스트에는, 이용 가능한 정보가 게임의 화면 정보와 음성 정보만인 것, 또 특정의 게임 타이틀에 의존하지 않는 범용적인 기술인 것이 요구된다. 또, QA의 현장에 반입하기 위해서는, 현실적인 코스트로 자동화를 실현할 수 있는 것도 필요하다.
이러한 제약을 근거로 QA팀에서는 인간의 플레이를 학습하고 재현하는 기술인 「모방 학습」을 베이스로, 복수의 기술을 조합해 자동 플레이 시스템을 개발했다고 한다.

본 세션에서는, PS5에 프리 인스톨 되고 있는 「ASTRO's PLAYROOM」의 사례를 사용해, 이 자동 플레이 시스템의 개요 등이 소개되었다. 이 시스템은 PC상에서 동작하고, PS5로부터 게임 정보로서 화면 정보만을 취득하고 있다. 게다가 시스템이 컨트롤러의 조작 내용을 결정하고, 그것을 PS5에 송신하는 것으로, 게임을 자동으로 조작하고 있다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

또, 이 시스템에서는 2 종류의 에이전트를 사용해 게임을 자동 조작한다. 하나는 「리플레이 에이전트」라고 불리는 것으로, 사전에 기록한 수동의 게임 플레이를 재생하는 것으로, 그 수동 플레이와 같은 조작 내용을 재현한다.
또 다른 「모방 에이전트」는 기계 학습의 하나인 모방 학습에 의해 인간의 게임 플레이를 학습한 AI 모델이 인간의 게임을 재현한다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

리플레이 에이전트는 사전의 수동 플레이와 정확히 같은 컨트롤러의 조작을 재현한다는 성질상, 랜덤한 요소가 전혀 존재하지 않고, 항상 같은 조작으로 진행 가능한 장면에서만 이용하게 된다.
구체적으로는, 타이틀 화면에서 게임을 스타트시키는 등의 일부 UI 조작이나, 스타트 지점과 골 지점이 항상 변하지 않는 고정 루트의 이동 등이다. 또한 QA의 기능 테스트에 필요한 PS5 본체 측의 조작 등도 리플레이 에이전트에서 실시하고 있다는 것.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

모방 에이전트에 인간의 게임 플레이를 학습시키는 모방 학습이란, 본본이 되는 행동 데이터로부터, 그 행동 패턴을 재현하는 모델을 작성하는 기계 학습의 일종. 구체적인 모방 에이전트의 작성 순서는, 사전에 게임을 수동으로 복수회 플레이하고, 그 데이터를 이용하여 모방 학습을 행하고, 그 수동 플레이의 조작 내용을 재현할 수 있는 모델을 구축한다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

이 모방 에이전트의 모델은 입력으로서 게임의 화면 정보만을 필요로 한다. 게임의 화면 정보를 입력하면, 다음 프레임에 있어서의 컨트롤러 상태를 출력하는 설정이 되어 있어, 초당 10프레임으로 동작시킴으로써 실시간으로 조작을 결정할 수 있다고 한다. 이 모방 에이전트가 대상으로 하는 것은, 리플레이 에이전트가 적용할 수 없는 장면 모두, 즉 약간이라도 랜덤한 요소가 있는 장면 전반이 된다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

이번 「ASTRO's PLAYROOM」의 사례에서는, 모방 에이전트용으로 스테이지별의 모델을 준비했다고 한다. 그 이유는 하나의 모델이 담당하는 장면을 줄일수록 모델 각각의 성능이 안정되기 때문이다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

또, 2개의 에이전트를 전환하는 타이밍을 판정하는 기능으로서, 「장면 인식」도 준비했다. 이 기능은 화면 정보에서 게임이 특정 장면에 도달했음을 결정하는 것으로, 크게 두 가지 기술을 사용한다. 그 중 하나가 「템플릿 매칭」으로, 미리 준비한 템플릿 화상과 같은 오브젝트가 게임의 화면내에 존재하고 있는지를 판정한다.
예를 들면, 퀘스트 공략시에 나오는 아이콘이나 팝업 등을 인식하는 경우에 이용하고 있다고 한다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

또 하나가 「특징점 매칭」으로, 미리 준비한 타겟 화상과, 게임 화면의 유사도를 항상 체크하고 있다고 한다. 유사도가 임계 값을 초과하면 게임이 대상 이미지와 동일한 장면에 도달했다고 판단하여 에이전트를 전환합니다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

또 특징점 매칭을 장면 인식에 활용하는데 있어서는, 「외형의 흔들림에 대한 강건성」이 중요하게 되는 것에도 언급되었다. 예를 들어, 같은 영역에 도달해도, 카메라의 방향이 다르기 때문에, 화면의 보이는 방법이 바뀌어 버리는 것은 드물지 않다. 마찬가지로 게임의 시간에 따라 조명이 달라질 수 있습니다. 이러한 외형의 변화에 ​​대해 QA팀에서는 기계 학습 기반의 이미지 매칭 수법인 'LoFTR'을 활용한 것도 밝혀졌다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

자동 플레이 시스템 개요 요약
ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]


게임 플레이 자동화 절차


게임 플레이의 자동화에 있어서는, 우선, 게임 플레이를 포함한 자동화하고 싶은 테스트의 내용을 결정할 필요가 있다. 그런 다음 테스트 내용을 에이전트 단위로 나눕니다.
다음에 게임을 실제로 수동 플레이하고, 리플레이 에이전트의 경우는 1회, 모방 에이전트의 경우는 10회 이상의 플레이 데이터를 취득한다. 여기서 모방 에이전트의 경우, 취득한 데이터를 이용하여 모방 학습을 행한다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

모방 학습이 완료되면, 2개의 에이전트를 실제로 움직여, 자동 플레이할 수 있을지 어떨지를 확인한다. 자동 플레이가 실패한 경우에는, 데이터의 취득 단계로 돌아가, 데이터 취득→모방 학습→동작 확인→……이라는 플로우를 자동 플레이가 성공할 때까지 반복하게 된다.
자동 플레이에 성공하면 Jenkins 등의 정기 실행 파이프라인을 사용하여 프로세스를 정돈한다. 이것이 게임 플레이 자동화의 일련의 흐름입니다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024] ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]
게임 플레이 자동화의 각 순서에 있어서의 장비 구성이나 데이터 플로우도 소개되었다
ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

QA팀에서는, 이 자동 플레이 시스템을 이용해, 게임 플레이를 포함한 기능 테스트를 실제로 자동화해 정기 실행하고 있다고 한다. 그 결과, 시스템상의 버그를 3건 자동 검출하고 있고, 그 버그가 혼입한 직후의 기능 테스트로 검출할 수 있었던 것도 판명되고 있다고 한다. 버그의 검출수가 적은 것은, 지금까지 기능테스트의 자동화가 한정적인 범위에서의 트라이얼이라고 하는 위치부착이기 때문이라고 한다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

다른 게임 플레이 자동화 사례도 나타났다
ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]


모방 에이전트의 기술 설명


모방 에이전트의 기술적 설명에서는 먼저 모방 학습 알고리즘이 소개되었다. 이번 대처에서는 앞서 기록한 「어떤 타이틀에 대해서도 적용할 수 있는 범용성」에 더해, 엔지니어의 스킬이 없어도 모방 에이전트를 작성할 수 있는 「누구라도 사용할 수 있는 간이성」을 목표로 했다고 한다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

그 2개의 목표를 근거로, QA팀에서는 알고리즘으로서 「Behaviour Cloning」을 채용했다는 것. 이 알고리즘은 모방 학습 중 가장 단순한 것으로 모델의 입력과 출력을 연결하는 교사 있어 학습이다. 이번 경우에는 입력을 게임 화면, 출력을 컨트롤러 조작으로 학습을 진행하게 된다. 구체적인 모방 에이전트의 작성의 흐름은, 전술 한 바와 같이 사전에 수동 플레이로 게임 화면과 컨트롤러의 정보를 데이터로서 기록하고, 그 플레이 데이터를 모델에 학습시킨다는 것이다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

모델의 구조는 매우 간단하고, 입력된 1장만의 화상을 화상 특징량 추출층과 콘트롤러 상태 출력층(전 결합층)에 통과시켜, 최종적으로 콘트롤러의 상태를 출력한다. 또한, 조작 및 기록의 빈도를 초당 10프레임으로 하고 있는 것은 학습을 간단하게 하기 위한 설명도 이루어졌다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

컨트롤러의 아날로그 스틱의 출력은 아날로그 값이 아닌 상하 좌우 대각선과 중립을 맞춘 총 9 클래스로 취급하고있다. 이것은 학습의 용이함을 바탕으로 한 결과라고 한다.
또, 모델의 출력에 관해서는, 컨트롤러의 각 버튼과 스틱의 상태를 출력시키기 위해, 각각에 최종층이 분기한 것 같은 네트워크를 사용. 최종층이 되는 전체 결합층에서는, 버튼이면 온/오프 각각의 유도, 스틱이면 각 방향의 유도를 출력하고 있다. 이것은 데이터 세트에 맞추어 여분의 조작의 네트워크를 만들지 않기 때문에 불필요한 학습의 발생을 방지하고 모델의 성능을 향상시키는 의미가 있다는 것이다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024] ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

화상 특징량 추출층에는, 사전 학습 끝난 EfficientNet의 엔코더를 이용. 모방 학습시에는, 그 EfficientNet의 엔코더에는 한층 더 학습을 시키지 않고, 전체 결합층에게만 학습시켰다고 한다. 이것은, 적은 게임 화면에서 엔코더에 학습시키는 것보다, 대량의 실사 화상으로 사전 학습된 EfficientNet의 엔코더를 사용하는 것으로, 모델의 성능이 오르는 것이 다양한 사례로 확인되고 있기 때문이다 . 또한, 전체 결합 층만의 학습은 네트워크가 작아지기 때문에, 학습에 걸리는 시간이 짧다는 것도 이점으로 나타났다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

입력을 이미지 1장으로 하고 있는 것은, 입력을 늘리면 모델의 성능이 떨어진다는, 지금까지의 실험 결과가 베이스가 되고 있는 것도 밝혀졌다. 이 경향은 「ASTRO's PLAYROOM」에 한정되지 않고, 다른 게임의 태스크에도 볼 수 있다고 한다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

이번 대처로, 직면한 과제에 어떻게 대응했는지에 대해서도 소개되었다. 예를 들면, 「랜덤 지점에 떨어지고 있는, 진행에 필수적인 아이템을 픽업하기 위해서 버튼을 누른다」라고 하는 조작은 게임에 있어서 드물지 않다. 그러나 그런, 출현수는 적지만 클리어율에 크게 영향을 주는 조작은 심층 학습에서 학습이 좀처럼 진행되지 않고 기대대로 버튼을 누르는 모델을 작성하는 것은 매우 어렵다고 한다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

그래서 이번 대처에서는 학습이 모델에 미치는 영향도를 조정하는 「Class Balance」를 이용해 출현 비율이 적은 조작일수록 가중치를 붙여 그 학습이 보다 강하게 모델에 반영되도록 했다고 한다. .

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024] ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

그 외 모방 학습의 약점으로서 조작에 실패해 모범이 되는 데이터로부터 괴리해 버리면 복귀가 곤란해지는 것도 들 수 있었다. 이에 관해서는, 미지의 상태로부터 모범이 있는 상태까지 복귀하는 추가 데이터를 학습시키는 것으로 해결했다고 한다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024] ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

모방 에이전트의 기술적 과제와 향후 발전도 나타났다
ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

세션의 마지막에는 이번 소개된 자동 플레이 시스템의 검증을 통해 향후 QA 테스트의 품질 향상을 전망할 수 있음을 확인할 수 있었다는 견해가 나타났다.

ゲームプレイを含むシステム機能テストを自動化するAI技術とは。PS5のシステムソフトウェアQAチームの取り組みを紹介したセッションをレポート[CEDEC 2024]

위 내용은 게임 플레이를 포함한 시스템 기능 테스트를 자동화하는 AI 기술이란? PS5의 시스템 소프트웨어 QA 팀의 대처를 소개한 세션을 보고 [CEDEC 2024]의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:4gamer.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿