Data Mining för Handeln del 3 Sortimentsoptimering

Ämne: Avancerad Analys

Sortimentsoptimering är ett stort och komplext ämne; den akademiska forskningen inom området är omfattande (se till exempel en överblick här) och linjeverskamhet förutsätter oftast hela avdelningar som sysslar med denna sorts analys.

Grovt kan man definiera tre delområden:

  1. Produkturval – vad som levereras till butik
  2. Prisjustering – intäktsoprimering
  3. Hyllgeometri – placering i butik

Data för dessa tre områden kan vara hur heterogena som helst. Följande brukar inkluderas:

  • Försäljningsdata (kvitton)
  • Geodata om egna eller konkurrentens butiker + demografisk info
  • Produktdata (produkthierarkier, lagerinfo, prisinfo)
  • Enskild butiksinfo

För att få en hanterbar datamängd initialt, rekommenderas att man till exempel segmenterar butiker [mha attribut som intäkter, antal stamkunder, läge, geodata kopplat till leveransrutter, osv] och produkter [försäljningstillväxt, intäkt, antal sålda,
osv].

Exempel.

Vi följer metodologin beskriven av professorerna Fisher och Vaidyanathan  – att förutse efterfrågan i en konkret butik. Vi tillämpar metodologin på ostförsäljning i den imaginara matjätten Foodmart. SQL-dumpen med Foodmarts försäljningsdata inhämtas t ex här.

Vilka osttyper finns i Foodmartsbutiker? Bortser man från tillverkarens namn och ordet cheese i produktbenämningen blir det 11 osttyper:

Havarti

Jack

Head

Low fat
cottage

Large curd
cottage

Low fat
string

String

Muenster

Spread

Mild
Cheddar

Sharp Cheddar

Initialt försöker man alltså förutse efterfrågan på attribut och inte konkreta produkter från Foodmarts leverantörer. Vanligen tar inköpsavdelningen själv fram lämpliga brands/produkter enligt våra rekommendationer.

Tittar man på (normaliserat) hektopris och köpfrekvens, så kan man vidare identifiera tre prisklasser – låg (lowend), mellan (extra) och lyx (premium). I grafen nedan för fyra av ostvarianter:

Rplot02-4types

Ett extra antagande som vi gör är att avsaknaden av vissa osttyper från försäljningsdata betyder att butiken inte har dessa på lager.

Pivotering och en snabb Excelanalys av antal sålda osttyper ger följande bild:

typ

lowend

extra

premium

total

Havarti

 ?

2

9

11

Head

4

3

2

9

Jack

1

6

3

10

Large
Curd Cottage

4

3

2

9

Low
Fat Cottage

 ?

3

 ?

3

Low
Fat String

4

 ?

 ?

4

Mild
Cheddar

2

2

4

8

Muenster

1

 ?

2

3

Sharp
Cheddar

 ?

6

4

10

Spread

 ?

3

2

5

String

 ?

2

 ?

2

Total

16

30

28

74

Andel av alla sålda, i %

22%

40%

38%

100%

Kan behovet (predicted units sold)  uppskattas för ostsorter som butik nr 2 inte har? Väsentligen, kan vi hitta en frekvensdistribution i försäljningen som är ”gemensam” för alla osttyper  nämligen att den avviker minst från osttypernas individuella distributionskurvor.

Detta kan enklast göras genom att hitta anpassade (best fit) procentandelar för fullständiga rader ovan, med hjälp av linjär algebra och minsta kvadratmetoden. Resultatet blir

Bäst passning (best fit), andel av alla
sålda, i %

30.05%

39.9%

30.05%

Observera, att prognosen och den faktiska andelen sålda osttyper i mellanpriskategorin blir nästan samma. Emellertid säger prognosen att behovet av lågprissorter är större (30% jfr 22%) och behovet av lyxsorter mindre (30% jfr 38%) jämfört med de faktiska försäljningssiffrorna.

Vi kan nu beräkna antalprognosen för de individuella osttyper, t ex:

Havarti lowend  = (Havarti extra + Havarti premium) /
(best fit % extra + best fit % premium) * best fit % lowend
=4

Prognossiffrorna  blir :

typ

extra

premium

lowend

Predicted
totals

Havarti

2

9

4

15

Low Fat Cottage

3

2

2

7

Low Fat String

5

4

4

13

Muenster

2

2

1

5

Sharp Cheddar

6

4

4

14

Spread

3

2

2

7

String

2

1,5

1,5

5

Vad är ett lämpligt nästa steg?

Vilka ostprodukter (befintliga och nya) ska då bidra till vårt optimala sortiment?  

Först måste vi definiera vad som är optimalt. Standardpraxis här är att man strävar efter att
maximera intäkten (∑ kvittopris – ∑ lagerkostnad – ∑ inköpspris).

Med våra prognossiffror för produktbehov kan vi sedan börja formulera en prissättningsstrategi för ostprodukter som inte säljs. Priserna för osttyper som redan finns på Foodmart är kända; för de som saknas hittar man ”best fit estimates” för att maximera den prognostiserade intäkten.

Nu kan man modifiera sortimentet för en konkret butik genom att börja med osttypen som ger
bäst intäktprognos, och forstätta nedåt, tills man når gränstalet för butiken (i vårt fall kanske 20 av möjliga 33 ostvarianter). Processen är högst iterativ då varje ny produkt påverkar de prognostiserade siffror man har beräknat för tidigare produkter.

Vill man förbättra prognosmodellen ytterligare, kan man introducera andra produktattribut och attributkombinationer (mjuka/hårda, milda/starka, färska/lagrade ostar) eller finjustera med avseende på geografiskt och demografiskt data (Hur nära ligger lagerlokalen? Är det skillnad mellan hemtillverkade och importerade ostar? Vad är andel mjölkallergiker där butikerna finns?). 

På en eller ett par veckor kan BizOne hjälpa er att få en lösning på plats, kontakta oss så berättar vi mer!