This paper presents a modification of Particle Swarm Optimization (PSO) technique based on cooperative behavior of swarms and learning ability of an automaton. The approach is called Cooperative Particle Swarm Optimization based on Learning Automata (CPSOLA). The CPSOLA algorithm utilizes three layers of cooperation which are intra swarm, inter swarm and inter population. There are two active populations in CPSOLA. In the primary population, the particles are placed in all swarms and each swarm consists of multiple dimensions of search space. Also there is a secondary population in CPSOLA which is used the conventional PSO's evolution schema. In the upper layer of cooperation, the embedded Learning Automaton (LA) is responsible for deciding whether to cooperate between these two populations or not. Experiments are organized on five benchmark functions and results show notable performance and robustness of CPSOLA, cooperative behavior of swarms and successful adaptive control of populations.