Patent ID: 6934052

Claim:
A method for laying out a plurality of rectangles within a bounding box area to form a layout, the layout having a current configuration, comprising: (a) adjusting all rectangles to a specified aspect ratio; (b) computing an overlap sum of all areas corresponding to a common area of overlapping rectangles occurring as a result of the arrangement; (c) approximating a black area value, the black area value being equal to a difference between a total area value and the computed overlap sum, the total area value being the sum of the areas of all the plurality of rectangles; (d) calculating a white space value representing non-overlapping space remaining between the arranged rectangles, the white space value being equal to a difference between a bounding box area value and the black area value, the bounding box area value being equal a total area of the bounding box; (e) calculating an energy function, for the current configuration, the energy function being equal to the sum of the calculated white space value and an overlap product, the overlap product being a product of the computed overlap sum and a predetermined penalty value; (f) calculating a state probability function, the state probability function being equal to an exponential function of a negative of an energy function power, the energy function power being equal to an energy difference divided by a predetermined control parameter, the energy difference being a difference between a current calculated energy function and a previously calculated energy function; (g) determining if the calculated state probability function is within predetermined limits; (h) accepting the current configuration when it is determined that the calculated state probability function is within the predetermined limits; (i) lowering a value for the predetermined control parameter by a predetermined fraction when it is determined that the calculated state probability function is outside the predetermined limits; (j) obtaining a random value between zero and 1 when it is determined that the calculated state probability function is outside the predetermined limits; (k) determining if the random value is less than the value of the calculated state probability function when it is determined that the calculated state probability function is outside the predetermined limits; (l) making the previously calculated energy function equal to the current calculated energy function if the random value is less than the value of the calculated state probability function; and (m) randomly arranging the rectangles within the bounding box area when it is determined that the calculated state probability function is outside the predetermined limits and the random value is less than the value of the calculated state probability function.