Сергей-4030: Все сообщения за 27 Апреля 2007 года

 
ПнВтСрЧтПтСбВс
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30

Сергей-4030

исключающий третье
★★
В общем, вчера вечерком было нечего делать и мою идею я имплементировал. Результат такой - до 9 точек (на моей машине) делается меньше секунды. 12 точек - от 5 до 15 секунд. 14 точек - от 30 до 90 секунд. Что, кстати, радует - вроде как, зависимость все-таки уже не факториальная получается! Вот такие пироги. Если кому интересно - скидываю тексты. Документировать не буду, лень, и так три часа убил.

ЗЫ Машина иногда очень оригинально расставляет точки дабы максимизировать площадь.
scheme1.GIF (скачать) [408x476, 12,6 кБ]
 
scheme2.GIF (скачать) [408x476, 6,9 кБ]
 
 
 

Сергей-4030

исключающий третье
★★
Тут выложу исходники. Запускать класс samples.polygons.ui.Sketch
 
 
Это сообщение редактировалось 27.04.2007 в 20:20

Сергей-4030

исключающий третье
★★
haleev> Звиняюсь
haleev> Туплю, туплю... Голова садовая.
haleev> С пяти утра на ногах. Если полигон без взаимопересечений, то можно сначала построить из подмножества точек выпуклый многоугольник, а потом, перебирая оставшиеся точки отрезать от этого выпуклого многоугольника треугольники. Сложность получится... ээээ... N*N*N
Боюсь, вы ошибаетесь. Даже если вам не нужно максимальную площадь сложность будет факториальная. :(
 

Сергей-4030

исключающий третье
★★
Mishka>>Только комбинаций из них опять факториал. :) Из каждой пары пересекающихся ребер нужно выбрать одно, но это одно может отвалить много других ребер из данной вершины. А, вот, если уберем другое, то это множество может остаться — какое продолжение выберем?
AidarM> А я откуда знаю? Идея Сергея-4030 состоит в том, чтобы перебирать все, но прекращать работу с неподходящими на достаточно раннем этапе (если повезет). Т.е. он при постройке анализирует, не грозит ли ему слепить самопересекающееся чудо. А я просто предложил часть важной для такого анализа инфы запасти заранее.

Уже сама постройка будет факториальной сложности. Т.е. если даже если она (постройка) и позволит нам сделать, скажем, алгоритм сложности N (а она не позволит), то сам факториальный механизм постройки все испортит.
 

Сергей-4030

исключающий третье
★★
haleev> Хм... моё утверждение сводится к предположению, что для множества точек находящихся внутри многоугольника обязательно найдется такая, которая образует треугольник с его гранью так, что внутрь этого треугольника не попадает ни одна из других точек. Доказать этого моя макитра сейчас не может, но что это так "нутром чую" (С) :-)

Я просто не понял вас сначала. В таком изложении - реализуется. Но такой метод приведет нас к "звездам", которые совсем и близко не будут максимальной площади. Более того - к минимальной будут ближе. :(

ЗЫ Алгоритмы, основанные на максимальном выпуклом подмножестве уже высказывались.
 

Сергей-4030

исключающий третье
★★
Кстати, после экспериментов с программкой мне показалось, что критерием лучше делать не наибольшую площадь, а наименьшую угловатость. Требование площади приводит к тому, что машина проводит длинные узкие "стены" через весь многоугольник.
 

Сергей-4030

исключающий третье
★★
Кстати, насчет того, как наш мозг такие задачи решает. Не знаю у кого как, а мой при количестве точек>10 не справляется. Т.е. замкнутую площадь я построить могу, а вот чтоб максимальную площадь - не догоняю иногда. Впрочем, мой мозг невыдающийся в смысле геометрии и чисел, так что не показатель.
 

Сергей-4030

исключающий третье
★★
AidarM> Ага, я тогда поторопился с ответом. Какие-то варианты мы упускаем при поиске, и непонятно, по какому критерию отсев идет.

Вот тут хороший пример - я не додумался до этих стен с вершинами в 0 и в 10. Сложно биологическим разумам оценить где площадь больше - в длинном узком треугольнике или в коротком, но "полном". И кучу разбиений оценить сложно.
sample3.JPG (скачать) [408x476, 20 кБ]
 
 
 

Сергей-4030

исключающий третье
★★
Или вот такая фигура. Когда машина нарисует - уже все понятно. А до того - хрен поймешь. :(
p1-1.JPG (скачать) [408x476, 13,1 кБ]
 
p1-2.JPG (скачать) [408x476, 24 кБ]
 
 
 

Сергей-4030

исключающий третье
★★
А вот такие козябры получаются если искать минимальную площадь вместо максимальной.
min.JPG (скачать) [408x476, 21 кБ]
 
 
 

Сергей-4030

исключающий третье
★★
А вот такая примерно разница между максимальной и минимальной площадью на одном и том же наборе. Максимальный многоугольник - серый, минимальный - красный контур.
mm.JPG (скачать) [408x476, 22 кБ]
 
 
 

Сергей-4030

исключающий третье
★★
minchuk> Блин... Во-первых, Вы бы — не пошли, а он — пошел. Его выбор КАК.

Ну еще бы, кто ж с вами спорит. Вы, похоже, немного не понимаете, в чем спор. Конечно, Меньшов с вашей точки зрения правильно очень поступил. Разоблачил, понимаешь, врагов народа. :lol: А то, что на договоренности с устроителями наплевал - большое дело! Более того, если б он еще поссал бы там со сцены, это бы еще более отложилось в памяти народной. Средства ничто, цель все. Но что нам поделать если нас, поганых косполитов, тошнит от таких средств.

ЗЫ Если, конечно, не иметь в виду тщательную инсценировку.
 

Сергей-4030

исключающий третье
★★
Кстати, минчук, вы бы не могли сократить количество тире в ваших текстах? Не в обиду, читать сложно.
 

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru