求助:最复杂的匹配算法

skysky 发布于 2012/05/30 09:25
阅读 393
收藏 0

促销活动的匹配算法,现有N多个超市促销活动,活动内容大致为三种:整单优惠,多品优惠,单品优惠

整单格式为:满X元,送YY或满X件,送YY;多品格式为:X满Y元+Z满Y元,送YY或X满Y件+Z满Y件,送YY;单品格式为:X满Y元,送YY或X满Y件,送YY,多品可以为更多,现在需要从消费者手中的购买的产品,去匹配满足的活动,我分析的思路大致为:先多品检测,再单品检测,最后都不满足,则整单优惠检测,但是,涉及产品多匹配时候,就不知道如何了,不知道有什么算法,是解决这方面问题的吗?求高手赐教!

加载中
0
rayeaster
rayeaster
这个跟促销制定的规则有关系吧,应该有人工制定一个优先级,如果买的东西匹配多种格式, 只能应用一种优惠,不能同时叠加 ,并且按优先级最高的那个操作
skysky
skysky
我现在需要考虑的是如何匹配出所有适合的规则,作出一个候选集,具体的优先级稍后才考虑了
0
rayeaster
rayeaster

如果是要找出所有满足的匹配,那顺序是不是应该为:

对所有购买的单品做单品格式匹配,记录匹配情况;

对任何有规则对应多品格式,比如只有一种多品格式X+Z,那购买的东西里面有X和Z,就做匹配,如果没有X或者没有Z,就跳过;

最后对整个单子做匹配

skysky
skysky
是的,我现在先建立索引表,建立一张多品中每个产品需要的数量或金额,再建立一张单品索引表,满足单品的最低消费金额或数量,再建一张整单数量或者金额表,然后拿单品去进行匹配,先检测是否符合多品中的单个产品最小需求,不满足,再降低到单品索引,最后,没有匹配,再将所有的汇总到整单索引表查看
0
中山野鬼
中山野鬼

楼主,貌似你把最该考虑的给淡化了。。。“现在需要从消费者手中的购买的产品,去匹配满足的活动”

如果只是你规定好了,买X,送Y,那直接去搜索就好了。但我相信这个是客服的事情,和你没有关系。而且他们不会去主动送,而是验证送Y是否满足条件。

你的任务应该是根据当前和历史购买情况,制定,买什么X,送多少Y。以令下次促销,能有效提升业绩。这块除了历史观测数据外,还需要有厂家的返点机制的明确才行。无论是传统商场,还是电子商务,都是力求本地资源最大化,卖不出去的东西,和买了很多,还是赚不到钱(厂家太强势),你折腾它做什么。

你的事情已经脱离了IT开发人员研究的范畴。需要销售,市场方面的专家介入的。。

skysky
skysky
回复 @中山野鬼 : 你说的思想我理解,我就是这么干的,这是我个人的一个思路,只是想知道有没有什么算法,是支持这种搜索的,实在没有,只能自己写的了
中山野鬼
中山野鬼
回复 @skysky : 那你就直接用算法,筛几遍。第一遍是三等奖。如果存在,就再去判断是否二等奖,如果还存在就判断是否一等奖。而如果二等奖不存在。则直接等于三等奖。
skysky
skysky
是这样的,买XX送YY,这个是个前提,从后台获取的是N多个活动编号与活动相应的数据详情,我需要做的是从消费者购买的所有商品中,匹配出所有的活动,直接完成打折等活动,要求是前台人员无法去克扣活动礼品,消费者一定要拿到该有的实惠
返回顶部
顶部