PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2018/03/29 11:30:50
Name 치열하게
Subject [질문] 특정 지역의 경도 1도 거리 구하기
안녕하세요.

제가 지금 뉴욕 특정 위치의 거리를 구하려고 하고 있습니다.

맨하탄 디스턴스 방식으로 구하려고 해서

d = |x1 - x2| + |y1 - y2|  형식을 쓰려했고,

자료는
lon1            lat1                lon2            lat2
-73.982155  40.767937    -73.964630  40.765602

형식입니다.

여차저차해서 뉴욕의 위도: 40.6643, 경도: -73.9385를 찾아

이 기준으로 1도당 거리를 측정하기로 했습니다.

위도의 경우 40도일 경우 1도의 길이 111.034km인 것은 찾았습니다.
(https://blog.naver.com/bkpark777/80142944295  참고)

그런데 경도 -73도의 경우 1도당 거리를 찾기가 너무 어렵더라구요

"서울 부근(북위 38도에 가까움 정확히는 37도 30분)에서 경도 1도의 거리는 2 × 3.14 × 6400KM × 0.788 × 1/360 = 88km"  이라고 하는데
(https://m.blog.naver.com/PostView.nhn?blogId=noble8888&logNo=110168799701&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F)

cos(40.6643) * 6400 * 2 * 3.14 / 360 식으로 계산을 하면  '-109.91183804509743' 값이 나와서 이게 맞는 가 싶고


요약하자면

d = |x1 - x2| + |y1 - y2|  공식으로 거리를 구할 때 x와 y가 위도 경도이니

각각 d = |x1 - x2|* 111.034(1도간 위도 거리) + |y1 - y2|* ???(1도간 경도 거리) 해줘야 하는데

경도의 경우 몇을 곱해주어야 하는지가 궁금합니다....(서울 기준이면 88이긴 한데 뉴욕과 서울의 위치가 위도상으로도 다르니....)

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
가우리
18/03/29 11:40
수정 아이콘
맨하탄 말고 haversine formula 를 찾아서 쓰시면 됩니다.

kms_per_radian = 6371.0088

으로 계산하면 구하기 쉽습니다.
치열하게
18/03/29 12:02
수정 아이콘
a = sin(dlat/2)**2 + cos(lat1) * cos(lat2) * sin(dlon/2)**2
c = 2 * np.arcsin(sqrt(a))
km = 6367 * c

이거 말씀하시는 건가요?(죄송합니다. 공식이 파이썬 코드) 맨하탄을 쓰는 이유가 택시의 이동거리를 추측하는 것이라서요. 직선거리가 아니라. 아니면 제가 잘못 생각하고 있는 건가요? (수포자임을 감안해주세요)
가우리
18/03/29 12:55
수정 아이콘
(수정됨) 맨하탄 공식이라고 주신 공식을 자세히 보시면
d = |x1 - x2| + |y1 - y2|
결국 두 점의 차이를 절대값 취한 숫자를 더한 = 직선거리 라서 구하려는 값은 결국 같을 겁니다.
위도 경도의 거리는 haversine 을 쓰는 것이 맞습니다.

자세한 내용이 https://en.wikipedia.org/wiki/Taxicab_geometry 위키에 잘 나와있네요.
치열하게
18/03/29 16:38
수정 아이콘
자세히 코드를 살펴보니위에 단 댓글 공식 마지막에 haversine을 사용하긴 합니다. 답변 감사드립니다.(오히려 본문코드보다는 댓글 코드가 정확성이- 케글 문제 머신러닝 높게 나오긴 하네요.)
와일드볼트
18/03/29 16:27
수정 아이콘
(수정됨) *범위 실수한거 수정했습니다.

왜 맨하튼 거리계를;;
문제에서 맨하튼 거리계를 사용했을 때의 거리를 구하라고 한건가요?

여튼 거리계 사용을 둘째 치고 질문에서 문제가 된 부분의 결론부터 말하자면 차열하게 님께서 라디안이랑 도 구분을 안하셔서 오류가 난거에요.
일반적으로 cos(40)이라 작성하면 컴퓨터는 40°가 아니라 40라디안으로 인식합니다.
애초에 cos 함수가 -90° < x < 90° 범위에서 양수인데 코사인 40°의 답이 음수로 나올 수 가 없죠.
cos(37.5degrees) * 6400 * 2 * 3.14 / 360 = 88.573492925
이니 해당 블로그의 88이라는건 제대로 된 계산이고,

40도의 경우에는
cos(40degrees) * 6400 * 2 * 3.14 / 360 = 85.5246062718

40.6643도의 경우에는
cos(40.6643degrees) * 6400 * 2 * 3.14 / 360 = 84.6868327264
정도로 나오네요.
치열하게
18/03/29 16:36
수정 아이콘
맨하탄 거리를 쓴 것은 구하려고 하는 게 택시 이동거리입니다. 점과 점을 잇는 직선이 가장 최단거리이긴 한데 택시가 현실적으로 건물에 가로막혀 그렇게 가지 못할테니 구획정리가 비교적 잘 되어있는 뉴욕이라 맨하탄 거리가 가장 비슷하지 않을까 생각했습니다.(정확히는 스터디에서 의견교환끝에 나온 결론)

질문글 올린 이후에는 85.xxx이란 숫자를 사용했습니다. 88보다는 미세하지만 좀 더 정확성이 높게 나왔습니다.(사실 이건 케글 문제 뉴욕택시 이동시간 맞추기입니다. 위도경도를 잘 모르니 힘드네요. 답변 감사합니다.)
와일드볼트
18/03/29 16:44
수정 아이콘
실제 택시 이동거리를 구하고자 한다면 생각해야할 부분이 또 하나 있는게
실제로 모든 건물들이 위, 경도에 맞춰서 수평 수직하게 격자 무늬로 있는게 아니라서요..
|x1 - x2|*1도당 위도 + |y1 - y2|*1도당 경도
로 계산하면 실제 이동 거리랑 차이가 제법 날겁니다.
치열하게
18/03/29 16:36
수정 아이콘
맨하탄 거리를 쓴 것은 구하려고 하는 게 택시 이동거리입니다. 점과 점을 잇는 직선이 가장 최단거리이긴 한데 택시가 현실적으로 건물에 가로막혀 그렇게 가지 못할테니 구획정리가 비교적 잘 되어있는 뉴욕이라 맨하탄 거리가 가장 비슷하지 않을까 생각했습니다.(정확히는 스터디에서 의견교환끝에 나온 결론)

질문글 올린 이후에는 85.xxx이란 숫자를 사용했습니다. 88보다는 미세하지만 좀 더 정확성이 높게 나왔습니다.(사실 이건 케글 문제 뉴욕택시 이동시간 맞추기입니다. 위도경도를 잘 모르니 힘드네요. 답변 감사합니다.)
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
117950 [질문] 입사 고민입니다. [6] 중곡동교자만두2511 18/03/29 2511
117940 [질문] 특정 지역의 경도 1도 거리 구하기 [8] 치열하게5136 18/03/29 5136
117335 [질문] 커피레이크 8600k와 8700이 체감차이가 많이 날까요? [7] esang5475 18/03/15 5475
116835 [질문] 차구매 후 사설업체에서 옵션 설치하면 추후 어떤문제가 있을까요? [4] 개념은?2124 18/03/03 2124
116064 [질문] 남편 생일 선물로 뭐가 좋을까요? [24] 달달한고양이4419 18/02/13 4419
115821 [질문] [코인주의]지금 리플 추가구매하는거 어떻게생각하세요? [19] 블랙핑크지수3263 18/02/07 3263
115549 [질문] PC 견적 상담 부탁드려요. [5] 트라팔가 로우2653 18/01/31 2653
115464 [질문] e220d 인디오더 가격표는 없나요?.. [20] 50b5284 18/01/29 5284
112917 [질문] 360vr 영상 편집 질문드립니다. [4] 러블리즈서지수1093 17/12/06 1093
112890 [질문] 직장 선택 질문 드립니다. [23] 오빠나추워3010 17/12/06 3010
112872 [질문] 태블릿처럼 접을 수 있는 노트북을 찾습니다. [8] 조선전자오락단2359 17/12/05 2359
112606 [질문] 변압기 구매해 대매 질문드립니다. [1] 마법사7년차1184 17/11/30 1184
112344 [질문] 하스스톤 2가지 질문 [3] I.O.I2503 17/11/25 2503
111449 [질문] XBOX One 2세대 패드는 못구하나요? [4] 다크템플러2050 17/11/06 2050
111353 [질문] (컴알못) 컴퓨터 부팅실패 관련 질문입니다 [3] 잠보1231 17/11/04 1231
109663 [질문] 음악 제목 알려주세요 [3] Galvatron1535 17/09/28 1535
109016 [질문] 부동산 중개인 때문에 짜증나 죽겠네요. [8] BewhY3390 17/09/15 3390
108134 [질문] 음력 관련 질문입니다. [2] sensorylab1371 17/08/30 1371
107991 [질문] 태그가 미리보기서는 보이는데 업로드 하면 안보입니다. [3] aSlLeR1832 17/08/28 1832
106779 [질문] 모바일 유튜브 화질이 이상합니다. [2] 아린사랑18055 17/08/06 18055
105258 [질문] 너무 슬픕니다 저도 세상의 주인공 중 한 명이고 싶은데... [119] 또하자7029 17/07/05 7029
104995 [질문] 제 삶에 대한 평가와 조언 부탁드립니다. [104] 또하자6187 17/06/30 6187
104564 [질문] [진지함] 1종 보통 운전면허 자격증 질문 [16] 도로시-Mk23586 17/06/21 3586
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로