This document outlines a research plan to dynamically optimize heterogeneous resource provisioning in cloud computing. It discusses four main challenges: dealing with various virtual machine types and pricing models offered by cloud providers, accounting for uncertain demand and costs, and solving the problem as a multi-objective optimization problem that considers both cost and quality of service. The proposed research plan is to model the problem using stochastic and approximate programming approaches to deal with uncertainty, incorporate machine learning techniques, and account for real-world complexities like heterogeneous resources and different pricing schemes. Preliminary results show modeling the problem in Stochastic MiniZinc and adding a spot instance pricing model. The goal is to minimize expected cost while provisioning resources to meet demand.