我有一个函数 f(x1,…,xN),其中变量 xi 仅采用二进制值,xi = 0 或 1。输入空间是以汉明距离为度量的空间。 我想在数值上优化这个函数并找到最小值。 获得此结果的最佳数值方法是什么?
老实说,我不知道从哪里开始,我从未尝试过优化离散变量函数以及二元变量函数。
注意:输入空间维度巨大(变量数量很大),因此我需要针对此类问题的正确数值方法。
注意:输入空间维度巨大(变量数量很大),所以我需要一种快速的数值方法。
空间和速度通常可能意味着不同的代码。
当空间最重要时,请使用
bool
表示 二元变量 的单个实例,使用 unsigned char
表示数组。
当速度最重要时,请对
二元变量的所有实例使用
bool
。
当变量空间至关重要时,请使用
unsigned
并将多个位编码为一个 unsigned
。