整数规划学习笔记(一)

  • Post author:
  • Post category:其他




整数规划



整数规划模型



线性混合整数规划(MIP)



背包模型

旅行者要在一个背包内装入一些对旅行最有用的物品。背包最多只能装总重为b单位的物品,并且对于每件物品只能选择整个携带或者不带。假设共有n件物品,第j件物品重



a

j

a_j







a










j





















,其价值为



c

j

c_j







c










j





















。在携带物品总重量不超过b单位的情况下,请问应如何装入物品以使背包内的物品总价值最大。

对于



j

=

1

,

,

n

j=1,…,n






j




=








1


,









,




n





,定义0-1决策变量



x

j

x_j







x










j





















:





x

j

=

{

1

携带物品

j

0

否则

x_j = \begin{cases} 1 & 携带物品j \\ 0 & 否则 \end{cases}







x










j




















=










{














1








0



























携带物品


j








否则

























则该问题的数学模型为





m

a

x

j

=

1

n

c

j

x

j

max\sum_{j=1}^nc_jx_j \\






ma


x













j


=


1


















n




















c










j



















x










j




























s

.

t

.

s.t.






s


.


t


.










j

=

1

n

a

j

x

j

b

x

j

j

=

1

,

,

n

\sum_{j=1}^na_jx_j\leq b \\ x_j \in \forall j =1,…,n















j


=


1


















n




















a










j



















x










j





























b









x










j
































j




=








1


,









,




n







广义指派模型

将n个任务(或物品)分配给m个员工(或背包)的问题。平衡指派模型是指任务数量和员工数量相等的情形。而现实中通常是任务数量大于员工数量且员工能力有限的广义指派模型(GAP)。GAP是经典的组合优化问题,许多领域的容量约束问题都可以被抽象为GAP进行求解。GAP可以描述为:将n个相互独立的任务分配给m个员工,一个任务只能由一个员工来完成,一个员工可以完成多项任务,但员工完成任务需要的总时间不得超过给定限制。

对于



i

=

1

,

,

m

;

j

=

1

,

,

n

i=1,…,m;j=1,…,n






i




=








1


,









,




m


;




j




=








1


,









,




n





,定义0-1决策变量



x

i

j

x_{ij}







x











ij






















:





x

i

j

=

{

1

任务

j

分配给员工

i

0

否则

x_{ij}=\begin{cases} 1 & 任务j分配给员工i \\ 0 & 否则 \end{cases}







x











ij





















=










{














1








0



























任务


j


分配给员工


i








否则































I

=

{

i

i

=

1

,

,

m

}

I=\{ i|i=1,…,m \}






I




=








{



i





i




=








1


,









,




m


}





为员工集合,



J

=

{

j

j

=

1

,

,

n

}

J=\{ j|j=1,…,n \}






J




=








{



j





j




=








1


,









,




n


}





为任务集合,



b

i

b_i







b










i





















表示员工自身的工作时长限制,



r

i

j

r_{ij}







r











ij






















表示员工



i

i






i





完成任务



j

j






j





需要的时长,



c

i

j

c_{ij}







c











ij






















表示员工



i

i






i





完成任务



j

j






j





所消耗的资源或产生的收益。最终目标为成本最小或收益最大,则GAP可表述为





m

a

x

m

i

n

i

I

j

J

c

i

j

x

i

j

max或min\sum_{i\in I}\sum_{j \in J}c_{ij}x_{ij}






ma


x





min













i





I






































j





J






























c











ij




















x











ij



























s

.

t

.

s.t.






s


.


t


.










j

J

r

i

j

x

i

j

b

i

,

i

I

,

i

I

x

i

j

=

1

,

j

J

,

x

i

j

{

0

,

1

}

,

i

I

,

j

J

.

\sum_{j \in J}r_{ij}x_{ij} \leq b_i, \forall i \in I, \\ \sum_{i \in I}x_{ij}=1, \forall j \in J, \\ x_{ij} \in \{ 0,1 \}, \forall i \in I ,\forall j \in J.















j





J






























r











ij




















x











ij































b










i


















,







i













I


,

















i





I






























x











ij





















=








1


,







j













J


,









x











ij






























{



0


,




1


}


,







i













I


,







j













J


.







集合包装、覆盖和划分模型

集合包装约束要求每个子集



j

j






j





中最多有一个元素出现在最优解中





j

J

x

j

1.

\sum_{j \in J} x_j \leq 1.















j





J






























x










j





























1.





集合覆盖约束要求每个子集



j

j






j





中至少有一个元素出现在最优解中





j

J

x

j

1.

\sum_{j \in J} x_j \geq 1.















j





J






























x










j





























1.





集合划分约束要求每个子集



j

j






j





中有且仅有一个元素出现在最优解中





j

J

x

j

=

1.

\sum_{j \in J} x_j = 1.















j





J






























x










j




















=








1.







含固定成本的整数规划模型

含固定成本的整数规划模型指的是目标函数中存在固定成本。



设施选址模型

设施选址模型需要解决两个问题,一是选定那些点建立设施,二是被选中的点如何满足顾客需求。因此需要定义两类决策变量。

定义0-1决策变量



y

i

y_i







y










i



























y

i

=

{

1

i

点建立设施

0

否则

y_i = \begin{cases} 1 & 在i点建立设施 \\ 0 & 否则 \end{cases}







y










i




















=










{














1








0






























i


点建立设施








否则



























定义决策变量



x

i

j

x_{ij}







x











ij




























x

i

j

=

设施点

i

满足顾客

j

的需求量在该顾客总需求中所占的比例

x_{ij} = 设施点i满足顾客j的需求量在该顾客总需求中所占的比例







x











ij





















=








设施点


i


满足顾客


j


的需求量在该顾客总需求中所占的比例











I

I






I





为设施点集合,



J

J






J





为客户集合,



d

j

d_j







d










j





















为客户



j

J

j \in J






j













J





的总需求,



f

i

f_i







f










i





















为在设施点



i

I

i \in I






i













I





建立设施所需的固定费用,



u

i

u_i







u










i





















为设施点



i

i






i





能够提供的最大服务量,



c

i

j

c_{ij}







c











ij






















为顾客



j

j






j





从设施点



i

i






i





获取单位服务量而产生的成本。设施选址问题的整数线性规划模型可表示如下:





m

i

n

i

I

j

J

c

i

j

d

j

x

i

j

+

i

I

f

i

y

i

min \sum_{i \in I} \sum_{j \in J}c_{ij}d_jx_{ij} + \sum_{i \in I} f_iy_i






min













i





I






































j





J






























c











ij




















d










j



















x











ij





















+

















i





I






























f










i



















y










i


























s

.

t

.

s.t.






s


.


t


.










i

I

x

i

j

=

d

j

,

j

J

,

j

J

d

j

x

i

j

u

i

y

i

,

i

I

,

x

i

j

0

,

i

I

,

j

J

,

y

i

{

0

,

1

}

,

i

I

.

\sum_{i \in I} x_{ij} = d_j,\forall j \in J, \\ \sum_{j \in J} d_j x_{ij} \le u_iy_i, \forall i \in I, \\ x_{ij} \ge 0,\forall i \in I, j \in J, \\ y_i \in \{ 0,1 \}, \forall i \in I.















i





I






























x











ij





















=









d










j


















,







j













J


,

















j





J






























d










j



















x











ij































u










i



















y










i


















,







i













I


,









x











ij






























0


,







i













I


,




j













J


,









y










i





























{



0


,




1


}


,







i













I


.







如果客户所需的全部服务的全部服务必须从单一设施点获得,则还需要以下约束:





x

i

j

{

0

,

1

}

,

i

I

,

j

J

.

x_{ij} \in \{ 0,1\},\forall i \in I, j \in J.







x











ij






























{



0


,




1


}


,







i













I


,




j













J


.







针对顾客的服务需求则可以在不同的设施点获得的情况,



x

i

j

x_{ij}







x











ij






















则是连续的。



网络设计模型

在网络模型中,用



V

V






V





表示网络中的节点集,



A

A






A





表示网络中的弧集,



b

i

b_i







b










i





















表示节点



i

V

i \in V






i













V





所需的网络流量,



u

i

j

u_{ij}







u











ij






















表示弧



(

i

,

j

)

A

(i,j) \in A






(


i


,




j


)













A





的最大网络流量限制,



f

i

j

f_{ij}







f











ij






















表示建立通路



(

i

,

j

)

(i,j)






(


i


,




j


)





花费的固定成本,



c

i

j

c_{ij}







c











ij






















表示经过弧



(

i

,

j

)

(i,j)






(


i


,




j


)





的单位流量成本。

对于弧



(

i

,

j

)

A

(i,j) \in A






(


i


,




j


)













A





,定义连续变量



x

i

j

x_{ij}







x











ij






















为通过弧



(

i

,

j

)

(i,j)






(


i


,




j


)





的网络流量,0-1变量



y

i

j

y_{ij}







y











ij






















为点



i

i






i









j

j






j





之间是否建立通路。





m

i

n

(

i

,

j

)

A

f

i

j

y

i

j

+

(

i

,

j

)

A

c

i

j

x

i

j

min\sum_{(i,j) \in A}f_{ij}y_{ij}+\sum_{(i,j) \in A}c_{ij}x_{ij}






min













(


i


,


j


)





A






























f











ij




















y











ij





















+

















(


i


,


j


)





A






























c











ij




















x











ij



























s

.

t

.

s.t.






s


.


t


.










(

i

,

k

)

A

x

i

k

(

k

,

j

)

A

x

k

j

=

b

k

,

k

V

,

0

x

i

j

u

i

j

y

i

j

,

(

i

,

j

)

A

,

y

i

j

{

0

,

1

}

,

(

i

,

j

)

A

.

\sum_{(i,k) \in A}x_{ik}-\sum_{(k,j) \in A}x_{kj}=b_k, \forall k \in V, \\ 0 \le x_{ij} \le u_{ij}y_{ij}, \forall (i,j) \in A, \\ y_{ij} \in \{ 0,1 \}, \forall (i,j) \in A.















(


i


,


k


)





A






























x











ik







































(


k


,


j


)





A






























x











kj





















=









b










k


















,







k













V


,








0














x











ij































u











ij




















y











ij



















,







(


i


,




j


)













A


,









y











ij






























{



0


,




1


}


,







(


i


,




j


)













A


.







旅行商问题

一个商品推销员要去若干个城市推销商品,该推销员从一个城市出发,需要经过所有城市后再回到出发点,选择一条路线使得总行程最短。



对称TSP

引入决策变量



x

i

j

(

i

<

j

)

x_{ij}(i \lt j)







x











ij



















(


i




<








j


)










x

i

j

=

{

1

如果解中包含从点

i

到点

j

的线段

0

否则

x_{ij} = \begin{cases} 1 & 如果解中包含从点i到点j的线段 \\ 0 & 否则 \end{cases}







x











ij





















=










{














1








0



























如果解中包含从点


i


到点


j


的线段








否则



























令集合



I

I






I





为所有点集,



d

i

j

d_{ij}







d











ij






















为从点



i

i






i





到点



j

j






j





的距离,则总的路径长度可以表示为如下线性形式:





i

I

j

>

i

,

j

I

d

i

j

x

i

j

\sum_{i \in I}\sum_{j \gt i,j \in I}d_{ij}x_{ij}















i





I






































j


>


i


,


j





I






























d











ij




















x











ij
























在对称情况下,对于任意点



i

I

i \in I






i













I





,可行解中都恰好存在两个



x

x






x





变量等于1,使得



i

i






i





与前后两个城市相连,这一约束可以表示为:





j

<

i

,

j

I

x

j

i

+

j

>

i

,

j

I

x

i

j

=

2

,

i

I

.

\sum_{j \lt i,j \in I}x_{ji}+\sum_{j \gt i,j \in I}x_{ij}=2, \forall i \in I.















j


<


i


,


j





I






























x











ji





















+

















j


>


i


,


j





I






























x











ij





















=








2


,







i













I


.







但上述约束无法避免子回路问题,考虑到至少要3个点才能形成子回路,可以令



S

S






S





为集合



I

I






I





的一个真子集,满足



S

3

|S| \ge 3









S
















3





。则任意不在



S

S






S





内形成子回路的路径必须在



S

S






S





内外至少穿过两次,即:





i

S

j

S

,

j

>

i

x

i

j

+

i

S

j

S

,

j

>

i

x

i

j

2.

\sum_{i \in S}\sum_{j \notin S,j\gt i}x_{ij}+\sum_{i \notin S}\sum_{j \in S,j\gt i}x_{ij} \ge 2.















i





S






































j















/












S


,


j


>


i






























x











ij





















+

















i















/












S






































j





S


,


j


>


i






























x











ij






























2.







综上所述,对称TSP的整数线性规划模型如下:





m

i

n

i

I

j

>

i

,

j

I

d

i

j

x

i

j

min \sum_{i \in I}\sum_{j \gt i,j \in I}d_{ij}x_{ij}






min













i





I






































j


>


i


,


j





I






























d











ij




















x











ij



























s

.

t

.

s.t.






s


.


t


.










j

<

i

,

j

I

x

j

i

+

j

>

i

,

j

I

x

i

j

=

2

,

i

I

,

i

S

j

S

,

j

>

i

x

i

j

+

i

S

j

S

,

j

>

i

x

i

j

2

,

S

I

,

S

3

,

x

i

j

{

0

,

1

}

,

i

,

j

I

,

j

>

i

.

\sum_{j \lt i,j \in I}x_{ji}+\sum_{j \gt i,j \in I}x_{ij}=2, \forall i \in I ,\\ \sum_{i \in S}\sum_{j \notin S,j\gt i}x_{ij}+\sum_{i \notin S}\sum_{j \in S,j\gt i}x_{ij} \ge 2,\forall S \subset I,|S| \ge 3 ,\\ x_{ij} \in \{0,1\}, \forall i,j \in I,j \gt i.















j


<


i


,


j





I






























x











ji





















+

















j


>


i


,


j





I






























x











ij





















=








2


,







i













I


,

















i





S






































j















/












S


,


j


>


i






























x











ij





















+

















i















/












S






































j





S


,


j


>


i






























x











ij






























2


,







S













I


,







S
















3


,









x











ij






























{



0


,




1


}


,







i


,




j













I


,




j




>








i


.







不对称TSP

引入决策变量



x

i

j

x_{ij}







x











ij



























x

i

j

=

{

1

如果路径依次通过

i

j

0

否则

x_{ij} = \begin{cases} 1 & 如果路径依次通过i和j \\ 0 & 否则 \end{cases}







x











ij





















=










{














1








0



























如果路径依次通过


i





j








否则



























由于成本的不对称性,约束条件应更新为:





j

I

x

j

i

=

1

,

i

I

.

j

I

x

i

j

=

1

,

i

I

.

\sum_{j \in I}x_{ji}=1, \forall i \in I .\\ \sum_{j \in I}x_{ij}=1, \forall i \in I.















j





I






























x











ji





















=








1


,







i













I


.

















j





I






























x











ij





















=








1


,







i













I


.







对于子路径的约束更新为:





i

S

j

S

x

i

j

1.

\sum_{i \in S}\sum_{j \notin S}x_{ij} \ge 1.















i





S






































j















/












S






























x











ij






























1.













i

S

j

S

x

i

j

S

1.

\sum_{i \in S}\sum_{j \in S}x_{ij} \le |S|-1.















i





S






































j





S






























x











ij

































S
















1.





对于非对称情况,



S

2

|S| \ge 2









S
















2




综上所述,非对称TSP的整数线性规划模型如下:





m

i

n

i

I

j

I

d

i

j

x

i

j

min \sum_{i \in I}\sum_{j \in I}d_{ij}x_{ij}






min













i





I






































j





I






























d











ij




















x











ij



























s

.

t

.

s.t.






s


.


t


.










j

I

x

j

i

=

1

,

i

I

,

j

I

x

i

j

=

1

,

i

I

,

i

S

j

S

x

i

j

1

,

S

I

,

S

2

,

\sum_{j \in I}x_{ji}=1, \forall i \in I, \\ \sum_{j \in I}x_{ij}=1, \forall i \in I, \\ \sum_{i \in S}\sum_{j \notin S}x_{ij} \ge 1,\forall S \subset I,|S| \ge 2,















j





I






























x











ji





















=








1


,







i













I


,

















j





I






























x











ij





















=








1


,







i













I


,

















i





S






































j















/












S






























x











ij






























1


,







S













I


,







S
















2


,













i

S

j

S

x

i

j

S

1

S

I

,

S

2

,

x

i

j

{

0

,

1

}

,

i

,

j

I

.

\sum_{i \in S}\sum_{j \in S}x_{ij} \le |S|-1,\forall S \subset I,|S| \ge 2 , \\ x_{ij} \in \{0,1\} , \forall i,j \in I.















i





S






































j





S






























x











ij

































S
















1








S













I


,







S
















2


,









x











ij






























{



0


,




1


}


,







i


,




j













I


.







拓展


MTZ模型





m

i

n

i

I

j

I

c

i

j

x

i

j

min \sum_{i \in I}\sum_{j \in I}c_{ij}x_{ij}






min













i





I






































j





I






























c











ij




















x











ij

























s

.

t

.

s.t.






s


.


t


.










i

I

x

i

j

=

1

,

j

I

,

j

I

x

i

j

=

1

,

i

I

,

u

i

u

j

+

(

n

1

)

x

i

j

n

2

,

2

i

=

j

n

.

\sum_{i \in I}x_{ij}=1,\forall j \in I, \\ \sum_{j \in I}x_{ij}=1,\forall i \in I, \\ u_i-u_j+(n-1)x_{ij} \le n-2,2 \le i=j \le n.















i





I






























x











ij





















=








1


,







j













I


,

















j





I






























x











ij





















=








1


,







i













I


,









u










i






























u










j




















+








(


n













1


)



x











ij






























n













2


,




2













i




=








j













n


.





对于



u

i

u

j

+

(

n

1

)

x

i

j

n

2

,

2

i

,

j

n

u_i-u_j+(n-1)x_{ij} \le n-2,2 \le i,j \le n







u










i






























u










j




















+








(


n













1


)



x











ij






























n













2


,




2













i


,




j













n





,可以证明其为无子环约束:

当生成一个子环



i

j

k

l

i

i-j-k-l-i






i













j













k













l













i





时,有



u

i

<

u

j

<

u

k

<

u

l

<

u

i

u_i\lt{u_j}\lt{u_k}\lt{u_l}\lt{u_i}







u










i




















<










u










j





















<










u










k





















<










u










l





















<










u










i






















,则



u

i

<

u

i

u_i\lt{u_i}







u










i




















<










u










i






















,不成立。注意



2

i

,

j

n

2\le{i,j}\le{n}






2














i


,




j















n






,这是因为这项约束其实是“无环约束”,而TSP问题的解本身就是一个大环,所以要把起始点剔除出去。



货物流模型

包括单类流模型(Single-Commodity Flow,SCM),双类流模型(Two-Commodity Flow,TCM)和多类流模型(Multi-Commodity Flow,MCM)。基于货物流的模型采用了DFJ、MTZ一样的目标函数,流平衡约束和决策变量



x

i

j

x_{ij}







x











ij






















的定义,不同的是对子回路约束。下面只讨论多类流模型的子回路约束:





y

i

j

k

x

i

j

,

i

,

j

,

k

N

,

k

1

i

V

y

1

i

k

=

1

,

k

V

\

{

1

}

i

V

y

i

1

k

=

0

,

k

V

\

{

1

}

i

V

y

i

k

k

=

1

,

k

V

\

{

1

}

j

V

y

k

j

k

=

1

,

k

V

\

{

1

}

i

V

y

i

j

k

i

V

y

j

i

k

=

0

,

j

,

k

V

\

{

1

}

,

j

k

y_{ij}^k \le x_{ij},\forall i,j,k \in N,k \ne1 \\ \sum_{i \in V} y_{1i}^k =1,\forall k \in V \backslash \{1\} \\ \sum_{i \in V} y_{i1}^k =0,\forall k \in V \backslash \{1\} \\ \sum_{i \in V} y_{ik}^k =1,\forall k \in V \backslash \{1\} \\ \sum_{j \in V} y_{kj}^k =1,\forall k \in V \backslash \{1\} \\ \sum_{i \in V} y_{ij}^k-\sum_{i \in V} y_{ji}^k=0,\forall j,k \in V \backslash \{1\} ,j \ne k







y











ij









k






























x











ij



















,







i


,




j


,




k













N


,




k
























=









1

















i





V






























y











1


i









k




















=








1


,







k













V


\


{



1


}

















i





V






























y











i


1









k




















=








0


,







k













V


\


{



1


}

















i





V






























y











ik









k




















=








1


,







k













V


\


{



1


}

















j





V






























y











kj









k




















=








1


,







k













V


\


{



1


}

















i





V






























y











ij









k






































i





V






























y











ji









k




















=








0


,







j


,




k













V


\


{



1


}


,




j
























=









k







最后一行表示不是该顾客的货物在经过顾客的时候不会被留下,解释如下:





i

V

y

i

j

k

——从任意点

i

j

k

的流量的和

i

V

y

j

i

k

——从

j

到任意点

i

k

的流量的和

\sum_{i \in V} y_{ij}^k——从任意点i到j的k的流量的和 \\ \sum_{i \in V} y_{ji}^k——从j到任意点i的k的流量的和 \\















i





V






























y











ij









k


















——


从任意点


i





j





k


的流量的和

















i





V






























y











ji









k


















——





j


到任意点


i





k


的流量的和









第k种货物只会在k点被留下,如果第k种货物还没被卸下,被从某一点i带到了j点,则有





i

V

y

i

j

k

=

1

\sum_{i \in V} y_{ij}^k=1















i





V






























y











ij









k




















=








1







而它不会被留下,会被带到下一个点,所以有





i

V

y

j

i

k

=

1

\sum_{i \in V} y_{ji}^k=1















i





V






























y











ji









k




















=








1







如果第k种货物已经被卸货了,没有被带来j点,显然有





i

V

y

i

j

k

=

i

V

y

j

i

k

=

0

\sum_{i \in V} y_{ij}^k=\sum_{i \in V} y_{ji}^k=0















i





V






























y











ij









k




















=

















i





V






























y











ji









k




















=








0







继而有





i

V

y

i

j

k

i

V

y

j

i

k

=

0

\sum_{i \in V} y_{ij}^k-\sum_{i \in V} y_{ji}^k=0















i





V






























y











ij









k






































i





V






























y











ji









k




















=








0







非线性整数规划

一般非线性混合整数规划(MINLP)问题可表示为:





m

i

n

 

f

(

x

,

y

)

min \ f(x,y)






min




f


(


x


,




y


)










s

.

t

.

s.t.






s


.


t


.










g

i

(

x

,

y

)

b

i

,

i

=

1

,

,

m

x

X

,

Y

g_i(x,y) \le b_i, i=1,…,m \\ x\in X , \in Y







g










i


















(


x


,




y


)














b










i


















,




i




=








1


,









,




m








x













X


,













Y







式中:





f

,

g

i

——

R

n

+

q

上的实值函数

X

——

Z

n

的子集

Y

——

R

q

的一个子集

f,g_i—— \mathbb R^{n+q}上的实值函数 \\ X——\mathbb Z^n的子集 \\ Y——\mathbb R^q的一个子集






f


,





g










i


















——



R











n


+


q










上的实值函数








X


——



Z










n









的子集








Y


——



R










q









的一个子集







当(MINLP)中没有连续变量



y

y






y





时,就是一个(纯)非线性整数规划(NLIP):





m

i

n

 

f

(

x

)

min \ f(x)






min




f


(


x


)










s

.

t

.

s.t.






s


.


t


.










g

i

(

x

)

b

i

,

i

=

1

,

,

m

x

X

g_i(x) \le b_i,i=1,…,m \\ x \in X







g










i


















(


x


)














b










i


















,




i




=








1


,









,




m








x













X







投资组合

设市场有



n

n






n





种股票和一种无风险资产,投资者把初始财富



W

0

W_0







W










0





















投资于这



n

n






n





种股票和一种无风险资产,以保证在平均收益达到一定水平的条件下是投资风险最小。





X

i

X_i







X










i





















是一随机变量,表示第



i

i






i





种股票每手未来的价值,



(

X

1

,

,

X

n

)

(X_1,…,X_n)






(



X










1


















,









,





X










n


















)





的期望和协方差为





μ

i

=

E

(

X

i

)

,

σ

i

j

=

C

o

v

(

X

i

,

X

j

)

,

i

,

j

=

1

,

,

n

\mu_i =E(X_i),\sigma_{ij} = Cov(X_i,X_j),i,j=1,…,n







μ










i




















=








E


(



X










i


















)


,





σ











ij





















=








C


o


v


(



X










i


















,





X










j


















)


,




i


,




j




=








1


,









,




n











x

i

x_i







x










i





















是整数变量,表示投资于第



i

i






i





种股票的手数,



x

=

(

x

1

,

,

x

n

)

T

x=(x_1,…,x_n)^T






x




=








(



x










1


















,









,





x










n



















)










T












是投资组合决策变量,其对应的随机收益为



P

s

(

x

)

=

i

=

1

n

x

i

X

i

P_s(x)=\sum_{i=1}^n x_iX_i







P










s


















(


x


)




=





















i


=


1









n





















x










i



















X










i





















。则投资组合收益



P

s

(

x

)

P_s(x)







P










s


















(


x


)





的均值和方差分别为





s

(

x

)

=

E

[

P

s

(

x

)

]

=

i

=

1

n

μ

i

x

i

V

(

x

)

=

V

a

r

(

P

s

(

x

)

)

=

i

=

1

n

j

=

1

n

x

i

x

j

σ

i

j

=

x

T

C

x

s(x)=E[P_s(x)]=\sum_{i=1}^n\mu_ix_i \\ V(x)=Var(P_s(x))=\sum_{i=1}^n\sum_{j=1}^nx_ix_j\sigma_{ij}=x^TCx






s


(


x


)




=








E


[



P










s


















(


x


)]




=

















i


=


1


















n




















μ










i



















x










i
























V


(


x


)




=








Va


r


(



P










s


















(


x


))




=

















i


=


1


















n




























j


=


1


















n




















x










i



















x










j



















σ











ij





















=









x










T









C


x







其中



C

=

(

σ

i

j

)

(

n

×

n

)

C=(\sigma_{ij})_{(n \times n)}






C




=








(



σ











ij




















)











(


n


×


n


)






















表示协方差矩阵。设



r

r






r





是无风险投资的收益率,



b

=

(

b

1

,

,

b

n

)

T

b=(b_1,…,b_n)^T






b




=








(



b










1


















,









,





b










n



















)










T












是当前的股票价格。注意到投资者在无风险资产上的投资额为



x

0

=

(

W

0

i

=

1

n

b

i

X

i

)

x_0=(W_0-\sum_{i=1}^nb_iX_i)







x










0




















=








(



W










0










































i


=


1









n





















b










i



















X










i


















)





。设交易费用为



c

(

x

)

=

i

=

1

n

c

i

(

x

i

)

c(x)=\sum_{i=1}^nc_i(x_i)






c


(


x


)




=





















i


=


1









n





















c










i


















(



x










i


















)





,则投资组合的净收益为





R

(

x

)

=

s

(

x

)

+

r

x

0

i

=

1

n

c

i

(

x

i

)

=

i

=

1

n

[

(

μ

i

r

b

i

)

x

i

c

i

(

x

i

)

]

+

r

W

0

R(x)=s(x)+rx_0-\sum_{i=1}^nc_i(x_i)=\sum_{i=1}^n[(\mu_i-rb_i)x_i-c_i(x_i)]+rW_0






R


(


x


)




=








s


(


x


)




+








r



x










0






































i


=


1


















n




















c










i


















(



x










i


















)




=

















i


=


1


















n

















[(



μ










i





























r



b










i


















)



x










i






























c










i


















(



x










i


















)]




+








r



W










0























从而均值-方差投资组合模型(MV):





m

i

n

V

(

x

)

=

x

T

C

x

minV(x)=x^TCx






minV


(


x


)




=









x










T









C


x










s

.

t

.

s.t.






s


.


t


.










i

=

1

n

[

(

μ

i

r

b

i

)

x

i

c

i

(

x

i

)

]

+

r

W

0

ϵ

,

b

T

x

W

0

,

x

X

=

{

x

Z

n

l

i

x

i

u

i

}

.

\sum_{i=1}^n[(\mu_i-rb_i)x_i-c_i(x_i)]+rW_0 \ge \epsilon, \\ b^Tx\le W_0, \\ x\in X=\{x \in \mathbb Z^n | l_i \le x_i \le u_i\}.















i


=


1


















n

















[(



μ










i





























r



b










i


















)



x










i






























c










i


















(



x










i


















)]




+








r



W










0





























ϵ


,









b










T









x














W










0


















,








x













X




=








{



x














Z










n













l










i






























x










i






























u










i


















}


.







最大割问题





G

=

(

V

,

E

)

G=(V,E)






G




=








(


V


,




E


)





是有



n

n






n





个顶点的无向图,设边



(

i

,

j

)

(i,j)






(


i


,




j


)





上的权为



w

i

j

(

w

i

j

=

w

j

i

0

)

w_{ij}(w_{ij}=w_{ji} \ge 0)







w











ij



















(



w











ij





















=









w











ji






























0


)





。图



G

G






G





的一个割



(

S

,

S

)

(S,S^\prime)






(


S


,





S




















)





是指



n

n






n





个顶点的一个分割:



S

S

=

,

S

S

=

V

S \cap S^\prime=\empty,S \cup S^\prime=V






S














S






















=











,




S














S






















=








V





。最大割问题是求一个分割



(

S

,

S

)

(S,S^\prime)






(


S


,





S




















)





使连接



S

S






S









S

S^\prime







S























之间的所有边上的权之和最大。





x

i

=

1

,

i

S

,

x

i

=

1

,

i

S

x_i=1,i\in S,x_i=-1,i \in S^\prime







x










i




















=








1


,




i













S


,





x










i




















=











1


,




i














S























。则分割



(

S

,

S

)

(S,S^\prime)






(


S


,





S




















)





上的权为:





1

2

(

1

2

i

,

j

=

1

n

w

i

j

1

2

i

,

j

=

1

n

w

i

j

x

i

x

j

)

=

1

4

i

,

j

=

1

n

w

i

j

(

1

x

i

x

j

)

{1\over2}({1\over2}\sum_{i,j=1}^nw_{ij}-{1\over2}\sum_{i,j=1}^nw_{ij}x_ix_j)={1\over4}\sum_{i,j=1}^nw_{ij}(1-x_ix_j)


















2














1





















(














2














1
































i


,


j


=


1


















n




















w











ij










































2














1
































i


,


j


=


1


















n




















w











ij




















x










i



















x










j


















)




=




















4














1
































i


,


j


=


1


















n




















w











ij



















(


1














x










i



















x










j


















)







故最大割问题可以表示为:





m

a

x

1

4

i

,

j

=

1

n

w

i

j

(

1

x

i

x

j

)

max{1\over4}\sum_{i,j=1}^nw_{ij}(1-x_ix_j)






ma


x














4














1
































i


,


j


=


1


















n




















w











ij



















(


1














x










i



















x










j


















)










s

.

t

.

s.t.






s


.


t


.










x

{

1

,

1

}

n

.

x\in\{-1,1\}^n.






x













{






1


,




1



}










n









.







版权声明:本文为weixin_53113502原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。