Efficient design method for cell allocation in hybrid CMOS/nanodevices using a cultural algorithm with chaotic behavior