|
0 / 0 / 0
Регистрация: 18.03.2015
Сообщений: 7
|
|
Алгоритм визуализации сети с наложениями01.03.2016, 21:23. Показов 685. Ответов 4
Метки нет (Все метки)
Нужен алгоритм, для лучшей визуализации некоторой схемы, путем разложения линий (каждая из которых на самом деле состоит из нескольких линий и соответствует определенной подсети).
При этом накладывается условия о минимальном кол-во пересечений. Таким образом необходимо, развести линии, на небольшое расстояние друг от друга (чтоб визуально можно было выделить полностью каждую подсеть в отдельности). Пример на рис.1 показан пример с тремя сетями (желтая, зеленая и бордовая). Видно, что линии сходятся в одну. Необходим результат как на рисунке 2. Кстати, тут не совсем оптимально разнесены, надо желтую с зеленной поменять местами. Я разобрался как разводить наложенные прямые, а вот выбрать порядок, так чтоб кол-во пересечений было наименьшее кол-во, пока не знаю. Есть идея, искать участки (пути) состоящие из "накладных" линий, и начиная с участков с наибольшим кол-вом таких наложений высчитывать оптимальный вариант расположения этих линий, но тут есть нюанс. Например сходятся два участка, в одном линии состоят из 3-х линий, а в другом из 2-х. В одном получается, что оптимальнее располагать например желтую - синюю - бордовую, а в другом бордовую-желтую. Таким образом на стыке необходимо, как-то перекрещивать линии. Возможно я изобретаю велосипед (скорее всего), но серфинг, толку мало дал, я нашел как рисовать параллельные прямые под разными углами, соединять их и т.д. Кстати, линии могут быть ортогональны и наклоны, кривых нет. Т.е. я могу нарисовать с разложенными линиями, а вот как при этом разложении учесть условия оптимальности (суммарное минимальное кол-во пересечений)? Может кто сталкивался с похожими задачами, ткинете носом пожайлуста. Крутиться в голове теория графов, но каков именно алгоритм?
0
|
|
| 01.03.2016, 21:23 | |
|
Ответы с готовыми решениями:
4
Алгоритм работы сети. Нейронные сети, композитор, алгоритм Нейронные сети. Алгоритм обратного распространения |
|
Модератор
3136 / 2283 / 469
Регистрация: 26.03.2015
Сообщений: 8,887
|
|
| 02.03.2016, 01:24 | |
|
6 вариантов всего... пусть программа попробует их все и сравнит количество пересечений
0
|
|
|
0 / 0 / 0
Регистрация: 18.03.2015
Сообщений: 7
|
|
| 02.03.2016, 08:36 [ТС] | |
|
Это тестовый пример. Стартовых может быть до двадцати, а конечных в разы больше.
0
|
|
|
0 / 0 / 0
Регистрация: 18.03.2015
Сообщений: 7
|
|
| 02.03.2016, 08:42 [ТС] | |
|
0
|
|
|
Модератор
3136 / 2283 / 469
Регистрация: 26.03.2015
Сообщений: 8,887
|
||
| 02.03.2016, 10:01 | ||
|
С учётом того, как ставится задача, я бы попробовал локальный поиск. Например, поиск с восхождением к вершине и перезапуск случайным образом. Если кратко: Шаг - минимальные изменения, например, поменять местами две соседние линии на каком-то отрезке. Вероятно, Вы используете подобные "шаги" в своём алгоритме "развода прямых". Целевая функция - количество пересечений. 1. Разводите линии случайным образом. 2. Перебираете все возможные "шаги". 2а. Если нашёлся шаг, улучшающий целевую функцию, выполняете его. Переходите к пункту 2 для нового состояния. 2б. Если улучшающих шагов нет, то запоминаете решение. Переходите к пункту 1. Количество перезапусков определите сами.
0
|
||
| 02.03.2016, 10:01 | |
|
Помогаю со студенческими работами здесь
5
sorting networks\сортирующие сети алгоритм Гибридный алгоритм обучения нечеткой сети TSK Помогите набросать алгоритм написания соц. сети? Алгоритм обратного распространения ошибки. Нейронные сети Алгоритм Форда-Фалкерсона, максимальный поток в сети Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|