Abstract-Nowadays, as the use of cloud computing service becomes more extensive and the customers welcome this service, an increasing trend in energy consumption and operational costs of these centers may be seen. To reduce operational costs, the providers should decrease energy consumption to an extent that Service Level Agreement (SLA) maintains at a desirable level. This paper adopts the virtual machine consolidation problem in cloud computing data centers as a solution to achieve this goal, putting forward solutions to make the decision regarding the necessity of migration from hosts and finding appropriate hosts as destinations of migration. Using time-series forecasting method and Double Exponential Smoothing (DES) technique, the proposed algorithm predicts CPU utilization in near future. It also proposes an optimal equation for the dynamic lower threshold. Comparing current and predicted CPU utilization with dynamic upper and lower thresholds, this algorithm identifies and categorizes underloaded and overloaded hosts. According to this categorization, migration then occurs from the hosts that meet the necessary conditions for migration. This paper identifies a certain type of hosts as "troublemaker hosts". Most probably, the process of prediction and decision making regarding the necessity of migration will be disrupted in the case of these hosts. Upon encountering this type of hosts, the algorithm adopts policies to modify them or switch them to sleep mode, thereby preventing the adverse effects caused by their existence. The researchers excluded all overloaded, prone-to-beoverloaded, underloaded, and prone-to-be-underloaded hosts from the list of suitable hosts to find suitable hosts as destinations of migration. An average improvement of 86.2%, 28.4%, and 87.2% respectively for the number of migrations of virtual machines, energy consumption, and SLA violation is among the simulation achievements of this algorithm using Clouds tool.