Содействие - исключение из 3-го закона Ньютона.

Амальгама

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Амальгама » Reductor Sapiens » Траекторный вычислитель - триумфальное подтверждение


Траекторный вычислитель - триумфальное подтверждение

Сообщений 301 страница 330 из 451

301

Лукомор

+1

302

#p109783,Шарпер написал(а):

Сегодня 12:17:29

Вы там аккуратнее...
завязывайте... с этим делом!

Минздрав сомневается...

Но!!!

Алкоголизм - не шутка!

Отредактировано Лукомор (2019-08-28 12:54:57)

0

303

#p109762,Шарпер написал(а):

У меня есть мысль и я ее думаю. Бойтесь!

Ага, ага. Что-то про улучшение алгоритма.
http://s00.yaplakal.com/pics/pics_original/5/5/1/13390155.jpg

0

304

0

305

Короче, мысь я додумал. Опять про коммивояжера. Заикнулись мы, напоминаю, на том, что так и не нашли способа отсеять отсеять запретные пути и отловить первый кратчайший разрешенный, чтобы потом, зная точку выхода двоичным поиском восстановить путь обратным ходом. Так вот, оказалось, что способ есть. Надо просто сначала вычислить кратчайшее время по сумме отрезков отсортированных по величине. Это будет теоретический разрешенный минимум, все меньшие значения автоматом отсеиваем. А затем, начиная с большего или равного теоретическому по времени реальному результату проверять нашим обратным ходом каждый путь, пока не обнаружится разрешенный. Это и будет кратчайший путь. Сколько испытаний понадобится посчитать невозможно, разве Лукомор сумеет, но очевидно, что кратчайший будет ближе к теоретическому,

0

306

#p110052,Шарпер написал(а):

Надо просто сначала вычислить кратчайшее время по сумме отрезков отсортированных по величине.

Вот учебная задачка на 17 пунктов.
Матрица расстояний между пунктами:

http://s8.uploads.ru/1ICZr.png

Как отсортировать отрезки по величине?

0

307

#p110071,Лукомор написал(а):

Как отсортировать отрезки по величине?

Как отсортировать отрезки по величине?
Элементарно, дорогой Ватсон! Разбираешь многоугольник по ребрышкам и кладешь их в линию, начиная с короткого по возрастанию так, чтобы все вершины были перечислены ровно по одному разу, т.е. лишние ребра выкидываешь. Это и будет кратчайший теоретический маршрут, котороого на самом деле в фигуре нет, поскольку мы наплЮвали на последователшьность соединения вершин. Просто задаемся такой длиной и временем по ней.

0

308

#p110072,Шарпер написал(а):

начиная с короткого по возрастанию так, чтобы все вершины были перечислены ровно по одному разу

Одно ребро перечисляет сразу две вершины.
На семнадцать вершин в некоторых случаях будет достаточно и восемь с половиной ребер....

0

309

#p110074,Лукомор написал(а):

На семнадцать вершин в некоторых случаях будет достаточно и восемь с половиной ребер....

Что тебя смущает? Мы ж начхали на истинное положение ребер и располагаем их в линию по возрастанию. В ёкселе отсортируй и выкинь лишние

0

310

Лукомор
Это нужно чтоб отсеять заведомо запретные неполные пути. В принципе можно этого и вовсе не делать, а начинать отсеивать запретные с первого кратчайшего.

0

311

#p110074,Лукомор написал(а):

Одно ребро перечисляет сразу две вершины.

А, понял. Ну по два раза - вход, выход. Или как там, а то башка уже не варит?

0

312

#p110075,Шарпер написал(а):

В ёкселе отсортируй и выкинь лишние

Ёксель-шмоксель не понимает, что такое:

#p110072,Шарпер написал(а):

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

Пришлось в рукопашную, получилось вот так:
http://s8.uploads.ru/t/T5QDx.jpg

0

313

#p110080,Лукомор написал(а):

Пришлось в рукопашную, получилось вот так:

И Фурманов говорит это ножницы? По-моему здесь второй вариант.

0

314

#p110081,Шарпер написал(а):

По-моему здесь второй вариант.

Ладно, я сегодня подозрительно добрый.
Вот подарок от меня бегемоту на 1 сентября.

http://s8.uploads.ru/t/zSN3u.png

http://s9.uploads.ru/RK9kj.png

http://s8.uploads.ru/L2vzi.jpg

На схеме 19 самых коротких отрезков между пунктами, как и требовалось согласно техзадания выданного бегемотом.
Два отрезка лишних, но это не важно, так как три самых длинных отрезка, изображенных красным, имеют строго одинаковую длину.
Разумеется при суммировании я взял только одну длину, а две других  отбросил.
Вопрос, что теперь с этим лучезарным счастьем нам делать?

Отредактировано Лукомор (2019-09-01 06:00:09)

0

315

#p110084,Лукомор написал(а):

Вопрос, что теперь с этим лучезарным счастьем нам делать?

Вытянуть в линию, просуммировать для получемя длины и вычислить время прохождения. Использовать это время в качестве минимального теорнтического, игнорируя все более короткие и завеломо неполные пути.
Повторяю, можно и без этого этапа, а сразу отсеивать запретные начиная с заведомо неполных

0

316

#p110095,Шарпер написал(а):

Вытянуть в линию, просуммировать для получемя длины и вычислить время прохождения.

Я же уже просуммировал!

Там где  L = 323.716
- это сумма длин 17 самых коротких отрезков.

0

317

#p110095,Шарпер написал(а):

Использовать это время в качестве минимального теорнтического, игнорируя все более короткие и завеломо неполные пути.

А как будем игнорировать более длинные и заведомо неполные пути?

http://sh.uploads.ru/t/3cIqp.jpg

Сумма длин вот этих трех отрезков больше, чем сумма семнадцати самых коротких, на.

Отредактировано Лукомор (2019-09-01 06:50:29)

0

318

#p110098,Лукомор написал(а):

Я же уже просуммировал!

Ну вот, искомый будет равен или больше. Т.е начинать проверять с этой длины и времени

#p110099,Лукомор написал(а):

А как будем игнорировать более длинные и заведомо неполные пути?

А они не придут раньше кратчайшего разрешенного, потому что длиннее. Аогоритм остановится раньше

0

319

#p110099,Лукомор написал(а):

Сумма длин вот этих трех отрезков больше, чем сумма семнадцати самых коротких, на.

Или ты спрашиваешт о запретных длиннее вычисленного, но короче искомого? Дык обратным ходом через восстановление каждого пути с проверкой на запретность

0

320

#p110052,Шарпер написал(а):

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

С этого места попо дробнее.
До сиз пор мы не использовали "наш обратный ход" для нахождения разрешенного пути.
Никогда такого не было и вот снова!
Мы "наш обратный ход" использовали для восстановления пути по известной длине кратчайшего разрешенного пути.
Но если мы не знаем, разрешенный или не разрешенный путь имеет длину 399.999 км, то мы не сможем установить этот факт обратным ходом.
Точнее сможем, но для данного случая это равносильно полному прямому перебору, и даже хуже...

0

321

#p110102,Лукомор написал(а):

Никогда такого не было и вот снова!

Да

#p110102,Лукомор написал(а):

Мы "наш обратный ход" использовали для восстановления пути по известной длине кратчайшего разрешенного пути.

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

#p110102,Лукомор написал(а):

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

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

Ну, а сам отсев обратным ходом элементарен - восстановленный путь не будет проходить все вершины.

0

322

#p110103,Шарпер написал(а):

А оказаывается, что обратным ходом их отсеять можно

Да, но мы об этом ничего не знаем...
Оказывается, что обратным ходом их отсеять можно...
Оказывается, оказывается, но пока еще не оказалось!

0

323

#p110104,Лукомор написал(а):

Да, но мы об этом ничего не знаем...
Оказывается, что обратным ходом их отсеять можно...
Оказывается, оказывается, но пока еще не оказалось!

Это ж элементарно! Во всех восстановленных неполных путях будут пропущенные вершины. Их и отсеем.

0

324

#p110103,Шарпер написал(а):

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

То-есть мы можем уже разбить весь интервал времен прихода по всем <17!> возможным путям на два  подынтервала:
- со временем прихода меньшим чем  проход по сумме кратчайших отрезков.
- со временем прихода большим чем проход по сумме кратчайших отрезков, но меньшим чем проход по кратчайшему полному пути,
-со временем прохода большим чем проход по кратчайшему полному пути...
Пусть в каждом интервале находится соизмеримое, с точностью до порядка, хотя-бы, количество возможных маршрутов, в том числе недопустимых...
Тогда, после отбрасывания первого и третьего интервалов, у нас останется всего лишь каких-то
(1/3)х(17!)
вариантов...
Это всё то же экспоненциальное время работы алгоритма, поскольку никакие коэффициенты перед, не отменяют факториала в скобках...
Аттракцион "бегемот в колесе" продолжается... http://www.kolobok.us/smiles/standart/smile3.gif

Отредактировано Лукомор (2019-09-01 08:36:19)

0

325

#p110106,Шарпер написал(а):

Это ж элементарно! Во всех восстановленных неполных путях будут пропущенные вершины. Их и отсеем.

Отсеем полным перебором неполных путей...

0

326

#p110108,Лукомор написал(а):

Отсеем полным перебором неполных путей...

Да! Но диапазон перебора будет не (N-1)!, а в промежутке между кратчайшим неполным и кратчайшим полным = искомым. А, если за минимум взять теоретический кратчайший, с которого я сегодня начал, то и того меньше.

0

327

#p110107,Лукомор написал(а):

Тогда, после отбрасывания первого и третьего интервалов, у нас останется всего лишь каких-то
(1/3)х(17!)

Это неверно! Ты перечислил ВСЕ варианты, а алгоритм остановится на первом кратчайшем разрешенном

0

328

#p110109,Шарпер написал(а):

Да! Но диапазон перебора будет не (N-1)!

Я уже прикинул...
При равномерном распределении будет (1/3)(N!), но подозреваю, что распределение длин маршрутов будет типа нормального, или какого-нибудь гипергеометрического, с горбом как-раз в нашем интервале между теоретическим кратчайшим и полным кратчайшим, тогда всё еще хуже...

0

329

#p110112,Лукомор написал(а):

но подозреваю, что распределение длин маршрутов будет типа нормального

Это неверно. Распределение будет строго по возрастанию длины - сигналы будут поступать именно в этой последовательности - по возрастанию времени.

0

330

#p110110,Шарпер написал(а):

Ты перечислил ВСЕ варианты, а алгоритм остановится на первом кратчайшем разрешенном

Но этот первый кратчайший разрешенный будет после всех запрещенных более коротких...
Еще раз:
Всего 17! вариантов.
Мы откинем сразу (1/3)х17! запрещенных, которые короче чем 323.716. (Это сумма 17 самых коротких путей).
Кратчайший разрешенный маршрут через 17 пунктов в этой задаче имеет длину 448.150.(на сегодняшний день).
Нам надо перебрать все из этого интервала, начиная с длины 323.716...
Это еще (1/3)х17! вариантов. После этого алгоритм остановится,
И этим  мы откинем все разрешенные, кроме кратчайшего, и все запрещенные длиннее кратчайшего разрешенного.
Это еще ( 1/3)х17!...

0


Вы здесь » Амальгама » Reductor Sapiens » Траекторный вычислитель - триумфальное подтверждение