Search directions in pattern search via rotation
First Claim
Patent Images
1. A method for improving performance of a pattern search that seeks a solution to an optimization problem in a technical computing environment on a computing device, comprising:
- identifying, with the computing device in the technical computing environment, a first set of vectors that form a positive basis for use with the optimization problem, the first set of vectors associated with an origin;
rotating the first set of vectors, using the computing device, to obtain a second set of vectors that form a positive basis for use with the optimization problem, the second set of vectors associated with the origin;
applying a first point, associated with the origin, to a function to generate a first output, using the computing device, the function representing the optimization problem;
applying, using the computing device, alternately the first set of vectors and the second set of vectors as search directions in the pattern search to find a second point that, when applied to the function, yields a more favorable output than the first output to improve performance of the pattern search in the technical computing environment on the computing device; and
storing the second point in a storage.
1 Assignment
0 Petitions
Accused Products
Abstract
In performing a pattern search algorithm to find an optimal solution for an optimization, using a set of positive basis vectors that is non-maximal like a set of minimal positive basis vectors as search directions can sometimes causes the algorithm to converge at a non-optimal solution, like a horse saddle. The present invention provides a method to overcome this deficiency by rotating the vectors and hence increase the number of search directions.
-
Citations
21 Claims
-
1. A method for improving performance of a pattern search that seeks a solution to an optimization problem in a technical computing environment on a computing device, comprising:
-
identifying, with the computing device in the technical computing environment, a first set of vectors that form a positive basis for use with the optimization problem, the first set of vectors associated with an origin; rotating the first set of vectors, using the computing device, to obtain a second set of vectors that form a positive basis for use with the optimization problem, the second set of vectors associated with the origin; applying a first point, associated with the origin, to a function to generate a first output, using the computing device, the function representing the optimization problem; applying, using the computing device, alternately the first set of vectors and the second set of vectors as search directions in the pattern search to find a second point that, when applied to the function, yields a more favorable output than the first output to improve performance of the pattern search in the technical computing environment on the computing device; and storing the second point in a storage. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer-readable medium comprising computer-executable instructions that when executed cause a computing device to perform the following functions to improve performance of a pattern search that seeks a solution to an optimization problem in a technical computing environment:
-
identifying, with the computing device in the technical computing device, a first set of vectors that form a positive basis for use with the optimization problem, the first set of vectors associated with an origin; rotating the first set of vectors, using the computing device, to obtain a second set of vectors that form a positive basis for use with the optimization problem, the second set of vectors associated with the origin; applying a first point, associated with the origin, to a function to generate a first output, using the computing device, the function representing the optimization problem; applying, using the computing device, alternately the first set of vectors and the second set of vectors as search directions in the pattern search to find a second point that, when applied to the function, yields a more favorable output than the first output to improve performance of the pattern search in the technical computing environment on the computing device; and storing the second point in a storage. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. An apparatus comprising:
-
means for identifying, using an optimization module to find a solution of an optimization problem and to save computation time of the solution in a technical computing environment, a first set of vectors that form a positive basis for use with the optimization problem, the first set of vectors associated with an origin, the optimization module adaptable to be included as part of an application running in the technical computing environment; means for rotating the first set of vectors to obtain a second set of vectors that form a positive basis for use with the optimization problem, the second set of vectors associated with the origin; means for applying a first point, associated with the origin, to a function to generate a first output, the function representing the optimization problem; and means for applying alternately the first set of vectors and the second set of vectors as search directions in a pattern search to find a second point that, when applied to the function, yields a more favorable output than the first output. - View Dependent Claims (14, 15)
-
-
16. An apparatus comprising:
-
a memory; and a processor configured to; identify, using an optimization module to find a solution of an optimization problem and to save a computation time of the solution in a technical computing environment, a first set of vectors that form a positive basis for use with the optimization problem, the first set of vectors associated with an origin, the optimization module adaptable to be included as part of an application running in the technical computing environment; rotate the first set of vectors to obtain a second set of vectors that form a positive basis for use with the optimization problem, the second set of vectors associated with the origin; apply a first point, associated with the origin, to a function to generate a first output, the function representing the optimization problem; apply alternately the first set of vectors and the second set of vectors as search directions in a pattern search to find a second point that, when applied to the function, yields a more favorable output than the first output; and store the second point in the memory. - View Dependent Claims (17)
-
-
18. In a technical computing environment, a method implemented in a computing device, comprising:
-
finding, using the computing device, a first set of vectors that form a positive basis for use with the optimization problem; rotating the first set of vectors, using the computing device, to obtain a second set of vectors that form a positive basis for use with the optimization problem; applying a point, representing an origin associated with the first set of vectors and the second set of vectors, to a function to generate a first output, using the computing device, the function representing the optimization problem; applying the second set of vectors as search directions in a pattern search to find a first set of points, using the computing device; applying the first set of points to the function to generate a first set of outputs, using the computing device; identifying an output in the first set of outputs that is more favorable than the first output, using the computing device, to improve performance of the pattern search in the technical computing environment on the computing device; and storing the output in a storage. - View Dependent Claims (19)
-
-
20. A computer-readable medium comprising computer-executable instructions that when executed cause a computing device to perform:
-
finding, using the computing device, a first set of vectors that form a positive basis for use with the optimization problem; rotating the first set of vectors, using the computing device, to obtain a second set of vectors that form a positive basis for use with the optimization problem; applying a point, representing an origin associated with the first set of vectors and the second set of vectors, to a function to generate a first output, using the computing device, the function representing the optimization problem; applying the second set of vectors as search directions in a pattern search to find a first set of points, using the computing device; applying the first set of points to the function to generate a first set of outputs, using the computing device; identifying an output in the first set of outputs that is more favorable than the first output, using the computing device, to improve performance of the pattern search in the technical computing environment on the computing device; and storing the output in a storage. - View Dependent Claims (21)
-
Specification