大型超市購物籃問題_第1頁
大型超市購物籃問題_第2頁
大型超市購物籃問題_第3頁
大型超市購物籃問題_第4頁
大型超市購物籃問題_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

-.z.模式識別期中作業(yè)--挖掘布爾關(guān)聯(lián)規(guī)則頻繁項集的算法——Apriori算法-.z.一、問題重述作為超市的經(jīng)理,經(jīng)常關(guān)心的問題是顧客的購物習(xí)慣。他們想知道:"什么商品組或集合顧客多半會在一次購物時同時購置?〞?,F(xiàn)在假設(shè)你們是*超市的市場分析員,已經(jīng)掌握了該超市近一個星期的所有顧客購置物品的清單和相應(yīng)商品的價格,需要你們給超市經(jīng)理一個合理的"購物籃〞分析報告,并提供一個促銷方案的初步方案。問題一:附件1中的表格數(shù)據(jù)顯示了該超市在一個星期內(nèi)的4717個顧客對999種商品的購置記錄,對數(shù)據(jù)進展分析,試建立一種數(shù)學(xué)模型,使該模型能定量表達超市中多種商品間的關(guān)聯(lián)關(guān)系的密切程度。問題二:根據(jù)問題1建立的模型,通過一種快速有效的方法從附件1中的購置記錄中分析出哪些商品是最頻繁被同時購置的,找到的最頻繁被同時購置的商品數(shù)量越多越好。問題三:附件2給出了這999中商品的對應(yīng)的利潤,根據(jù)在問題1、問題2中建立的模型,設(shè)定一種初步的促銷方案,使超市的效益進一步增大。二、模型的假設(shè)1、假設(shè)各個商品的利潤保持不變。2、假設(shè)表格中的數(shù)據(jù)能真實地反映當(dāng)?shù)叵M者的購物情況。3、假設(shè)短時間內(nèi)商品的銷售情況維持穩(wěn)定,不會出現(xiàn)大幅波動。三、符號說明符號解釋說明si組合i的支持度c(A=>B)規(guī)則A=>B的置信度c(B=>A)規(guī)則B=>A的置信度ci組合i的平均置信度smin最小支持度cmin最小置信度μ關(guān)聯(lián)密切系數(shù)H促銷系數(shù)四、問題分析此題是關(guān)于大型超市"購物籃〞的分析問題,涉及到數(shù)據(jù)挖掘、關(guān)聯(lián)規(guī)則等相關(guān)問題。此題的三個問題是層層遞進的關(guān)系,要求通過對商品購置數(shù)據(jù)的分析,找到關(guān)聯(lián)程度較高且購置次數(shù)較高的商品,最后設(shè)計出合理的超市促銷方案。問題一,由于購物籃分析是關(guān)聯(lián)規(guī)則挖掘的一個典型案例,因此我們采用一種最有影響的挖掘布爾關(guān)聯(lián)規(guī)則頻繁項集的算法——Apriori算法。利用其根本思想,進展了商品兩種之間的支持度和置信度計算,在定義最小支持度和最小置信度后,進展篩選得到關(guān)聯(lián)規(guī)則集。為定量地表達超市中多種商品間的關(guān)聯(lián)關(guān)系的密切程度,本文引入一個關(guān)聯(lián)密切系數(shù)進展衡量分別對12個組合求解平均置信度,進而得到該組的關(guān)聯(lián)密切系數(shù)。由此認為,關(guān)聯(lián)密切系數(shù)越大的商品組合,其關(guān)聯(lián)關(guān)系密切程度較高。問題二,在得到商品兩種關(guān)聯(lián)數(shù)據(jù)的根底上,僅考慮商品支持度的大小,求得在一定最小支持度下被頻繁地同時購置的商品組合。同時為使商品數(shù)量盡量多,我們在兩種組合的情況下延伸至三種組合,四種組合……以此得到盡可能多的商品被頻繁同時購置的信息,盡量靠近最頻繁被同時購置且商品數(shù)量越多的雙重目標(biāo)。問題三,在結(jié)合商品利潤的條件下,考慮兩種組合中各商品的利潤、支持度和置信度,分別計算出三者的乘積再求和,記為促銷系數(shù)H,并以此作為衡量此組合商品是否進展促銷的標(biāo)準(zhǔn)。當(dāng)結(jié)果較高時,我們就采取就近擺放、打折促銷、消費送禮等捆綁銷售方式式得到一種促銷方案,在方便顧客的購置的同時,增加消費者對該超市的有好感和信任度,最終使得超市的效益進一步增大。五、模型的建立和求解模型一:基于Apriori算法的關(guān)聯(lián)規(guī)則挖掘模型模型的準(zhǔn)備設(shè):I={i1,i2......,im}是所有工程的集合.D是所有事務(wù)的集合(即數(shù)據(jù)庫),每個事務(wù)T是一些工程的集合,T包含在D中,每個事務(wù)可以用唯一的標(biāo)識符TID來標(biāo)識.設(shè)*為*些工程的集合,如果*包含在T中,則稱事務(wù)T包含*,關(guān)聯(lián)規(guī)則則表示為如下形式(*包含在T)=>(Y包含在T)的蘊涵式,這里*包含在I中,Y包含在I中,并且*∧Y=Φ.其意義在于一個事務(wù)中*些項的出現(xiàn),可推導(dǎo)出另一些項在同一事務(wù)中也出現(xiàn)(為簡單化,將(*包含在T)=>(Y包含在T)表示為*=>Y,這里,‘=>’稱為‘關(guān)聯(lián)’操作,*稱為關(guān)聯(lián)規(guī)則的先決條件,Y稱為關(guān)聯(lián)規(guī)則的結(jié)果).事務(wù)數(shù)據(jù)庫D中的規(guī)則*=>Y是由支持度s〔support〕和置信度c(confidence)約束,置信度表示規(guī)則的強度,支持度表示在規(guī)則中出現(xiàn)的頻度。數(shù)據(jù)項集*的支持度s(*)是D中包含*的事務(wù)數(shù)量與D的總事務(wù)數(shù)量之比,但為下文便于表達,數(shù)據(jù)項集*的支持度是用數(shù)據(jù)庫D中包含*的數(shù)量來表示;規(guī)則*=>Y的支持度s定義為:在D中包含*∪Y的事務(wù)所占比例為s%,表示同時包含*和Y的事務(wù)數(shù)量與D的總事務(wù)量之比。用該項集出現(xiàn)的次數(shù)除以TID總數(shù)即可得到,用如下公式表示:Support(*)=Count(*)/Count(TID)規(guī)則*=>Y的置信度c定義為:在D中,c%的事務(wù)包含*的同時也包含Y,表示D中包含*的事務(wù)中有多大可能性包含Y.依據(jù)所求的頻繁項集,及所求得的支持度,運用如下公式求解:Confidence(*=>Y)=Support(*∪Y)/Support(*)最小支持度閾值minsupport表示數(shù)據(jù)項集在統(tǒng)計意義上的最低主要性.最小置信度閾值mincontinence表示規(guī)則的最低可靠性.如果數(shù)據(jù)項集*滿足*.support>=minsupport,則*是大數(shù)據(jù)項集.一般由用戶給定最小置信度閾值和最小支持度閾值.置信度和支持度大于相應(yīng)閾值的規(guī)則稱為強關(guān)聯(lián)規(guī)則,反之稱為弱關(guān)聯(lián)規(guī)則.發(fā)現(xiàn)關(guān)聯(lián)規(guī)則的任務(wù)就是從數(shù)據(jù)庫中發(fā)現(xiàn)那些置信度、支持度大小等于給定值的強壯規(guī)則.基于上述概念,我們可以很容易得到一些根本結(jié)論:K維數(shù)據(jù)項集*KK-1維子項集也為頻繁項集,記為*如果K維數(shù)據(jù)項集*K的任意一個K-1*K-1K維數(shù)據(jù)項集*K*K是K如果所有K-1維頻繁項集集合*K-1中包含的K-1維子項集的個數(shù)小于K,則*K不可能是K證明:很明顯,數(shù)據(jù)項集*:的K-1維子項集的個數(shù)為K-1。如果高頻繁數(shù)據(jù)項集*K-1,中包含*K的K-1.維子項集的個數(shù)小于K,則存在*K的K-1繁數(shù)據(jù)項集,由結(jié)論(2)知K維數(shù)據(jù)項集本身也不是高頻繁數(shù)據(jù)項集。模型的建立〔1〕求關(guān)聯(lián)規(guī)則集第一步:從事務(wù)數(shù)據(jù)庫D中找出所有支持度不小于指定的最小支持度閾值的頻繁項集。第二步:使用頻繁項集產(chǎn)生所期望的關(guān)聯(lián)規(guī)則,產(chǎn)生關(guān)聯(lián)規(guī)則的根本原則是其置信度不小于指定的最小置信度閾值。第一步的任務(wù)是迅速高效地找出D中全部的頻繁項集,這是關(guān)聯(lián)規(guī)則挖掘的核心問題,是衡量關(guān)聯(lián)規(guī)則挖掘算法的標(biāo)準(zhǔn)。對此,我們運用Matlab進展編程得出計算結(jié)果。第二步的求解比擬容易和直接,先分別計算出不小于最小支持度的商品組合對應(yīng)的置信度,降序后進展篩選。最后只留下支持度和置信度都較高的商品組合。此建模過程可以表示為:圖1關(guān)聯(lián)規(guī)則挖掘模型示意圖關(guān)聯(lián)關(guān)系的密切程度表示對商品組合數(shù)據(jù)的挖掘結(jié)果進展整理,得到關(guān)聯(lián)規(guī)則表格,再利用表格中各商品組合對應(yīng)的支持度和平均置信度表示組合的關(guān)聯(lián)關(guān)系。例如:在組合i中,有兩個編號分別為、的兩個商品,其支持度為,平均置信度為,則該組合的關(guān)聯(lián)關(guān)系可以表示為〔〕.為定量表達超市中多種商品間的關(guān)聯(lián)關(guān)系的密切程度,我們引入一個關(guān)聯(lián)密切系數(shù)來衡量,我們認為當(dāng)支持度和置信度分別大于距離最低支持度和最低置信度時,其距離越遠,關(guān)聯(lián)程度越高,于是得到其公式為:其中,為組合i的支持度,為該組合的平均置信度,和分別為該類組合的最小支持度和最小置信度。用圖表示為:圖2關(guān)聯(lián)密切系數(shù)示意圖將12組商品組合的支持度和平均置信度帶入關(guān)聯(lián)密切系數(shù)的公式中進展計算,將所得數(shù)據(jù)列表降序排列,關(guān)聯(lián)系數(shù)越大的商品組合的關(guān)聯(lián)關(guān)系的密切程度越大。模型的求解對于問題1:將最小支持度設(shè)定為5%,從4717個原始數(shù)據(jù)項中得到個數(shù)為17的頻繁項集。按支持度降序排列后,依次編號,整理得到表1:表1兩種組合頻繁項集表組合i編號A編號B支持度13685290.07079270923688290.0663416732173680.06167867743684890.06167867753686820.06125476963684190.05701568573689370.05553200583686920.05532005193685100.055108097103689140.054896142115296920.054472234125298290.054048326133687200.0527766144385290.051716829152175290.051292921166928290.051080967174198290.05023315對由上表得到的數(shù)據(jù),分別計算各個組合相互的置信度,并將最小置信度設(shè)定為20%,剔除局部數(shù)據(jù)后得到關(guān)聯(lián)規(guī)則集。再對數(shù)據(jù)列表的s(A=>B)進展降序處理,重新編號后得到表2:表2關(guān)聯(lián)規(guī)則表組合i編號A編號B支持度s置信度c(A=>B)置信度c(B=>A)12173680.0616786770.3112299470.21748878926928290.0510809670.2960687960.21849501434385290.0517168290.2867215040.2240587742175290.0512929210.2588235290.22222222254198290.050233150.2513255570.2148685463685290.0707927090.2496263080.30670339875296920.0544722340.2359963270.31572481685298290.0540483260.234159780.2311876793688290.066341670.2339312410.283771532103684890.0616786770.2174887890.328442438113686820.0612547690.2159940210.352869353123684190.0570156850.2010463380.285259809最后留下的12個支持度和置信度都較高的商品組合即為關(guān)聯(lián)規(guī)則集。為定量地表達超市中多種商品間的關(guān)聯(lián)關(guān)系的密切程度,分別對12個組合求解平均置信度,進而得到該組的關(guān)聯(lián)密切系數(shù)。如表3所示:表3關(guān)聯(lián)密切評定表組合i編號A編號B支持度平均置信度關(guān)聯(lián)密切系數(shù)12173680.0616786770.2643593680.06541039526928290.0510809670.2572819050.05729210334385290.0517168290.2553901370.05541673742175290.0512929210.2405228760.04054349754198290.050233150.2330970490.0330978763685290.0707927090.2781648530.08088313175296920.0544722340.2758605710.07599228485298290.0540483260.2326737250.03292356793688290.066341670.2588513860.061078113103684890.0616786770.2729656140.073894332113686820.0612547690.2844316870.085178516123684190.0570156850.2431530730.043719648對于問題2:此題要求最頻繁被同時購置、商品數(shù)量越多越好的商品組合。由支持度的定義可知,*商品組合的支持度越高,表示該組合越頻繁被同時購置。我們采用問題一中的數(shù)據(jù),將所篩選出的商品種類選出,與上述兩種商品的組合進展匹配,去掉重復(fù)項,得到三種商品組合,挑選出滿足支持度support的組合。同樣進展?jié)M足支持度的四種商品、五種商品、六種商品的選擇……依次循環(huán)直到?jīng)]有符合最低支持度的組合程序完畢。以此進展matlab編程,見附錄。我們設(shè)定support為2.12%,得到1391種組合,在問題一中我們列出了其中一些組合。對于三種商品組合符合support為2.12%的組合數(shù)為40個,由于版面限制,以以下出頻繁項集為最高的15種組合:表4三種組合頻繁項集表組合i編號A編號B編號C次數(shù)支持度13684896821240.02628789524135389561220.02586389734245727971160.02459190244135387971150.02437990254135729561140.02416790364137979561140.02416790375387979561140.02416790384134249561130.02395590494138269561120.023743905104245729561120.023743905115387978261110.023531906125388269561110.023531906135727979561110.023531906147978269561110.023531906154135727971100.023319907四種商品組合有35種,以下頻繁項集為前15種:表5四種組合頻繁項集表組合i編號A編號B編號C編號D次數(shù)支持度14134245729561070.02268390924135727979561070.02268390934245727979561070.02268390944134247979561060.02247191054135387978261060.02247191064135387979561060.02247191074137978269561060.02247191084134245387971050.02225991194134245727971050.022259911104134247978261050.022259911114135385729561050.022259911124135388269561050.022259911134135728269561050.022259911144245385727971050.022259911155387978269561050.022259911由編程得出的結(jié)果中,五種商品組合的結(jié)果只有一個。編號分別為413、424、538、572、797,重復(fù)次數(shù)為102,支持度為2.12%。六種商品組合沒有符合的結(jié)果。從五種組合的數(shù)據(jù)來看,我們有理由認為表5中所列出的四種商品組合和編號分別為413、424、538、572、797的五種組合即為所求的最頻繁被同時購置、商品數(shù)量多的商品組合。在實際應(yīng)用中,對于不同的超市,其要求的支持度support不同,可自行設(shè)置。模型二:效益最大化模型模型的建立為使超市的效益盡可能增大,必須同時考慮兩個因素:〔1〕頻繁被同時購置的商品組合;〔2〕對應(yīng)商品組合的利潤是否最高。由第一個基于Apriori算法的關(guān)聯(lián)規(guī)則挖掘模型可以得到,頻繁被同時購置的兩種商品組合數(shù)據(jù)。為衡量這些組合的效益,本文引入了促銷系數(shù):其中,為組合i中商品的利潤之和。對于問題3:第一步:利益最大化模型只考慮兩種組合的情形,分別計算表1中17個組合的促銷系數(shù),并將得到的結(jié)果進展降序排列,得到表6:表6兩種組合促銷系數(shù)表組合編號A編號B支持度置信度A=>B置信度B=>A利潤和促銷系數(shù)H13685290.0707927090.2496263080.306703398575.9522.683264925296920.0544722340.2359963270.315724816557.5616.756620133688290.066341670.2339312410.283771532479.6416.4733636443684190.0570156850.2010463380.285259809587.9316.3015810254385290.0517168290.2867215040.22405877559.8214.7881693466928290.0510809670.2960687960.218495014461.2512.1236873475298290.0540483260.234159780.23118767473.7711.9159080484198290.050233150.2513255570.21486854485.7511.3754868393686820.0612547690.2159940210.352869353315.25910.9853873103684890.0616786770.2174887890.328442438296.11889.971005752112173680.0616786770.3112299470.217488789296.11889.656633102122175290.0512929210.2588235290.222222222290.24887.161669045由上表可以得出,編號為529的商品可以和368,692,428,829,217擺放在一起,368可以和529,892,419,682,489,217擺放在一起。為了更好的說明商品的擺放順序,作圖2,其中方框中的數(shù)字表示商品編碼,直線上的數(shù)字表示該直線兩端商品組合的促銷系數(shù)。圖2促銷關(guān)系網(wǎng)絡(luò)示意圖由圖2可直觀看出,編號為368的商品應(yīng)優(yōu)先考慮和529擺放一起,再考慮和829一起。編號為529的商品再和692一起……在實際情況中,即可操作為,將829,368,529,692放在同一貨架上,其他的放在臨近貨架,并根據(jù)實際情況進展調(diào)整。第二步:打折促銷由第一步可以獲得利潤高又頻繁被同時購置的商品組合,為方便顧客選購?fù)瑫r提高超市的利潤值,我們決定將這些商品組合擺放在一樣或相近貨架上,采取"捆綁〞銷售的理念,進展打折促銷。首先找出符合以下要求的組合:假設(shè)一個商品組合中有一個利潤較大,我們可以對此商品進展打折,其他商品價格不變。經(jīng)過屢次進展市場實踐調(diào)查,得到當(dāng)打折為f〔i〕的時候可以得到最大的利潤,則f〔i〕就是我們需要的打折數(shù)據(jù)。以表格*中組合〔*,Y〕為例,在促銷過程中,我們可以對利潤較高的編號為*商品打折f〔i〕,保持Y商品價格不變。第三步:提高最低消費為降低局部顧客只購置打折商品的發(fā)生幾率,超市可以先統(tǒng)計出該購物群體絕大多數(shù)的消費水平,將其上調(diào)局部后,配合同時期的打折活動推出購滿上調(diào)后金額贈送小禮品的活動。例如該購物群體每次消費在60~80元之間占絕大多數(shù),基于此信息采取購滿88元返券、滿88元加1元贈送抽紙一包的促銷措施來提高銷售量;基于大多數(shù)人貪小廉價的消費心理,很多消費者會選擇購滿88元。這些措施不僅使得顧客的穿插消費大為提高,還能提升顧客對超市的滿意度,增加再次光臨選購的幾率。七、模型評價對于問題一的數(shù)據(jù)挖掘問題,通過分析每個數(shù)據(jù),從大量數(shù)據(jù)中尋找其規(guī)律的技術(shù),我們采用Apriori算法的思想,經(jīng)過一定程度的改良,進展了運用。優(yōu)點:〔1〕作為一個迭代算法,使用Apriori性質(zhì)來生成候選項集的方法,得到所有大于等于最小支持度的頻繁工程集,大大壓縮了頻繁集的大小,取得了很好的性能。最終得到的程序解決所給問題只需40s,而且可以表示出滿足條件的商品個數(shù)及其種類。有助于超市經(jīng)理進展"購物籃〞分析并做出相應(yīng)的促銷方案?!?〕Apriori算法是一種最有影響的挖掘布爾關(guān)聯(lián)規(guī)則頻繁項集的算法,改良后的Apriori算法更適用于適合事務(wù)數(shù)據(jù)庫的關(guān)聯(lián)規(guī)則挖掘?!?〕該算法構(gòu)造簡單,易于理解,沒有復(fù)雜的推導(dǎo)。缺點:〔1〕對數(shù)據(jù)庫的掃描次數(shù)過多。該算法需要在每進展一次迭代的時候掃描一次數(shù)據(jù)庫,一般挖掘出的最大頻繁項集的長度為N時,需要掃描N次數(shù)據(jù)庫,而在實際應(yīng)用中經(jīng)常需要挖掘很長的模式,屢次掃描數(shù)據(jù)庫帶來巨大開銷,且效率較低?!?〕Apriori算法可能產(chǎn)生大量的侯選項集。Apriori算法在迭代過程中要在內(nèi)存中產(chǎn)生,處理和保存候選頻繁項集,這個數(shù)量有時候是非常巨大的,導(dǎo)致算法在廣度和深度上的適應(yīng)性很差?!?〕程序不利于非編程人員的直接調(diào)用和使用。改良:可以將程序進展打包,增加其可視化的方面,利于非編程人員的直接使用對于問題一中關(guān)聯(lián)密切程度系數(shù)公式的引入,我們認為它的優(yōu)點是能夠反映支持度越高、置信度越高,則關(guān)聯(lián)密切程度越高。缺點是該公式缺乏一些實踐檢驗。對于問題三的促銷方案,我們引入的促銷系數(shù)綜合權(quán)衡了置信度、支持度和利潤對促銷方案確實定的影響。在一個商品存在和多種商品同時關(guān)聯(lián)程度較高時,我們要對這多種方案進展比擬。單獨考慮其商品組合的利潤大小是不合理的,可能消費者的購置程度不頻繁。同樣的,單獨考慮其商品組合的支持度也是不合理的,可能兩件商品的購置次數(shù)都較頻繁,但是其置信度又不夠高,即購置其中一件商品后再購置另一件商品的人數(shù)不夠多。假設(shè)置信度、支持度和利潤這三個因素中*一因素趨近于0,則方案不適宜。只有三者乘積較高的方案可以考慮擺在一起進展促銷。利用商品的合理擺放和*種利潤較高商品適當(dāng)降價等促銷手段可以使商場的利潤更大,效益更好。故引入促銷系數(shù)使促銷方案更合理更完善。八、參考文獻[1]周濤,陸惠玲.關(guān)聯(lián)規(guī)則挖掘算法研究[N].**大學(xué)學(xué)報,2004—9〔3〕.[2]AgrawalR,SrikantR.Fastalgorithmsforminingassociationrules[C].InProceedingofthe20thInternationalConferenceonVeryLargeDatabases.1994,487-499.[3]李新征.一種新的高效Apriori算法..[D]::**理工大學(xué)通信與計算機學(xué)院,2007:1—4.[4]丁侃.Apriori算法改良及實現(xiàn)[D].:**理工學(xué)院數(shù)學(xué)與計算機科學(xué)系,2005.[5]*錫鈴.關(guān)聯(lián)規(guī)則挖掘算法及其在購物籃分析中的應(yīng)用研究.[D]:**大學(xué)計算機應(yīng)用技術(shù)系,2009:36—39.附錄附錄一:Matlab程序滿足支持度的單商品、兩種商品組合、三種商品組合、四種商品組合ticdata1=te*tread('附件1.t*t');Value_supt=100;%兩商品支持度闕值data=zeros(4718,999);%0-1矩陣fori=1:4718forj=1:72ifdata1(i,j)==0continue;enddata(i,data1(i,j))=1;endend%C1——滿足置信度的組合B1=zeros(999,2);fori=1:999B1(i,1)=i;endfori=1:4718forj=1:999ifdata(i,j)==1B1(j,2)=B1(j,2)+1;endendendt=1;fori=1:999ifB1(i,2)>Value_suptC1(t,:)=B1(i,:);t=t+1;endend%B2——滿足置信度的單價商品所構(gòu)成的兩件商品組合n=size(C1,1);n2=0;t=1;n3=n*(n-1)/2;B2=zeros(n3,3);forj1=1:n-1forj2=j1+1:nfori=1:4718ifdata(i,C1(j1,1))==1&data(i,C1(j2,1))==1n2=n2+1;endendB2(t,1)=C1(j1,1);B2(t,2)=C1(j2,1);B2(t,3)=n2;n2=0;t=t+1;endend%C2——滿足置信度的2件商品組合a=find(B2(:,3)>Value_supt);n4=size(a,1);C2=zeros(n4,3);t=1;fori=1:n3ifB2(i,3)>Value_suptC2(t,1)=B2(i,1);C2(t,2)=B2(i,2);C2(t,3)=B2(i,3);t=t+1;endend%B3——滿足置信度的2件商品組合成的3件商品b=unique(C2(:,[1,2]));n=size(b,1);n1=size(C2,1);n2=0;t=1;n3=n1*n;B3=zeros(n3,4);forj1=1:n1forj2=1:nfori=1:4718ifdata(i,C2(j1,1))==1&&data(i,C2(j1,2))==1&&data(i,b(j2))==1&&b(j2)~=C2(j1,1)&&b(j2)~=C2(j1,2)n2=n2+1;B3(t,1)=C2(j1,1);B3(t,2)=C2(j1,2);B3(t,3)=b(j2);endendB3(t,4)=n2;n2=0;t=t+1;endend%C3——滿足置信度的3件商品a=find(B3(:,4)>Value_supt);n4=size(a,1);C3=zeros(n4,4);t=1;fori=1:n3ifB3(i,4)>Value_suptC3(t,1)=B3(i,1);C3(t,2)=B3(i,2);C3(t,3)=B3(i,3);C3(t,4)=B3(i,4);t=t+1;endend%B4——滿足置信度的3件商品組合成的4件商品b4=unique(C3(:,[1,2,3]));n=size(b4,1);n1=size(C3,1);n2=0;t=1;n3=n1*n;B4=zeros(n3,5);forj1=1:n1forj2=1:nfori=1:4718ifdata(i,C3(j1,1))==1&&data(i,C3(j1,2))==1&&data(i,C3(j1,3))&&data(i,b4(j2))==1&&b4(j2)~=C3(j1,1)&&b4(j2)~=C3(j1,2)&&b4(j2)~=C3(j1,3)n2=n2+1;B4(t,1)=C3(j1,1);B4(t,2)=C3(j1,2);B4(t,3)=C3(j1,3);B4(t,4)=b4(j2);endendB4(t,5)=n2;n2=0;t=t+1;endend%C4——滿足置信度的4件商品a=find(B4(:,5)>Value_supt);n4=size(a,1);C4=zeros(n4,5);t=1;fori=1:n3ifB4(i,5)>Value_suptC4(t,1)=B4(i,1);C4(t,2)=B4(i,2);C4(t,3)=B4(i,3);C4(t,4)=B4(i,4);C4(t,5)=B4(i,5);t=t+1;endendtoc附錄二:將三種物品組合中重復(fù)情況篩選掉tic%將所需篩選的矩陣賦值給AA=%3物品1次數(shù)A=C3;k1=0;k2=0;k3=0;n3=120;%增添kn,修改n3值%n3為矩陣的行數(shù)fori1=1:n3-1forj=i1+1:n3k1=ismember(A(i1,1),A(j,[1:3]));%擴展kn[1:n]ifk1==1k2=ismember(A(i1,2),A(j,[1:3]));ifk1==1&&k2==1k3=ismember(A(i1,3),A(j,[1:3]));ifk1==1&&k2==1&&k3==1A(j,4)=0;%擴展時該項需修改endendendk1=0;k2=0;k3=0;%增加knendendtoc%C——篩選后的矩陣a=find(A(:,4)~=0);n4=size(a,1);%A(:,n)C3=zeros(n4,4);t=1;%定義矩陣大小fori=1:n3ifA(i,4)~=0C3(t,1)=A(i,1);%增添項C3(t,2)=A(i,2);C3(t,3)=A(i,3);C3(t,4)=A(i,4);t=t+1;endend附錄三:將四種物品組合中重復(fù)情況篩選掉tic%將所需篩選的矩陣賦值給A%4物品1次數(shù)%n3為矩陣的行數(shù)A=C4;%賦值C4k1=0;k2=0;k3=0;k4=0;n3=420;%增添kn,fori1=1:n3-1forj=i1+1:n3k1=ismember(A(i1,1),A(j,[1:4]));%[1:n]ifk1==1k2=ismember(A(i1,2),A(j,[1:4]));ifk1==1&&k2==1k3=ismember(A(i1,3),A(j,[1:4]));ifk1==1&&k2==1&&k3==1k4=ismember(A(i1,4),A(j,[1:4]));ifk1==1&&k2==1&&k3==1&&k4==1A(j,5)=0;%擴展時該項需修改endendendendk1=0;k2=0;k3=0;k4=0;endendtoc%C——篩選后的矩陣a=find(A(:,5)~=0);n4=size(a,1);C4=zeros(n4,5);t=1;fori=1:n3ifA(i,5)>Value_suptC4(t,1)=A(i,1);C4(t,2)=A(i,2);C4(t,3)=A(i,3);C4(t,4)=A(i,4);C4(t,5)=A(i,5);t=t+1;endend附錄四:計算滿足置信度的五種商品組合%B5——滿足置信度的4件商品組合成的5件商品ticb5=unique(C4(:,[1,2,3,4]));n=size(b5,1);n1=size(C4,1);n2=0;t=1;n3=n1*n;B5=zeros(n3,6);forj1=1:n1forj2=1:nfori=1:4718ifdata(i,C4(j1,1))==1&&data(i,C4(j1,2))==1&&data(i,C4(j1,3))&&data(i,C4(j1,4))==1&&data(i,b5(j2))==1&&...b5(j2)~=C4(j1,1)&&b5(j2)~=C4(j1,2)&&b5(j2)~=C4(j1,3)&&b5(j2)~=C4(j1,4)n2=n2+1;B5(t,1)=C4(j1,1);B5(t,2)=C4(j1,2);B5(t,3)=C4(j1,3);B5(t,4)=C4(j1,4);B5(t,5)=b5(j2);endendB5(t,6)=n2;n2=0;t=t+1;endend%C5——滿足置信度的5件商品a=find(B5(:,6)>Value_supt);n4=size(a,1);C5=zeros(n4,6);t=1;fori=1:n3ifB5(i,6)>Value_suptC5(t,1)=B5(i,1);C5(t,2)=B5(i,2);C5(t,3)=B5(i,3);C5(t,4)=B5(i,4);C5(t,5)=B5(i,5);C5(t,6)=B5(i,6);t=t+1;endendtoc附錄五:將五種物品組合中重復(fù)情況篩選掉tic%將所需篩選的矩陣賦值給A%

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論