개요
인생에서와 마찬가지로 알고리즘에서도 부정성은 걸림돌이 될 수 있습니다.
링크 또는 에지로 연결된 노드 네트워크인 그래프의 두 지점 사이에서 최단 경로를 찾는 문제를 고려하십시오. 종종 이러한 가장자리는 상호 교환할 수 없습니다. 그래프는 일부 도로가 다른 도로보다 느리거나 통행료가 높은 도로 지도를 나타낼 수 있습니다. 컴퓨터 과학자들은 비용이 시간, 돈 또는 다른 것을 나타내는지 여부에 관계없이 해당 세그먼트를 가로질러 이동하는 비용을 정량화하는 "가중치"와 각 에지를 페어링하여 이러한 차이를 설명합니다. 1950년대부터 그들은 모든 가중치가 양수라고 가정할 때 이론적으로 가능한 한 빨리 최단 경로를 찾는 방법을 알고 있었습니다.
그러나 일부 그래프에서는 가중치가 음수가 될 수 있습니다. 한 세그먼트를 따라 이동하면 다른 세그먼트를 통과하는 비용을 상쇄할 수 있습니다. 예를 들어 가스비와 통행료(양수 가중치로 표시됨)와 포장물 운송 수입(음수 가중치로 표시됨)의 균형을 맞춰야 하는 배달 기사를 생각해 보십시오. 이러한 경우 알려진 가장 빠른 최단 경로 알고리즘이 작동하지 않습니다. 수십 년 동안 음의 가중치 그래프에서 최단 경로를 찾기 위한 빠른 알고리즘은 파악하기 어려웠습니다.
이제 세 명의 컴퓨터 과학자가 이 오랜 문제를 해결했습니다. 그들의 새로운 연산주어진 "소스" 노드에서 다른 모든 노드까지 그래프를 통해 최단 경로를 찾는 는 오래 전에 양의 가중치 알고리즘이 달성한 속도와 거의 일치합니다.
더욱이 새로운 접근 방식은 수십 년 된 수학적 기법을 사용하여 현대 그래프 이론 연구를 지배한 보다 정교한 방법을 피합니다.
“이렇게 간단한 알고리즘이 존재한다는 게 믿기지 않았습니다.”라고 말했습니다. 막시밀리안 프롭스트 구텐베르크, 취리히 스위스 연방 공과 대학의 컴퓨터 과학자. “모든 것이 40년 동안 거기에 있었습니다. 정말 영리하고 모든 일을 잘 해내겠다고 결심한 사람이 필요했습니다.”
탐욕의 한계
이 이야기는 1956년 네덜란드 컴퓨터 과학자 Edsger Dijkstra가 양의 가중치만 있는 그래프에서 최단 경로를 찾는 빠른 알고리즘을 개발하면서 시작됩니다. 이를 이해하려면 소스에서 시작하여 그래프를 한 번에 한 노드씩 탐색하면서 새로 발견된 에지의 가중치를 기록한다고 상상해 보십시오. 노드를 방문할 때마다 소스에서 각 새 노드의 이웃까지의 최단 경로를 예비 추정하고 더 짧은 새 경로를 찾은 경우 기존 추정을 업데이트합니다. 다음에 방문할 탐색되지 않은 노드를 결정하려면 탐욕적인 전략을 사용합니다. 즉, 현재 추정치에 따라 소스에 가장 가까운 노드로 이동합니다.
양수 가중치를 사용하면 Dijkstra의 알고리즘이 처음으로 각 노드를 방문하는 데 걸리는 경로가 실제로 가장 짧습니다. 첫 번째 단계에서 이것이 사실임을 확인하는 것이 가장 쉽습니다. 가중치가 2인 가장자리로 연결된 두 개의 노드 A와 B를 상상해 보십시오. A가 소스 노드이고 이에 닿는 다른 모든 가장자리의 가중치가 더 큰 경우 A에서 B로의 직접 경로는 이 두 지점을 연결하는 가능한 최단 경로여야 합니다. , 다른 경로의 첫 번째 세그먼트는 이미 더 길 것이기 때문입니다. 유사한 추론이 각 단계에서 작동합니다. 알고리즘은 뒤를 돌아볼 필요가 없기 때문에 그래프를 한 번 실행한 후에 완료되도록 보장합니다. 이것이 바로 알고리즘을 매우 빠르게 만드는 이유입니다.
그러나 음수 가중치는 Dijkstra의 탐욕스러운 전략에 문제를 일으킵니다. 배송 기사를 다시 생각해 보십시오. A에서 B로 약간의 이익을 얻는 직행 경로는 어딘가에서 큰 보상을 받는 순환 경로보다 적은 돈을 벌 수 있습니다. "지역 정보만으로는 결정을 내릴 수 없습니다." 산지브 칸나, 펜실베니아 대학의 컴퓨터 과학자. "최종적으로 진정한 보상을 받으려면 차선책으로 보이는 몇 가지 조치를 취해야 할 수도 있습니다."
수십 년 동안 네거티브 가중치 그래프를 작업하는 컴퓨터 과학자들은 Dijkstra 알고리즘의 속도를 유사한 "조합" 알고리즘과 일치시키려고 노력했습니다. 여기에는 기본 그래프의 개별 구조를 반영하는 개별 작업(예: 가능성 계산, 가중치 수정 및 선택적으로 가장자리 삭제)이 포함됩니다. 그러나 1990년대에는 진전이 둔화되었습니다. 보다 최근에 연구원들은 미적분학에서 트릭을 차용한 "연속 최적화" 알고리즘을 사용했습니다. 불행하게도 결과적인 속도 향상은 제한적이었고 종종 단순성을 희생했습니다.
고리를 끊어야
2021년 여름, 코펜하겐 대학교에서 동료가 된 두 명의 컴퓨터 과학자 — 다누폰 나농카이 및 크리스티안 울프-닐센 — 공동 연구 프로젝트의 주제를 찾고 있었습니다. "Christian은 '아, 그런데 저는 휴가 중이었고 그 때문에 매우 야심 찬 무언가를 생각하려고 노력하고 있었습니다. 그들은 음의 가중치 최단 경로 문제를 해결하고 초대했습니다. 아론 번스타인 Rutgers University에서 그들과 합류했습니다.
세 명의 연구원 모두 다른 문제에 대한 조합 그래프 알고리즘의 전문가였으며 비교적 오래된 접근 방식이 이를 얼마나 멀리 얻을 수 있는지 알고 싶었습니다. 번스타인은 “야심차고 오랫동안 공개된 문제에 대해 작업하는 데는 실제로 어느 정도의 자유가 있다”고 말했다.
트리오는 가능한 그래프의 하위 집합, 즉 음의 순환을 포함하는 그래프를 일시적으로 무시하는 것으로 시작했습니다. 가중치의 합이 음수가 되는 일련의 에지를 통과한 후 시작 위치로 되돌아가는 경로입니다. 시작점에서 음의 주기에 도달할 수 있는 그래프에서 최단 경로의 개념은 무너집니다. 이전에 음의 주기 주위를 반복하여 랩을 수행하여 원하는 대로 모든 노드까지의 거리를 음의 값(또는 수익성 있는 값)으로 만들 수 있기 때문입니다. 목적지를 향해 출발합니다.
연구원들은 긴 부정적인 경로가 문제를 어렵게 만드는 주된 원인이라고 의심했습니다. 그래서 그들은 긴 음의 경로를 포함할 수 없는 가까운 노드의 긴밀한 클러스터에 집중하기 시작했습니다. 두 지점이 짧은 양의 경로로 연결되어 있는 경우 두 지점 사이에 긴 음의 경로를 추가하면 음의 주기가 생성되기 때문입니다. 긴밀한 클러스터 내에서 "모두가 긍정적인 의미에서 가까이 있다는 사실은 실제로 부정적인 가장자리에 대한 유용한 정보도 제공합니다"라고 Bernstein은 말했습니다. "상황이 너무 부정적일 수 없다는 것을 알려줍니다."
대부분의 그래프에는 서로 약하게 연결되어 있는 긴밀한 클러스터가 많이 포함되어 있습니다. 연구자들이 모든 클러스터를 정확히 찾아낼 수 있다면 각 클러스터 내에서 최단 경로를 빠르게 찾는 방법을 개발할 수 있을 것이라고 생각했습니다. 여기에서 개별 클러스터를 연결하고 원래 그래프에서 최단 경로를 찾는 것이 더 쉬울 수 있습니다. 그러나 그렇게 하려면 노드가 서로 가까이 있는 그래프의 영역을 빠르게 찾아내야 합니다. 어떻게 해야 할지 몰랐습니다. 핵심은 그래프 이론의 완전히 다른 분야에서 시작된 기술임이 밝혀졌습니다.
그래프 잘라내기
1980년대에 컴퓨터 과학자들은 그래프에서 조밀한 클러스터를 선택하고 이러한 클러스터를 분리하기 위해 삭제할 에지를 식별하기 위해 저경 분해라는 기술을 개발했습니다. 이 기술은 그래프를 독립적인 섹션으로 나누는 방법을 제공합니다. 이것은 계산이 그래프의 다른 부분에서 병렬로 실행되는 "분산" 알고리즘을 용이하게 하기 위해 발명되었으므로 이 속성이 없는 최단 경로 알고리즘에는 그다지 유용하지 않았습니다.
Bernstein, Nanongkai 및 Wulff-Nilsen은 직경이 작은 분해가 집중된 부정성 없이 클러스터를 식별하는 데 도움이 될 수 있음을 깨달았습니다. 불행하게도 표준 저직경 분해 알고리즘은 방향이 없는 그래프(모든 에지가 양방향으로 이동할 수 있는 그래프)에서만 작동합니다. 한편, 음수 가중치 최단 경로 문제는 모든 가장자리가 일방 통행로인 유향 그래프에서만 의미가 있습니다. (그렇지 않으면 방향이 지정되지 않은 단일 네거티브 에지가 해당 에지에서 앞뒤로 반복되는 홉으로 구성된 네거티브 사이클을 생성합니다.) 연구원이 직경이 작은 분해를 사용하려면 이를 조정해야 합니다.
그것이 그들이 새 논문에서 한 일입니다. 에서 영감을 받다 과거의 일 Bernstein과 Wulff-Nilsen이 Probst Gutenberg와 협력하여 직경이 작은 분해와 유사한 유향 그래프에 대한 파쇄 절차를 개발했습니다. 이 절차는 소수의 가장자리만 삭제하는 무작위 프로세스를 사용하여 임의 방향 그래프를 일련의 긴밀한 클러스터로 절단합니다. 그런 다음 이러한 클러스터는 모든 에지가 동일한 방향을 가리키는 희박한 네트워크로 연결됩니다. 이러한 종류의 네트워크를 방향성 비순환 그래프(DAG)라고 합니다.
DAG를 물이 다른 경로로 흐를 수 있는 스트림과 같이 생각하십시오. 일부 경로는 다른 소스에서 흐르고 다른 경로는 다른 방향으로 부채꼴로 펼쳐지며 다른 경로는 분리되어 다시 합쳐질 수 있습니다. 그러나 어떤 것도 뒤로 흐르지 않으므로 순환이 없습니다. 이렇게 하면 DAG 작업이 훨씬 쉬워집니다.
연구원들은 음수 가중치를 사용하여 DAG에서 최단 경로를 빠르게 찾는 방법을 오랫동안 알고 있었습니다. 따라서 세 명의 연구원은 파쇄 기술을 사용하여 방향성 그래프를 각각 처리하기 쉬운 두 가지 특수 사례(DAG 및 긴밀한 클러스터)의 조합으로 줄일 수 있었습니다.
새로운 최단 경로 알고리즘은 분할 절차를 반복적으로 사용하여 그래프를 DAG로 연결된 긴밀한 클러스터로 나눕니다. 그런 다음 해당 클러스터를 점점 더 분리합니다. 프로세스가 끝나면 가장 안쪽 수준의 클러스터가 최대한 밀접하게 연결됩니다. 알고리즘이 매우 빠른 이유 중 하나는 매우 큰 그래프를 완전히 분해하는 데 많은 반복이 필요하지 않기 때문입니다. 반으로.
이러한 방식으로 그래프를 완전히 분해하면 연구원들은 그래프의 모든 부분에서 최단 경로를 빠르게 찾을 수 있습니다. 중첩된 그래프 구조의 가장 안쪽 수준에 있는 조밀한 클러스터의 경우 이는 쉬웠습니다. 거의 부정성이 남아 있지 않았습니다. 그리고 연구원들은 이미 이들을 연결하는 DAG 섹션에서 최단 경로를 찾는 방법을 알고 있었습니다.
마지막으로, 알고리즘은 골절 프로세스에 의해 제거된 가장자리를 다시 추가하고 최단 경로에 미치는 영향을 계산합니다. 연구원들은 에지를 무작위로 삭제하는 프로세스가 "뒤로" 에지를 제거하기 위해 거의 항상 몇 번의 삭제만 필요하다는 것을 증명했습니다. 이러한 종류는 DAG를 주기가 큰 그래프로 바꾸는 종류입니다. 따라서 최단 경로가 너무 많은 역방향 세그먼트를 통과할 가능성이 거의 없으므로 1950년대의 두 가지 교과서 방법인 Dijkstra의 알고리즘과 음수 가중치 그래프용으로 개발된 첫 번째 알고리즘을 결합하여 이 까다로운 최종 단계를 해결할 수 있었습니다.
Khanna는 "이러한 아이디어의 매우 영리한 구성"이라고 말했습니다. 이 알고리즘은 "거의 선형" 시간으로 실행되는 음의 가중치 그래프를 위한 첫 번째 알고리즘입니다. 즉, 실행 시간은 모든 에지를 계산하는 데 필요한 시간에 거의 비례하며 가능한 가장 빠릅니다.
그리고 연구원들이 처음에 무시하기로 결정한 음수 주기의 그래프는 어떻습니까? 최단 경로 알고리즘에 마무리 작업을 한 후, 그들은 부정적인 주기를 정확히 찾아내는 빠른 알고리즘으로도 작동할 수 있음을 보여주었습니다. 거의 모든 그래프가 도달 범위를 벗어났습니다.
병렬 경로
Bernstein은 2022년 Foundations of Computer Science 컨퍼런스에서 팀의 결과를 발표했으며, 여기서 새로운 알고리즘을 설명하는 그들의 원고는 두 개의 최고의 논문 중 하나로 간주되었습니다. 그만큼 다른 종이 또한 그래프 이론의 오랜 문제를 해결하기 위한 새로운 거의 선형 시간 알고리즘을 설명했습니다.
Probst Gutenberg와 XNUMX명의 다른 연구원이 개발한 이 알고리즘은 최소 비용 흐름이라는 보다 일반적인 문제를 해결했습니다. 여기서 목표는 많은 경로를 병렬로 통해 전송을 최적화하는 것이며 각 에지는 최대 용량과 관련 비용을 가집니다. . 최단 경로 문제는 최소 비용 흐름의 특별한 경우이므로 새로운 최소 비용 흐름 알고리즘은 근본적으로 다른 접근 방식이지만 거의 선형 시간에 음의 가중치 최단 경로 문제를 해결하는 데 사용될 수도 있습니다.
최소 비용 흐름에 대해 작업하는 팀은 적어도 현재로서는 실제로 다루기 힘든 조합 및 연속 최적화 기술의 복잡한 합성을 사용하여 범용 빠른 알고리즘을 개발했습니다. 번스타인과 그의 동료들의 조합 알고리즘은 보다 구체적인 문제로 제한되었지만 단순성을 희생하지 않고 선형에 가까운 실행 시간을 달성합니다.
Probst Gutenberg는 “이것이 이 논문의 놀라운 점입니다. “학부생에게 설명할 수도 있고 컴퓨터에서 구현할 수도 있습니다.”
결과적으로 이 새로운 알고리즘은 그래프 이론의 다른 문제에 대한 조합적 접근 방식에 대한 관심을 되살렸습니다. 순전히 조합 알고리즘을 사용하여 어떤 문제를 신속하게 해결할 수 있는지, 그리고 지난 20년 동안 개발된 연속 기술이 실제로 필요한 문제는 무엇인지 확인해야 합니다.
"이것은 내가 이해하려고 노력하는 철학적 질문입니다."라고 Nanongkai는 말했습니다. "이 최단 경로 문제는 약간의 희망을 줍니다."
- SEO 기반 콘텐츠 및 PR 배포. 오늘 증폭하십시오.
- 플라토 블록체인. Web3 메타버스 인텔리전스. 지식 증폭. 여기에서 액세스하십시오.
- 출처: https://www.quantamagazine.org/finally-a-fast-algorithm-for-shortest-paths-on-negative-graphs-20230118/
- 20년
- 2021
- 2022
- a
- 소개
- 에 따르면
- 계정
- 달성
- 가로질러
- 실제로
- 비 환식
- 각색하다
- 추가
- 후
- 반대
- 연산
- 알고리즘
- All
- 이미
- 항상
- 거창한
- 고대
- 및
- 다른
- 분리
- 접근
- 구혼
- 약
- 관련
- 뒤로
- 잔액
- 기반으로
- 때문에
- 가
- 전에
- 시작
- 믿으세요
- Bernstein
- BEST
- 사이에
- 그 너머
- 큰
- 빌다
- 지사
- 흩어져
- 휴식
- 부서진
- ~를 계산하다
- 라는
- 생산 능력
- 케이스
- 가지 경우
- 어떤
- CIS
- 닫기
- 면밀히
- 클러스터
- 협력하다
- 동료
- 결합
- 결합
- 왔다
- 계산
- 컴퓨터
- 컴퓨터 과학
- 집중된
- 컨퍼런스
- 연결
- 연결
- 고려
- 구성
- 끊임없는
- 비용
- 수
- 만들
- Current
- 현재
- 절단
- 주기
- DAG
- 수십 년
- 결정된
- 결정
- 배달
- 설명
- 목적지
- 결정된
- 개발
- 개발
- DID
- 차이
- 다른
- 어려운
- 곧장
- 방향
- 발견
- 거리
- 하지 않습니다
- 말라
- 아래 (down)
- 운전사
- Dutch
- 마다
- 적립
- 쉽게
- 가장 쉬운
- Edge
- 효과
- 제거
- 제거 된
- 사용 가능
- 전적으로
- 본질적으로
- 견적
- 견적
- 조차
- EVER
- 사람
- 현존하는
- 존재
- 전문가
- 설명
- 탐색
- 매우
- 용이하게하다
- 부채
- FAST
- 가장 빠른
- 연방
- 를
- 최후의
- 최종적으로
- Find
- 발견
- finds
- 먼저,
- 처음으로
- 흐름
- 흐름
- 초점
- 발견
- 기초
- 자유
- 에
- 충분히
- 추가
- 가스
- 일반
- 범용
- 독일
- 얻을
- 주어진
- 제공
- Go
- 골
- 그래프
- 그래프
- 탐욕스러운
- 보장
- 구텐베르그
- 반
- 줌
- 핸들
- 일이
- 표제
- 도움
- 더 높은
- 기대
- 방법
- How To
- 그러나
- HTML
- HTTPS
- 아이디어
- 확인
- 구현
- in
- 수입
- 독립
- 개인
- 정보
- 영감
- 예
- 학회
- 관심
- 발명
- 감다
- IT
- 반복
- 어울리다
- 가입
- 키
- 종류
- 알아
- 알려진
- 넓은
- 큰
- 레벨
- 생활
- 제한된
- 제한
- 모래밭
- 지방의
- 긴
- 장기
- 오랫동안 서있는
- 이상
- 보기
- 만든
- 확인
- 제작
- 유튜브 영상을 만드는 것은
- 태도
- .
- 지도
- 경기
- 수학의
- 최대
- 최고
- 방법
- 그 동안에
- 병합
- 방법
- 수도
- 현대
- 돈
- 배우기
- 이동
- 움직이는
- 거의
- 부정
- 이웃
- 그물
- 네트워크
- 신제품
- 다음 것
- 노드
- 노드
- 개념
- 번호
- 숫자
- 오프셋
- ONE
- 열 수
- 행정부
- 최적화
- 최적화
- 실물
- 유래
- 기타
- 기타
- 그렇지 않으면
- 패키지
- 페어링
- 서
- 서류
- 평행
- 부품
- 부품
- 통과
- 과거
- 통로
- 펜실베니아
- 선택
- 플라톤
- 플라톤 데이터 인텔리전스
- 플라토데이터
- 포인트 적립
- 전철기
- 긍정적인
- 가능성
- 가능한
- 거의
- 연습
- 제시
- 문제
- 문제
- 방법
- 이익
- 수익성
- 진행
- 프로젝트
- 재산
- 증명
- 제공
- 전혀
- 입고
- 콴타마진
- 문제
- 빨리
- 본래
- 닥치는대로의
- 빠르게
- 도달
- 현실
- 깨달은
- 이유
- 합리적인
- 최근에
- 감소
- 반영
- 지역
- 상대적으로
- 남은
- 유적
- 반복
- 자꾸
- 대표
- 대표되는
- 대표
- 필요
- 필수
- 연구
- 연구원
- 책임
- 한정된
- 결과
- 결과
- 보상
- 도로
- 길
- 달리기
- 달리는
- Rutgers University
- 희생하는
- 말했다
- 같은
- 과학
- 과학자
- 과학자
- 수색
- 섹션
- 분절
- 세그먼트
- 감각
- 연속
- 정착 시민
- 몇몇의
- 짧은
- 비슷한
- 단순, 간단, 편리
- 간단
- 이후
- 단일
- 크기
- 작은
- So
- 풀다
- 해결
- 일부
- 어떤 사람
- 무언가
- 어딘가에
- 정교한
- 출처
- 지우면 좋을거같음 . SM
- 특별한
- 구체적인
- 속도
- 주문
- 분열
- 표준
- 스타트
- 시작
- 시작 중
- 단계
- 아직도
- 이야기
- 전략
- 흐름
- 거리
- 구조
- 학생
- 이러한
- 여름
- 스위스
- 받아
- 소요
- 복용
- 팀
- 기법
- Technology
- 말하다
- 교과서
- XNUMXD덴탈의
- 그래프
- 소스
- 그들의
- 일
- 세
- 을 통하여
- 시간
- 에
- 함께
- 너무
- 화제
- 만지고있는
- 수송
- 여행
- 수고
- 참된
- 회전
- 돌린
- 밑에 있는
- 이해
- 대학
- 업데이트
- 사용
- 휴가
- 사실상
- 원
- 물
- 웹
- 무게
- 뭐
- 여부
- 어느
- 누구
- 이내
- 없이
- 작업
- 일하는
- 일
- 겠지
- 년
- 자신의
- 너의
- 제퍼 넷
- 취리히