나중에 편하게 보려고 위키에 있는거 번역함.
거리 단위는 그리드, 철도 중심들 사이의 직선거리 합으로 계산
시간 단위인 틱은 1/60초
경로에 붙는 페널티
경로상에 다른 기차가 있음: 기차가 점유한 철도 구간의 길이 (기차길이아님)×2/거기까지 거리
경로에 회로 제어로 빨간불이 된 신호가 있음: +1000
자기 일정에 없는 역이 경로에 있음: +2000
기차가 정차된 역이 경로에 있음: +500
위에거랑 중첩되는지는 모르겠다
기차가 정차한 역이 경로에 있는데 그 기차가 가야할 역이 현재 없음: +1000
수동모드로 정차된 기차가 경로에 있음: +2000
수동모드인데 사람도 없음: +7000. 7천 맞음ㅇㅇ
기차역으로 들어가려는 기차가 경로에 있음: +100
철도 신호로 가는 기차가 경로에 있음: +100
위에랑 중첩은 안되는거같다
신호 기다리는 기차가 경로에 있음: +100 +걔가 기다린 틱 수×0.1
경로 없음이 뜨는 기차가 경로에 있음: +1000
기차가 정차했다가 다시 출발하면 경로를 다시 계산함.
이외에도 재계산 조건이 여러개 있는데 거의 다 당연한 거라 안적음
거리 단위는 그리드, 철도 중심들 사이의 직선거리 합으로 계산
시간 단위인 틱은 1/60초
경로에 붙는 페널티
경로상에 다른 기차가 있음: 기차가 점유한 철도 구간의 길이 (기차길이아님)×2/거기까지 거리
경로에 회로 제어로 빨간불이 된 신호가 있음: +1000
자기 일정에 없는 역이 경로에 있음: +2000
기차가 정차된 역이 경로에 있음: +500
위에거랑 중첩되는지는 모르겠다
기차가 정차한 역이 경로에 있는데 그 기차가 가야할 역이 현재 없음: +1000
수동모드로 정차된 기차가 경로에 있음: +2000
수동모드인데 사람도 없음: +7000. 7천 맞음ㅇㅇ
기차역으로 들어가려는 기차가 경로에 있음: +100
철도 신호로 가는 기차가 경로에 있음: +100
위에랑 중첩은 안되는거같다
신호 기다리는 기차가 경로에 있음: +100 +걔가 기다린 틱 수×0.1
경로 없음이 뜨는 기차가 경로에 있음: +1000
기차가 정차했다가 다시 출발하면 경로를 다시 계산함.
이외에도 재계산 조건이 여러개 있는데 거의 다 당연한 거라 안적음
https://wiki.factorio.com/Railway/Train_path_finding
관심이 생겨서 원문 찾아봤는데, "경로상에 다른 기차가 있음: 기차가 점유한 철도 구간의 길이 (기차길이아님)×2" <- 이부분은 해당 구간까지의 거리로 나눠져서 멀리 있는 점유일 수록 패널티가 적어지네. 그리고 길찾기를 하는 시점에서 최단경로 + 패널티 계산을 하고, 중간에 재계산 조건(철도 끊김, 신호 대기로 인한 정차 등)이 발생하면 경로를 다시 계산함
ㅇㅎ 지적감사
감사추