Имя: Пароль:
1C
1С v8
Нахождение оптимального пути
0 FuriKuri
 
08.08.13
10:25
Задача заключается в следующем: есть таблица расстояний

города    А    Б    В    Г
А    -    70    150    60
Б    70    -    85    80
В    150    85    -    160
Г    60    80    160    -

Автомобиль выезжает из 1 города (Допусти А) проезжает заранее известное расстояние (Например 400 км) и возвращается опять в начальную точку. Каким образом можно подобрать оптимальный путь движения для заданного расстояния? (проезжать все точки не обязательно, но нужно чтоб они были связаны. Т.е А-В, В-Г, Г-А)
И как это реализовать в 1с? может есть у ого примеры?
1 Fragster
 
модератор
08.08.13
10:28
2000 рублей
2 vmlspb
 
08.08.13
10:31
кури
задача коммивояжера,
алгоритм А*,
алгоритм Дейкстры и Флойда
3 Balabass
 
08.08.13
10:34
(2) Поддержу.
4 FuriKuri
 
08.08.13
10:37
(2) Там кратчайшие пути, а мне оптимальный. Да и что-то я не могу понять как это в 1с запилить :(
5 piter3
 
08.08.13
10:37
(4) а без 1С значит можешь?
6 Peltzer
 
08.08.13
11:00
Построить массив для каждого города - минимальное и максимальное расстояние из этого города.
И рекурсию из стартового города с условием выхода - оставшееся расстояние > минимального для этого города.
На обратном пути рекурсия должна сгрести путь.
7 Peltzer
 
08.08.13
11:01
Максимальное расстояние для того, чтобы определить, что это точно не конечный пункт.
8 MaxisUssr
 
08.08.13
11:02
(6)
Почитай учебник дискретной матиматики, раздел "Графы"
9 ИС-2
 
naïve
08.08.13
11:03
(0) мне тоже такое надо будет делать. Но с учетом возможности проезда по дорогам (т.е 2 клиента между которыми дорога с двойной сплошной это не ближайщие точки). Тут классическая задача коммивояжера
10 FuriKuri
 
08.08.13
11:05
(6) Спасибо, буду пробовать.