поиск минимального пути
От: gid_vvp  
Дата: 06.01.05 12:23
Оценка:
Hi, All.

Помогите советом, если кто-нибудь сталкивался...

Необходимо найти минимальный путь соединяющий данную точку со всеми остальными, которых порядка 10 000.
Точки заданы кординатами на плоскости

Подскажите алгоритм который лучше других справится с данной задачей, естественно нужен не идеальный путь а лишь приближённый.

P.S.
про задачу коммивояжера знаю, но интересует именно задача с таким огромным чилом пунктов.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re: поиск минимального пути
От: Stanky  
Дата: 06.01.05 12:46
Оценка:
> Необходимо найти минимальный путь соединяющий данную точку со всеми
> остальными, которых порядка 10 000.
> Точки заданы кординатами на плоскости
>
Алгоритм Дейкстры?
Posted via RSDN NNTP Server 1.9
Не бойся выглядеть глупо, от этого ты выглядишь ещё глупей!!!
Re[2]: поиск минимального пути
От: gid_vvp  
Дата: 06.01.05 12:51
Оценка:
Здравствуйте, Stanky, Вы писали:

S>Алгоритм Дейкстры?


Чуть подробнее, если не сложно?
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re: поиск минимального пути
От: Den Raskovalov США http://users.livejournal.com/_denplusplus_
Дата: 06.01.05 12:53
Оценка: 4 (2)
_>Помогите советом, если кто-нибудь сталкивался...

_>Необходимо найти минимальный путь соединяющий данную точку со всеми остальными, которых порядка 10 000.

_>Точки заданы кординатами на плоскости

_>Подскажите алгоритм который лучше других справится с данной задачей, естественно нужен не идеальный путь а лишь приближённый.


Достаточно просто доказывается тот факт, что жадный алгоритм (каждый раз берем ближайшую точку), строит путь не длинее 2 раз по сравнению с оптимальным.

Мне когда-то приходилось использовать код, написанный Keld Helsgaun (http://www.akira.ruc.dk/~keld/), код рулит Рекомендую.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Re[2]: поиск минимального пути
От: gid_vvp  
Дата: 06.01.05 12:54
Оценка:
Здравствуйте, Den Raskovalov, Вы писали:

DR>Достаточно просто доказывается тот факт, что жадный алгоритм (каждый раз берем ближайшую точку), строит путь не длинее 2 раз по сравнению с оптимальным.


Первое что мне пришло в голову это этот алгоритм
Но хочется чего-то ещё...

DR>Мне когда-то приходилось использовать код, написанный Keld Helsgaun (http://www.akira.ruc.dk/~keld/), код рулит Рекомендую.


Спасибо посмотрю
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[3]: поиск минимального пути
От: Den Raskovalov США http://users.livejournal.com/_denplusplus_
Дата: 06.01.05 13:03
Оценка: 2 (1)
DR>>Достаточно просто доказывается тот факт, что жадный алгоритм (каждый раз берем ближайшую точку), строит путь не длинее 2 раз по сравнению с оптимальным.

_>Первое что мне пришло в голову это этот алгоритм

_>Но хочется чего-то ещё...

Геометрический случай TSP (когда есть неравенство треугольника) очень хорошо исследован.

Неплохо работают генетические алгоритмы, если их заточить прямыми руками
Еще рулят разные вариации локальной оптимизации (строим жадный пусть, а потом перебираем блоки по 10-20 смежных точек и там что-то перебираем).
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Re[4]: поиск минимального пути
От: gid_vvp  
Дата: 06.01.05 13:06
Оценка: :)
Здравствуйте, Den Raskovalov, Вы писали:

DR>Геометрический случай TSP (когда есть неравенство треугольника) очень хорошо исследован.


неравенство треугольника — Это что?

DR>Неплохо работают генетические алгоритмы, если их заточить прямыми руками


Ага проверю заодно степень прямоты моих рук

DR>Еще рулят разные вариации локальной оптимизации (строим жадный пусть, а потом перебираем блоки по 10-20 смежных точек и там что-то перебираем).
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[5]: поиск минимального пути
От: Den Raskovalov США http://users.livejournal.com/_denplusplus_
Дата: 06.01.05 13:09
Оценка: 2 (1)
DR>>Геометрический случай TSP (когда есть неравенство треугольника) очень хорошо исследован.

_>неравенство треугольника — Это что?


Для любых точек A, B, C ( |AB|+|BC| >= |AC| )
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Re[6]: поиск минимального пути
От: gid_vvp  
Дата: 06.01.05 13:17
Оценка:
Здравствуйте, Den Raskovalov, Вы писали:

DR>>>Геометрический случай TSP (когда есть неравенство треугольника) очень хорошо исследован.


_>>неравенство треугольника — Это что?


DR>Для любых точек A, B, C ( |AB|+|BC| >= |AC| )


Ясно
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[2]: поиск минимального пути
От: gid_vvp  
Дата: 06.01.05 13:31
Оценка:
Здравствуйте, Stanky, Вы писали:

S>Алгоритм Дейкстры?


Насколько я понял, этот алгоритм не даёт путь который включает ВСЕ точки, а только лишь наименьший путь между двумя через некоторе число точек
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[3]: поиск минимального пути
От: Stanky  
Дата: 06.01.05 14:25
Оценка:
> Насколько я понял, этот алгоритм не даёт путь который включает ВСЕ
> точки, а только лишь наименьший путь между двумя через некоторе число
> точек
>
Он даёт наикратчайшее расстояние от одной вершины графа до всех остальных!!!
Posted via RSDN NNTP Server 1.9
Не бойся выглядеть глупо, от этого ты выглядишь ещё глупей!!!
Re[4]: поиск минимального пути
От: gid_vvp  
Дата: 06.01.05 14:29
Оценка:
Здравствуйте, Stanky, Вы писали:

>> Насколько я понял, этот алгоритм не даёт путь который включает ВСЕ

>> точки, а только лишь наименьший путь между двумя через некоторе число
>> точек
>>
S>Он даёт наикратчайшее расстояние от одной вершины графа до всех остальных!!!

А как у него со временем работы?
на 10 000 точках? если приходилось?
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[5]: поиск минимального пути
От: Stanky  
Дата: 06.01.05 14:32
Оценка:
> А как у него со временем работы?
>
Я уж не помню — глянь сам!!!

> на 10 000 точках? если приходилось?

>
Не приходилось, но прога реализующая его осталась (с исходниками)!!!
Posted via RSDN NNTP Server 1.9
Не бойся выглядеть глупо, от этого ты выглядишь ещё глупей!!!
Re[6]: поиск минимального пути
От: gid_vvp  
Дата: 06.01.05 14:34
Оценка:
Здравствуйте, Stanky, Вы писали:

>> А как у него со временем работы?

>>
S>Я уж не помню — глянь сам!!!

>> на 10 000 точках? если приходилось?

>>
S>Не приходилось, но прога реализующая его осталась (с исходниками)!!!

если не C/C++ может подкинешь чтоб потестировать?
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[7]: поиск минимального пути
От: Stanky  
Дата: 06.01.05 15:31
Оценка:
> если не C/C++ может подкинешь чтоб потестировать?
>
Вообще-то именно на нём!!!
Куда кинуть?
Posted via RSDN NNTP Server 1.9
Не бойся выглядеть глупо, от этого ты выглядишь ещё глупей!!!
Re[8]: поиск минимального пути
От: gid_vvp  
Дата: 06.01.05 15:35
Оценка:
Здравствуйте, Stanky, Вы писали:

>> если не C/C++ может подкинешь чтоб потестировать?

>>
S>Вообще-то именно на нём!!!
S>Куда кинуть?

gid_vvp _at_ tut.by
вместо _at_ @

Заранее спасибо
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[9]: поиск минимального пути
От: Stanky  
Дата: 06.01.05 15:46
Оценка: 2 (1)
> gid_vvp _at_ tut.by
> вместо _at_ @
>
Ну ты меня совсем за ламера пингуешь!!!

Для реализации динамической матрицы стоимости (для добавления/удаления вершин), тоесть двумерного массива использовал этот
Автор(ы): Stanky
Дата: 27.12.2004
В статье описываются принципы построения и реализация динамического двумерного массива.
способ!!!
Posted via RSDN NNTP Server 1.9
Не бойся выглядеть глупо, от этого ты выглядишь ещё глупей!!!
Re[10]: поиск минимального пути
От: gid_vvp  
Дата: 06.01.05 16:44
Оценка:
Здравствуйте, Stanky, Вы писали:

>> gid_vvp _at_ tut.by

>> вместо _at_ @
>>
S>Ну ты меня совсем за ламера пингуешь!!!

эт я так

S>Для реализации динамической матрицы стоимости (для добавления/удаления вершин), тоесть двумерного массива использовал этот
Автор(ы): Stanky
Дата: 27.12.2004
В статье описываются принципы построения и реализация динамического двумерного массива.
способ!!!


Спасибо
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re: поиск минимального пути
От: gid_vvp  
Дата: 08.01.05 07:35
Оценка:
Hi, All.

Ещё вопрос возник...

Есть ли способы оценить длинну этого самого наименьшего пути, не находя сам путь?
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[2]: поиск минимального пути
От: Stanky  
Дата: 08.01.05 07:43
Оценка:
> Есть ли способы оценить длинну этого самого наименьшего пути, не находя
> сам путь?
>
А можно как-то поконкретней?
Posted via RSDN NNTP Server 1.9
Не бойся выглядеть глупо, от этого ты выглядишь ещё глупей!!!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.