Hardware/software partitioning is an important step in the design of embedded systems. In this paper, the hardware/software partitioning problem is modeled as a constrained binary integer programming problem, which is further converted equivalently to an unconstrained binary integer programming problem by a penalty method. A local search method, HSFM, is developed to obtain a discrete local minimizer of the unconstrained binary integer programming problem. Next, an auxiliary function, which has the same global optimal solutions as the unconstrained binary integer programming problem, is constructed, and its properties are studied. We show that applying HSFM to minimize the auxiliary function can escape from previous local optima by the increase of the parameter value successfully. Finally, a discrete dynamic convexized method is developed to solve the hardware/software partitioning problem. Computational results and comparisons indicate that the proposed algorithm can get high-quality solutions.
Given an undirected graph with edge weights,the max-cut problem is to find a partition of the vertices into twosubsets,such that the sumof theweights of the edges crossing different subsets ismaximized.Heuristics based on auxiliary function can obtain high-quality solutions of the max-cut problem,but suffer high solution cost when instances grow large.In this paper,we combine clustered adaptive multistart and discrete dynamic convexized method to obtain high-quality solutions in a reasonable time.Computational experiments on two sets of benchmark instances from the literature were performed.Numerical results and comparisons with some heuristics based on auxiliary function show that the proposed algorithm is much faster and can obtain better solutions.Comparisons with several state-ofthe-science heuristics demonstrate that the proposed algorithm is competitive.