Cooperative and compatitive learning