Страница 1 из 1

Помогите разработать алгоритм подгонки участка

Добавлено: 29 сен 2011, 10:08
Dorofeev
При сборе кадастровой информации земельные участки в цифровом представлении зачастую не соответствуют правоустанавливающим документам из-за погрешности съемки, неправильной сводки и просто безалаберности контролирующих органов.
Одна из землеустроителей - приведение в соответствие цифрового представления к документальному. Задача эта довольно трудоемкая и зачастую безуспешная. Поэтому ее просто необходимо автоматизировать.
Т.е нужно разработать алгоритм, который путем изменения координат поворотных точек границ участка будет подгонять площадь участка и расстояния между поворотными точками к заданным.
Пробовал реализовать простым перебором, получается ооооочень долго. Поэтому ищу какой-то математический алгоритм, который бы позволил выполнять эту погонку за приемлемое количество времени и с однозначным результатом(да участок подгнался или нет, при заданных параметрах это невозможно).

Re: Помогите разработать алгоритм подгонки участка

Добавлено: 29 сен 2011, 11:04
gamm
Dorofeev писал(а):Поэтому ищу какой-то математический алгоритм, который бы позволил выполнять эту погонку за приемлемое количество времени и с однозначным результатом(да участок подгнался или нет, при заданных параметрах это невозможно).
метод изобретен и известен давно, называется Метод Наименьших Квадратов :)

рисуете функционал (сумма квадратов разностей расстояний, площадей, и т.д. - нужно только правильно веса задать, чтобы что-то одно не перевесило, а то площадь сядет, а координаты - нет), задаете свободные параметры (например, некоторые точки двигать нельзя - их не включаем), и вперед. Все это можно сделать на R, функция там называется optim(), сначала Нелдер-Мид для поиска начального положения, потом квазиньютоновский для уточнения.

решение метод не найдет только если имеющаяся форма кардинально отличается от той, что нужна, но 95% обработает (у меня на садовом плане добавлена здоровенная часть чужого участка - отрезали у него верхнюю палку буквы Г, и пририсовали ко мне), а площадь указана правильно.

Вот сейчас гонял подобную задачку с несколькими тысячами точек :-)

Re: Помогите разработать алгоритм подгонки участка

Добавлено: 29 сен 2011, 11:30
Dorofeev
Метод наименьших квадратов помню, как его приложить к задаче пока не понимаю. Пойду гуглить.
Как же плохо меня учили в университете :(