일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- cs231n
- 구현
- 알고리즘
- Journal Review
- datascience
- 그리디
- DP
- Game Data Analysis
- classification
- Anti Cheat
- 스택
- AA test
- 정렬
- 큐
- Python
- 중앙갑
- Stack
- 7569번
- 자료구조
- BFS
- p-value
- anomaly detection
- 백준
- 통계
- Deeplearning
- Queue
- c++
- ML
- Machine learning
- 딥러닝
Archives
- Today
- Total
Software Hyena::
Deep learning for procedural content generation (2021, Neural Computing and Applications) 본문
Journal Review
Deep learning for procedural content generation (2021, Neural Computing and Applications)
bluehyena 2023. 6. 21. 19:56반응형
요약
- Deep Learning 기반의 간접 혹은 직접적으로 연관이 있는 PCG 연구에 관한 Survey 논문임
정리
- Game Levels, Text, Character models. Textures 에 관해 다루는 것으로 파악됨
- 무엇을 생성하는지에 따른 제양사항과 이점, 예시를 포함해 설명 예정
- 딥러닝 이전에서는 searchbased methods, solver-based methods, constructive generation methods (such as cellular automata and grammarbased methods), fractals, noise, and ad-hoc methods을 진행함
- 검색 기반, 솔버 기반, 구성적 생성 (셀롤러 자동화 및 문법 기반), 프렉탈, 노이즈, ad-hoc 등
- Search Based Method
- 생성된 콘텐츠의 품질 or 플레이 가능성을 측정하는 평가 기능에 대해 다뤄짐
- 경험 중심의 PCG 프레임워크는 대부분은 이런 방식을 채택함
- 플레이어의 경험을 조절하기 위해 콘텐츠를 생성하는 방법도 연구됨
- 진화 알고리즘에 기반해서 이뤄짐
- 2018년 ~ 2020년 8월까지의 자료를 수집함
- EEE Transactions on Computational Intelligence and AI in Games (TCIAIG), IEEE Transactions on Games (ToG), IEEE Conference on Computational Intelligence and Games (CIG) 시리즈, IEEE Conference on Games (CoG) 시리즈, Foundations of Digital Games (FDG) 국제 학회, Artificial Intelligence for Interactive Digital Entertainment (AIIDE) 컨퍼런스 시리즈 및 관련 워크샵, 그리고 IEEE Congress on Evolutionary Computation (IEEE CEC)
- 위의 컨퍼런스 논문들에 대해 다룸
- 비디오, 이미지 및 음악은 모두 일관성이 필요함
- 만약 서로 일관성 없이 생성하게 되면 문제가 생김
- 게임 레벨 생성의 경우에는 플레이 가능한지가 중요함
- 딥러닝을 썼을 때, 이것이 플레이 가능한 맵을 생성하는지는 매우 중요함
- Game levels
- 2D 혹은 3D 공간으로 이뤄질 수 있음
- 플레이 가능해야 한다는 중요한 제약이 있음
- 벽이나 통과 불가능하지는 않는지
- 레벨을 완료하는데 필요한 아이템이 있는지
- 적이 무적은 아닌지
- 2D 공간에 대한 PCG 연구는 흔히 이뤄짐
- Spelunky 가 대표적인 실제 적용 사례라고 함
- 리듬 게임도 2D 게임에 속하며 이에 대한 레벨 연구도 있음
- Text
- 일반적으로 모든 게임에는 이야기 전달을 위한 text가 있음
- 게임에서 일어나는 일에 사실적이어야 함
- LSTM 혹은 transformer 등으로 많이 발전함
- AI Dungeon 2 라는 게임도 있음
- Character models
- Celeb-A 라는 실제 얼굴 데이터셋이 있음
- 움직임 혹은 표정을 만들 수 있도록 애니메이션에 관한 연구가 필요함
- Texture
- 그나마 기능성 제약이 약한 분야
- Music and sound
- 게임 내 분위기에 따라 해당하는 분위기의 음악 혹은 효과음 등이 있음
- 당시까지 실제로 적용되지는 않았음
- 위의 이미지는 각 학습 방법 별로 다루는 콘텐츠에 대한 표
- Supervised learning
- Explainable PCGML via game design patterns
- 레벨 구조와 디자인 구조에 대한 자연어 설명 레이블을 입력으로 함
- 이러한 입력 바탕의 autoencoder를 만들어 해당 디자인 패턴에 대한 맵을 생성하는 것으로 보임
- Learning the patterns of balance in a multi-player shooter game
- 이미지로 표현된 레벨과 무기 파라미터가 게임 밸런스에 미치는 영향을 cnn으로 학습
- 인공 에이전트를 이용해 시뮬레이션도 했다는데 궁금함
- 이를 통해 어떤 팀이 유리한지 혹은 벨런스가 있는지 예측함
- LSTM 기반의 리듬 게임 레벨 생성 연구도 있음
- Dance dance gradation: a generation of fine-tuned dance charts
- DDG(Dance Dance Gradation) 라는 시스템 구축
- 분수로 표현되는 어려움과 쉬움과 같은 난이도를 조절해 레벨의 난이도 조절 가능
- Procedural content generation of rhythm games using deep learning methods
- OSU! 의 다양한 레벨을 학습 데이터로 사용해 다양한 난이도의 리듬 게임 레벨 생성을 하는 모델 구성
- 이때 C-BLSTM을 사용함
- Dance dance gradation: a generation of fine-tuned dance charts
- Explainable PCGML via game design patterns
- Standard unsupervised learning
- Super Mario as a String: Platformer Level Generation Via LSTMs
- 에이전트 경로로 주석이 달린 마리오 레벨을 LSTM을 통해 훈련해 2D 레벨을 1차원 문자열로 나타냄
- Autoencoders for Level Generation, Repair, and Recognition
- 2D 배열로 저장된 마리오 맵 데이터를 윈도우 세그먼트해서 autoencoder에 집어넣어 생성 및 복구
- Blending Levels from Different Games using LSTMs
- 마리오와 Kid Icarus 라는 게임을 따로 LSTM으로 훈련해 교대로 생성기를 사용하고 새로운 혼합 레벨 생성
- Multi-domain level generation and blending with sketches via example-driven bsp and variational autoencoders
- 다른 플랫폼 게임으로부터 input level의 부분과 매칭
- 이러한 검색 기반 접근 방식 사용
- Exploring level blending across platformers via paths and affordances
- 서로 다른 게임 데이터를 사용해 학습 진행
- 플레이어의 경로 데이터 이용하는 것으로 보임
- Sequential segment-based level generation and blending using variational autoencoders
- 느낌상 레벨 생성 그리고 다음 위치로 배치 등까지 하는 것으로 보임
- Game level clustering and generation using Gaussian mixture VAEs
- 다양한 게임 레벨 학습 및 분류
- 일정한 분포 혹은 스타일을 따르도록 생성
- An approach for the evaluation and correction of manually designed video game levels using deep neural networks
- 2D, 3D 에 모두 적용 가능
- 이전보다 뭔가 나아졌다고 하는데 확인 필요
- 수동 수정한 것에 대해 입력을 뭔가 하는 것? 몰라
- Super Mario as a String: Platformer Level Generation Via LSTMs
- Reinforcement learning
- Using fractal neural networks to play simcity 1 and conway's game of life at variable scales
- 심즈 게임을 타겟으로 도시 인구 증가를 목표로 최적화된 도시 설게
- Pcgrl: Procedural content generation via reinforcement learning
- 2D 레벨 생성
- 이들이 정의한 세 가지 방식으로 레벨을 생성할 수 있는 것으로 보임
- Using fractal neural networks to play simcity 1 and conway's game of life at variable scales
- Adversarial learning
- GAN이 이에 해당함
- Conditional convolutional generative adversarial networks based interactive procedural game map generation
- 상호작용이 가능한 맵 생성이라고 함 (볼 수 없는 논문임)
- 3D로 확장이 가능하다고는 함
- Bootstrapping conditional gans for video game level generation
- 이거 읽어볼 필요가 있는 논문임
- GAN, Self attention이 뭐 들어가는 거 같고 부트스트래핑으로 데이터 늘림
- Deep convolutional generative adversarial network for procedural 3d landscape generation based on dem
- height map을 DCGAN으로 학습해 Unity에 쓸 수 있는 맵 생성
- 3D 환경 제작이 가능
- Doom level generation using generative adversarial networks
- 3D Doom의 레벨을 여러 개의 2d 이미지로 변환
- 두 개의 GAN 모델이 있는데 하나는 이미지만, 다른 하나는 이미지 포함 여러 특징을 함께 학습
- Generating educational game levels with multistep deep convolutional generative adversarial networks
- 레벨은 탑다운 뷰의 2d 배열로 표현되며 게임에서 쓰기 위해 3d 레벨로 변환됨
- Toad-gan: coherent style level generation from a single example
- Toad GAN을 제안함
- 토큰 기반 방식을 tile 기반 레벨 생성에 적용
- 위에까지는 레벨의 유효한지를 검증하지 않았다고 함
- Efficient generation of structured objects with constrained adversarial networks
- 제약된 적대적 네트워크인 CAN을 제시함
- Illuminating mario scenes in the latent space of a generative adversarial network
- 훈련된 생성기의 latent space를 탐색하는 latent space illumination을 제시하여 생성된 레벨의 다양성을 증가시킴
- Generating game levels for multiple distinct games with a common latent space
- 게임 별 레벨을 생성하는 GAN을 훈련시키는 것이 아닌
- branched generator와 multiple parallel discriminator를 구성하는 GAN 아키텍쳐 제안
- Sketch2map: a game map design support system allowing quick hand sketch prototyping
- Sketch2Map이라는 것을 제시하여 스케치로부터 3d terrain을 생성함
- conditional GAN을 사용함
- RL 기반의 에이전트를 사용해 테스트하기도 함, 플레이 가능한지
-
- Evolving mario levels in the latent space of a deep convolutional generative adversarial network
- latent variable evolution을 적용하여 게임 시뮬레이션을 통해 평가된 특정 행동을 유도하며 보다 플레이 가능한 레벨을 탐색함
- DCGAN을 사용함
- 두 가지 문제점
- 일부 레벨 세그먼트에서 파이프가 깨짐
- 조금 더 유의미하게 레벨 세그먼트를 조합하는 방법을 찾지는 못한듯
- A novel cnet-assisted evolutionary level repairer and its applications to Super Mario Bros
- MLP모델을 훈련해 일부 레벨 세그먼트에서 파이프가 깨지는 현상을 해결
- 잘못된 타일을 찾음
- Cppn2gan: Combining compositional pattern producing networks and gans for large-scale pattern generation
- 여러 세그먼트로 구성된 게임 레벨 생성을 위한 방법 제시
- 유의미한 레벨 세그먼트 조합을 가능케 함
- 그래프 기반으로 뭘 한 듯
- Controllable and coherent level generation: A two-pronged approach
- 실행 가능한 행동 수, 레벨 완료 에이전트의 비율 및 생성된 레벨의 난이도 조절
- 이를 가능하게 하기 위해, cma-es의 새로운 함수 설계
- Interactive evolution and exploration within latent level-design space of generative adversarial networks
- Latent Variable Evolution을 GAN에 결합해 플레이 가능하도록 함
- Using a surrogate model of gameplay for automated level design
- 게임 레벨과 규칙을 기반으로 결과 예측 모델Evolutionary computation
- Evolving mario levels in the latent space of a deep convolutional generative adversarial network
반응형
'Journal Review' 카테고리의 다른 글
Comments