有这样一个题目:
目的:得出最佳的饲料配制方法;
{何为最佳呢?就是最弹终配制成的饲料的价格是最低的,而且是从已有的物料中进行选择}
说明:某种饲料含有很多种营养成份,如最终的饲料A需要含x%的成份1,y%的成份2,z%的成份3.......以次类推,现在给出的是物料A、物料B.......物料N,而且已经知道物量A、物料B.....物料N的各种成份含有量,如物量A中含有X%的成份1,Y%的成份2....N%的成份N,其中物料中的X% <> 最终的饲料中的x%。同时也知道了物料A、物料B的价格。这个算法应该如何去实现呢?大家可以发表自己的想法。
目的:得出最佳的饲料配制方法;
{何为最佳呢?就是最弹终配制成的饲料的价格是最低的,而且是从已有的物料中进行选择}
说明:某种饲料含有很多种营养成份,如最终的饲料A需要含x%的成份1,y%的成份2,z%的成份3.......以次类推,现在给出的是物料A、物料B.......物料N,而且已经知道物量A、物料B.....物料N的各种成份含有量,如物量A中含有X%的成份1,Y%的成份2....N%的成份N,其中物料中的X% <> 最终的饲料中的x%。同时也知道了物料A、物料B的价格。这个算法应该如何去实现呢?大家可以发表自己的想法。
比如
“最终的饲料A需要含x%的成份1”
是要求得到的配方中成份1含量=x%呢还是>=x%呢
如果原料数不定,要求成份数不定,好象没有什么好办法似的,嘿嘿,不懂算法,直觉,
一个公式似乎不太可能似的你可以建个RECORD像猪哥的,把数据库的东西下到本地!我说的只是我的想法,因为要达到精确配置,要细,我只能那样,如果是找寻一个粗略的范围,你可以拉大步长,不是给你说了?而针对数据,我想不论怎样,一遍的数据得找吧!那么就
type thingInfo=Record
Pid:string;
Pname:string;
pprice:string;
pxx:??;
Pxx2:??;
end;
Pthing=^Thinginfo;你让数据来本地再实现搭配
以下是引用lihao在2003-5-9 13:06:51的发言:
你们还在比较配方,我只是要找一种,因为一直是价格多的占量大,这样得到的一般是没什么问题,除非是怪种配方,用的价大的多了它成本还低,呵呵
举一个例子:物料A的价格最贵,它的蛋白质含量高达90%,可是其它含量仅仅占0.几个百分点,而要生成的配制单又刚好需要那仅仅占0.几个百分点的成份,这样就不好,虽然成本高,但是还不符合要求,而且,最终的配制单又有一个总量的限制范围。
我想先是三个数组 main_siliao[名称][营养成分][含量]、mini_siliao[名称][营养成分][含量],peifang[营养成分][含量]。约定以质量比为成分比。通常肯定是有一、两种饲料做为主料,它的价格最低,那么先把它放到main_siliao[][][]中,其他作为细料的放到mimi_siliao[][][]中
而后总质量按1计算。那么就使用循环计算mainsiliao[][][]先配大致的营养比,而后用细饲料minisiliao[][][]计算剩余的,这样可能整体简化了计算,而且也符合实际的情况。以上是简化的方案,不知道是否能简化,呵呵,如果有线形代数的方法可能会简单一些,可惜都交给老师了。
。。加班中,可怜呀我试首用三种方式去作,从大到小、从小到大、中间开花,哈哈哈,估计你们也不明白我的意思。
先检索记录,再定义数据就肯定是动态数组了,而且,还有一点要考虑到,就是当你已经配制了好几个物料了(比如),但是发现无法进行下去的话,那么是否就需要一层一层的后退,这时如何用数组的话,有两种方式,如果数据定义的太大则会无估的浪费空间,如果数组定义的小一点的话,肯定不行,用临时表怎么样?呵呵。或是用TStrings进行保存,只保存物料、数量就可以了,因为你保存了物料、数据的话,那么什么都知道了。
=========================================
以上是别人、我的回复
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
各位老大,帮我顶一下成不成啊?
http://expert.csdn.net/Expert/topic/1762/1762793.xml?temp=.1745874
不要让沉底了啊
5555555555555555555555555555
我回感动的唏哩哗啦的
哈哈~~大概溜了一遍题目,终于有摩托拿手的了,想当初摩托刚出厂时,可是专门拿pascal
写算法的牛皮吹破了~~~先发句牢骚:TNND!!焊了一下午电路板,眼睛都
冒金星了,摩托正朝一名合格的蓝领工人拓步前进ing~~~摩托还是再去看看题目和大家的高见~~
建立一模型:
1 2 3 4 5 6
A 0.3 0.05 0.3 0.1 0.1 0.15 +=1
B 0.1 0.1 0.3 0.4 0 0.1 +=1
C .....................
D
E其实是一个矩阵[U]
每行代表一种配料的各种元素含量,其和为1
设 向量 X' 为各种配料的用量,
且满足最终饲料的元素成分,但并不一定最优~~
可以得到N个X’向量,也就是一个N*M的矩阵[T](M为配料种类数)
设 P 为各个配料的价格向量
P 点乘 [T] 再除以 [T]的各列之和组成的向量就能得到最终的行向量,
这个行向量中最小的解的位置K,也就是N个解中第K个解是最优解~~~
不过,肯定不麻烦~~还有排列组合等穷举的算法不太合适,因为结果域是实数集,穷举的精度如何决定??
如果解是无理数呢--->配料A的百分比为11.1223446546345234132343543.......%
.....................
************************************
这个问题我一直挂着~~
主要是条件给得不充足~~
并且没有直观的输入输出范例~~
使我对其可行性表示怀疑~~
假设:
要配置的饲料含量(铁:20%,锌30%,钙:50%)
原料两种,其中A(铁:10%,锌20%,钙:30%)、B(铁:20%,锌30%,钙:10%)
这样不是便宜不便宜的问题~~
根本就配置不出符合要求的饲料~~
*******************************实际生产活动,一定会考虑到这重情况,所以初级原料一定是某种成分较高,而其他成分偏低,任何生产活动都不会在极端情况下进行,也不会考虑极端情况(因为成本无法接受).也就是说如果数据来自某一特定范围之外,问题是可能无解的,所以我认为这个问题应只考虑在其有解范围内求解,如果超出这个范围,问题就会无法解决.
楼主 的条件还要再整理一下 moto的建模 有些简单
我可是学过养猪的……呵呵
Server: Microsoft-IIS/5.0
Date: Fri, 16 May 2003 10:57:13 GMT
Server: Microsoft-IIS/5.0
Date: Fri, 16 May 2003 10:57:15 GMT
Server: Microsoft-IIS/5.0
Date: Fri, 16 May 2003 10:57:14 GMT
n
料中i营养成分的含量,∑(a_ij*x_j) 即为在这批配合饲料中i营养成分
j=1
的总含量,它不应低于b_i ,于是,问题就可以下列数学形式:
n
min f=∑c_j*x_j
j=1
n
s.t.(约束条件) ∑(a_ij*x_j) ≥ b_i ,i=1,...m ,
j=1
x_j ≥ 0 , j=1,...n 。跟着就是一个线性规划问题。
比如:饲料营养成份(铁:20%,锌30%,钙:50%)
只有一种原料:红萝卜(铁:10%,锌20%,钙:30%) 看上去两份红萝卜就可以做出一份饲料~~
可,锌和铁都超出标准~~
实际中要分离除去多余的部分是不现实的,会花去更多的成本~~
这样的情况怎么处理?~~
就是说一种营养成份过多是否要考虑其副作用?~~对这个问题我说明一下,在实际生产中铁、锌、锡都属于微量元素,在饲料中的含量不可能达到这么高,否则早中毒死了,而且会带来大量的残余污染环境,这是违反国家相关规定的。就算出现了这种情况,前面已经说了,因为是微量成分,添加量很小,把它加到饲料中和其他物料混合后含量会被稀释。另外,题目要求找出一种最佳解,如果出现了以上的情况,根本就不是一个合理的解,所以用不着考虑。
这里我提供一个很简单的模型:
假设有4种原料(a,b,c,d),我们要做要求的成分含量有五种(Pr,M,Ash,Ca,P),每种的价格为(am,bm,cm,dm),其中Pr的误差范围为+-4%,M的误差范围是15%,Ash是25%,Ca、P是15%,实际例子如下(其中数据基本为真实数据,价格为现在市场价):
原料表:
原料名 Pr M Ash Ca P
玉米 7.5 13 1.3 -- --
高粱 8.1 11 1.2 -- --
鱼粉 62 7 11 4.3 1.6
碳酸钙 -- 0.1 98.4 38.5 --
需要量表:
小猪: 21 14 14 0.8 0.6
蛋鸡: 21 14 13 3.6 1.8
注:其中的“--”表示含量很小,可以忽略不记。
相信大家现在要解决这个问题应该不是什么问题了吧。
有的时候,我们开发了一套很有市场价值的软件,可是发觉市场销售量却很低,原来真正的原因是软件的包装不够漂亮。公司采取各种渠道来解决问题。招聘大量的美工人员,可是,却发觉程序员的水平跟不上步伐,专门设立一个研究部门,却发觉需要花费巨额的人力物力,采用第三方控件吧,却要支费大量的注册费用或者版权使用费用,而且一般都以动态链接库*.DLL 或者控件*.OCX 绑定到我们的软件中。并且,控件功能扩展需要花费一定的升级费用才能够实现。您希望一次花费为数不多的费用就能弥补所有的不足吗...皮肤类不以任何形式的控件*.OCX,动态链接库*.DLL出售给用户,所以,你不必担心是否以源代码的方式出售给用户
皮肤工作室皮肤类(VC开发企业版)暑假期间正在热销中,优惠活动截至到2003.9月。售价仅仅人民币500元整(终身使用版权);并且,在功能上可以任意扩展,真可谓手到擒来。具体包括皮肤对话框,皮肤按扭,皮肤进度条,皮肤控制条,皮肤动画标签类,皮肤面版类... 全部功能都以源代码的方式出售,使你可以制作真正意义上的具有自主版权皮肤功能的软件,还在等什么,赶快行动吧!!!
真正令我们心动的时刻到了,同时随送的一些经典皮肤示例源代码包括多彩取色机XP,鼠标记录机,多彩影音伴侣等等
你如果希望购买我们的产品,请到我们网站的购买方式页面 http://www.skin-studio.com/bankcard.htm了解更多信息
市面上已有成熟的软件在销售
详细情到网站查看
www.chinabreed.com
上有关于饲料配方超级优化决策系统的介绍
只有一种原料:红萝卜(铁:10%,锌20%,钙:30%)看上去两份红萝卜就可以做出一份饲料~~
可,锌和铁都超出标准~~
实际中要分离除去多余的部分是不现实的,会花去更多的成本~~
这样的情况怎么处理?~~
就是说一种营养成份过多是否要考虑其副作用?~~==============================================如果这个不考虑上述问题的话,我觉得应该是个线性规划问题,那就不用编程了啊。用数学软件LINGO,LINDO直接做一下就行了啊。偶是学数学的:)