I have MIP program based on CPLEX solver(feasibility pump2.0).
My task is Make this program runs on CBC solver.
So I tried to change the codes with corresponding functions, but program size is too big to modifying every CPLEX code(size of source code is almost 2MB).
Do you know effective way or helpful reference?
Things may be more complicated then you envision at the moment: I doubt that there is an equivalent CBC function for each CPLEX function. Even if a function has the same signature, it may have slightly different semantics. So will have to check those one by one anyway. Some CPLEX functions may not even have an equivalent in CBC and some features used may not be supported by CBC.
A better approach would be (like some comments suggested) to adapt the code so that it uses some abstract and generic interface for which you have an implementation by CBC and CPLEX. Then you can swap out the underlying solver any time.
In case you don't want to move to an abstract interface, you best option probably is to
The difficult step here is 2. It heavily depends on which CPLEX functions your code uses and how easy it is to map them to CBC functions.