🧠 AI/πŸ€– Robotics

[AI Robotics] Configuration Space ( Cspace )

였브 πŸ§™‍♂️ 2025. 1. 2. 14:49

μ •μ˜

λ‘œλ΄‡ μžμ‹ κ³Ό λ‹€λ₯Έ λͺ¨λ“  물체와 λ‘œλ΄‡μ˜ μœ„μΉ˜λ₯Ό 지정할 수 μžˆλŠ” 데이터 ꡬ쑰

 

이점

ν”Œλž˜λ„ˆκ°€ 차원 수λ₯Ό 잘 쀄일 수 μžˆλ‹€.

μ˜ˆμ‹œ

물체가 μžˆλŠ” μœ„μΉ˜λ₯Ό 잘 ν‘œν˜„ν•˜λ €λ©΄ 6 Dofκ°€ ν•„μš”ν•˜λ‹€. μ‚¬μš©μžλŠ” κΈ°μ‘΄ ν”„λ ˆμž„μ—μ„œ (x, y, z) μ’Œν‘œλ‘œ 객체의 μœ„μΉ˜λ₯Ό 지정할 수 μžˆμ§€λ§Œ 물체도 μ•žλ©΄, λ’·λ©΄, λ°”λ‹₯의 3μ°¨μ›μœΌλ‘œ λ˜μ–΄ μžˆλ‹€. λ”°λΌμ„œ μ•žλ©΄μ΄ μ–΄λ””λ₯Ό ν–₯ν•˜λŠ”μ§€, κΈ°μšΈμ—ˆλŠ”μ§€, λ˜‘λ°”λ‘œ μ„œμžˆλŠ”μ§€, μ—Žμ–΄μ ΈμžˆλŠ”μ§€λ₯Ό λ‚˜νƒ€λ‚΄λ €λ©΄ μΆ”κ°€λ‘œ 3 μžμœ λ„κ°€ 더 ν•„μš”ν•˜λ‹€. (이λ₯Ό 였일러 각, ν”ΌμΉ˜, μš”, λ‘€ 둜 ν‘œν˜„)

 

경둜 ν”Œλž˜λ‹μ— ν•΄λ‹Ήλ˜λŠ” λͺ¨λ°”일 지상 λ‘œλ΄‡μ— ν•„μš”ν•œ μžμœ λ„λŠ” 6보닀 μž‘λ‹€. (λ‘œλ΄‡κ³Ό λͺ¨λ“  물체가 λ°”λ‹₯에 있으면 높이 μ’Œν‘œ(z)λ₯Ό μ œκ±°ν•  수 μžˆλ‹€. ν•˜μ§€λ§Œ μˆ˜μ€‘λ‘œλ΄‡μ΄λ‚˜ 곡쀑에 λ–  μžˆλŠ” λ‘œλ΄‡μ— 경우 zμ’Œν‘œκ°€ ν•„μš”ν•˜λ‹€.)

이와 λ§ˆμ°¬κ°€μ§€λ‘œ 였일러 각도 항상 ν•„μš”ν•˜μ§€ μ•Šλ‹€. λ‘œλ΄‡μ΄ ν•˜λ €κ³  ν•˜λŠ” 것이 μž₯μ• λ¬Ό μ£Όλ³€ κ²½λ‘œμ— λŒ€ν•œ κ³„νšμ„ μ„Έμš°λŠ” 거라면 λ‘œλ΄‡μ΄ μ–΄λŠ μͺ½μ„ ν–₯ν•˜κ³  있던 상관이 μ—†λ‹€. κ·ΈλŸ¬λ‚˜ ν–‰μ„± νƒμ‚¬μ„ μ΄λ‚˜, μ•žμ— 놓인 μ–Έλ•μ˜ κΈ°μšΈκΈ°λŠ” λ°”μœ„κ°€ λ§Žμ€ ν—˜λ‚œν•œ μ§€ν˜•μ—μ„œ λ―Έμ…˜μ„ μˆ˜ν–‰ν•˜λŠ”λ° 맀우 μ€‘μš”ν•  수 μžˆλ‹€. 

 

ν‘œν˜„ 방법

1. λ©”λ„μš° 맡

ꡬ동방식

프리 슀페이슀λ₯Ό 볼둝 λ‹€κ°ν˜•(컨벑슀)둜 λ³€ν™˜ν•œλ‹€. 폴리곀은 λ‘œλ΄‡μ΄ 이동할 μ•ˆμ „ν•œ μ˜μ—­μ„ 가리킨닀.

μ»¨λ²‘μŠ€λŠ” λ‘œλ΄‡μ΄ λ‘˜λ ˆμ—μ„œ μ‹œμž‘ν•΄ λ‘˜λ ˆμ˜ λ‹€λ₯Έ 점을 ν–₯ν•΄ μ§μ„ μœΌλ‘œ μ΄λ™ν•˜λ©΄ 폴리곀 λ°–μœΌλ‘œ λ‚˜κ°€μ§€ μ•ŠλŠ”λ‹€λŠ” μ€‘μš”ν•œ μ„±μ§ˆμ„ 가진닀.

=> κ²°κ΅­ μ΄λŠ” 경둜 ν”Œλž˜λ‹μ—μ„œ μ–΄λ–€ 폴리곀듀을 μˆœμ„œλŒ€λ‘œ ν†΅κ³Όν•˜λŠ” 게 κ°€μž₯ νš¨μœ¨μ μΈμ§€λ₯Ό κ²°μ •ν•˜λŠ” λ¬Έμ œκ°€ λœλ‹€. 

ν₯미둜운 ν”Όμ²˜μ˜ 쌍 사이에 라인 μ„Έκ·Έλ¨ΌνŠΈκ°€ μžˆλ‹€κ³  μƒκ°ν•΄μ„œ 컨벑슀 폴리곀을 κ΅¬μ„±ν•œλ‹€. (ex. μ‹€λ‚΄ μ§€λ„μ—μ„œ λͺ¨ν‰μ΄, μΆœμž…κ΅¬, 물체 경계선 λ“±)

이λ₯Ό 톡해 컨백슀 폴리곀의 프리 슀페이슀λ₯Ό λΆ„ν• ν•˜λŠ” 라인 μ„Έκ·Έλ¨ΌνŠΈμ˜ 쑰합을 κ²°μ •ν•  수 μžˆλ‹€.

단점

- 일뢀 선뢄은 λ‹€λ₯Έ 폴리곀에 연결돼 μžˆμ§€ μ•ŠμœΌλ―€λ‘œ μ•Œκ³ λ¦¬μ¦˜μ˜ λ²”μœ„λ₯Ό λ„˜μ–΄μ„ λ‹€.

- μ„ λΆ„λ“€μ˜ 길이가 μΌμ •ν•˜μ§€ μ•Šλ‹€. -> 폴리곀을 κ°€λ₯΄ 지λ₯΄λŠ” 전체 경둜의 길이에 차이가 μžˆμ„ 수 μžˆλ‹€.

πŸ‘¨‍🏫 μ†”λ£¨μ…˜ : λ‹€λ₯Έ 폴리곀과 경계λ₯Ό μ΄λ£¨λŠ” 각 라인 μ„Έκ·Έλ¨ΌνŠΈμ˜ 쀑간 지점을 μ°ΎλŠ” 것이닀. μ΄λŸ¬ν•œ 쀑간점 각각은 λ…Έλ“œκ°€ 되고, 쀑간점 사이에 에지λ₯Ό 그리면 무방ν–₯ κ·Έλž˜ν”„κ°€ λ§Œλ“€μ–΄μ§„λ‹€. 이λ₯Ό λ°”νƒ•μœΌλ‘œ 경둜λ₯Ό μ§€μ •ν•œλ‹€. 

 

2. λ³΄λ‘œλ…Έμ΄ κ·Έλž˜ν”„ (GVG)

λ©”λ„μš° 맡과 달리 λ‘œλ΄‡μ΄ μƒˆλ‘œμš΄ ν™˜κ²½μ— μ§„μž…ν•  λ•Œ GVGκ°€ λ§Œλ“€μ–΄μ§€λ©°, μœ„μƒν•™μ  맡을 λ§Œλ“ λ‹€. 

λ³΄λ‘œλ…Έμ΄ 엣지가 λͺ¨λ“  μ μ—μ„œ 거리가 같은 라인을 μƒμ„±ν•˜λŠ” 것이닀. 

μ—μ§€λŠ” μ£Όμš” ν†΅ν–‰λ‘œ 역할을 ν•œλ‹€. λ˜ν•œ GVG 곑선 μ—μ§€λŠ” κ·Έλž˜ν”„ μ΄λ‘ μ΄λ‚˜ μ•Œκ³ λ¦¬μ¦˜μ—μ„œ λ¬Έμ œκ°€ λ˜μ§€ μ•ŠλŠ”λ‹€

이점

λ‘œλ΄‡μ΄ λ³΄λ‘œλ…Έμ΄ 엣지λ₯Ό 따라가면 κ³΅κ°„μ˜ 쀑앙을 μœ μ§€ν•˜κΈ° λ•Œλ¬Έμ— λͺ¨λΈλ§ 된 μž₯μ• λ¬Όκ³Ό μΆ©λŒν•˜μ§€ μ•ŠλŠ”λ‹€.

=> λ©”λ„μš° 맡처럼 μž₯μ• λ¬Ό 경계λ₯Ό ν™•μž₯ν•  ν•„μš”κ°€ μ—†λ‹€. 

 

3. κ·œμΉ™μ μΈ κ·Έλž˜ν”„ (κ·Έλ¦¬λ“œ)

μ›”λ“œ 곡간에 2D 데카λ₯΄νŠΈ κ·Έλ¦¬λ“œλ₯Ό κ·Έλ¦°λ‹€.

κ·Έλ¦¬λ“œ μš”μ†Œμ— ν¬ν•¨ν•œ μ˜μ—­μ— 물체가 μžˆλŠ” 경우, ν•΄λ‹Ή μš”μ†ŒλŠ” 점유 μ€‘μœΌλ‘œ ν‘œμ‹œλœλ‹€. 

κ·Έλ¦¬λ“œ 각 μš”μ†Œμ˜ 쀑심은 λ…Έλ“œκ°€ 될 수 있고 λ”°λΌμ„œ κ·Έλ¦¬λ“œλ₯Ό κ³ λ„λ‘œ μ—°κ²°λœ κ·Έλž˜ν”„λ‘œ λ³€ν™˜ν•  수 μžˆλ‹€.

λ…Έλ“œ 간에 연결선을 λŒ€κ°μ„ μœΌλ‘œ 그릴 수 μžˆλŠ”μ§€ 여뢀에 따라 4 μ—°κ²°ν˜• λ˜λŠ” 8 μ—°κ²°ν˜• κ·Έλ¦¬λ“œλ‘œ κ΅¬λΆ„ν•œλ‹€. 

단점

디지털화 λ°”μ΄μ–΄μŠ€λΌλŠ” κ°œλ…μ΄ μ“°μ΄λŠ”λ°, μ΄λŠ” 물체가 κ·Έλ¦¬λ“œ μš”μ†Œμ˜ κ°€μž₯ μž‘μ€ 뢀뢄에 놓이더라도 ν•΄λ‹Ή μš”μ†Œ 전체가 점유 쀑이라고 ν‘œμ‹œλ˜λŠ” 것이닀.

=> 곡간 낭비도 심해지고 물체듀도 λΆˆκ· ν˜•(삐죽삐죽)ν•œ λͺ¨μ–‘을 κ°€μ§€κ²Œ λœλ‹€.

πŸ‘¨‍🏫 μ†”λ£¨μ…˜ : λ‚­λΉ„λ˜λŠ” 곡간을 μ€„μ΄κ³ μž μ‹€λ‚΄μš© κ·œμΉ™μ μΈ κ·Έλ¦¬λ“œλ₯Ό 4~6인치의 μ„Έλ°€ν•œ κ·Έλ¦¬λ“œλ‘œ λΆ„ν• ν•΄μ„œ μ‚¬μš©ν•˜λŠ” κ²½μš°κ°€ λ§Žλ‹€. 

😒 해상도가 λ†’μ•„μ§€λ©΄μ„œ 경둜 ν”Œλž˜λ‹ μ•Œκ³ λ¦¬μ¦˜μ€ κ³ λ €ν•΄μ•Ό ν•  λ…Έλ“œκ°€ μ—„μ²­λ‚˜κ²Œ λ§Žμ•„μ§€κ³  μ €μž₯ λΉ„μš©μ΄ 높아진닀.