๋ฏธ๋‹ˆ ์ฐฉ์ง€ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ (Mini Landing Environment)

์ถ”์ง„๊ธฐ 3๊ฐœ(์™ผ์ชฝ ยท ๊ฐ€์šด๋ฐ ยท ์˜ค๋ฅธ์ชฝ)๋ฅผ ์ œ์–ดํ•˜์—ฌ ์ฐฉ์ง€๋Œ€์— ์•ˆ์ „ํ•˜๊ฒŒ ์ฐฉ๋ฅ™์‹œํ‚ค๋Š” ๊ฒฝ๋Ÿ‰ Gymnasium ๊ฐ•ํ™”ํ•™์Šต ํ™˜๊ฒฝ์ž…๋‹ˆ๋‹ค. LunarLander์˜ ํ•ต์‹ฌ ๋ฌผ๋ฆฌ ๊ทœ์น™์„ ์ตœ์†Œํ™”ํ•˜์—ฌ ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํŠน์ง•

  • ๋™์ž‘ ๊ณต๊ฐ„ (Action Space): Discrete(4)
    • 0: ๋Œ€๊ธฐ (์‰ฌ๊ธฐ)
    • 1: ์™ผ์ชฝ ์ถ”์ง„๊ธฐ ์ ํ™” (์˜ค๋ฅธ์ชฝ์œผ๋กœ ํšŒ์ „ ํ† ํฌ)
    • 2: ๊ฐ€์šด๋ฐ ์ฃผ ์ถ”์ง„๊ธฐ ์ ํ™” (์ƒ์Šน ๊ฐ€์†)
    • 3: ์˜ค๋ฅธ์ชฝ ์ถ”์ง„๊ธฐ ์ ํ™” (์™ผ์ชฝ์œผ๋กœ ํšŒ์ „ ํ† ํฌ)
  • ์ƒํƒœ ๊ณต๊ฐ„ (Observation Space): Box(-inf, inf, (6,), float32)
    • ์ •๊ทœํ™”๋œ [x, y, vx, vy, theta, angular_velocity]
  • ๋ชจ๋“œ ์ง€์›:
    • ๊ธฐ๋ณธ: ์ผ๋ฐ˜ ์ฐฉ๋ฅ™ ํ›ˆ๋ จ
    • ๋กœ๋“œ์Šคํ„ฐ: ์ดˆ๊ธฐ ๊ฐ๋„๊ฐ€ 180๋„(๋’ค์ง‘ํžŒ ์ƒํƒœ)๋กœ ์‹œ์ž‘ํ•˜์—ฌ ๋ฌ˜๊ธฐ ํšŒ์ „ ๋ฐ ๋ณต๊ตฌ ํ›ˆ๋ จ ๊ฐ€๋Šฅ

์„ค์น˜ ๋ฐ ์‚ฌ์šฉ๋ฒ•

pip install gymnasium numpy
from landing_env import ์ฐฉ์ง€, LandingEnv

# ํ™˜๊ฒฝ ์ƒ์„ฑ
env = ์ฐฉ์ง€(๋ชจ๋“œ='๊ธฐ๋ณธ')
obs, info = env.reset()

terminated = False
truncated = False

while not (terminated or truncated):
    action = env.action_space.sample()  # ํ–‰๋™ ์ƒ˜ํ”Œ๋ง
    obs, reward, terminated, truncated, info = env.step(action)

print("๊ฒฐ๊ณผ:", info.get('๊ฒฐ๊ณผ'))
Downloads last month

-

Downloads are not tracked for this model. How to track
Video Preview
loading