Hasty Briefsbeta

双语

Using Aspect-Oriented Programming to Record DRL Agents' Data

13 days ago
  • #aspect-oriented-programming
  • #automated-testing
  • #game-development
  • 游戏测试对游戏开发至关重要,它有助于发现缺陷、评估用户体验、平衡游戏玩法并评估趣味性。
  • PEAK是一个集成了深度强化学习(DRL)代理的游戏引擎,用于自动测试2D平台游戏。
  • 该工作流程包括设计关卡、训练具有特定游戏风格的DRL代理,以及收集数据以识别平衡问题。
  • 该项目专注于数据收集、聚合和可视化,使用了观察者模式和面向切面编程(AOP)。
  • 面向切面编程(AOP)用于将数据收集(切面)与核心游戏代码分离,切入点指定连接点。
  • Python中的装饰器最初用于跟踪数据,但需要编辑核心游戏文件。
  • 引入配置文件(YAML),通过反射将记录方法注入到游戏方法中,从而避免代码改动。
  • 创建了一个简单的Streamlit仪表板用于数据可视化,尽管当前的见解有限。
  • 未来的工作包括通过配置文件定义有用的指标(例如,完成率、平均完成时间)和阈值,并在测量方面面临挑战。