Nowadays, effort estimation in software development is of great value and significance in project management. Accurate and appropriate cost estimation not only helps customers trust to invest but also has a significant role in logical decision making during project management. Different models of cost estimation are presented and employed to the date, but the models are application specific. In this paper, a three-phase hybrid approach is proposed to overcome the problem. In the first phase, features are selected using a combination of genetic algorithm and the perceptron neural network. In the second phase, impact factors are associated to each selected feature using multiple linear regression methods which act as coefficients of influence for each feature. In the last and the third phase, the feature weights are optimized by Imperialist Competitive Algorithm. To compare the proposed model for effort estimation with state-of-the-art models, three datasets are chosen as benchmark, namely COCOMO, Maxwell and Albrecht. The datasets are standard and publicly available for assessment. The experiments show promising results and average performance is improved by the proposed model for MMRE performance criterion on the datasets by 23%, 38% and 35%, respectively.