数学建模社区-数学中国

标题: matlab程序方面 [打印本页]

作者: l刘书伶    时间: 2013-8-24 11:16
标题: matlab程序方面
在指派问题中:
& i! V# r# S" k* Q* mc=[3 8 2 10 3;8 7 2 9 7;6 4 2 7 5;8 4 2 3 5;9 10 6 9 0];: w/ A% R/ e2 a6 S% T2 G  J
c=c(;
9 j' e5 z% M; e7 r# N; Ia=zeros(10,25);% k: X: B& O2 B: p! I
(这一步为什么要创造一个10*25矩阵呀)( [% G3 B5 I& c& n3 N
for i=1:55 H& L5 g# m0 s7 Q' b' F' N
   a(i,(i-1)*5+1:5*i)=1;(此处看不懂)# M! X) P. f9 t+ F
  a(5+i,i:5:25)=1;(此处看不懂)4 [! z6 R2 L4 _: h( P5 w5 s/ A
end
  {) i. R7 X5 z4 Qb=ones(10,1);4 G6 h! @5 ?* T! c( Q
[x,y]=bintprog(c,[],[],a,b);* j2 _2 U; J* F( ]  [
x=reshape(x,[5,5]),y
' w( F1 P2 K7 o& b这个程序有几处看不懂,希望高手解答,谢谢!4 Y8 ?$ T, a3 x, Q( @/ S

作者: kong1234    时间: 2013-8-24 12:10
楼主,问题背景呢?bintprog函数是解决整数规划的,,你可以在matlab中doc bintprog 学习一下
作者: l刘书伶    时间: 2013-8-24 12:24
kong1234 发表于 2013-8-24 12:10 9 {# Q* }+ J1 X- t9 H
楼主,问题背景呢?bintprog函数是解决整数规划的,,你可以在matlab中doc bintprog 学习一下
/ p* U* q7 U( Y: c
就是指派5个人去干5项工作,每人干且仅干一项工作,若分配弟i个人去干弟j项工作,需要花费c(i,j)单位时间,问如何分配工作才能使得工人花费的总时间最少。。。。
作者: l刘书伶    时间: 2013-8-24 12:29
kong1234 发表于 2013-8-24 12:10
& U8 f6 w, [1 @* g8 P& v, u楼主,问题背景呢?bintprog函数是解决整数规划的,,你可以在matlab中doc bintprog 学习一下

! g$ A& [  |' ^7 u+ p( P问题背景:就是指派5个人去做5项工作,每人干且仅干一项工作,若分配第i人去干第j项工作,需要花费才(i,j)单位时间,问应该如何分配工作才能使得总的时间最少。。。。谢谢了
作者: l刘书伶    时间: 2013-8-24 12:42
kong1234 发表于 2013-8-24 12:10
' A, i: o: F) c- C+ G( i4 \$ `楼主,问题背景呢?bintprog函数是解决整数规划的,,你可以在matlab中doc bintprog 学习一下
( f4 l+ i" Y' g1 A
问题背景:就是分配5个人去干5项工作,每人干且仅干一项工作,若分配第i个人去干第j项工作,需要花费c(i,j)单位时间,问如何分配工作能使得工人花费时间最少。。。谢谢了。。
作者: l刘书伶    时间: 2013-8-24 12:42
问题背景:就是分配5个人去干5项工作,每人干且仅干一项工作,若分配第i个人去干第j项工作,需要花费c(i,j)单位时间,问如何分配工作能使得工人花费时间最少。。。谢谢了。。
作者: magic2728    时间: 2013-8-24 14:18
这是指派问题的matlab线性规划解法。由于matlab的函数格式只能是x为列向量,所以必须把指派矩阵拉成一列,而对应的限定条件也就变成了a(10,25)。10是10个限定条件决定的,25是25个xij值,你看不懂的for循环里的两句话是指的行和,列和分别为0的意思。
作者: l刘书伶    时间: 2013-8-24 18:34
magic2728 发表于 2013-8-24 14:18
& J5 R% E0 K* X/ o5 }+ u这是指派问题的matlab线性规划解法。由于matlab的函数格式只能是x为列向量,所以必须把指派矩阵拉成一列,而 ...

" d  o  y" `4 [& ]恩恩,搞懂了,谢谢!
作者: 小黑主    时间: 2013-8-25 11:27
指派问题中包含了几种算法,其中最常见的算法就是匈牙利算法,在此种算法中需要构建矩阵,那个循环你把值带进去就知道了




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5