Tesis ini mengkaji tentang masalah optimasi portofolio dengan kendala (1) buy-in threshold, yaitu kendala yang memberikan batas bawah tak nol untuk setiap aset, (2) cardinality, merupakan kendala yang membatasi banyaknya aset yang akan dimasukkan ke dalam portofolio, dan (3) roundlot, yang merupakan kendala yang mensyaratkan pembelian aset dalam satuan lot. Model portofolio yang digunakan adalah model Markowitz yang melibatkan masalah meminimumkan risiko dan masalah memaksimumkan return.
Masalah optimasi portofolio dengan ketiga kendala tersebut dirumuskan ke dalam dua jenis masalah, yaitu: (1) masalah yang hanya melibatkan variabel-variabel kontinu (real) dan (2) masalah yang melibatkan variabel bilangan bulat. Masalah (1) diselesaikan dengan menggunakan algoritma Cuckoo Search, sedangkan masalah (2) diselesaikan dengan melakukan suatu modifikasi pada algoritma Cukoo Search sehingga algoritma yang telah dimodifikasi tersebut mampu untuk menyelesaikan masalah Mix Integer Nonlinear Programming.