首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >经济模拟的算法?

经济模拟的算法?
EN

Stack Overflow用户
提问于 2012-02-06 00:16:26
回答 1查看 3.2K关注 0票数 3

我想创建一个游戏,其中玩家创建不同的产品与不同的价格(称为优惠),我给他们一定数量的客户(称为需求)。

现在,我想要一个算法来决定每个玩家的市场份额。当然,我可以现在就做我的,使用随机数。但在做这件事之前,我更愿意问一问,因为我相信在我之前已经有很多人尝试这样做了!

我的问题不是很精确,这是因为你的答案也不需要精确;)

提前谢谢你!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-06 05:38:16

这真的取决于你设置的变量,以及你想要创建的“市场”的类型。你可以从下面的简单公式开始(从根本上将市场份额减少到利润问题)作为开始,然后我将经历我所说的“某种市场”。

代码语言:javascript
复制
marketShare = totalCompanyProfit/allMoneyInProductCategory;
marketShare = ( (productSalePrice * demand)-(productManufactureCost * supply) ) / allMoneyInProductCategory;

这里变得很有趣,因为“市场类型”是由你对需求的定义决定的。例如,假设产品是法拉利( ferraris ),而您试图模拟的市场是刚果,其人均GDP为189美元。

代码语言:javascript
复制
targetMarketSize = (percentOfFittingDemographic * totalPopulation)
percentWhoHateYourProduct = AVERAGE( ( ABS(productVariable1 - variableIdeal1) / variableIdeal1 ), ( ABS(productVariable2 - variableIdeal2) / variableIdeal2 ), etc )
demand = (targetMarketSize) * ( 1- percentWhoHateYourProduct ) 

percentOfFittingDemographic是适合购买这种产品的人口的百分比(即有足够的可支配收入买得起100,000美元汽车的人),在上面的刚果例子中,这可能是类似.001的东西。

某些产品属性(productVariable)与其理想值(variableIdeals)之差的绝对值相对于其理想值的平均值给出了将因产品不是他们想要的而被淘汰的人口的百分比。从1中减去它得到了想要购买你的产品的人的百分比,再乘以targetMarketSize得到了想要购买你的产品的人-即需求。如果产品是完美的,它就成为0的平均值,整个目标市场就成为该产品的用户。

例如,人们还可以在平均值中增加权重,例如,市场更喜欢较低的价格而不是较大的屏幕尺寸。为了暗示更多的属性会增加总体对产品的需求(即,不是“一个月的免费服务”,而是"6个月的免费服务“,人们想要更多),你可以将其加到平均值中,如下所示

代码语言:javascript
复制
percentLikesProductNow =  1 - e^(-1 * infinitelyLikedAttribute)

这从infinitelyLikedAttribute=0的0%到infintelyLikedAttribute=10的0.005%,所以你可以玩玩,找到一种方法来“缩放”属性大约在1到10之间。这在现实生活中确实有一定的意义,因为有些产品如果没有免费试用,我是永远不会买的。例如:3个月的免费verizon互联网服务。我可能会选择康卡斯特,因为我只在那里住了6个月,但当时省下100美元是相当大的一笔钱。然而,在另一个极端,如果verizon向我提供100年的免费互联网,再多提供50年(假设它是不可转让的,等等),也不会增加更多的吸引力。

您也可以使用随机数生成器将所有这些内容相乘,以使其方差为+/- 15%,并让每个人都在猜测:)

我希望这能有一点用处:)

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9150759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档