Resource-Allocation-for-Virtual-Machines Application of Particle Swarm Optimization Technique for dynamic resource allocation in a cloud computing environment