KR20220137325A - 이중 티어 외판원 문제에 대한 최적화 방법 - Google Patents
이중 티어 외판원 문제에 대한 최적화 방법 Download PDFInfo
- Publication number
- KR20220137325A KR20220137325A KR1020210043246A KR20210043246A KR20220137325A KR 20220137325 A KR20220137325 A KR 20220137325A KR 1020210043246 A KR1020210043246 A KR 1020210043246A KR 20210043246 A KR20210043246 A KR 20210043246A KR 20220137325 A KR20220137325 A KR 20220137325A
- Authority
- KR
- South Korea
- Prior art keywords
- solution
- vertices
- calculating
- traveling salesman
- salesman problem
- Prior art date
Links
- 238000005457 optimization Methods 0.000 title claims abstract description 32
- 238000000034 method Methods 0.000 title claims abstract description 20
- 230000006872 improvement Effects 0.000 claims description 4
- 230000009977 dual effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 7
- 238000004891 communication Methods 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003334 potential effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
- G06Q10/063114—Status monitoring or status determination for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0633—Workflow analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0835—Relationships between shipper or supplier and carriers
- G06Q10/08355—Routing methods
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Data Mining & Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
본 실시예들은 일부 지점을 방문하고 시작점에 복귀한 후 나머지 지점을 방문하는 이중 티어 외판원 문제에 대해서 초기해를 조작하여 최적화 과정을 거치는 방식을 통해 수행시간을 단축하면서도 상대적으로 저렴한 비용의 해를 찾을 수 있는 최적화 방법을 제공한다.
Description
본 발명이 속하는 기술 분야는 이중 티어 외판원 문제에 대한 최적화 방법에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
외판원 문제는 잘 알려진 최적화 문제로, 점들의 집합 V와 이들 간의 거리가 주어질 때 모든 점을 단 한 번씩 방문한 후 시작점으로 돌아오되 전체 이동거리를 최소화하는 문제이다. 보통은 이 문제에서 시작점을 지정하여도 의미가 없으므로 지정하지 않지만, 여기에서는 시작점 s ∈ V를 지정하기로 한다. 많은 경우 이 문제는 삼각부등식이 성립하는 경우에 대하여 고려하게 된다.
이중 티어 외판원 문제는 추가된 입력으로 다음이 주어진다. 정점의 부분집합 F ⊆ V, 각 정점 v ∈ V의 가중치 tv (단, ts := 0), 한계치 T. 출력으로는 s에서 시작해서 일부 정점을 방문하고 시작점 s로 돌아온 후, 다시 다른 정점들을 방문하고 s로 돌아오는 방법을 출력한다. 여전히 (s를 제외한) 모든 정점은 단 한 번 방문하되, F에 속한 모든 정점은 중간에 s에 돌아오기 이전에 모두 방문하여야 한다. 중간에 s에 돌아오기 전까지 지나온 거리의 합과 지나온 정점들의 가중치의 합은 모두 합해 T를 넘을 수 없다. 이러한 경로들 중 전체 경로의 길이를 최소화하는 경로를 찾는 것이 바로 이중 티어 외판원 문제이다.
본 발명의 실시예들은 일부 지점을 방문하고 시작점에 복귀한 후 나머지 지점을 방문하는 이중 티어 외판원 문제에 대해서 초기해를 조작하여 최적화 과정을 거치는 방식을 통해 수행시간을 단축하면서도 상대적으로 저렴한 비용의 해를 찾는 데 주된 목적이 있다.
본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.
본 실시예의 일 측면에 의하면 최적화 장치에 의한 이중 티어 외판원 문제에 대한 최적화 방법에 있어서, 정점의 전체집합 및 시작점을 입력받는 단계; 상기 정점의 부분집합, 상기 정점의 가중치, 및 한계치를 입력받는 단계; 상기 정점의 부분집합을 방문하고 차집합을 방문하는 초기해를 산출하는 단계; 및 상기 초기해를 조작하여 최적화된 해를 산출하는 단계를 포함하는 이중 티어 외판원 문제에 대한 최적화 방법을 제공한다.
상기 초기해를 산출하는 단계는, 상기 정점의 부분집합에 대한 해의 전반을 산출하는 단계; 및 상기 차집합에 대한 해의 후반을 산출하는 단계를 포함할 수 있다.
상기 차집합에 대한 해의 후반을 산출하는 단계는, (i) 상기 차집합에 속하는 정점만을 대상으로 외판원 문제의 해를 산출하거나 (ii) 상기 정점의 전체집합을 대상으로 외판원 문제의 해를 산출한 후 상기 정점의 부분집합을 생략(shortcutting)할 수 있다.
상기 최적화된 해를 산출하는 단계는, 상기 해의 후반에서 한 정점을 생략하고 생략한 정점을 상기 해의 전반으로 이동하거나 삽입할 수 있다.
상기 최적화된 해를 산출하는 단계는, 상기 한계치를 위배하지 않는 조작에 대해서 상기 조작으로 인한 해의 전체 이동거리에 대한 개선분을, 상기 해의 전반의 총 이동거리 및 상기 해의 전반의 정점 가중치의 합을 합친 값의 증가분으로 나눈 것이 최대화되는 조작을 반복 수행하며, 해의 전체 이동거리를 개선하는 조작이 더 이상 없으면 중단할 수 있다.
상기 최적화된 해를 산출하는 단계는, 상기 해의 전반에 방문하는 정점을 대상으로 외판원 문제를 다시 풀고, 새롭게 얻어진 해가 원래 해의 전반보다 우수하면 상기 해의 전반을 교체할 수 있다.
상기 최적화된 해를 산출하는 단계는, 상기 해의 후반에 방문하는 정점을 대상으로 외판원 문제를 다시 풀고, 새롭게 얻어진 해가 원래 해의 후반보다 우수하면 상기 해의 후반을 교체할 수 있다.
이상에서 설명한 바와 같이 본 발명의 실시예들에 의하면, 일부 지점을 방문하고 시작점에 복귀한 후 나머지 지점을 방문하는 이중 티어 외판원 문제에 대해서 초기해를 조작하여 최적화 과정을 거치는 방식을 통해 수행시간을 단축하면서도 상대적으로 저렴한 비용의 해를 찾을 수 있는 효과가 있다.
여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급된다.
도 1은 본 발명의 일 실시예에 따른 최적화 장치를 예시한 블록도이다.
도 2는 본 발명의 다른 실시예에 따른 이중 티어 외판원 문제에 대한 최적화 방법을 예시한 흐름도이다.
도 2는 본 발명의 다른 실시예에 따른 이중 티어 외판원 문제에 대한 최적화 방법을 예시한 흐름도이다.
이하, 본 발명을 설명함에 있어서 관련된 공지기능에 대하여 이 분야의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하고, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다.
이중 티어 외판원 문제는 고전적인 외판원 문제에서 일부 정점이 "높은 우선순위"를 가지고 일정 시간 T 내에 서비스되어야 하는 경우에 적용할 수 있는 최적화 문제이다. 예컨대 택배 배달에서 부패하기 쉬운 물품은 배달 시작 후 T 시간 내에 배달하여야 하고, 이동시간 외에도 각 지점 v ∈ V에서의 배달은 tv 시간이 추가로 소요되는 경우, 먼저 부패하기 쉬운 물품과 더불어 일부 일반 물품을 함께 배달을 마치고 물류 창고로 귀환한 후 다시 한 번 나머지 물품의 배달을 할 때에 전체 이동 소요 시간을 최소화하는 문제가 이중 티어 외판원 문제로 표현될 수 있다.
이중 티어 외판원 문제는 외판원 문제의 일반화이므로 NP-난해하다. 본 실시예에 따른 최적화 장치는 초기해를 조작하여 최적화 과정을 거치는 방식을 통해 수행시간을 단축하면서도 상대적으로 저렴한 비용의 해를 찾는 알고리즘을 수행한다.
도 1은 본 발명의 일 실시예에 따른 최적화 장치를 예시한 블록도이다.
최적화 장치(110)는 적어도 하나의 프로세서(120), 컴퓨터 판독 가능한 저장매체(130) 및 통신 버스(170)를 포함한다.
프로세서(120)는 최적화 장치(110)로 동작하도록 제어할 수 있다. 예컨대, 프로세서(120)는 컴퓨터 판독 가능한 저장 매체(130)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 컴퓨터 실행 가능 명령어는 프로세서(120)에 의해 실행되는 경우 최적화 장치(110)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능한 저장 매체(130)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보는 입출력 인터페이스(150)나 통신 인터페이스(160)를 통해서도 주어질 수 있다. 컴퓨터 판독 가능한 저장 매체(130)에 저장된 프로그램(140)은 프로세서(120)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능한 저장 매체(130)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 최적화 장치(110)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(170)는 프로세서(120), 컴퓨터 판독 가능한 저장 매체(130)를 포함하여 최적화 장치(110)의 다른 다양한 컴포넌트들을 상호 연결한다.
최적화 장치(110)는 또한 하나 이상의 입출력 장치를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(150) 및 하나 이상의 통신 인터페이스(160)를 포함할 수 있다. 입출력 인터페이스(150) 및 통신 인터페이스(160)는 통신 버스(170)에 연결된다. 입출력 장치(미도시)는 입출력 인터페이스(150)를 통해 최적화 장치(110)의 다른 컴포넌트들에 연결될 수 있다.
최적화 장치(110)가 수행하는 제1 알고리즘은 다음과 같다.
먼저 모든 정점을 구분하지 않고 외판원 문제를 푼다. (여기에는 기존에 알려진 알고리즘들 중 하나를 사용할 수 있다.) 이렇게 얻어진 해를 σ3라 칭한다.
다음으로는 V\F(차집합)에 대해서 외판원 문제를 푼다. 이렇게 얻어진 해를 σ2라 칭한다.
앞에서 얻은 σ2에서 F에 속하는 정점들을 생략한다. 경로 상의 한 정점이 생략되면 그 앞 정점에서 출발해 생략된 정점을 거치지 않고 다음 정점으로 바로 이동하게 되는데, 이것을 이른바 단락(shortcutting)이라 하며, 삼각 부등식에 의해 해의 비용을 증가시키지 않는 변화임을 알 수 있다. 이렇게 얻은 (F에 대한) 해를 σ1이라 칭한다.
σ1에 따라 각 F를 방문한 후 연이어 σ2에 따라 나머지 정점을 방문하는 해를 "초기해"로 삼는다. 중간에 s를 다시 방문하기 전의 부분(σ1)을 해의 "전반", 이후 부분(σ2)을 해의 “후반”이라 칭한다.
해의 후반에서 한 정점을 생략하고, 이 정점이 원래 σ3에 나타나 있던 자리를 기준으로 해의 전반으로 옮기는 조작을 수행한다. 이러한 조작들 중 일부는 한계치 T에 대한 조건을 위배할 수 있는데, 이들을 제외한 나머지 조작들 중, 조작으로 인한 해의 전체 이동거리에 대한 개선분을 (해의 전반의 총 이동거리)+(해의 전반의 정점 가중치의 합)의 증가분으로 나눈 것이 최대화되는 조작을 수행한다. 이를 반복하되, 해의 전체 이동거리를 개선하는 조작이 더 이상 없으면 중단한다.
최적화 장치(110)가 수행하는 제2 알고리즘은 다음과 같다.
F에 속한 정점만을 대상으로 외판원 문제를 푼다. 이렇게 얻어진 해를 σ1이라 칭한다.
다음으로는 V\F(차집합)에 대해서 외판원 문제를 푼다. 이렇게 얻어진 해를 σ2라 칭한다.
σ1에 따라 각 F를 방문한 후 연이어 σ2에 따라 나머지 정점을 방문하는 해를 "초기해"로 삼는다. 중간에 s를 다시 방문하기 전의 부분(σ1)을 해의 "전반", 이후 부분(σ2)을 해의 “후반”이라 칭한다.
해의 후반에서 한 정점을 생략하고, 이 정점을 해의 전반에 삽입하는 조작을 수행한다. (삽입되는 위치는 모든 가능성을 전부 고려한다.) 이러한 조작들 중 일부는 한계치 T에 대한 조건을 위배할 수 있는데, 이들을 제외한 나머지 조작들 중, 조작으로 인한 해의 전체 이동거리에 대한 개선분을 (해의 전반의 총 이동거리)+(해의 전반의 정점 가중치의 합)의 증가분으로 나눈 것이 최대화되는 조작을 수행한다. 이를 반복하되, 해의 전체 이동거리를 개선하는 조작이 더 이상 없으면 중단한다.
최적화 장치(110)가 수행하는 제3 알고리즘은 다음과 같다.
제1 알고리즘이나 제2 알고리즘을 통하여 해를 얻는다.
해의 전반에 방문하는 정점들만을 대상으로 외판원 문제를 다시 푼다. 이렇게 얻어진 새로운 해가 원래 해의 전반보다 우수하면, 해의 전반을 교체한다.
해의 후반에 방문하는 정점들만을 대상으로 외판원 문제를 다시 푼다. 이렇게 얻어진 새로운 해가 원래 해의 후반보다 우수하면, 해의 후반을 교체한다
도 2는 본 발명의 다른 실시예에 따른 이중 티어 외판원 문제에 대한 최적화 방법을 예시한 흐름도이다. 이중 티어 외판원 문제에 대한 최적화 방법은 최적화 장치에 의해 수행될 수 있다.
단계 S10에서는 정점의 전체집합 및 시작점을 입력받는 단계를 수행한다.
단계 S20에서는 정점의 부분집합, 정점의 가중치, 및 한계치를 입력받는 단계를 수행한다.
단계 S30에서는 정점의 부분집합을 방문하고 차집합을 방문하는 초기해를 산출하는 단계를 수행한다.
단계 S40에서는 초기해를 조작하여 최적화된 해를 산출하는 단계를 수행한다.
초기해를 산출하는 단계(S30)는, 정점의 부분집합에 대한 해의 전반을 산출하는 단계, 및 차집합에 대한 해의 후반을 산출하는 단계를 포함할 수 있다.
차집합에 대한 해의 후반을 산출하는 단계는, (i) 차집합에 속하는 정점만을 대상으로 외판원 문제의 해를 산출하거나 (ii) 정점의 전체집합을 대상으로 외판원 문제의 해를 산출한 후 정점의 부분집합을 생략할 수 있다.
최적화된 해를 산출하는 단계(S40)는, 해의 후반에서 한 정점을 생략하고 생략한 정점을 해의 전반으로 이동하거나 삽입할 수 있다.
최적화된 해를 산출하는 단계(S40)는, 한계치를 위배하지 않는 조작에 대해서 조작으로 인한 해의 전체 이동거리에 대한 개선분을, 해의 전반의 총 이동거리 및 해의 전반의 정점 가중치의 합을 합친 값의 증가분으로 나눈 것이 최대화되는 조작을 반복 수행하며, 해의 전체 이동거리를 개선하는 조작이 더 이상 없으면 중단할 수 있다.
최적화된 해를 산출하는 단계(S40)는, 해의 전반에 방문하는 정점을 대상으로 외판원 문제를 다시 풀고, 새롭게 얻어진 해가 원래 해의 전반보다 우수하면 해의 전반을 교체할 수 있다.
최적화된 해를 산출하는 단계(S40)는, 해의 후반에 방문하는 정점을 대상으로 외판원 문제를 다시 풀고, 새롭게 얻어진 해가 원래 해의 후반보다 우수하면 해의 후반을 교체할 수 있다.
최적화 장치는 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합에 의해 로직회로 내에서 구현될 수 있고, 범용 또는 특정 목적 컴퓨터를 이용하여 구현될 수도 있다. 장치는 고정배선형(Hardwired) 기기, 필드 프로그램 가능한 게이트 어레이(Field Programmable Gate Array, FPGA), 주문형 반도체(Application Specific Integrated Circuit, ASIC) 등을 이용하여 구현될 수 있다. 또한, 장치는 하나 이상의 프로세서 및 컨트롤러를 포함한 시스템온칩(System on Chip, SoC)으로 구현될 수 있다.
최적화 장치는 하드웨어적 요소가 마련된 컴퓨팅 디바이스 또는 서버에 소프트웨어, 하드웨어, 또는 이들의 조합하는 형태로 탑재될 수 있다. 컴퓨팅 디바이스 또는 서버는 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신장치, 프로그램을 실행하기 위한 데이터를 저장하는 메모리, 프로그램을 실행하여 연산 및 명령하기 위한 마이크로프로세서 등을 전부 또는 일부 포함한 다양한 장치를 의미할 수 있다.
도 2에서는 각각의 과정을 순차적으로 실행하는 것으로 기재하고 있으나 이는 예시적으로 설명한 것에 불과하고, 이 분야의 기술자라면 본 발명의 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 2에 기재된 순서를 변경하여 실행하거나 또는 하나 이상의 과정을 병렬적으로 실행하거나 다른 과정을 추가하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이다.
본 실시예들에 따른 동작은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능한 매체에 기록될 수 있다. 컴퓨터 판독 가능한 매체는 실행을 위해 프로세서에 명령어를 제공하는 데 참여한 임의의 매체를 나타낸다. 컴퓨터 판독 가능한 매체는 프로그램 명령, 데이터 파일, 데이터 구조 또는 이들의 조합을 포함할 수 있다. 예를 들면, 자기 매체, 광기록 매체, 메모리 등이 있을 수 있다. 컴퓨터 프로그램은 네트워크로 연결된 컴퓨터 시스템 상에 분산되어 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드, 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.
본 실시예들은 본 실시예의 기술 사상을 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
Claims (5)
- 최적화 장치에 의한 이중 티어 외판원 문제에 대한 최적화 방법에 있어서,
정점의 전체집합 및 시작점을 입력받는 단계;
상기 정점의 부분집합, 상기 정점의 가중치, 및 한계치를 입력받는 단계;
상기 정점의 부분집합을 방문하고 차집합을 방문하는 초기해를 산출하는 단계; 및
상기 초기해를 조작하여 최적화된 해를 산출하는 단계를 포함하는 이중 티어 외판원 문제에 대한 최적화 방법. - 제1항에 있어서,
상기 초기해를 산출하는 단계는,
상기 정점의 부분집합에 대한 해의 전반을 산출하는 단계; 및
상기 차집합에 대한 해의 후반을 산출하는 단계를 포함하며,
상기 차집합에 대한 해의 후반을 산출하는 단계는, (i) 상기 차집합에 속하는 정점만을 대상으로 외판원 문제의 해를 산출하거나 (ii) 상기 정점의 전체집합을 대상으로 외판원 문제의 해를 산출한 후 상기 정점의 부분집합을 생략하는 것을 특징으로 하는 이중 티어 외판원 문제에 대한 최적화 방법. - 제1항에 있어서,
상기 최적화된 해를 산출하는 단계는,
상기 해의 후반에서 한 정점을 생략하고 생략한 정점을 상기 해의 전반으로 이동하거나 삽입하는 것을 특징으로 하는 이중 티어 외판원 문제에 대한 최적화 방법. - 제1항에 있어서,
상기 최적화된 해를 산출하는 단계는,
상기 한계치를 위배하지 않는 조작에 대해서 상기 조작으로 인한 해의 전체 이동거리에 대한 개선분을, 상기 해의 전반의 총 이동거리 및 상기 해의 전반의 정점 가중치의 합을 합친 값의 증가분으로 나눈 것이 최대화되는 조작을 반복 수행하며, 해의 전체 이동거리를 개선하는 조작이 더 이상 없으면 중단하는 것을 특징으로 하는 이중 티어 외판원 문제에 대한 최적화 방법. - 제1항에 있어서,
상기 최적화된 해를 산출하는 단계는,
상기 해의 전반에 방문하는 정점을 대상으로 외판원 문제를 다시 풀고, 새롭게 얻어진 해가 원래 해의 전반보다 우수하면 상기 해의 전반을 교체하고,
상기 해의 후반에 방문하는 정점을 대상으로 외판원 문제를 다시 풀고, 새롭게 얻어진 해가 원래 해의 후반보다 우수하면 상기 해의 후반을 교체하는 것을 특징으로 하는 이중 티어 외판원 문제에 대한 최적화 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210043246A KR102615117B1 (ko) | 2021-04-02 | 2021-04-02 | 이중 티어 외판원 문제에 대한 최적화 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210043246A KR102615117B1 (ko) | 2021-04-02 | 2021-04-02 | 이중 티어 외판원 문제에 대한 최적화 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220137325A true KR20220137325A (ko) | 2022-10-12 |
KR102615117B1 KR102615117B1 (ko) | 2023-12-15 |
Family
ID=83597908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210043246A KR102615117B1 (ko) | 2021-04-02 | 2021-04-02 | 이중 티어 외판원 문제에 대한 최적화 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102615117B1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190019857A (ko) * | 2017-08-17 | 2019-02-27 | 고려대학교 산학협력단 | 온디맨드 물류에서 tsp를 활용한 배송 경로 생성 장치 |
KR101972376B1 (ko) * | 2018-01-23 | 2019-04-25 | 주식회사 프레시코드 | 신선식품 배송경로 결정 방법 및 이를 이용하는 장치 |
KR20200132489A (ko) | 2019-05-17 | 2020-11-25 | 승영욱 | 경로 최적화 시스템 및 방법 |
-
2021
- 2021-04-02 KR KR1020210043246A patent/KR102615117B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190019857A (ko) * | 2017-08-17 | 2019-02-27 | 고려대학교 산학협력단 | 온디맨드 물류에서 tsp를 활용한 배송 경로 생성 장치 |
KR101972376B1 (ko) * | 2018-01-23 | 2019-04-25 | 주식회사 프레시코드 | 신선식품 배송경로 결정 방법 및 이를 이용하는 장치 |
KR20200132489A (ko) | 2019-05-17 | 2020-11-25 | 승영욱 | 경로 최적화 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR102615117B1 (ko) | 2023-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11861375B2 (en) | Configuration for application using microservices | |
KR102192880B1 (ko) | 소프트웨어 재패키징 방지 방법 및 장치 | |
CN110489405B (zh) | 数据处理的方法、装置和服务器 | |
CN111444196B (zh) | 块链式账本中全局状态的哈希的生成方法、装置及设备 | |
US10915534B2 (en) | Extreme value computation | |
US20200110749A1 (en) | Systems and methods for data processing | |
KR20180137521A (ko) | 벡터 연산들 수행시의 어드레스 충돌 관리 장치 및 방법 | |
US10503718B2 (en) | Parallel transfers of electronic data | |
US10795606B2 (en) | Buffer-based update of state data | |
CN111444192A (zh) | 块链式账本中全局状态的哈希的生成方法、装置及设备 | |
US8006238B2 (en) | Workload partitioning in a parallel system with hetergeneous alignment constraints | |
US9639472B2 (en) | Prefetch list management in a computer system | |
US20220050827A1 (en) | Block verification method, apparatus and device | |
US20150261454A1 (en) | Database device, computer program product and data processing method | |
US11481120B2 (en) | Reducing wear on zoned storage devices for storing digital data | |
KR20220137325A (ko) | 이중 티어 외판원 문제에 대한 최적화 방법 | |
US20160259579A1 (en) | Storage control apparatus and storage control method | |
JP7403465B2 (ja) | 短絡高速化のための複合条件の並べ替え | |
US20170090803A1 (en) | Method and device for checking false sharing in data block deletion | |
US8694550B2 (en) | Merging file directories | |
US10311039B2 (en) | Optimized iterators for RCU-protected skiplists | |
KR20210080749A (ko) | 공간 조인 수행 방법 및 장치 | |
KR102574886B1 (ko) | 제한된 개수의 재할당이 가능한 온라인 그래프 매칭 방법 | |
CN111158701B (zh) | 库模块发布方法、装置、设备及存储介质 | |
US20130290535A1 (en) | Apparatus and method for managing an access control list in an internet device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |