и уже втроём
Тень коммивояжера (психологический триллер).
Сообщений 601 страница 630 из 1000
Поделиться6022018-12-26 06:26:09
Чтобы плавно перейти от случая трех городов к случаю четырех городов,
выпишу в явном виде формулу для единственного замкнутого контура в случае трех городов.
По условию задачи, которую я здесь рассмотрел выше, маршрут представляет собой треугольник, в котором известны и постоянны две стороны
(обозначим их a и b) и угол γ между ними, который изменяется от 0 до 180 градусов.
Тогда третью сторону с, которая зависит от значения угла γ, можно найти по теореме косинусов:
А весь путь коммивояжера будет равен:
Минимальное значение длины этого пути будет при γ=0, когда третье слагаемое будет равно b-a (при b>a).
тогда весь путь будет равен :
L=a+b+b-a=2b
Максимальное значение будет при γ=180 градусов,
при этом третье слагаемое будет равно b+a,
и длина пути составит:
L=a+b+b+a=2b+2a
При промежуточных значениях угла значение длины пути будет монотонно, но не равномерно, возрастать, с ростом величины угла.
И это все, что нужно знать о случае трех городов.
Отредактировано Лукомор (2018-12-26 07:07:50)
Поделиться6032018-12-26 07:09:58
$$\large a^2+b^2=c^2$$
Это был, типо, тест на набор формул в ТеХ, непосредственно, без всяких редакторов формул...
Мне это уже сейчас понадобится.
Отредактировано Лукомор (2018-12-26 07:17:22)
Поделиться6042018-12-26 07:29:02
А нахрен. Вот случай N городов надо Причем чтобы все получалось само.
Поделиться6052018-12-26 11:25:19
А нахрен. Вот случай N городов надо Причем чтобы все получалось само.
N городов - маловато будет!
Нужно как минимум М городов...
Но начинать всё-таки нужно с малого!
Честно сказать, я уже довольно далеко продвинулся в этой задачке,
при том, что она меня не интересует абсолютно.
Забавным оказалось то, что нашлась неожиданная связь с таблицей Пифагора,
про которую я начал рассказывать еще на Сцылоге, каковой рассказ планирую повторить,
в изрядно переработанном виде,
сразу после завершения темы коммивояжера.
Просто, то что я сейчас выкладываю, все эти частные примеры с равными углами,
Это еще не исследование, это предварительный этап - "живое созерцание".
И я начал его со случая 6 городов, и не довел его до логического завершения.
И обязательно доведу его, но теперь я начал с N=3,
случая вырожденного, так как там всего лишь один цикл.
Сегодня быстренько посмотрим N=4, там уже будет забавный нежданчик,
о котором я даже не подозревал.
До конца года надеюсь быстренько, с минимумом объяснений, выложить картинки для N=5,
и остаток того, что не выложил ранее, для N=6.
На этом созерцательная часть исследования должна быть закончена.
Некоторые свежие впечатления получены,
некоторые грубые предварительные выводы сделаны.
Этого достаточно, чтобы от живого созерцания
плавно перейти к абстрактному мышлению.
И вот тут-то всё и начнется!
Поделиться6062018-12-26 11:35:33
N городов - маловато будет!
Нужно как минимум М городов...
Ну конечно, М гораздо лучше N если М>N.
Однако перебирание малых чисел городов имеет смысл только если дает пути к построению универсальных решений. А этого совсем не видно.
Поделиться6072018-12-26 11:45:20
N городов - маловато будет!
Нужно как минимум М городов...
Если идти дальше по алфавиту, то на следующем этапе будет уже О городов, что существенно упрощает решение.
Поделиться6082018-12-26 12:11:04
Однако перебирание малых чисел городов имеет смысл только если дает пути к построению универсальных решений. А этого совсем не видно.
Так пока еще никакого перебирания-то и не было.
Один вырожденный случай N=3 ничего не даёт для построения универсальных решений...
Вот сейчас посмотрим пристально на N=4...
а дальше будет видно.
Отредактировано Лукомор (2018-12-26 12:11:37)
Поделиться6092018-12-26 12:17:22
О городов, что существенно упрощает решение.
Это "О-большое " - как раз и есть сложность алгоритма коммивояжера.
Фраза «сложность алгоритма есть O(f(n))» означает,
что с увеличением параметра n,
характеризующего количество входной информации алгоритма,
время работы алгоритма будет возрастать не быстрее,
чем некоторая константа,
умноженная на f(n).(с) Википедия
Отредактировано Лукомор (2018-12-26 12:18:22)
Поделиться6102018-12-26 12:22:11
Это "О-большое " - как раз и есть сложность алгоритма коммивояжера.
Но ведь сложность чисто синтаксическая.
Надо вместо коммивояжера взять филолога и всё.
Поделиться6112018-12-26 13:55:56
Надо вместо коммивояжера взять филолога и всё.
От этих филологов, и прочих лириков-догматиков, никакой пользы, кроме вреда!
Поделиться6122018-12-26 22:30:41
Вот свежая новость про задачу коммивояжера как раз.
ИИ на марше...
https://m.habr.com/post/434236/
"Нейросеть с амёбой решили задачу коммивояжера для 8 городов"
Отредактировано Лукомор (2018-12-28 10:39:52)
Поделиться6132018-12-26 23:14:58
шесть городов
это бильярдный стол
Поделиться6142018-12-27 09:53:08
Это логично, да!
Если дважды два - это стеариновая свечка,
то дважды три - бильярдный стол!
Почему нет?!
Поделиться6152018-12-27 19:09:24
укладывая
специальным образом
разноцветные шары на столе
и наклоняя его относительно вертикальной оси
набор шаров в лузах даст решение
Поделиться6162018-12-27 19:10:05
- Сколько времени прожил Робинзон на необитаемом острове?
- Двадцать лет.
- Нет.
- Тридцать.
- Нет.
- А сколько?
- Нисколько. Необитаемым остров был только до появления Робинзона.
Поделиться6172018-12-27 22:48:23
укладывая
специальным образом
разноцветные шары на столе
и наклоняя его относительно вертикальной оси
набор шаров в лузах даст решение
Если укладывать шары на столе, то откуда возьмутся шары в лузах, а?!
Поделиться6182018-12-28 03:26:43
укладывая
специальным образом
разноцветные шары на столе
и наклоняя его относительно вертикальной оси
набор шаров в лузах даст решение
А можно наклонять относительно горизонтальной оси?
Поделиться6192018-12-28 07:12:38
Если укладывать шары на столе, то откуда возьмутся шары в лузах, а?!
Сползли.
Поделиться6202018-12-28 09:16:56
откуда возьмутся шары в лузах, а?!
там
в лузах
дырки для шаров !!!
Поделиться6212018-12-28 09:17:26
можно наклонять относительно горизонтальной оси?
можно !!
Поделиться6222018-12-28 09:20:42
Сползли.
именно !!!
Ноббс пришел в восторг от проекта.
- "Предпочитаете ли вы, чтобы труп был обнаженным или в белье?" повторил он Голдвассеру.
- Вот это, брат, я называю хорошим вопросом. Вот это я называю хорошим вопросом.(с)
Поделиться6232018-12-28 10:07:17
А можно наклонять относительно горизонтальной оси?
Горизонтальных же две?!
Продольная и поперечная.
Как можно наклонить сразу относительно двух взаимно перпендикулярных осей?
Не, ну если постараться, то можно конечно...
Но есть риск погнуть оси при этом!
Поделиться6242018-12-28 10:10:11
Сползли.
/ представил ползающие шары
Отредактировано Лукомор (2018-12-28 15:13:58)
Поделиться6252018-12-28 10:12:45
там
в лузах
дырки для шаров !!!
Если выкладывать шары НА столе, то как они попадут В дырки?!
Там же бортики!!!
Поделиться6262018-12-28 10:45:43
По погоде, которая сегодня дождь и отвратительна, собрался я выложить быстренько иллюстрации для случая N=4, которые я полагал уже готовыми.
Внезапно оказалось, что они существуют только в тетради карандашом, а в компьютере я их не порисовал.
Что ж делать, буду рисовать и выкладывать по одному, что сильно задержит весь процесс...
Поделиться6272018-12-28 11:22:34
Итак,
я хочу наблюдать за метаморфозами чертежа для задачи коммивояжера,
при синхронном изменении углов,
заданных условием,
от 0 до 180 градусов.
Для начала я выберу значения двух углов,
которые будут заданы изначально,
равными 90 градусов,
то-есть,
как раз по середине между 0 и 180,
и,
рассмотрев получившийся чертеж,
буду двигаться от 90 до 180 градусов,
а затем - в обратную сторону,
снова от 90 до 0 градусов.
Напомню,
что для случая N=4 я выбрал неизменными три участка маршрута:
АВ = 100
ВС = 120
CD = 140,
Длины трёх остальных участков будут меняться в зависимости от изменения углов между участками,
и я буду их рассчитывать каждый раз по формулам,
которые я приведу ниже.
Вот чертеж с исходными данными,
на котором указаны только известные величины:
три стороны и два угла.
Поделиться6282018-12-28 11:33:11
Теперь я к известным трем сторонам добавляю еще три,
которые необходимо найти,
и получаю полный исходный чертеж для этого варианта задачи коммивояжера:
Неизвестные стороны находим,
как обычно,
по теореме косинусов.
Я буду писать в общем виде сразу,
чтобы можно было эти формулы применять в дальнейшем для любой величины известных углов.
Известную величину угла я,
по аналогии со случаем N=3,
обозначу γ,
а известные стороны:
АВ= а
ВС= b
CD= c.
Тогда из треугольника АВС по теореме косинусов найдем сторону АС:
$$\large AC=\sqrt{a^2+b^2-2ab\cos\gamma}$$
Из треугольника BCD найдем сторону BD:
$$\large BD=\sqrt{b^2+c^2-2bc\cos\gamma}$$
Теперь, точно так же, можно найти оставшуюся сторону АD,
из треугольника ABD по известной АВ, и уже найденной BD.
Правда нужно еще найти угол $$\large\angle ABD=\gamma-\angle CBD$$.
При этом угол СВD нужно было найти раньше, сразу после стороны BD,
по той же теореме косинусов:
$$\large\angle CBD=\arccos{\frac{c^2+(BD)^2-b^2}{2b(BD)}}$$
Аналогично,
сторону AD можно найти из треугольника BCD по той же теореме косинусов.
Отредактировано Лукомор (2018-12-28 12:51:48)
Поделиться6292018-12-28 11:36:00
Если выкладывать шары НА столе, то как они попадут В дырки?!
Там же бортики!!!
Развязать сеточку и напихать шары снизу.
Как можно наклонить сразу относительно двух взаимно перпендикулярных осей?
Обрезать стол так чтобы длины продольной и поперечной осей стали равными. И пока они не разбрались кто из них какая ось быстро наклонить стол по всем направлениям одновременно.
Поделиться6302018-12-28 12:07:33
по всем направлениям одновременно.
По всем направлениям одновременно - это махровая Ёкэловщина!