Minimum bounding circle of a planar point set HDU 3932

Source: Internet
Author: User

Minimum cover circle algorithm address: http://soft.cs.tsinghua.edu.cn/blog/?q=node/1066


the minimum bounding circle of a planar point set
1. Background of the problem
 
inspection of the fixed on the working platform of the manipulator, to pick up scattered in different locations of a number of parts, and sent to other places. So, where should the base of this manipulator be chosen? According to intuition, you should choose the "center" of those positions where the manipulator needs to be sufficient. Precisely, that is, the center of the smallest circle that surrounds these points----the advantage of this position is that it minimizes the maximum distance from the base of the manipulator to the points it needs to be able to reach. So the question is: given a set of n points on a plane (which corresponds to those positions where the manipulator needs to be sufficient), try to find the smallest enclosing circle of p (smallest enclosing disc)----that is, a circle with the smallest radius in P. This smallest enclosing circle is bound to be unique.
 
2. Algorithm and principle
 
Algorithm Introduction: Our design of this algorithm is based on such a simple and intuitive nature: under the given point conditions, if a new half-plane is introduced, as long as the previous optimal solution vertex (that is, the only few key vertices to determine the minimum bounding circle) can be included in it, it is not necessary to modify the optimal solution, This is also the optimal solution for the new point set; otherwise, the new optimal solution vertex must be located on the boundary of this new half-space.
The theorem can be proved by contradiction.
Therefore, based on this nature, we can get a stochastic incremental algorithm similar to the linear programming algorithm. Defines di as the smallest bounding circle relative to the pi. The key to this algorithm implementation is for PI? Di-1 when processing. Obviously, if pi∈di-1, then di= Di-1; otherwise, the Di needs to be updated separately. Moreover, the composition of di must contain PI; therefore, the smallest enclosing circle in this case is the smallest enclosing circle over the Pi point and the coverage point set {P1, p2, p3 ... pi-1}. Then follow the above processing ideas, di={p1, pi}, one by one to determine the point set {p2, p3 ... pi-1}, if there is PJ? Di, then Di={pj,pi}. At the same time, click on the point set {p1, p2, p3 ... pj-1} to determine whether the Pk∈di is satisfied, if there is not satisfied, then DI={PK, Pj,pi}. Because, three points uniquely determine a circle, therefore, only on this basis to determine whether the other points are located in this enclosing circle, constantly updated PK. When the inner loop is complete, exit the loop to update PJ, and when the secondary inner loop ends, exit the loop and update the PI. When I=n, indicates that all vertices have been processed, at which point the DN represents the smallest bounding circle covering the given n points.

Minimum bounding circle of a planar point set HDU 3932

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.