RL Village는 이번 챌린지에서 드론 Agent가 배송을 할 아름다운 마을입니다.
RL Village에는 드론이 미션을 수행하기 위해 얻어야할 많은 정보들이 있습니다.
이 정보들을 잘 활용하여 Reinforcement Learning Agent를 만들어보세요!
- 드론 에이전트가 배송할 집들이 10개가 있으며, 한 에피소드에서 10개의 집들 중 3개가 랜덤으로 지정됩니다.
- 3개의 집들은 에피소드 초기화시 새롭게 지정됩니다.
- 마을에는 정적 장애물들과 동적 장애물들이 있습니다.
- 정적 장애물 : 건물, 나무, 차량 등
- 동적 장애물 : 새
챌린지의 환경인 RL Village MDP에 대해 소개합니다.
- Size: 95
info | description | size |
---|---|---|
배송할 집의 택배 배달 위치의 좌표 | (x, y, z), (x, y, z), (x, y, z) | 9 |
agent의 좌표 | (x, y, z) | 3 |
agent의 velocity | (x, y, z) | 3 |
agent의 angularVelocity | (x, y, z) | 3 |
진행률 (%) | 0~100 | 1 |
수평방향 Raycast | 30도씩 12 방향, 각 방향 마다 2개씩 정보 - (1)탐지 여부 (2)탐지 위치와의 거리 | 24 |
수직방향 Raycast | 15도씩 24 방향, 각 방향 마다 2개씩 정보 - (1)탐지 여부 (2)탐지 위치와의 거리 | 48 |
위 아래 Raycast | 위 아래 방향, (1)탐지 여부 (2)탐지 위치와의 거리 | 4 |
TOTAL | total vector observation | 95 |
수평방향 Ray | 수직방향 Ray | 위 아래 Ray |
---|---|---|
![]() |
![]() |
![]() |
Camera | Size(pixel) | Image |
---|---|---|
정면 카메라 | (64, 36, 3) | ![]() |
우측 카메라 | (64, 36, 3) | ![]() |
후면 카메라 | (64, 36, 3) | ![]() |
좌측 카메라 | (64, 36, 3) | ![]() |
하방 카메라 | (64, 36, 3) | ![]() |
dec.obs[0]
: VisualObservation - 전방 카메라 (36, 64, 3)dec.obs[1]
: VisualObservation - 우측 카메라 (36, 64, 3)dec.obs[2]
: VisualObservation - 후방 카메라 (36, 64, 3)dec.obs[3]
: VisualObservation - 좌측 카메라 (36, 64, 3)dec.obs[4]
: VisualObservation - 하방 카메라 (36, 64, 3)dec.obs[5]
: VectorObservation(95)
- x 방향 이동 (앞, 뒤) : -1 ~ 1 사이의 연속적인 값
- z 방향 이동 (좌, 우) : -1 ~ 1 사이의 연속적인 값
- y 방향 이동 (위, 아래) : -1 ~ 1 사이의 연속적인 값
+ 100
- 물품 배송이 완료 되었을때
- 100
- 건물 혹은 장애물(ex, 새, 자동차, 가로등, 지면등)에 부딪혔을 때
- 맵 밖으로 멀리 이동 했을때
-
목표 지점과 거리에 따른 보상
현재 Step에서 목표지점과 거리(curDistance) - 이전 Step에서 목표지점과 거리(preDistance)
-
배달할 집이 여러 개 일때는 목표지점은 현재 드론 에이전트가 위치한 곳에서
가장 가까운 집의 위치
로 계산됩니다.- 배달할 집
A
,B
,C
중,A
에는 배달을 완료하고B
,C
가 아직 배달이 안된 상태일 때 :B
와C
중 가까운 집을 목표 지점으로 거리에 따른 보상을 계산
- 배달할 집
- 건물 혹은 장애물(ex, 새, 자동차, 가로등, 지면등)에 부딪혔을 때
- 맵 밖으로 멀리 이동 했을때
- 배송 물품을 모두 배달 완료 되었을때
아래 경로에 있는 Parameters.json
파일을 이용하여 원하는 환경의 요소들을 수정할 수 있습니다.
-
Windows :
DroneDelivery_Data\StreamingAsset
-
Mac :
Contents\Resources\Data\StreamingAssets
-
Linux :
drone_Data\StreamingAssets
{
"reward" : 100,
"penalty" : -100,
"distanceRewardScale": 1
}
info | description |
---|---|
reward | 배송 완료시 보상 |
penalty | 환경과 충돌시의 패널티 |
distanceRewardScale | 거리 보상 스케일 조정 |
RL Village를 구성하는 Unity Asset 리스트 입니다.