Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

wulab/cloud-balancing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cloud Balancing

A minimal OptaPlanner project to solve a cloud balancing problem

Problem description

Suppose your company owns a number of cloud computers and needs to run a number of processes on those computers. Assign each process to a computer.

cloudBalanceUseCase

Define constraints

The following score constraints are implemented in the Drools score file.

  • The CPU power of a computer must be at least the sum of the CPU power required by the processes assigned to that computer
  • The RAM memory of a computer must be at least the sum of the RAM memory required by the processes assigned to that computer
  • Each computer that has one or more processes assigned, incurs a maintenance cost

Load the problem

This problem is a form of bin packing. We assign four processes to two computers with two constraints (CPU and RAM) in the App file.

Solve for a solution

Make sure you have Gradle on your computer and run:

$ ./gradlew run
Solved cloudBalance with 2 computers and 4 processes:

* Process A -> Computer Y
* Process B -> Computer X
* Process C -> Computer X
* Process D -> Computer Y

Score: -1hard/-25soft

Increase the time limit in the solver config file to get a better result.

About

A minimal OptaPlanner project to solve a cloud balancing problem

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages