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