A dynamic programming approach for modeling low-carbon fuel technology adoption considering learning-by-doing effect. (1st January 2017)