Skip to content

dongspam0209/traffic_light_control_DQN

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

50 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿš— DQN ๊ธฐ๋ฐ˜ ์™•๋ณต 8์ฐจ์„  traffic light control system

๋ชฉ์ฐจ

  1. ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ
  2. ํ”„๋กœ์ ํŠธ ์ง„ํ–‰
  3. ์‹คํ—˜ ๊ฒฐ๊ณผ
  4. Contact

1. ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

(1) ์ฃผ์ œ ๋ฐ ๋ชฉํ‘œ

  • ์˜ค๋Š˜๋‚  ์‚ฌํšŒ ๋Œ€๋ถ€๋ถ„์˜ ์‹ ํ˜ธ๋“ฑ์€ ์‹ ํ˜ธ์˜ ์ˆœ์„œ์™€ ์ฃผ๊ธฐ๊ฐ€ ์ •ํ•ด์ง„ ๊ณ ์ •ํ˜• ์‹ ํ˜ธ์ฒด๊ณ„๋ฅผ ์ฑ„ํƒํ•˜๊ณ  ์žˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๋Š” ๊ธ‰๋ณ€ํ•˜๋Š” ๊ตํ†ต ๋ณ€ํ™”์˜ ํ๋ฆ„์— ์œ ๋™์ ์œผ๋กœ ๋Œ€์‘ํ•˜์ง€ ๋ชปํ•œ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๊ธฐ์— ์ด๋Ÿฌํ•œ ๋ฌธ์ œ ํ•ด๊ฒฐ์„ ์œ„ํ•ด ๊ฐ•ํ™”ํ•™์Šต ๊ธฐ๋ฐ˜ ์ ์‘ํ˜• ์‹ ํ˜ธ ์ฒด๊ณ„๊ฐ€ ์—ฐ๊ตฌ๋˜๊ณ  ์žˆ๋‹ค. ๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ์ด๋ฅผ ๋”์šฑ ๊ฐœ์„ ํ•˜๊ณ ์ž ํ˜„์‹ค ์กฐ๊ฑด์„ ๋ฐ˜์˜ํ•˜๊ณ  ์—ฌ๋Ÿฌ ๊ธฐ๋ฒ•์„ ๋น„๊ตํ•˜๋ฉฐ ์ตœ์ ์˜ ์‹ ํ˜ธ ์ฒด๊ณ„๋ฅผ ๊ณ ์•ˆํ•˜์˜€๋‹ค.

(2) ํ‰๊ฐ€์ง€ํ‘œ

  • ๊ต์ฐจ๋กœ ๋‚ด ์ฐจ๋Ÿ‰ ๋Œ€๊ธฐ์‹œ๊ฐ„
  • ๊ต์ฐจ๋กœ ๋‚ด ์ฐจ๋Ÿ‰ ๋Œ€๊ธฐ์—ด

(3) ๊ฐœ๋ฐœ ํ™˜๊ฒฝ

  • GPU : GTX 1070Ti
  • SUMO : ๊ตํ†ต์‹ ํ˜ธ์ œ์–ด library
  • state : waiting time, queue length
  • action : traffic light selection
  • reward : reduced waiting time, queue length difference after action

2. ํ”„๋กœ์ ํŠธ ์ง„ํ–‰

1. Simulation Environment

1 2 3 4
image image Step 3 Step 4
  1. ํ•œ ์—ํ”ผ์†Œ๋“œ๋‹น 1000๋Œ€์˜ ์ฐจ๋Ÿ‰ ์ƒ์„ฑ
  2. ๊ฐ ๊ต์ฐจ๋กœ์˜ ์ง„์ž…์ฐจ๋„์—์„œ 1์ฐจ์„ ์€ ์ขŒํšŒ์ „, 2,3์ฐจ์„ ์€ ์ง์ง„, 4์ฐจ์„ ์€ ์ง์ง„ ๋˜๋Š” ์šฐํšŒ์ „์œผ๋กœ ๊ตฌ์„ฑ
  3. ์‹ค์ œ ๊ตํ†ต๋Ÿ‰์ด ๋Š˜์–ด๋‚˜๋Š” ์‹œ๊ฐ„๋Œ€๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ, ๋กœ๊ทธ์ •๊ทœ๋ถ„ํฌ๋ฅผ ํ†ตํ•ด ์ง„์ž…์ฐจ๋„๋ณ„๋กœ ์ฐจ๋Ÿ‰์ด ๋งŽ์ด ์ƒ์„ฑ๋˜๋Š” ์‹œ๊ฐ„๋Œ€ ์„ค์ •
  4. ์ฐจ๋Ÿ‰์˜ ํฌ๊ธฐ๋Š” 5m(default) ์•ž๋’ค ์ฐจ ๊ฐ„๊ฒฉ์€ 2.5m

2. ์ฐจ์„  ๊ตฌ์—ญํ™”

image

  • ๊ฐ ์ง„์ž…์ฐจ์„ ์„ 100๊ฐœ์˜ cell๋กœ ๊ตฌ์—ญํ™”ํ•˜์—ฌ 1์ดˆ๊ฐ„๊ฒฉ์œผ๋กœ cell์— ์กด์žฌํ•˜๋Š” ์ฐจ๋Ÿ‰์— ๋Œ€ํ•œ ์ •๋ณด ์ทจ๋“
  • 4์ฐจ์„  ์ง„์ž…์ฐจ๋„ 4๊ฐœ์— ๊ฐ 100๊ฐœ์˜ cell๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์–ด์„œ, ์ด 1600๊ฐœ์˜ cell์„ 1์ดˆ๋งˆ๋‹ค ๊ฐฑ์‹ ํ•˜์—ฌ, ์ฐจ๋Ÿ‰์˜ ์œ„์น˜, ๋Œ€๊ธฐ์‹œ๊ฐ„, ์†๋„๋ฅผ ์ธก์ •
์ฐจ๋Ÿ‰ ์กด์žฌ์—ฌ๋ถ€(queue_length) ์ฐจ๋Ÿ‰ ์†๋„ ์ฐจ๋Ÿ‰ ๋Œ€๊ธฐ์‹œ๊ฐ„
image image image

3. ์‹ ํ˜ธ ์„ ํƒํ•˜๋Š” action space

image

  • 1 episode๋‹น 3600 steps์œผ๋กœ ๊ตฌ์„ฑ (์—ํ”ผ์†Œ๋“œ๋‹น 3600์ดˆ)
  • Green Light ์ข…๋ฃŒํ›„ 3step ๋™์•ˆ ๋™์ผํ•œ ๋ฐฉํ–ฅ์˜ Yellow Light ์‹ ํ˜ธ ์‹คํ–‰ (ex. N/S Green Light ์ดํ›„ ๋‹ค๋ฅธ ๋ฐฉํ–ฅ์œผ๋กœ ์‹ ํ˜ธ๊ฐ€ ๋ฐ”๋€Œ๋ฉด ์‹ ํ˜ธ๊ฐ€ ๋ฐ”๋€Œ๊ธฐ ์ „ N/S Yellow Light ์‹ ํ˜ธ ๋ฐœ์ƒ)
  • ์ง์ง„ ๋ฐ ์šฐํšŒ์ „(2~4์ฐจ์„ ) 8 steps, ์ขŒํšŒ์ „ (1์ฐจ์„ ) 4 steps๋กœ ์‹ ํ˜ธ ๊ธธ์ด ๊ณ ์ •
  • Green Light ์‹คํ–‰ ์ดํ›„ ์œ„์˜ 4๊ฐ€์ง€ ๋ฐฉํ–ฅ ์ค‘ ํƒ 1 ํ•˜์—ฌ ์‹คํ–‰

4. Reward

  • ํŠน์ • ๋ฐฉํ–ฅ์˜ ์‹ ํ˜ธ๋งŒ ๊ณ„์†ํ•ด์„œ ํƒํ•˜์ง€ ์•Š๋„๋กœ ๋Œ€๊ธฐ์‹œ๊ฐ„, ๋Œ€๊ธฐ์—ด์— ๊ณต์ •์„ฑ ์ง€์ˆ˜๋ฅผ ์ ์šฉ (Jain's Fairness)

    $$ R = -\left( w_1 \frac{W}{W_{\text{avg}}} + w_2 \frac{Q}{Q_{\text{avg}}} \right) + w_3 \left( \frac{w_1}{w_1 + w_2} F_w + \frac{w_2}{w_1 + w_2} F_q \right) $$

  • ์ „์ฒด ์ฐจ์„ ์˜ ๋Œ€๊ธฐ์‹œ๊ฐ„ ์ดํ•ฉ, ๋Œ€๊ธฐ์—ด ์ดํ•ฉ์„ ์ค„์ผ ์ˆ˜ ์žˆ๊ฒŒ ์Œ์˜ ๋ณด์ƒ๊ฐ’์œผ๋กœ ์„ค์ •

  • ๋Œ€๊ธฐ์‹œ๊ฐ„

    • ๊ฐ ์ง„์ž…์ฐจ๋„์˜ 4๊ฐœ์˜ lane์˜ ๋ชจ๋“  ์ฐจ๋Ÿ‰ ๋Œ€๊ธฐ์‹œ๊ฐ„์˜ ์ดํ•ฉ
    • ์ฐจ์„  ๋‚ด ์กด์žฌํ•˜๋Š” ์ฐจ๋Ÿ‰์˜ ์ฒด๋ฅ˜ ๊ธฐ๊ฐ„(step)์„ ์ง„์ž… ์‹œ์ -๋น ์ ธ๋‚˜๊ฐ„ ์‹œ์ ์œผ๋กœ ๊ณ„์‚ฐ
    • ์—ํ”ผ์†Œ๋“œ ์ข…๋ฃŒ์‹œ ์ž”๋ฅ˜ ์ฐจ๋Ÿ‰์€ 3600-์ง„์ž…step์œผ๋กœ ๊ณ„์‚ฐ
  • ๋Œ€๊ธฐ์—ด

    • ๊ฐ ์ฐจ์„ ์—์„œ ์ฐจ๋Ÿ‰์ด ์กด์žฌํ•˜๊ณ  ์†๋„๋„ 0.1๋ณด๋‹ค ์ž‘์€ ๊ฒฝ์šฐ, ๋Œ€๊ธฐ์ค‘์ธ ์ฐจ๋Ÿ‰์œผ๋กœ ํŒ๋‹จํ•ด ๋Œ€๊ธฐ์—ด๋กœ count
    • ์ฐจ์„ ์— ์ฐจ๋Ÿ‰์ด ์กด์žฌํ•˜์ง€๋งŒ, ์†๋„๊ฐ€ 0.1๋ณด๋‹ค ๋น ๋ฅด๋ฉด not count
    • ๊ฐ ์ฐจ์„ ์— ๋™์ผํ•œ ์กฐ๊ฑด ์ ์šฉํ•ด์„œ ๋ชจ๋“  ๋Œ€๊ธฐ์—ด์„ sum

5. History state ๋ฐ˜์˜

image

  • ์ด์ „ action์ด ๋๋‚œ ํ›„ state๋ฅผ ๋ฐ˜์˜ํ•ด์„œ, DQN model input์œผ๋กœ ๋„ฃ์Œ
  • ์„ธ state tensor๋ฅผ concat ์—ฐ์‚ฐํ•˜์—ฌ ์ž…๋ ฅ

3. ์‹คํ—˜ ๊ฒฐ๊ณผ

1. History state ๋ฐ˜์˜ ์ „ํ›„ ๋น„๊ต

image

- prev_state+current_state only current_state
wait time 28.81 31.23
queue length 0.294 0.396
reward -0.042 -0.137

์ด์ „ state๋ฅผ ๋ฐ˜์˜ํ•œ ๊ฒฐ๊ณผ๊ฐ€ ๋” ์ข‹๊ฒŒ ๋‚˜์˜ค๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

2. Fairness ์œ ๋ฌด ๋น„๊ต

image

- fairness O fairness X
wait time E 2.24 4.87
wait time W 4.13 10.32
wait time S 3.74 5.71
wait time N 3.31 3.49

fairness๋ฅผ ๋ฐ˜์˜ํ•œ ๊ฒฐ๊ณผ ๊ฐ ์ง„์ž…์ฐจ์„ ์—์„œ์˜ ๋Œ€๊ธฐ์‹œ๊ฐ„์ด ๋ณด๋‹ค ๋” ๊ท ๋“ฑํ•˜๊ฒŒ ๋น ์ง€๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

4. Contact

tngoc@naver.com iankim010209@gmail.com

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages