线性程序中涉及


16

假设

minAvec(U)subject to Ui,jmax{Ui,k,Uk,j},i,j,k=1,,n

其中是一个对称的n × n矩阵,而v e cU U整形为具有n 2个条目的一维向量。Un×nvec(U)Un2

上述程序中给我带来麻烦的部分是。(限制非负对称矩阵的解似乎很简单。)max{,}

在此先感谢您的帮助或参考!


为什么不能同时添加两个约束?
阿隆·艾玛迪亚

1
@AronAhmadia:他不能添加两个约束,因为这将相当于所有Ĵ ķ。我认为对此问题没有LP的重新表述,但是可能会进行MILP的表述,即使这可能会使解决起来更加昂贵。Ui,jmin{Ui,k,Uk,j}i,j,k
Geoff Oxberry '02

@ N21:您希望对您要解决的问题有多大?n
Geoff Oxberry '02

@Geoff:谢谢!我最终还是希望能有大,但现在我最关心得到了初步的解决方案与ñ不到,说100,甚至10nn
N21

感谢您澄清@GeoffOxberry,在发布之前我没有完全想到。
阿隆·艾玛迪亚

Answers:


14

编辑:这次,当我更加清醒时,让我们再次尝试这种解释。

公式存在三个大问题(按严重性顺序):

  1. 对于明显是平滑,凸形或线性的问题,没有明显的重新表述。
  2. 这不顺利。
  3. 它不一定是凸的。

没有明显的平滑/凸/线性重构

maxmin

Uijmink{Uik,Ukj}
UijUik,k
UijUkj,k.
min2n

maxmaxn2max2n

max

不光滑

max

不平滑是一个巨大的问题,因为:

  • 它立即使您的问题变为非线性
  • 大多数非线性规划求解器假设两次连续微分函数

max

可能的不凸性

g(x)0

Uijmaxk{Uik,Ukj}0,i,j,k.

这些功能是凹的。

Uijmaxk{Uik,Ukj}

g

解决问题的选项

  • Uijmaxk{Uik,Ukj},i,j,k
    Uijmink{Uik,Ukj},i,j,k,
  • 像使用非平稳程序的捆绑求解器一样,尝试自己的配方。我没有很多这类求解器的经验。(我的一个同事在研究中使用了它们。)它们可能很慢,因为它们不能使用派生信息。(我认为他们改用次梯度或Clarke的广义梯度信息。)使用捆绑求解器解决大型问题实例的可能性也不大。


1
杰夫,好东西;这触及了关键点,并提供了许多建设性的见解和建议。我投票了。但是您似乎将非凸性视为与事实不同的东西,正如您所说的那样,“在我所知的最小化问题中,没有关于最大约束的标准重构”。但是实际上,前者正是后者无法实现的原因。非凸约束不能在线性编程中表达-句号!这是一个非凸问题,必须将其重新表述为混合整数问题或应用其他启发式方法。
迈克尔·格兰特

g(x)0gg(x)0g

1
xmax{y,z}(x,y,z)

1
max{y,z}

3

U=(1111).
Avec(U)Ut±UminV(Avec(V))mint(Avec(tU))=

U

U02tr(A^U)=A^U2A^2U2

2

fmax{f1,f2,...,fn}n bi{0,1}1inMf

ffi+(1bi)M,i

ibi=1

M:=maxifiminififi


1

xi<=max(ai1,ai2,...,ain)
xi<=si
si>=ai1
si>=ai2
...
si>=ain
cmax(simax(ai),0)
simax(ai)c

si>=max(ai)xi=sisimax(ai) 以解决无法实施的问题。)


是个好主意。假设您的证明通过了,那么问题就变成了将非线性和非平滑性从约束移到目标中,这两者在公式化中仍然是不受欢迎的品质。
Geoff Oxberry 2012年

aij(xi,ai1,ai2,...,ain)(xi,si,ai1,ai2,...,ain)

1

我找不到评论按钮...

log(x)<5

如果它是凸集,则可以对目标函数执行梯度下降,使用Dykstra's_projection_algorithm之类的东西来投影回到约束空间。


投票赞成关于凹函数的评论;我应该多考虑一下我的解释。尽管无法确定是否可以将这些算法应用于不平滑的约束条件,但有可能投影到可行的集合上。
Geoff Oxberry 2012年

x2+y2<5

如果非凸问题具有NP个可能的解决方案,那么它们仅是NP问题。NP代表“不确定性多项式”。我完全不知道你在说什么。其次,我提到了凹度,因为线性函数是凹凸的。函数不是凸的。仅仅因为函数不平滑且分段线性并不立即排除存在LP重新制定的可能性。
Geoff Oxberry 2012年

Uijmink{Uik,Ukj}

抱歉,必须简短说明一下,所以我将NP用于非多项式,将P用于多项式。关键是非凸优化并不总是对NP困难。如果可能的解决方案的数量比多项式更糟,这只是NP问题。很抱歉给您带来混乱:)您对将其重新设置为线性是正确的。您似乎在说“因此,没有办法将您的程序重新格式化为线性程序”,因为它不是凸性的,我只是在指出它与凸性无关,而是线性。
蒂姆(Tim)

0

0

U0An0

abccmax(a,b)b=ci,j,k

  1. Uij<Ujk=Uik
  2. Uik<Ujk=Uij
  3. Ujk<Uik=Uij
  4. Uij=Ujk=Uik

tG(t)Uij=tUij=Ujk=tUj=tUi=Uk=tG(t)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.