A bell-curve based algorithm for mixed continuous and discrete structural optimization