ConvexFit 
- An Optimal Minimum-Error Convex Fitting tool

Sanghamitra Roy, Weijen Chen and Charlie Chung-Ping Chen

bullet

Introduction:

ConvexFit is a tool to generate convex data from non-convex tables. Convex optimization has gained popularity due to its capability to reach global optimum in a reasonable amount of time. Convexity is often ensured by fitting the table data into analytically convex forms such as posynomials. However, fitting the look-up tables into the posynomial forms with minimum error itself may not be a convex optimization problem and hence excessive fitting errors may be introduced. ConvexFit directly adjusts the table values into a numerically convex table without an explicit analytical form. The underlying methodology is based on minimizing the perturbation by formulating a convex semidefinite optimization problem. ConvexFit uses the DSDP 5.7 software as a semidefinite programming solver. Currently ConvexFit supports 1/2/3 dimensional data tables. It provides the numerically convexified data along with the gradient and Hessian matrix information at each point. Experimental results demonstrate 30X reduction in fitting error over a posynomial fitting algorithm and its efficient use in the gate sizing optimization problem.

bullet

OS Requirement:

PC (Windows based)

bullet

Input/Output File Format:

The input file can contain up to three parameters. x_index, y_index, and z_index represent the parameters in order. value(i,j,k) represents the table value for parameters x_index(i),y_index(j),z_index(k). Sample input files are provided below:

(input_data_3d.out, input_data_2d.out, input_data_1d.out )

The output file contains the gradient and hessian matrix information along with the new data values.

bullet

Usage and Examples:

ConvexFit [input file name]

The numerically convex data will be automatically saved to convex_data.out.

Example:

ConvexFit input_data_3d.out

bullet

Download

ConvexFit for Windows: ConvexFit.exe

 

bullet

 Reference:

[1] Sanghamitra Roy, Weijen Chen, and Charlie Chung-Ping Chen, "ConvexFit: An Optimal Minimum-Error Convex Fitting and Smoothing Algorithm with Application to Gate-Sizing." ICCAD 2005, accepted.

 

 

bullet

Technical Support:

All questions and suggestions are welcome here.