Uid: 20231152

Name: Hyeon Jun Jin

“I will keep promises between the prof. Lee and I

HW8

HW7

기존 네트워크를 기반으로 식을 세우게 되면 Homogenous system이 나오게 된다.

이를 해결하는 방법으로는 Non-homogeneous system으로 바꿔야 한다.

즉,  이라는 조건을 추가하여 한다. 이때 주어진 제약식 어떤 것을 바꿔도 결과는 같으므로 이라는 조건을  로 치환하여 계산한다.

HW6

  1. 부품이 있을 때

  1. 부품이 없을 때

HW5

  1. 부품이 있을 때

  1. 부품이 없을 때

HW4

HW3

obj

s.t.

코드

최단거리: 인천(x2) → 계양역(x5) → 서울역(x10) → 김천구미역(x16) → 학교(x18), 212분


HW2

선정모델: roborock s7, roborock s8


HW1

로봇청소기가 charging station으로 복귀하는데 사용하는 Algorithm은 크게 두 개로 나누어진다. 내부지도를 생성하는 slam(Simultaneous Localization and Mapping)과 현지 위치에서 charging station까지 최단 거리를 알려주는 Algorithm로 구성되어 있다.

먼저 SLAM은 실시간으로 자신의 위치를 추정하여 내부 지도를 작성해 주는 Algorithm이다. 센서에 따라 인식하는 방법이 달라지는데 보통은 카메라를 이용하는 Visual SLAM을 사용하고 있다. 이 Visual SLAM은 비교점이 될 수 있는 영역에 특정점을 찍어 위치 및 거리 변화를 측정한다. 여러 특징점의 정보를 수식으로 계산하여 자기 위치를 파악한다. 구체적인 거리 측정은 로봇 청소기 바퀴 지름과 회전 횟수로 계산한다.

이렇게 작성된 지도를 기반으로 Algorithm을 기반으로 최단 거리 내로 charging station으로 복귀한다. 가장 기본적인 Algorithm은 Dijkstra Algorithm이다. 그러나 Dijkstra Algorithm은 시작 노드 기준으로 모든 노드의 최단 경로를 구하는 알고리즘이다, 그러나 robot vacuum은 출발지와 목적지가 정해져 있으므로 이는 비효율적인 방법이다. 이를 개선한 것이 Algorithm이다. Algorithm은 시작 노드에서 목표 노드까지의 최단 거리를 휴리스틱 기반 Dijkstra 알고리즘을 사용하여 구한다. Algorithm을 구하는 수식은 다음과 같다.

이때 h(n)은 현재 노드에서 목표 노드까지의 예상비용을 구하는 함수라 하면 이를 휴리스틱 함수라고 한다. 이 함수에 의해서 Algorithm의 성능이 달라진다. 가장 단순하고 대표적인 휴리스틱 함수는 맨해튼 거리 함수와 유클리디안 거리 함수이다,

추가적으로 Algorithm보다 더 속도를 개선한 Algorithm이 있다. JPS(Jump Point Search)인데 이 Algorithm은 Algorithm과 달리 모서리를 찾을 때까지 노드에 대한 계산을 Jump하여 Point를 Search한다. 즉 모서리를 찾을 수만 있다면 저 빠른 속도로 계산이 가능하다. 다만 게임내에서 주로 사용하는 것으로 알고 있는데 로봇 청소기에도 사용이 되는지는 적은 정보로 인하여 확인해 볼 수 없었다