Univerzita Karlova v Praze Matematicko-fyzikální fakulta
DIPLOMOVÁ PRÁCE
Gergely Jakab Prototyp inteligentního rozhodování pro merchandising
Katedra softwarového inženýrství Vedoucí diplomové práce: Prof. RNDr. Jaroslav Král, DrSc. Studijní program: Informatika, softwarové systémy
Rád bych na tomto místě poděkoval vedoucímu mé diplomové práce, prof. RNDr. Jaroslavu Královi, DrSc., za cenné rady a náměty, které jsem ve své práci použil. Podobně patří moje poděkování společnosti ExTech s.r.o., která umožnila vznik této práce poskytnutím konzultací v oboru merchandisingu a výchozího systému pro rozšíření. Nakonec děkuji Tomášovi Imrichovi a Saše Hauserové za pečlivou korekturu češtiny, své manželce a rodině za jejich trpělivost a podporu.
Prohlašuji, že jsem svou diplomovou práci napsal samostatně a výhradně s použitím citovaných pramenů. Souhlasím se zapůjčováním práce.
V Praze dne 12.12.2008 Gergely Jakab
1
Obsah 1 Úvod ......................................................................................................................................5 1.1 Cíle merchandisingu ......................................................................................................5 1.2 Postupy merchandisingu ................................................................................................5 1.2.1 Zvyšování finančního objemu nákupního košíku ..................................................6 1.2.2 Eliminace přebytku a výpadku ..............................................................................8 2 Popis problému a cílů diplomové práce ..........................................................................10 2.1 Popis problému ............................................................................................................10 2.2 Existující řešení a jejich přístup k problému ...............................................................11 2.3 Cíle práce .....................................................................................................................15 3 Struktura práce .................................................................................................................16 4 Analýza problému .............................................................................................................17 4.1 Typizovaní provozovatelé merchandisingu .................................................................17 4.2 Výběr správných produktů k umístění ........................................................................18 4.2.1 Ohodnocení produktů ..........................................................................................19 4.2.2 Hlediska předpovědi prodeje ...............................................................................21 4.2.3 Definice základních pojmů předpovědi ...............................................................23 4.2.4 Metody předpovědi prodeje .................................................................................24 4.2.5 Metody výběru produktů .....................................................................................39 4.3 Generování návrhu umístění vybraných produktů ......................................................41 4.3.1 Typy a cíle planogramů .......................................................................................42 4.3.2 Cíle generování planogramů ................................................................................46 4.3.3 Ohodnocení místa ve skříních .............................................................................47 5 Návrh řešení .......................................................................................................................48 5.1 Quant – koncept a uživatelská dokumentace ..............................................................48 5.1.1 Vytvoření databáze produktů ...............................................................................50 5.1.2 Vytvoření kategorií skříní ....................................................................................50 5.1.3 Kreslení prodejen .................................................................................................50 5.1.4 Kategorizace skříní ..............................................................................................51 5.1.5 Vytvoření projektu ...............................................................................................51 5.1.6 Distribuce produktů do skříní ..............................................................................53 5.1.7 Vlastnosti systému ...............................................................................................55 5.2 Požadavky ...................................................................................................................55 5.3 Architektura systému ...................................................................................................56 5.4 Volba použitých technologií .......................................................................................58 5.5 Nové funkce tabulky produktů ....................................................................................58 5.5.1 Ohodnocení produktů ..........................................................................................59 5.5.2 Předpověď prodeje produktů ...............................................................................63 5.6 Výběr produktů k umístění a generování návrhu ........................................................66 5.6.1 Výběr produktů a určení přiřazeného místa bloků ..............................................67 2
5.6.2 Přiřazení priorit pozicím ve skříni .......................................................................70 5.6.3 Umístění bloků do skříně .....................................................................................71 5.6.4 Sestavení výstupné mřížky s bloky produktů ......................................................76 6 Popis prototypové implementace .....................................................................................79 6.1 Návod k použití – uživatelská dokumentace ...............................................................79 6.1.1 Import dat o prodeji .............................................................................................79 6.1.2 Globální nastavení pro modul QuAI ...................................................................80 6.1.3 Vytvoření projektu s ohodnocením produktů ......................................................80 6.1.4 Generování rozmístění produktů .........................................................................81 6.2 Nové prvky v modulu Quant .......................................................................................83 6.3 Implementace modulu QuAI .......................................................................................83 6.3.1 Nastavení nového seznamu cyklů ........................................................................84 6.3.2 Import dat o prodeji .............................................................................................84 6.3.3 Vytváření zpracovaných dat ................................................................................84 6.3.4 Předpověď prodeje ...............................................................................................84 6.3.5 Ohodnocení produktů ..........................................................................................87 6.3.6 Generování návrhu rozmístění .............................................................................88 7 Zhodnocení splnění cílů ....................................................................................................90 7.1 Srovnání s existujícími přístupy ..................................................................................90 7.2 Možnosti dalšího rozšíření ..........................................................................................91 8 Závěr ..................................................................................................................................93 Příloha A ..............................................................................................................................94 Seznam ilustrací ..................................................................................................................96 Seznam použité literatury ..................................................................................................97
3
Název práce: Prototyp inteligentního rozhodování pro merchandising Autor: Gergely Jakab Katedra: Katedra softwarového inženýrství Vedoucí diplomové práce: Prof. RNDr. Jaroslav Král, DrSc. E-mail vedoucího:
[email protected] Abstrakt: Jednou z užívaných praktik merchandisingu je snaha umístit v prodejně správný produkt na správné místo ve správný čas a se správnou cenou, aby si zákazník daného produktu všiml a uvědomil si, že ho potřebuje nebo že je to dobrá koupě. Tato práce analyzuje možnosti algoritmizace procesu návrhu rozmístění aby bylo možné napovídat merchandiserovi, které produkty se vyplatí umístit do skříní a jak. K určení nejlepších produktů se produkty ohodnotí podle analýzy dat o prodeji. Na základě tohoto ohodnocení se vyberou nejvýnosnější produkty, pro které se navrhne vhodné rozmístění do polic. Podle výsledků obecné analýzy je navržen systém pro automatizaci procesu ve formě rozšíření jednoho existujícího softwaru. Na základě tohoto návrhu se vytvoří prototypová implementace. Klíčová slova: planogram, merchandising, rozmístění produktů
Title: Prototype for specialized data mining in merchandising Author: Gergely Jakab Department: Department of Software Engineering Supervisor: Prof. RNDr. Jaroslav Král, DrSc. Supervisors e-mail address:
[email protected] Abstract: One of the purposes of merchandising is to place the correct product to the correct place with the correct price and at the right time. This thesis analyses the possibilities for automation of the process of product placement in racks of retail stores to help the merchandiser's work. The solution uses statistical data from sales to evaluate the products in order to choose the best sellers, then it suggests a suitable placement for the chosen products. Based on the results of the general analysis part a system is designed for automation of the process as an extension to an existing software. According to the created design a prototype is implemented. Keywords: planogram, merchandising, product placement
4
1 Úvod
Pojem „merchandising“ je v dnešní době hodně známý a přece ne úplně jasný. Část lidí, ho spojuje s marketingem, jiná část zase s logistikou nebo se správou obchodních řetězců. Český ekvivalent tento výraz nemá, ale v některých slovnících se vyskytuje jako „obchodní úsilí“ nebo ve tvaru slovesa „merchandise“ jako „obchodovat, inzerovat, dělat reklamu“. Ve skutečnosti se jedná o velmi široký pojem obsahující řadu činností, které směrují k jednoduchému cíli: zvýšit zisk maloobchodní prodejny (nebo řetězce prodejen). V současné době lze pozorovat efekty merchandisingu doslova na každém rohu. Není náhodou, že v libovolném supermarketu je umístěno oddělení pečiva, masa a lahůdek co nejdál od vchodu (aby si zákazníci cestou k primárním cílům nákupu mohli dostatečně prohlédnout i ostatní zboží). Také má svůj účel, že u každé pokladny se nabízí lidem každodenní spotřební zboží, jako jsou baterie, CD/DVD média, tabák, žvýkačky, magazíny a časopisy, ale i zmrzliny, bonbóny a chlazené nápoje pro zpříjemnění dlouhého čekání ve frontě.
1.1 Cíle merchandisingu Primárním cílem merchandisingu je tedy zvýšení zisku prodejny, čeho dosahuje plněním dílčích cílů:
zvyšování finančního objemu nákupního košíku1 – kvůli jednoduchému argumentu: co zákazník nekoupí dneska v cílové prodejně, to zítra může koupit jinde;
eliminace výpadku – podle [2] je v 8% případů požadované zboží v maloobchodech vyprodané, což pochopitelně znamená ztrátu potencionálního zisku;
eliminace přebytku – zboží, kterého prodejna nakoupila velké množství a nemohla prodat, hrozí úplnou ztrátou (vypršení trvanlivosti) a překáží v prodejně i ve skladu.
1.2 Postupy merchandisingu Pro dosažení dílčích cílů merchandisingu se v ideálním případě používají níže popsané postupy. 1 „Nákupní košík“ je výraz pro množinu produktů, které zákazník koupí v jedné dávce (převzato z [1]).
5
1.2.1 Zvyšování finančního objemu nákupního košíku Podle [3] a [4] v 70% až 74% případů rozhoduje zákazník impulzivně až v prodejně před policí, zda produkt koupí a pokud ano, tak který z konkurenčních. Tento impulzivní nákup může nastat pouze tehdy, když zákazník daný produkt najde na policích, ví k čemu slouží a důvěřuje mu. Cílem tedy je zjednodušení rozhodování zákazníka vytvořením přehledného uspořádání kvalitních produktů, kterým důvěřuje a omezením velikosti množiny, ze které je nucen vybírat. Využití principů merchandisingu v praxi znamená finanční zhodnocení každého viditelného místa v prodejně, tj. každé místo má svou cenu a produkt umístěný na tomto místě by si měl své místo zasloužit odpovídající tržbou. Prvním krokem je analýza toku zákazníků prodejnou. V případě, že tok je vyhovující, tj. zákazníci projdou při nákupu celou prodejnou, stačí určit horká a studená místa2. Pokud je ovšem tok nevýhodný, protože některé části prodejny se vůbec nenavštěvují, je potřeba jej řídit jak radí [5]:
Po vstupu do prodejny se nachází zákazník v tzv. „dekompresní zóně“, kde si zvykne na nové prostředí. Tato oblast není vhodná pro vystavení zboží, protože tady se obvykle nic nekupuje.
Po „dekompresní zóně“ následuje „strike zóna“, kde se zákazník podívá na první produkt, který najde, a získá první dojem o cenách prodejny. Proto by zde měly být produkty s dostupnou cenou.
Po „strike zóně“ následuje nejcennější oblast, protože tudy projdou zákazníci na začátku nákupu, kdy ještě zvládnou prozkoumat všechno kolem sebe. To je horké místo, ale žádané3 produkty sem nepatří.
Žádané produkty se mají umístit na studená místa - nejdál od vchodu, protože to donutí zákazníka, aby prošel celou prodejnu a podíval se i na ostatní zboží.
Pokladny by měly být umístěny nalevo od vchodu kvůli tomu, že většinu lidí tvoří praváci, kteří mají sklon obejít prodejnu zprava doleva. Pokladny pochopitelně vytváří také horké místa.
Po určení horkých a studených míst podle analýzy toku zákazníků přijde druhý krok: výběr produktů k vystavení na základě analýzy dat (vlastních nebo celé skupiny prodejen) z prodeje sortimentu. K tomuto účelu se použijí nástroje data miningu4. Podle [6] by každá kategorie produktů5 měla dostat tak velký podíl prostoru v prodejně, jaký je jeho podíl v tržbách všech kategorií. Podle stejné myšlenky by měl dostat také každý produkt v rámci své kategorie tolik prostoru, jaký je jeho tržní podíl. 2 Horké místo dostane nejvíc pozornosti zákazníka, studené naopak nejméně. 3 Žádaný produkt je ten, který se zákazník rozhodl koupit ještě než přišel do prodejny. 4 Data mining (také DM) je analytická metodologie získávání netriviálních, skrytých a potenciálně užitečných informací z dat. 5 Kategorie produktů je samostatně řiditelná skupina produktů, u kterých zákazník vidí souvislost či nahraditelnost.
6
Ve třetím kroku se určí kategorie, které mají impulzivní charakter. To jsou obvykle značkové kategorie, kategorie které potěší (bonbóny), a kategorie, které zákazník potřebuje, ale zapomíná na ně, protože má vůči nim nízké emoční zaujetí (vitamíny, baterie). Ve čtvrtém kroku se konkrétní regály v prodejně (taky skříně, stojany, držáky, chladící boxy a obecně všechno, na čem lze vystavovat produkty) přiřadí k vybraným kategoriím podle doporučení [7] a tím vzniknou oddělení prodejny:
vysoká marže/vysoký obrat – nejlépe prodejné produkty je potřeba umístit na nejlepší (horká) místa, protože ty generují dostatek zisku, aby si to místo zasloužily;
žádané zboží – zákazník se rozhodl produkt koupit ještě před vstupem do obchodu, takže tento produkt má být umístěn na studené místo, které je daleko od vchodu;
impulzivní produkty – budou umístěny na horká místa (kolem pokladny) a vedle žádaných produktů (kde díky nim vznikla horká místa);
křížový merchandising – k určitému produktu se vystaví druhý produkt z jiné kategorie, který s prvním logicky souvisí (zubní pasta a kartáček; koupelová sůl, mýdlo a osuška, káva a smetana);
akční produkty – většina prodejen má vyhrazený prostor (s dobrou viditelností) pro akční produkty, které jsou dostupné po krátkou dobu, tj. rychle mizí a nahradí se novou akcí, ale jsou zajímavé z nějakého důvodu (vyšší marže, přibalený dárek);
výprodej – v rámci eliminace přebytku lze vystavit zboží na horké místo za sníženou cenu;
malé oddělení – menší oddělení by měla dostat lépe viditelná místa, protože v opačném případě je zákazník nenajde a oddělení nebudou vynášet;
nová kategorie/oddělení – pro zavedení nové kategorie/oddělení je vhodné umístit ji na horké místo. Po krátkém čase se pak ukáže, jestli si toto místo zaslouží, nebo musí jinam.
V pátém kroku zbývá umístit vybrané produkty dané kategorie do přidělených skříní. Merchandiser tady musí rozhodnout o dvou věcech: podle čeho bude stavět bloky produktů a v jaké poloze vytvořené bloky umístí do skříně. Bloky lze vytvářet podle: značek – všechny produkty jedné značky budou v jednom bloku; podobnosti (velikost, barva, použití, příchuť) – v jednom bloku budou podobné výrobky různých značek (např. všechny pomerančové šťávy s obsahem 1litr).
Poloha bloků ve skříni může být: horizontální – je používanější, má výhodu snadné orientace v rámci bloku (všechny produkty z bloku jsou na stejné polici vedle sebe), ale méně bloků bude „na očích“ (spodní a nejvyšší police skříně jsou mimo zorné pole). Tím pádem stoupá význam výšky police, kde je blok vystaven. Příklad je na ilustraci 1.2a (převzato z [1]); 7
vertikální – má výhodu, že všechny bloky (značky) jsou umístěny jak v úrovni očí, tak i v úrovni rukou. Člověk vnímá v úrovni očí, ale rozhoduje se pro koupi v úrovni rukou [8], tj. zákazníkovi se prezentuje větší výběr zboží a nesníží se přitom pohodlnost nákupu. Příklad je na ilustraci 1.2b (převzato z [1]).
Ilustrace 1.2:a: Horizontální bloky
Ilustrace 1.2:b: Vertikální bloky
Výstupy popsaného postupu merchandisingu jsou obvykle planogramy6 pro každou skříň prodejny. Příklady planogramů jsou na ilustracích 1.2:a a 1.2:b. Podle výsledných planogramů pak personál prodejny umístí zboží do skříní. Tento postup je základem merchandisingu, který ovšem obsahuje řadu dalších činností, které tento základ rozšiřují, začínaje školením personálu prodejny (jak správně komunikovat s klienty, jak udržovat police plné zboží) a konče ovlivňováním zákazníka působením na jeho smysly (hudba slušivá k dané prodejně, zvláštní osvětlení prodejny a produktů, vůně uklidňující, nebo stimulující).
1.2.2 Eliminace přebytku a výpadku Na základě analýzy dat z prodeje (viz druhý krok postupu v kapitole 1.2.1) se určí žádané a špatně prodejné produkty. Podle předpovědi prodeje, získané od data mining nástrojů, lze řídit i stav skladu a objednávat pouze ty produkty, které budou opravdu potřeba. Pro tento účel se používá takzvaný ukazatel obratu skladu nebo skladových zásob (anglicky „inventory turnover“ nebo „stock turnover“, podrobněji viz [9]). Jde vlastně o poměr prodeje k průměrnému stavu skladu za určité období. Přesněji: Obrat skladu
Náklady na prodané produkty Průměrná investice do skladových zásob
6 Planogram (v anglické literatuře také plan-o-gram nebo POG) je nákres obsahující obdélníky (případně obrázky produktů) a text popisující přesné umístění produktů a příslušenství (cenovky, reklamní štítky, letáky) ve skříni, na zdi nebo na reklamním stojanu.
8
počítáno podle financí, nebo Obrat skladu
Počet prodaných produktů Průměrný stav skladu
počítáno podle počtu produktů, přičemž Počátečný stav skladu Počet prodaných produktů Výsledný stav skladu Počet průběžně zakoupených produktů a Průměrný stav skladu
Počátečný stav skladuVýsledný stav skladu . 2
Obrat skladu vlastně určuje, jak rychle vymění řetězec obsah svého skladu. Například vychází-li při zvoleném období 1 rok obrat skladu na 6, tak se obsah skladu vymění každé 2 měsíce. Optimální hodnota obratu skladu se liší podle typu prodávaného zboží. Pro typ produktů, u kterých má prodejce vysoký hrubý zisk (30% a víc), stačí i malý obrat. Pro produkty s menším ziskem musí být obrat skladu větší. Příliš nízká hodnota obratu naznačuje nedostatečný prodej a zbytečně velké skladové zásoby, což hrozí přebytkem zboží a případnou ztrátou investice (vyprší trvanlivost zboží). Dlouhodobě vysoká hodnota obratu naopak svědčí o příznivém množství prodeje a označuje žádané produkty. Na druhou stranu sporadicky vysoká hodnota obratu varuje před možným nedostatkem zboží v příštím období v případě pomalejší dostupnosti. Nejrozumnější strategie je snaha udržovat obrat skladu konstantní, blízko nejvyšší dlouhodobě udržovatelné hodnotě, kterou lze odhadnout podle rychlosti dodávky nového zboží a průměrné hodnoty obratu skladu na celém trhu. Tím lze snížit pravděpodobnost výpadku a přebytku zboží.
9
2 Popis problému a cílů diplomové práce
Tato kapitola popisuje problém, který bude řešen a uvede cíle analýzy a návrhu.
2.1 Popis problému Každý řetězec si volí implementaci merchandisingu na základě svých potřeb (velikost prodejny, velikost řetězce, firemní zvyklosti) a finančních možností. Obecně samozřejmě platí, že čím je řešení sofistikovanější, tím je i dražší. Nejsofistikovanější řešení ale neznamená nutně pořídit si nejdražší software. Může tím být například služba poskytovaná firmou specializující se na merchandising, kterou provádí skupina zkušených merchandiserů, jezdících pravidelně do prodejen řetězce. Pokud se řetězec rozhodne pro vlastní řešení, obvykle má jasné požadavky na kvalitu svého merchandisingu. Tato kvalita zhruba určí finanční náklady, které řešení bude vyžadovat. Řetězci již zbývá pouze rozhodnout, zda chce investovat větší částku do sofistikovaného softwaru a provozovat systém s méně lidmi, nebo zvolit levnější software a spolehnout se na větší množství lidské pracovní síly. Postup uvedený v kapitole 1.2.1 se kompletně provede obvykle pouze jednou a to tehdy, kdy řetězec prodejen zavádí používání merchandisingu. V řetězci prodejen, kde je již merchandising zavedený, se periodicky opakují pouze tyto kroky: krok 2 (výběr produktů) – statistiky se pořád mění, je potřeba provést vždy; krok 4 (navržení polohy kategorií/oddělení) – základní rozložení je již správné, relokace kategorie se provádí pouze výjimečně (akce, svátky, výprodeje); krok 5 (rozmístění produktů do svých kategorií) – nejpracnější část, změní se spolu s výstupem kroku 2. Jestliže se tyto tři kroky provádí opakovaně a představují značnou část práce merchandisera, nabízí se otázka, zda je možné je nějak urychlit, případně automatizovat. Krok 2 řeší merchandiser buď manuálně (podle svých dlouholetých znalostí sortimentu), nebo použitím tabulkového procesoru a jednoduchých výpočtů nad daty z prodeje (případně ze skladu nebo účetnictví). Softwarovou podporu pro tento krok nabízí pouze ta nejdražší řešení, která provádějí jistou formu data miningu. V kroku 4 merchandiser vytváří oddělení „Akčních produktů“ na základě aktuálních slev od dodavatelů/výrobců, případně přebytku zboží ve skladu nebo výprodeje posledních kusů produktů vyřazených ze sortimentu. Dále vytváří tematické oddělení a sortiment pro aktuální události (sportovní šampionáty, olympiáda, Svatý Valentin, Velikonoce, Svatý Mikuláš, Vánoce atd.). Tento krok nelze dobře automatizovat, protože k realizaci potřebuje abstraktní vědomosti merchandisera (které produkty jsou akční, jaká událost se blíží, jaké 10
produkty k události patří). Krok 5 je pravděpodobně nejsložitějším (a mnohdy i nejpracnějším) úkolem merchandisera. Při umístění vybraných produktů do skříní se někteří merchandiseři snaží dosáhnout co nejestetičtějšího vzhledu skříně i celého oddělení, aby tím zaujali pozornost zákazníka. Jiní se řídí ryze ekonomickými pravidly a umístí z každého produktu přesně tolik, aby podíl obsazeného místa byl úměrný tržnímu podílu produktu. Další možnosti rozmístění jsou stavění bloků produktů (podle značek nebo podobnosti) a vytváření správně velkého výběru u každého typu produktů (příliš malý výběr zákazníka odradí, příliš velký výběr nedokáže zpracovat). U větších řetězců tento úkol značně urychlí software, který umí produkovat planogramy najednou pro velký počet skříní. Při takové automatizované produkci planogramů je ale obvykle problém vytvářet estetické výstupy, protože merchandiser má omezenou kontrolu nad výstupním planogramem.
2.2 Existující řešení a jejich přístup k problému Pro merchandising již samozřejmě existují softwarová řešení, která mají různé přístupy k samotnému problému i k automatizaci. V této části je uveden seznam řešení dostupných v době vzniku této práce, která splňují aspoň krok 5, tj. jejich výstupem je rozmístění produktů (planogram). Řešení budou posuzována podle třech kriterií: specifičnost pro prodejnu, data mining a estetika planogramů. Specifičnost pro prodejnu Řešení je specifické pro prodejnu, jestliže výstup obsahuje automaticky pro každou skříň z každé prodejny planogram s přesně odpovídajícími rozměry skříně. „Automaticky“ v tomto případě znamená, že s rostoucím počtem prodejen (při stejném počtu kategorií) neroste množství práce merchandisera, tj. nemusí kreslit planogram pro každou konkrétní skříň zvlášť. Toto kritérium představuje kvalitativní rozdíl v merchandisingu, protože při absenci této „automatické specifičnosti“ merchandiser obvykle navrhne pouze jeden standardní planogram pro každou kategorii a ten rozešle do všech prodejen. To je nevýhodné, protože standardní planogram má jiné rozměry než skutečná skříň a to přidá práci personálu prodejny, který musí planogram adaptovat na konkrétní skříň (některé produkty se musí vypustit nebo přidat). Druhá nevýhoda (způsobená první nevýhodou) spočívá v tom, že výsledné rozmístění pak nemusí plně odpovídat původnímu záměru merchandisera. DM (data mining) Řešení splňuje kritérium data miningu, jestli je planogram založen na analýze dat (z prodeje, ze skladu, z účetnictví atd.), tj. zda je řešen nějakým způsobem krok 2 z postupu uvedeného v kapitole 1.2.1.
11
Estetika planogramů Toto kritérium určuje, jestli může merchandiser ovlivnit estetickou stránku výsledných planogramů, např. když chce udělat velký jednobarevný blok z různých produktů, nebo vytvořit hezký barevný přechod z produktů na dlouhém regálu. Zkoumaná řešení seskupená podle splněných kriterií:
bez specifičnosti; DM; bez estetiky planogramů:
CapturePlan Retailing Suite – sdružuje několik aplikací. StorePlan vytváří půdorysy prodejen a je schopen zobrazovat tzv. tepelné mapy7 těchto půdorysů na základě dat dané prodejny nebo celé skupiny prodejen. Vytváří buď jednotné planogramy pro celou skupinu prodejen (tj. ne specifické pro každou prodejnu), nebo pomocí CompliancePlan vytváří tzv. realogramy, což jsou vlastně planogramy specifické pro prodejnu. To se ovšem musí dělat ručně pro každou prodejnu pomocí kapesních počítačů. DM modul (SpacePlan, AllocationPlan) nabízí přehled výnosů produktů a kategorií, návrhy na zvětšení/zmenšení místa přiřazeného kategoriím a simulaci zavedení nového produktu. Planogramy jsou tedy založené na analýze dat, ale nelze ovlivnit jejich estetiku a buď nejsou specifické pro prodejnu nebo se negenerují automaticky. Cena: individuální http://www.captureplan.com.au/
Marketmax® Integrated Merchandise Planning Solution v6 – analyzuje data a předpovídá poptávku. Vytváří planogramy pro skupinu prodejen na základě analýzy dat pomocí minimálního vizuálního plánování. Spravuje taky sklad. Cena: individuální http://www.sas.com/industry/retail/merchandise/mm/
bez specifičnosti; bez DM; estetické planogramy:
SmartDraw 2008 – chytrá kreslící aplikace bez zaměření na merchandising. Obsahuje půdorysy a planogramy jako jednu z dostupných témat. Pro každé téma má připravený balík obrázků. Uživatel kreslí každý planogram zvlášť a ručně bez jakékoli pomoci, jako je třeba detekce kolize objektů. To znamená, že každá kategorie bude mít pouze jeden standardní planogram nebo jej merchandiser nakreslí pro každou prodejnu zvlášť. Cena: $297 pro jednoho uživatele http://www.smartdraw.com/
Shelf Logic Master version 14.3 revision 9 – chytrá kreslící aplikace s pomocnými funkcemi (detekce kolizí, přisunutí vedle dalšího produktu/k dané polici). Podporuje jak skříně s policemi, tak s háčky na pověšení zboží. Výstupní planogram je standardní (ne specifický pro každou prodejnu) a má jeden
7 Heat map (česky tepelná mapa) zobrazuje intenzitu zkoumané vlastnosti v jednotlivých oblastech pomocí barev (modrá – nízká, zelená – střední, červená - vysoká).
12
z formátů: planogram s obrázky produktů, schematický planogram nebo pouhý seznam produktů. Obsahuje propracovanou databázi produktů s mnoha možnostmi importu. Z dat prodeje vytváří jednoduché reporty ke každému konkrétnímu planogramu. Cena: $1000 pro jednoho uživatele http://www.shelflogic.com/Demos.htm
TechniCon: Product configurator – nástroj pro vytváření jednoduchých standardizovaných planogramů pro výrobce, který rozešle své produkty do maloobchodů spolu s doporučeným vystavením ve formě planogramu. Produkty podporují 3D zobrazení. Cena: individuální http://monster.technicon.com/products_planogram.html
specifické pro prodejnu; bez DM; estetické planogramy:
Quant – vzniklo na základě softwarového projektu IPPS (viz [10]), který byl obhájen v roce 2005 na MFF. Na vstupu dostane půdorysy prodejen s přesnými rozměry skříní, rozdělení těchto prodejen do skupin, produkty s rozměry a s obrázkem a rozdělení produktů do kategorií. Umožňuje kreslit planogramy pro celou skupinu prodejen tak, že sdružuje podobné skříně stejné kategorie do skupin skříní a merchandiser definuje pravidla umístění produktů pro jednu standardizovanou skříň v každé skupině skříní. Na základě těchto pravidel se pak produkty rozdistribuují do všech prodejen a výstupem tedy bude estetický planogram s přesnými rozměry pro každou skříň generovaný automaticky. Planogramy distribuuje přes webový portál. Obsahuje pouze minimální podporu DM: zobrazuje tržní podíl produktu, značky nebo planogramu. Cena: QuantPE - 199 EUR pro jednoho uživatele; QuantEE – 17 až 40 EUR za měsíc pro jednu prodejnu http://www.iquant.eu
bez specifičnosti; DM; estetické planogramy:
Spaceman - „Spaceman Store Designer“ slouží pro vytváření 3D modelů prodejen (kompatibilní s CAD systémy). „Spaceman Product Planner“ nabízí porovnání a ohodnocení produktů na základě zvolených kritérií (obrat, výnos). „Spaceman Professional“ je nástrojem pro vytváření planogramů buď pro skupinu prodejen nebo pro jednu konkrétní prodejnu. Umí navrhnout správný počet kusů k umístění z jednotlivých produktů. Jeho odlehčená verze je „Spaceman Merchandiser“. „Spaceman Stock Planner“ spravuje sklad, upozorňuje na případný výpadek produktů a dokáže automaticky generovat planogram pro danou skříň na základě stavu skladu. Cena: 20000 EUR základní licence + 7000 EUR za každého uživatele + 2000 až 6000 EUR/rok poplatek za podporu http://www2.acnielsen.com/products/ms_spaceman_merchandiser.shtml
13
PlanoGraphics 3.5 – kreslící program velice podobný Shelf Logic Master. Má méně propracovanou databázi, ale disponuje funkcí „planogram builder“, která umí třídit zvolené bloky produktů podle zvoleného kritéria a dat z prodeje a pak ze setříděného seznamu naplní danou skříň. Při použití této funkce ovšem musí mít merchandiser již jasnou představu, jak velké bloky chce umístit na daný planogram a ze kterých produktů. Cena: $399 http://www.planographics.com/
specifické pro prodejnu; DM; estetické planogramy:
Apollo Designer workstation – na základě jednoduché šablony planogramu a dat specifických pro každou prodejnu (rozměry skříní, tržby, zákaznické zvyky) generuje planogramy s přesnými rozměry, které lze prohlížet ve dvou i ve třech dimenzích. Toto generování řídí uživatelem zadaná pravidla, která se nastavují na základě dat o prodejích, ze skladu, o zákaznických zvycích, o sortimentu atd. Další DM nástroj ze sady Apollo -„Apollo Total Store“- nabízí analýzu dat z prodeje a návratnosti investic pomoci vizualizace na půdorysu prodejny. Cena: individuální http://www.retailsmart.com/Products/products.htm
Intactix - „Floor Planning“ vytváří půdorysy prodejen. „Space Planning“ vytváří planogramy v 2D i 3D a nabízí analýzu planogramů podle zvolených kritérií, umí editovat víc planogramů společně. „Space Automation“ rozšiřuje modul „Space Planning“ pomocí skriptů a automatizuje import finančních dat do půdorysů a planogramů. „Shelf Assortment“ pomáhá ve strategických rozhodnutích o sortimentu a jemu přiděleném místu. Cena: individuální http://www.jda.com/solutions/space-category-overview.html
Galleria – kompletní sada nástrojů splňující všechna kritéria. Společným vstupním bodem všech aplikací této sady je „Solutions platform“, což sbírá a ukládá všechna potřebná data (EPOS8, půdorysy prodejen, rozměry skříní, rozměry produktů, data od dodavatelů, průzkumy trhu, nákupní zvyky zákazníků a další) k vytváření předpovědi poptávky a k napojení na ostatní aplikace. Jedna z těchto aplikací je „Micro Space Planner“ ve které merchandiser vytvoří šablonu pro ideální planogram. Tato šablona je pak vstupem aplikace „Automated Micro Space Planner“, která automaticky vytvoří planogramy s přesnými rozměry pro každou prodejnu na základě dané šablony a specifických kritérií nastavených merchandiserem. Další aplikace ze sady jsou: „Micro Cluster Planner“ pro správné seskupení prodejen, „Automated Micro Assortment Planner“ a „Macro Assortment Planner“ pro správný výběr sortimentu. Cena: individuální http://www.galleria-rts.com/html/products/index.htm
8 Electronic point of sale – elektronické pokladní zařízení (např. se čtečkou čárových kódů), které sbírá a archivuje data o prodeji a nákupních košících
14
2.3 Cíle práce Tato diplomová práce je zaměřena na situaci řetězce prodejen s již zavedeným merchandisingem. Cíli práce jsou: provést obecnou analýzu možností automatizace opakujících se činností z merchandisingového postupu, který je popsán v kapitole 1.2.1; vytvořit flexibilní návrh automatizovaného řešení; implementovat funkční prototyp navrhovaného řešení. Tuto automatizaci s přijatelným výstupem poskytují (v různé míře) pouze poslední 3 produkty z kapitoly 2.2, které jsou kvůli vysoké ceně dostupné pouze pro opravdu velké řetězce. Výsledek této práce – navrhovaná automatizace – by měl sloužit jako návod k vylepšení levnějších softwarových řešení pro merchandising a snížit tak množství práce i pro řetězce, které si ta nejdražší řešení nemůžou dovolit. Z kapitoly 2.1 víme, že krok 4 není vhodný předmět pro automatizaci, protože jeho provedení potřebuje nápad merchandisera. Pro automatizaci zbývají tedy kroky 2 a 5, které již vhodným předmětem jsou. Cílem je tedy najít způsob, jak algoritmizovat proces návrhu rozmístění a napovídat merchandiserovi, které produkty se vyplatí umístit do skříní a jak. Hledané automatizované řešení by mělo být schopno generovat estetické planogramy pro celý řetězec prodejen s přesnými rozměry skříní. Tyto planogramy by měly být založené na analýze dat o prodeji. Ovšem navržení kompletního merchandisingového řešení od základů by bylo daleko nad rámec diplomové práce, proto bude tato práce stavět na existujícím řešení. Jako základ k rozšíření byl zvolen Quant (základní popis viz v kapitole 2.2) z následujících důvodů: má dobrou podporu pro estetiku a specifičnost planogramů (tj. chybí mu pouze část s data miningem); jeho vlastník – ExTech, s.r.o. – souhlasil se spoluprací s autorem ve prospěch této práce, aby si svůj systém vylepšil o část data miningu a tak mohl konkurovat dražším a vyspělejším systémům. Nicméně, toto rozšiřované řešení bude sloužit pouze jako demonstrační nástroj navrženého systému. Podle vytvořené analýzy a návrhu lze automatizovat i jiná existující řešení.
15
3 Struktura práce
Tato kapitola nabízí přehled zaměření dalších kapitol této práce. Čtvrtá kapitola analyzuje možnosti automatizovaného řešení z různých hledisek a specifikuje základní požadavky jak na návrh seznamu produktů k umístění, tak na návrh samotného umístění. Pátá kapitola popisuje návrh řešení postaveného na systému Quant. Nejdřív popíše vybraný systém, který bude následně upraven a použit pro demonstraci vytvořeného řešení, pak navrhne samotné řešení ve dvou variantách:
ideální – jak by vypadalo řešení v ideálním případě a jaké změny by vyžadovalo ve výchozím systému;
realizovatelné – v některých aspektech slabší řešení než ideální, nicméně je to nutný kompromis kvůli omezením výchozího systému.
Šestá kapitola popisuje prototypové řešení, což je implementace realizovatelné verze návrhu z páté kapitoly. Nejdřív uvede uživatelskou dokumentaci a pak programátorskou. Sedmá kapitola zhodnotí, nakolik byly vytyčené cíle splněny ideálním a realizovatelným návrhem, pak uvede možnosti dalšího vývoje a srovnání nového řešení s existujícími přístupy. Osmá kapitola pak shrnuje přínosy práce. Rozsah práce Rozsah autorova práce je znázorněn pomoci dvou spustitelných verzí systému Quant připojených k diplomové práci. První verze je výchozí stav systému, na čem tato práce staví. Tato verze je popsána na uživatelském úrovni v kapitole 5.1. Druhá verze je výsledný stav systému, tj. prototypová implementace navrhovaného řešení. Tato verze je popsána na uživatelské i programátorské úrovni v kapitole 6. Z porovnání těchto dvou verzí systému ale i z návrhu řešení (viz kapitola 5) by mělo být množství vynaložené práce dostatečně zřetelné.
16
4 Analýza problému
Tato kapitola analyzuje možnosti automatizovaného řešení opakovaných kroků merchandisingového postupu z různých hledisek a specifikuje základní požadavky jak na návrh seznamu produktů k umístění (kapitola 4.2), tak na návrh samotného umístění (kapitola 4.3). K posouzení požadavků na hledané řešení je nejdřív nutné znát očekávání a potřeby uživatelů. Tyto potřeby typizovaných uživatelů shrnuje kapitola 4.1.
4.1 Typizovaní provozovatelé merchandisingu Obchodní řetězce provozující nějakým způsobem merchandising lze rozdělit na několik skupin podle počtu prodejen v řetězci a podle rozměrů jednotlivých prodejen. Pro jednoduchost uvažujme pouze dvě velikosti řetězce (do 10 prodejen; víc než 10 prodejen) a dvě velikosti prodejny (do 20 skříní; víc než 20 skříní). Takové rozdělení vytváří 4 skupiny řetězců, které jsou níže popsány. Malý řetězec malých prodejen Malé prodejny znamenají buď malý sortiment (pouze s několika oddělenými kategoriemi), nebo široký sortiment vtěsnaný do malého prostoru. Představitelé první možnosti mají omezený sortiment obvykle kvůli zaměření na vzácné nebo luxusní a drahé zboží, které stačí na to, aby uživilo obchod. Příkladem takového řetězce je LUSH se 3 prodejnami nabízející ručně vyráběnou kosmetiku nebo Calivita s 10 prodejnami a 11 kategoriemi prodávající potravinové doplňky a vitamíny. Tyto řetězce implementují merchandising obvykle s čistě lidskými zdroji. Vybírají tedy personál do prodejen s přihlédnutím k estetickému cítění kandidáta a k jeho citu pro obchod. Veškerou úpravu vystavení zboží pak provádí personál podle vlastního vkusu. Do druhé skupiny patří řetězce s nedostatkem financí na větší prodejny. Zmíněné vtěsnání širokého sortimentu do malého prostoru způsobuje umístění produktů z různých kategorií do stejné skříně. Takové promíchání kategorií (vyjma případu křížového merchandisingu vysvětleného v kapitole 1.2.1) způsobuje nepřehlednost sortimentu a znesnadní aplikaci merchandisingu. Na druhou stranu tyto řetězce si ani nemůžou dovolit investici do merchandisingu. Příklady pro tento typ řetězce se těžko hledají, protože jde většinou o firmy, které nejsou příliš známé.
17
Malý řetězec velkých prodejen Velké prodejny již poskytují dost prostoru jak na široký sortiment, tak na realizaci pokročilejších taktik merchandisingu. Obvykle zaměstnávají na plný úvazek merchandisera (nebo tým merchandiserů), který má na starosti všechny prodejny. Pokud jsou prodejny opravdu velké, má každá svůj vlastní tým. Správa velkého množství kategorií a skříní se již neobejde bez softwarové podpory. Nicméně, nemusí to být centralizované řešení (každá prodejna může pracovat na „vlastním písečku“) a nemusí nutně využívat ani planogramy. Důležitější jsou statistiky prodeje a umístění produktů podle nich. Příkladem takového řetězce je Manufaktura (6 prodejen, 22 kategorií) nebo SANU-BABU (9 prodejen, 20 kategorií). Velký řetězec malých prodejen I zde platí, že malé prodejny samy nemají dost financí na kvalitní merchandising. Pokud je ale jejich řetězec dost velký, obvykle zřídí společně jednu centrálu, odkud se spravuje sklad, logistika, marketing i merchandising pro celý řetězec. V takové centrále je buď jeden merchandiser, který plánuje vystavení sortimentu (což je pak implementováno personálem prodejny), nebo celý tým merchandiserů, kteří jezdí do prodejen osobně a dohlédnou na správnou implementaci záměru hlavního merchandisera. Taková centrála již potřebuje seriózní software pro merchandising podporující planogramy, ekonomické reporty a centralizované plánování skladu. Příklady tohoto typu řetězce jsou Vitaland (62 prodejen), Lékárny Lloyds (43 lékáren), DrMax (93 lékáren) a Esso (43 čerpacích stanic). Velký řetězec velkých prodejen Správa této skupiny je podobná předchozí skupině, ale zde již každá prodejna má svůj vlastní tým merchandiserů, který implementuje plány získané od centrály a poskytuje rychlejší zpětnou vazbu hlavnímu merchandiserovi o případných nedostatcích plánu, stavu skladu atd. K tomu je již potřeba centralizovaný software, který má v prodejnách instalovány klienty se kterými komunikuje, do kterých distribuuje plány rozmístění a od kterých získává data o prodeji a stavu skladu. Příklady takového řetězce jsou Tesco (111 prodejen), Albert (244 prodejen) a Billa (105 prodejen).
4.2 Výběr správných produktů k umístění Výběr správných produktů, tj. rozhodování o tom, které konkrétní produkty z jednotlivých kategorií bude řetězec nabízet, je složitý a důležitý problém. Je složitý, protože vágní termín „správný produkt“ znamená pro každý řetězec něco jiného podle jeho aktuálních obchodních cílů. Pokud nebudeme uvažovat méně časté a krátkodobé cíle, tak zůstanou 2 hlavní dlouhodobé strategie: dosáhnout největší možný zisk a zabezpečit co nejstabilnější pozici na trhu (resp. nejstabilnější růst tržního podílu). Výběr produktů je také důležitý, protože sestava sortimentu je jedním z hlavních ovlivňujících faktorů úspěšnosti prodeje. 18
Výběr produktů se v reálném životě odehrává buď na základě ekonomických analýz, nebo na základě konsensu výběrové komise. Tuto komisi tvoří vybraní experti, kteří musí nejenom dobře znát všechny produkty daného průmyslového odvětví, ale musí mít také přehled o aktuálním vývoji trhu, o trendech, a umět tyto trendy předvídat. Pokud řetězec takovou komisi nemá nebo více důvěřuje exaktním způsobům, tak použije statistické nástroje a ekonomické analýzy. Nutno podotknout, že tyto ekonomické analýzy má také výběrová komise mezi podklady při rozhodování. Naštěstí se tyto ekonomické analýzy dají dobře automatizovat. Princip automatizovaného výběru produktů tedy bude ve všech případech obdobný: všechny produkty se nějakým způsobem ohodnotí (viz kapitola 4.2.1), pak se celý seznam setřídí podle daného ohodnocení a nakonec se určí, kolik produktů (resp. značek) s nejvyšším ohodnocením se vybere pro umístění (viz kapitola 4.2.5). Ohodnocení produktů se téměř vždy opírá o předpovědi prodeje (viz kapitola 4.2.2 až 4.2.4).
4.2.1 Ohodnocení produktů V obchodním světě existují dvě hlavní metody pro určení, který produkt je dobrý a který není. Jedna metoda třídí produkty podle obratu (počtu prodaných kusů), kdežto druhá podle zisku (marže násobená obratem). Metoda počítající s obratem si klade za cíl maximalizaci počtu prodaných kusů. Její výhody jsou: s rostoucím obratem roste i absolutní zisk; vystavuje produkty s nejvyšším obratem, tj. nejžádanější produkty, které zákazníka přitáhnou; přidružené nákupy – když zákazník (např. v lékárně) najde nějaký produkt, který potřebuje (čaj na nachlazení), tak si již obvykle koupí i něco jiného (vitamíny), protože přešel ze stavu hledání do stavu nakupování; 3 žádané produkty se prodávají samy – není potřeba vynaložit žádné úsilí k dosažení prodeje; větší stabilita – výkyvy v prodeji mají menší dopad na zisk, kvůli velkému počtu prodaných kusů. Metoda počítající ziskem slibuje ve výsledku maximalizaci zisku prodejny, zvýhodňuje však produkty s vyšší marží, které třeba mají za cílovou skupinu movitější zákazníky. Její výhoda je, že stačí pár prodaných kusů s vysokou marží k dosažení stejného zisku, na který druhá metoda potřebuje desítky až stovky prodejů. Její nevýhody jsou: produkty se neprodávají samy, prodejna musí vynaložit jisté úsilí pro vznik prodeje (personál prodejny aktivně nabízí zboží, tráví víc času se zákazníky, prodejna musí produkty víc inzerovat); méně spontánních nákupů kvůli vyšší ceně; menší stabilita – generovaný zisk je citlivější na výkyvy v prodeji, změny zákaznických preferencí, módy atd. Obě metody mají své příznivce mezi obchodníky i merchandisery, a proto by navrhované řešení mělo podporovat obě. Uživatelům, kterým nevyhovuje plně ani jedna 19
z nich, by bylo možné poskytnout třetí možnost: přizpůsobitelný vážený průměr obou metod. Tato nová metoda by umožnila uživateli vytvořit ohodnocení produktů, kde on sám zvolí váhu, jakou klade na obrat a jakou na zisk. Například by tak bylo možné zvolit ohodnocení, které ze 30% počítá se ziskem a ze 70% s obratem. K ohodnocení produktů potřebují obě zmíněné základní metody (podobně jako jejich navrhovaná kombinace) data o prodeji. Metoda obratu vystačí s počtem prodaných kusů, metoda zisku však potřebuje i marži produktu. Jestliže merchandiser připravuje rozmístění produktů pro budoucí období (nikoli minulé), ideální ohodnocení by mu mělo ukázat, jak dobrý bude daný produkt v plánovaném příštím období, tedy v budoucnu. K takové předpovědi se lze dopracovat (viz kapitola 4.2.2 a 4.2.4), nicméně bude platit pouze s jistou pravděpodobností. Existuje ještě jedna málo užívaná metoda, která s obratem vůbec nepočítá. Ta vychází pouze z marže produktu, tj. za nejlepší považuje produkty s nejvyšší marží. Jejím cílem je dosažení nejvyššího možného zisku – stejně jako u metody zisku –, ale dělá to riskantnějším způsobem, protože umísťuje produkty s nejvyšší marží, i když daný produkt není dobře prodejný. Takové produkty se vyskytují, když:
Výrobce nebo jeho nový produkt je ještě neznámý na trhu, proto dodává produkt se slevou, aby na něm prodejna mohla mít vyšší marži a proto jej vystavila.
Produkt je ve fázi zániku, tj. zákazníci o něj mají menší zájem než dříve a produkt již není konkurenceschopný na trhu. V tomto případě jedna z možností výrobce je snížit cenu produktu směrem k maloobchodním prodejnám.
Produkt má nižší kvalitu než jeho konkurence (např. přezrálé ovoce), a proto musí dodavatel zajistit odběr snížením ceny směrem k prodejnám.
U této metody řízené marží nemůže mít prodejce jistotu, že nakoupené zboží prodá, protože se může stát, že nabízí špatné produkty (v očích zákazníka). Předmět předpovědi Předpověď je tedy potřeba stanovit pro obrat a pro zisk, přičemž zisk je součinem obratu a marže. Z toho vyplývá, že mezi těmito veličinami určitě existuje jistá závislost. To, jaká závislost je a jak ovlivní předpověď do budoucna, je diskutabilní. Nabízí se několik možností: Lze počítat zisk jako součin předpovídaného obratu a marže, přičemž obrat a marže se pokládají za nezávislé veličiny. V tomto případě se obrat předpovídá samostatně. Pro určení budoucí marže je několik možností: předpokládat konstantní vývoj marže, tj. pro období předpovědi se použije poslední známá marže; požádat merchandisera o zadání marže (tato volba ale znemožní automatizaci); předpovídat marži z minulých dat o prodeji obdobným způsobem jako obrat. Zisk lze také předpovídat jako samostatnou veličinu místo výpočtu z obratu a marže. V tomto případě se také předpokládá, že zisk a marže jsou nezávislé veličiny. Za předpokladu, že obrat je závislý na marži, protože ta ovlivňuje cenu produktu, lze uvažovat o možných následcích změny marže: 20
větší marže z důvodu stejné nákupní ceny a vyšší prodejní ceny pravděpodobně sníží prodejnost a způsobí menší obrat; větší marže z důvodu nižší nákupní ceny a stejné prodejní ceny pravděpodobně nezmění prodejnost a způsobí stejný obrat; menší marže z důvodu stejné nákupní ceny a nižší prodejní ceny pravděpodobně zvýší prodejnost a způsobí větší obrat; menší marže z důvodu vyšší nákupní ceny a stejné prodejní ceny pravděpodobně nezmění prodejnost a způsobí stejný obrat. Z toho vyplývá, že obrat je spíše závislý na změnách prodejní ceny než na marži. Tato závislost ale znamená, že k předpovědi obratu je potřeba nejdřív předpovědět prodejní cenu.
4.2.2 Hlediska předpovědi prodeje Předpověď prodeje závisí vždy na předpovědi poptávky. Poptávku lze měřit i předpovídat podle těchto hledisek: hledisko prostorové – svět, stát, region, skupiny prodejen nebo samotná prodejna; hledisko výrobkové – průmyslový prodej, prodej firmy, prodej určité výrobkové řady nebo značky (např. všechny produkty značky Pfanner), prodej určitého druhu výrobků (např. dvoulitrové pomerančové šťávy všech značek) a prodej samostatné položky; hledisko času (časový horizont poptávky) – krátkodobá (příští týden nebo měsíc), střednědobá (příští kvartál nebo půlrok), dlouhodobá (příštích 1 až 5 let); hledisko frekvence dat – den, týden, měsíc, kvartál, rok. O těchto hlediscích se musí rozhodnout před každou předpovědí. Nicméně, určitým typům řetězců (viz kapitola 4.1) a jejich průmyslovým odvětvím obvykle vyhovuje jedna konkrétní kombinace hledisek. Hledisko prostorové Malé řetězce můžou zvolit pochopitelně pouze předpověď pro své jednotlivé prodejny nebo pro celý řetězec. Velké řetězce mají rozdělené své prodejny do organizačních skupin většinou podle regionů (tj. podle geografické polohy prodejen), ale někdy i podle podobnosti prodejen pro potřeby merchandisingu. Tato podobnost může být například v sestavě zákazníků a nákupních zvyklostí. Zkušenost ukazuje, že pro tyto podobné prodejny je dobré mít stejné planogramy. Prodejny z jiných skupin ale potřebují jiné planogramy, které reflektují odlišnosti v charakteristikách skupin. Předpovědi pro vyšší úrovně než skupina prodejen používají pouze celostátní nebo mezinárodní řetězce, a to pro jiné účely než vytváření planogramů (např. pro marketingové strategie). Existují i různé instituce, které vedou statistiky o prodejích celého průmyslu a tak poskytují základ k určení tržního podílu konkrétního řetězce.
21
Hledisko výrobkové Pro účely vytváření planogramů se dělají předpovědi pro samostatné položky, z čehož se pak zkonstruují předpovědi pro skupiny produktů. Způsob vytváření skupin produktů závisí na tom, jakou metodou staví merchandiser bloky (podle značek nebo podobnosti). Při zavedení nového produktu je problém v tom, že pro daný produkt nejsou k dispozici žádná data o předchozím prodeji. V tomto případě může pomoct předpověď skupiny. Pokud se daný produkt zařadí do existující skupiny produktů, lze předpokládat, že celkový prodej skupiny se nezmění dramaticky. Proto lze odhadnout prodej nového produktu jako část prodeje skupiny. To, jak velká část to bude a na úkor kterých produktů je získá, je věc subjektivního názoru analytika, který předpověď vytváří. Pokud novým produktem vznikne i nová skupina, a proto nelze použít výše zmíněnou taktiku, je potřeba použít předpověď existujícího produktu, který se novému nejvíc podobá. Hledisko času Řetězce prodejen, které zákazníci navštěvují víckrát za týden (např. supermarkety), mění rozmístění produktů jednou za týden nebo 14 dní. Potřebují tedy krátkodobou předpověď. Řetězce s nižší frekvencí návštěv (např. lékárny, prodejny oblečení a obuvi, sportovní prodejny) mění rozmístění produktů jednou za 2 až 3 měsíce. Tento případ vyžaduje střednědobou předpověď. Dlouhodobé předpovědi se používají k vytváření planogramů jen zřídka. Využívá se jich spíš k sestavení dlouhodobých marketingových strategií a obecnějších prognóz. Hledisko frekvence dat Řetězce disponující kvalitním informačním systémem dokážou sbírat a předávat data o prodeji merchandisingovému softwaru s libovolnou frekvencí, třeba i denně. Pokud ale toto předávání dat není automatizované a musí se dělat ručně, pravděpodobně se bude dít s menší frekvencí. Řetězce bez kvalitního informačního systému získávají data o prodeji pracně, a proto je předávají merchandisingovému systému ve větších intervalech (měsíčně nebo jednou za kvartál). Základní požadavek pro frekvenci předávání dat určuje již zmíněné hledisko času: pro krátkodobou předpověď je nutné mít vysokou frekvenci dat (denní až týdenní), pro střednědobou střední frekvenci (měsíční až kvartální) a pro dlouhodobou stačí nízká frekvence (roční). Jiné požadavky můžou být v případě, že daný software použije data o prodeji i k jiným účelům než k předpovědi prodeje (např. k porovnávání zisku různých prodejen v menších časových intervalech než potřebují planogramy).
22
4.2.3 Definice základních pojmů předpovědi K pochopení zákonitostí předpovědi je potřeba zadefinovat několik pojmů. Tyto definice pochází od profesora Tomka [11].
Poptávka trhu je celkové množství výrobků, které může koupit určitá skupina zákazníků v určité oblasti v určité době, při určitém marketingovém okolí a určitém marketingovém programu. Poptávka trhu není dána pevným číslem, ale je funkcí daných podmínek - lze ji nazvat: funkce poptávky trhu, funkce odezvy trhu.
Předpovědí trhu je stanovení poptávky trhu odpovídající uskutečnitelné úrovni marketingových výdajů. Jde o očekávanou výši, nikoliv o maximální výši poptávky. Tu si můžeme představit při velmi vysokých marketingových nákladech, kdy začíná být zvýšení poptávky pouze nepatrné.
Poptávka firmy je podíl na poptávce trhu, je funkcí prodejní odezvy.
Předpověď firmy je očekávaná úroveň prodeje firmy odpovídající zvolenému marketingovému plánu a marketingovému prostředí. K odhadnutí průmyslového prodeje (tj. předpovědi trhu) je potřeba identifikovat konkurenty a velikost jejich prodeje. Získávání těchto informací je mnohdy problematické. Odhadnutí budoucí poptávky je snadnější v případě, že úroveň poptávky, vývoj trendu a konkurence jsou téměř konstantní. Bohužel však tento případ bývá vzácný a častěji jde o složitější úkol. Přesnost předpovědi Přesnost předpovědi se definuje pomocí chyby předpovědi (viz [12] a [13]) jako: PřesnostMax 1Procentuální chyba , 0 ,
kde schematicky
23
Procentuální chyba
RealitaOdhad . Realita
Přesnost se tedy pohybuje mezi 0 až 100% a pochopitelně čím větší je přesnost předpovědi, tím menší je chyba a tím blíž k sobě jsou reálná a odhadnutá hodnota. Chyba předpovědi E pro časový bod t je E tY tF t , kde Y je reálná hodnota a F je předpověď pro časový bod t. K výpočtu agregované procentuální chyby přes všechny produkty se používá metoda, kterou obchodníci nazývají MAPE (Mean Absolute Percentage Error) neboli střední absolutní procentuální chyba, případně WMAPE neboli vážená MAPE. V akademické sféře se tato metoda nazývá PMAD (Percent Mean Absolute Deviation) neboli procentuální střední absolutní odchylka. N
Y j , tF j , t WMAPE PMAD
t1
N
,
Y j , t t1
kde se součet absolutních chyb přes všechny produkty (jejichž počet je N) vydělí součtem absolutních reálných hodnot.
4.2.4 Metody předpovědi prodeje Existuje značné množství metod předpovědi prodeje. Jednou z často využívaných je tzv. třístupňová metoda Philipa Kotlera. První stupeň této metody zahrnuje předpověď vývoje parametrů makroprostředí9. Bere v potaz faktory jako míra inflace, nezaměstnanost, úrokové sazby, úspory, investice, státní výdaje, spotřebitelské výdaje, sociální dávky, vývoj obchodní a platební bilance a vývoj HDP. Druhý stupeň stanoví předpověď celkové poptávky v daném dílčím trhu (v oblasti trhu, kam patří i firma, která je předmětem předpovědi) použitím výsledků z prvního stupně. Ve třetím stupni se na základě podílu firmy na trhu a výsledku druhého stupně určí poptávka firmy. Všechny zmíněné předpovědi čerpají informace ze třech typů zdrojů: co lidé říkají – informace od prodejců, expertů, zákazníků, dodavatelů atd.; co lidé dělají – zjištění, jak se tyto subjekty chovají na trhu na základě testování trhu, kupního rozhodování, testování odezvy zákazníků; co lidé udělali – zjištění, jaká byla minulá realita na základě statistických údajů 9 Makroprostředí tvoří širší společenské faktory a síly, které působí na všechny aktéry v okolí podniku i na podnik samotný.
24
o trendech, kolísání, sezónnosti ve vývoji realizované poptávky a mimořádných jevech v minulém prodeji. Konkrétní metody používané pro jednotlivé kroky lze rozdělit do tří kategorií: názorové metody, analýza časových řad a kauzální metody. Podrobnosti o těchto metodách lze nalézt v [11], [14], [13] a [15]. Názorové metody Názorové metody sbírají názory, intuitivní a pravděpodobnostní odhady kompetentních osob:
Expertní názory – obchodníci, distributoři, dodavatelé, marketingoví specialisté, poradci, pracovníci marketingových agentur apod. mohou pomáhat nebo rovnou provést předpověď budoucí poptávky. Na tom je založena Delfská metoda, při které vybraná skupina expertů sděluje svůj názor na budoucí vývoj ve více kolech. Po každém kole je vedoucí seznámí s anonymními výsledky předchozího kola a v příštím kole můžou odpovídat na stejné otázky jinak. Idea této metody je, že účastníci se navzájem ovlivňují svými názory a po určitém počtu kol dosáhnou konsenzu ve správné odpovědi.
Statistické průzkumy – používají se pro získání kvantitativní informace. Průzkumy jsou zaměřené podle potřeby na názory nebo na fakta, ale nejčastěji obsahují otázky pro jednotlivce. Otázky jsou obvykle strukturované a standardizované tak, aby žádná otázka neovlivnila odpověď na ostatní otázky. Každý subjekt průzkumu má dostat stejné otázky ve stejném pořadí. Platforma pro uskutečnění průzkumů jsou interview přes telefon, dotazník přes e-mail nebo webový formulář a osobní návštěva domácností. Pokud nelze provést dotazování koncových zákazníků, průzkum se orientuje na obchodní zástupce, pracovníky prodeje, pracovníky zprostředkovatelských firem apod. Někdy je nutné tyto odhady korigovat, protože jsou optimistické nebo pesimistické podle povahy odhadujícího.
Vícenásobné scénáře – sestavují se obrazy alternativních budoucností. Každý alternativní scénář je konzistentní a dostane určitou pravděpodobnost, že nastane. Hlavním cílem této metody je, aby se vedení firmy připravilo na všechny pravděpodobné scénáře a tak nemůže nastat nepříjemná situace, se kterou se dopředu nepočítalo.
Předpověď technologie – je odhad budoucí charakteristiky užitečných technik, metod a strojů. Odhadují se technické parametry jako rychlost bojových stíhaček, síla budoucích motorů, přesnost měřících přístrojů nebo počet tranzistorů na jednom čipu. Přitom se nediskutuje o tom, jak se těchto hodnot dosáhne, pouze o tom, kdy a jaké výšky hodnoty. Z předmětů odhadů jsou taky vyloučeny věci luxusního charakteru (bez obecné užitečnosti). Tato metoda se používá v rámci předpovědi vývoje prostředí a je vhodná pro dlouhodobé prognózy.
Předpovídání poptávky/rizika – identifikují se důležité události, které mohou významně ovlivnit firmu. Každá událost je hodnocena podle její konvergence s aktuálně významnými trendy ve společnosti. Čím vyšší je konvergence, tím je větší 25
pravděpodobnost, že daná událost nastane. Jevy s největší pravděpodobností jsou dále zkoumány.
Marketingové testování trhu – pokud nejsou k dispozici lepší metody předpovědi, například kvůli zavedení nového produktu, změně distribučního systému, hodně nestabilnímu trhu nebo vstupu firmy na nový trh, je potřeba přistoupit k přímému testování trhu. Cílem je zjistit, jak reagují zákazníci a obchodníci a jak velký je daný trh. Při testování spotřebního zboží je potřeba zajistit zkušební nákupy, první opakované nákupy, adaptaci výrobků podle nákupních preferencí, výzkum vlnovitého prodeje a simulaci trhu (laboratorní test trhu). Analýza časových řad
Tyto metody vychází z předpokladu, že k předpovědi budoucího vývoje zkoumané veličiny stačí mít k dispozici dost dlouhou historii minulých hodnot. Tyto analýzy tedy nehledí na vnější faktory, které můžou ovlivňovat danou veličinu. Korektní definici časových řad lze nalézt například v [16]:
Časovou řadou se rozumí posloupnost pozorování kvantitativní charakteristiky uspořádané v čase směrem od minulosti k přítomnosti. Poznání zákonitosti vývoje časových řad a rozbor příčin, které k nim vedly, umožňuje předvídání budoucího vývoje těchto řad. Slovo „posloupnost“ v uvedené definici nabádá k představě diskrétní množiny bodů v čase, ve kterých se změří daná veličina. Tj.:
y t , t T , kdeT 1,2, ... , n . Nicméně, existuje i spojitá varianta, leč méně často užívaná:
y t , t T , kde T 0,1 . Předpovědi u časových řad můžou mít dvě formy: bodová předpověď – udává nejlepší odhad budoucí hodnoty: y t1260 pro časový bod t ; intervalová předpověď – udává interval, ve kterém budoucí hodnota leží s určitou pravděpodobností: y t 1220, 1300 s 95 % spolehlivostí .
Metody pro analýzu časových řad jsou:
Spektrální analýza – analyzuje časové řady ve spektrální doméně. Základním principem metody je, že časová řada je směsí nespočetně mnoha periodických složek. Cílem je tedy vyjádřit časovou řadu ve tvaru:
0
0
y t cos t d u sint d v ,kde 26
u a v jsou náhodné procesy indexované pomocí 0, .
Teoretický základ této metody je značně složitý a obsáhlý, proto je zde její popis uveden pouze heslovitě, bez korektních definic a vysvětlení pojmů. V případě hlubšího zájmu je čtenář odkázán na odbornou literaturu [15] nebo [17]. Stručný popis nejdůležitějších pojmů: 1. Časová jednotka je časová vzdálenost mezi sousedními pozorováním. 2. Úhlová frekvence se značí a udává se v radiánech za časovou jednotku. Čím větší je úhlová frekvence, tím častěji se v průběhu dané časové řady cykly opakují. Například 2 znamená, že za časovou jednotku se uskuteční právě jeden cyklus. 3. Niquistova frekvence je nejvyšší úhlová frekvence, která umožňuje studovat periodické chování časové řady. Její hodnota je . 4. Spektrální hustota představuje intenzitu periodických složek v jistém frekvenčním rozsahu. 5. Periodogram je nástroj pro hledání významných periodických složek časové řady. Představuje velmi hrubý odhad spektrální hustoty. Periodogram I pro časovou řadu y1, y 2, ... , y n se definuje jako: I
1 a 2 b2 pro , 4
kde
2 n 2 n a
y cos t a b n y t sin t . n t1 t t 1 6. Filtry (useknutého typu, symetrické, jednostranné atd.) transformují původní časovou řadu do vhodnější formy. Obvykle slouží k vyrovnávání řady stejně jako metoda klouzavých průměrů. 7. Testy periodicity (Fisherův, Siegelův) představují objektivní metody pro rozhodování, zda je možné pro danou řadu zkonstruovat model: p
y t j cos j t j sin j t j ; t1,2 ,... , n , j1
, j , j kde frekvence.
jsou neznámé parametry,
j 0,
navzájem různé
Dekompozice – klade si za cíl dekompozici časové řady na její 4 základní složky: y tTr t C tI t t pro aditivní model a 27
y tTr tC tI t t pro multiplikativní model , kde Tr t je trend reprezentující dlouhodobé změny v průměrném chování řady; je výsledkem vlivů faktorů, které působí systematicky, C t je cyklická složka, která má periodický charakter a způsobuje vlnovitý pohyb prodeje,
I t je sezónní složka, která způsobuje cyklické výkyvy v prodeji opakující se každý rok,
t je náhodná (iregulární, reziduální) složka bez systematického charakteru, např. stávky, klimatické poruchy, změny zálib, tragické události apod. 1. Trend Analýza trendu je nejdůležitějším prvkem dekompozice, protože základní předpovědi se dělají odhadnutím budoucího vývoje trendu. Pokud řada obsahuje cyklickou složku s dlouhým (a nepravidelným) cyklem, bývá těžké ji oddělit od trendu. V takových případech bude výsledkem analýzy trendu vlastně Tr t C t , případně Tr tC t .
Subjektivní metody (technická analýza) – experti ve statistice zkoumají tvary křivek charakterizujících analyzované ukazatele. Hledají ustálené vzorce, které znají, a dokážou tak doplnit tvar právě se rýsujícího vzorce a tím předpovědět budoucí vývoj dané veličiny. Zkoumané grafy jsou buď čárové/čárkové grafy běžných hodnot, nebo grafy s pohyblivými průměry, které stírají výkyvy běžných hodnot a tak nejlépe vystihují trend.
Extrapolační metody – představují aditivní dekompozici bez cyklické a sezónní složky, tj. časovou řadu berou jako kombinaci trendu a šumu: y tTr t t . Snaží se odhadnout trend pomocí matematických křivek pro celý rozsah dat, nebo pouze pro poslední úsek. Obvykle se použije na sezónně očištěnou časovou řadu. Velkým problémem této metody je volba správné křivky. Tuto volbu nejčastěji učiní analytik subjektivně podle svých zkušeností a vzhledu grafu. Po volbě typu křivky se odhadnou její parametry tak, aby nejlépe seděla na původní graf. Toho se dosáhne obvykle metodou nejmenších čtverců nebo vážených nejmenších čtverců. Předpověď hodnoty časové řady v čase t pro všechny typy křivek vznikne tak, že se odhadnou všechny koeficienty dané křivky a do vzniklé trendové rovnice se dosadí místo t hodnota t . Matematické křivky používané k odhadu trendu:
Konstantní trend – konstanta 28
Tr t 0
Lineární trend – přímka Tr t 0 1t
Kvadratický (polynomiální) trend – polynom druhého nebo vyššího stupně Tr t 0 1t 2t 2...rt r
Exponenciální trend – exponenciální křivka t Tr t ; 0
Modifikovaný exponenciální trend – exponenciální křivka s asymptotickou limitou t Tr t ! ; "0, 0""1, ! 0
Logistický trend – S-křivka symetrická kolem inflexního bodu Tr t
! 1
t
; 1, 0""1, ! 0
Gompertzova křivka – asymetrická S-křivka t Tr t exp ! ; "1, 0""1
Spline (splajnové) funkce – místo jednoho polynomu velmi vysokého stupně popisuje trend po úsecích polynomy nízkého stupně. Výsledná funkce, vzniklá spojením těchto dílčích polynomů, musí být spojitá a hladká (musí mít spojité derivace).
Metoda klouzavých průměrů – je adaptivní přístup využívající pojem lokálního trendu a předpokládající, že časová řada je očištěna od sezónních a cyklických fluktuací. Adaptivita znamená, že metodu lze použít i pro časové řady, jejichž trend se v čase mění, a proto je nelze charakterizovat jedinou matematickou funkcí. Tato metoda vyrovnává pomocí polynomů krátké úseky řady. Tj. parametry trendu jsou závislé na čase. Například z lineárního trendu:
Tr t 0 1t vznikne lokální trend Tr t 0 t1 t ; kde je z okolí t , který se zprůměruje v okolí bodu t pro odhad hodnoty y t . Tato vzniklá posloupnost y t představuje trend původní posloupnosti. Počet prvků tohoto okolí se nazývá délkou klouzavého průměru. Řádem klouzavého průměru se nazývá stupeň polynomu použitého pro vyjádření lokálního trendu. 29
Okno (neboli okolí bodu t) klouzavého průměru délky 2m+1 lze zvolit jako posledních 2m+1 hodnot před t :
y t 2m , ... , y t 1 , y t , nebo jako m hodnot před t a m hodnot za t y t m , ... , yt 1 , y t , y t 1 , ... , y tm . Volbou délky okna rovné délce sezóny (případně cyklu) v časové řadě lze eliminovat vliv sezónních (a cyklických) výkyvů a tak získat vyhlazený graf reflektující pouze samotný trend. Tato metoda se většinou používá k očištění časové řady od sezónních a náhodných vlivů. Pro předpověď trendu se doporučují jiné metody. Nicméně, předpověď lze zkonstruovat i s touto metodou. Jelikož poslední regulárně odhadnutou hodnotou y t bývá člen y nm , je potřeba nejdřív vyrovnat posledních m hodnot. Pro tento účel se vypočítají všechny koeficienty lokálního trendu v bodě nm , které budou závislé na . Potom se postupným dosazením hodnot 1,2, … , m za získají konkrétní koeficienty pro výpočet trendové rovnice pro hodnoty y nm 1 , ... , y n1 , y n . Pro předpověď hodnoty y n1 se jednoduše dosadí za hodnota m+1. Níže uvedené varianty klouzavých průměrů mají nulový řád, lze s nimi tedy předpovídat pouze řady s lokálně konstantním trendem. Jejich předpověď bude proto y nm y nm pro libovolné 0 . Nicméně tyto varianty se hodí i pro vyhlazování řady. Varianty klouzavých průměrů:
Jednoduchý klouzavý průměr (SMA – Simple moving average) – je aritmetický průměr řádu 0 a délky M:
y t
y t M 1... y t1 y t . M
Centrovaný klouzavý průměr (CMA – Central moving average) – počítá aritmetický průměr řádu 0 a délky 2m+1 se středem v t :
y t
y t m... y t 1 yt y t1... y t m . 2m1
V případě, že je nutné mít centrovaný průměr sudé délky (např. pro roční sezónu s 12 měsíci nebo se 4 kvartály), je potřeba použít jiný vzorec, protože u předchozího vzorce by prvek s indexem t nebyl v centru průměrované posloupnosti. Nový vzorec používá vážený průměr:
y t
1 y tm 2y t m1 ...2y t ...2 y tm11 y tm . 4m 30
Vážený klouzavý průměr (WMA – Weighted moving average) – počítá vážený průměr s lineárně se snižujícími váhami od nejnovější hodnoty. To znamená, že výsledná hodnota je nejvíc ovlivněna nejnovější hodnotou a starší členy řady ji ovlivňují v menší míře:
y t
1 y tn 12 y tn 2 ...n1 y t 1ny t . 12...n1n
Váhy jednotlivým členům lze přidělit mnoha způsoby, ale musí být dodržené pravidlo, že součet vah se rovná 1 (jako váha členu t-k je zde brána
nk ). 12...n1n
Metoda klouzavých mediánů – patří rovněž k adaptivním metodám, protože je vhodná k analýze řad s trendovou složkou, která podléhá časovým změnám. Její princip je stejný jako u metod klouzavých průměrů řádu 0 – tj. vyrovnává krátké úseky časové řady –, ale místo váženého průměru členů používá medián. Proto taky má pouze jeden parametr – délku vyrovnávacího okna. Oproti metodě klouzavých průměrů má tu výhodu, že není citlivá na náhodně se vyskytující odlehlé (nepřiměřeně vysoké nebo nízké) hodnoty řady. Vzhledem k tomu, že tato metoda taky pracuje s oknem, které má obvykle délku 2m+1, i zde je potřeba zvlášť vyrovnat prvních a posledních m prvků. Jednodušší metoda pro vyrovnání zkopíruje na místo chybějící hodnoty odpovídající hodnotu z původní řady. Složitější metoda spočítá chybějící hodnotu jako medián ze tří údajů: odpovídající hodnoty z původní řady; nejbližší vyrovnané hodnoty; výsledku lineární extrapolace dvou nejbližších vyrovnaných hodnot na časový bod za (resp. před) chybějící hodnotou. Tuto metodu lze aplikovat na časovou řadu i opakovaně pro dosažení lepšího vyrovnání.
Brownovo jednoduché exponenciální vyrovnávání – nazývá se taky exponenciální klouzavý průměr (EMA – Exponential moving average) nebo exponenciálně vážený klouzavý průměr, ale od WMA se liší tím, že průměr nepočítá z konstantního počtu členů, ale ze všech členů řady. Váhy klesají od nejnovějšího členu exponenciálně. Je vhodný pro lokálně konstantní trend Tr t 0 . Nejdřív se zvolí vyrovnávací faktor 0,1 . Pak se odhadne první člen trendu y1 , protože metoda výpočtu funguje až od druhého členu. Ostatní členy se dopočítají vzorcem:
y t y t 11y t 1 , nebo y t y t 1yt 1 .
Brownovo dvojité exponenciální vyrovnávání – je adaptivní metodou pro lokálně lineární trend Tr t 0 1t . 31
Nejdříve je potřeba pevně zvolit vyrovnávací konstantu 0,1 . Pak se použijí vzorce pro výpočet vyrovnané hodnoty: y t2S t St2 , 2 S 1 S ; pro 0 , předpovědi: y t t 2 1 t 1 t
kde S t y t1 S t 1 je jednoduchá vyrovnávací statistika a 2 je dvojitá vyrovnávací statistika. S t 2 S t 1 St1
Holtova metoda – neboli zobecněné dvojité exponenciální vyrovnávání je též adaptivní metodou pro lokálně lineární trend. Jejím speciálním případem je Brownovo dvojité exponenciální vyrovnávání. Hodí se pro řady s výrazným trendem bez přítomnosti sezónní složky. Holtova metoda má 2 různé vyrovnávací konstanty: – pro úroveň trendu; ! – pro směrnici trendu. Vzorce pro výpočet: vyrovnané hodnoty: y tS t , předpovědi: y tS tT t , kde S t y t1S t 1T t 1 je vyrovnaná řada a T t !S tS t1 1!T t 1 je směrnice trendu.
Brownovo trojité exponenciální vyrovnávání – je adaptivní metoda pro lokálně kvadratický trend Tr t 0 1t2t 2 . Jako všechny 3 Brownovy metody, má jednu vyrovnávací konstantu a je vhodná pro řady rychle měnící svůj průběh, bez výrazného trendu a sezónnosti. Oproti dvojitému vyrovnávání má navíc trojitou vyrovnávací statistiku 3
2
3
S t S t 1 S t 1 a složitější vzorce pro vyrovnanou hodnotu 2
3
y t3St3St S t
y t
a pro předpověď
6 215 112 2 S t
1 2 2 2 2 6 2 14 1 2 1 S t 2 2 2 2 2 2 13 11 S 3 t
,
které se odvozují obdobným způsobem jako u dvojitého vyrovnávání.
Metoda adaptivních vah – je zobecněním metody klouzavých průměrů. Předpovědi se konstruují jako vážený průměr M členů časové řady, přičemž váhy se adaptují každým krokem.
32
Vzorec pro předpověď je M
y t1 t w i t yt 1i , kde w i t je váha i-tého členu v čase t. i1
Váhy pro čas t+1 se upraví takto: w i t1wi t2 k r t 1 y t 1i , kde k je modifikační konstanta a r t 1y t1 y t 1 t je chyba předpovědi. Počáteční váhy se nastavují na 1/M. 2. Sezónnost Cílem analýzy sezónnosti je jednak separace sezónní složky pro vytváření lepších předpovědí a jednak očištění řady od sezónních vlivů pro věrnější analýzu trendu. Již na začátku je potřeba stanovit, zda se bude počítat s aditivní nebo multiplikativní sezónní složkou. Pokud je amplituda sezónní fluktuace přímo úměrná úrovni trendu, je potřeba použít multiplikativní model. V opačném případě se užije aditivní model. Hodnoty sezónní složky I t se nazývají sezónní faktory a jejich počet L je počet období v jednom cyklu (obvykle v roce). Pro roční cyklus měsíčních sezón se tedy použijí faktory: I 112j , I 212j ,... , I 1212j pro L12, j0,1 , ... .
Pro jednoznačnost dekompozice se požaduje, aby součet sezónních faktorů za jeden cyklus byl L pro multiplikativní model a 0 pro aditivní.
Elementární přístup – použitý například v metodě Census I, se skládá z 5 jednoduchých kroků (uvedené vzorce patří k multiplikativnímu modelu): 1. Výpočet centrovaných klouzavých průměrů o délce L: y t
1 L L y L 2y L ...2y L y L pro t1 ... , N . t 1 t 1 t 2L t 2 2, 2 2 2 2
Tento krok by měl očistit původní řadu od sezónních vlivů, takže vzniklá řada bude odpovídat y t#Tr t C t . 2. Výpočet kombinace sezónní a reziduální složky podílem: I t t #
yt L L pro t1 ... , N . y t 2, 2
3. Výpočet sezónní složky průměrem kombinací z kroku 2 pro jednu sezónu přes všechny cykly: 33
n L
L L L I$j I jkL j kL ; pro j1,2 , ... , L a jkL 1 N . n k0 2, 2 4. Normalizace sezónní složky (pro splnění výše uvedené podmínky jednoznačnosti dekompozice) :
I t
L I$t L
pro t1, ... , L
I$j
.
j 1
5. Výpočet sezónně očištěné řady pomocí výsledku z kroku 4:
Tr t C t t #
yt I t mod L
pro t1, ... , N .
Po odhadu trendu a jeho předpovědí na základě sezónně očištěné řady lze konstruovat realističtější předpověď řady vynásobením předpovědi trendu s odpovídajícím sezónním faktorem. Důvodem k tomu je fakt, že sezónní faktor je poměr hodnot původní a vyrovnané řady v dané sezóně. Trend a předpověď trendu představují taky vyrovnanou řadu, takže k získání nejpravděpodobnější hodnoty původní řady v budoucí sezóně je potřeba zohlednit sezónní odchylku. Uvedený postup funguje obdobně i pro aditivní model, kde místo násobení a dělení bude sčítání a odčítání.
Regresní přístup k sezónnosti – stanoví matematický model s jistými koeficienty pro sezónní složku. Pak pomocí regresní analýzy (obvykle pomocí metody nejmenších čtverců) odhaduje koeficienty modelu.
Metoda pomocí goniometrických křivek – používá lineární kombinaci goniometrických křivek k popisu sezónní složky. Používá model y tTr t I tt ; t1,2 , ... , n . Za předpokladu lineárního trendu vypadá model takto: y t01 t2 cos
2 t 2 t 3 sin t ; t1,2 ,... , n L L
Pokud uvedený model není dost přesný, lze přidat další členy goniometrických funkcí s menší periodou.
Metoda kvalitativních proměnných – vychází z modelu:
y t Tr t2 x 2t 3 x 3 t ... L x L t , kde 2, 3, ... , L jsou parametry sezónní složky a předpisem:
x 2 t , x 3 t ,... , x L t jsou kvalitativní proměnné definované
34
x i t 1 prot iLj ; j0,1 ,... . 0 jinak Kvalitativní proměnné vlastně určují pouze to, že při odhadování hodnoty řady pro jistou sezónu (například pro březen) se má započítat parametr právě pro tu sezónu (březen) a žádný jiný.
Holtova-Wintersova metoda – je zobecněním Holtovy metody (dvojitého exponenciálního vyrovnávání). Předpokládá tedy lineární trend:
Tr t 01t . Přidává navíc adaptivně odhadovanou sezónní složku. Pokud označíme b 0 t , b1 t a I t t odhadnuté hodnoty parametrů 0, 1 a I t v čase t, pak
S t b0 t b1 t t bude úroveň trendu, T t b1 t směrnice trendu a I t sezónní faktor v čase t.
Multiplikativní model – používá parametr L pro počet sezón v jednom roce a vyrovnávací konstanty , ! , % 0,1 v rekurentních vzorcích:
St
yt I t L
1S t 1T t 1 pro úroveň,
T t ! S t S t1 1!T t 1 pro směrnici trendu a It %
yt 1% I t L pro sezónní faktor. St
Pro funkční výpočet je ještě potřeba rozumně odhadnout hodnoty pro S 0, T 0 a I t pro t1L , 2L ,... , 0 . Tyto hodnoty lze odhadnout v podstatě dvěma způsoby: pomocí empirických vzorců; pomocí metody zpětné extrapolace (backcasting metoda), která obrací směr časové řady a předpovídá směrem do minulosti. Pro stanovení optimálních hodnot vyrovnávacích konstant , ! ,% se můžou použít různá kritéria pro výpočet přesnosti předpovědi (například výše zmíněný PMAD). Pro určení vyrovnané hodnoty a předpovědi se použijí rovnice: y tS tI t a y tS t T tI t L ; pro 1,2, ... , L ,
35
y tS t T tI t 2L ; pro L1, L2, ... , 2L atd.
Aditivní model – používá aditivní dekompozici časové řady. Princip i význam všech proměnných je stejný jako u multiplikativní metody. Změní se pouze dělení na odčítání a násobení na součet ve výrazech se sezónním faktorem I t .
3. Reziduální složka Tuto složku se snaží obvykle každá metoda pouze eliminovat, protože je náhodná (podle definice), a proto ji nelze nijak předpovídat. Nicméně, lze ji vypočítat po určení trendové a sezónní složky z původních dat a ověřit, zda použitý model je dostatečný nebo je potřeba jej ještě vylepšit. Pro tento účel se používají různé testy náhodnosti. Při dekompozici správným modelem by totiž vzniklá reziduální složka měla náhodně kolísat kolem nuly a neměla by vykazovat žádné systematické charakteristiky. Kauzální metody Tyto předpovědi předpokládají, že minulé údaje z různých zdrojů mají kauzální vztahy, které mohou být odhaleny pomocí matematické statistiky. Například při předpovídání prodeje deštníků by tyto metody analyzovaly vliv podmínek počasí v dané lokalitě na prodej deštníků v minulosti. Pokud se podařilo odhalit ovlivňující faktory, jejich předpověď bude základem předpovědi zkoumané veličiny. Tato zkoumaná veličina je mnohdy časová řada, a proto lze tyto metody považovat stejně dobře za metody analýzy časových řad. Metody kauzálního typu:
Regresní analýza (lineární a nelineární regrese) – je soubor statistických metod, které slouží k odhadnutí hodnoty jisté náhodné veličiny (neboli závislé proměnné, regresandu) na základě znalosti jiných veličin (nezávislých proměnných, regresorů). Závislá proměnná Y je skalár nebo vektor z nějakého lineárního prostoru. Úloha regrese je pak formulována jako úloha podmíněné střední hodnoty: E YX 1, ... , X p f X 1, ... , X p , kde E je symbol střední hodnoty z proměnné Y se znalostí X 1, ... , X p a f je regresní funkce, kterou je třeba odhadnout. Tato funkce se nejčastěji vyjádří v nějakém obecném tvaru, závislém na (neznámých) regresních koeficientech. Tyto koeficienty se pak odhadují na základě hodnot pozorovaných dat. Nejčastějším případem bývá lineární regrese, která funkci f bere jako lineární kombinaci nezávislých proměnných: p
f X 1, ... , X p 0 j X j , kde
j ; j1, ... , p jsou regresní koeficienty. Tyto
j 1
koeficienty se vypočítají metodou nejmenších čtverců, tj. tak, aby součet druhých mocnin odchylek původních pozorovaných hodnot od funkce f byl minimální: 36
n
Y i f X 1, ... , X p2 & min
.
i1
Je-li známo n hodnot závislé proměnné Y, pak po odhadnutí regresních koeficientů lze Y n1 snadno sestrojit předpověď pro dosazením předpovědí nezávislých proměnných do funkce f. Kromě popsané lineární existuje i nelineární regrese, kde funkce f je vyjádřen jako nelineární kombinace nezávislých proměnných. Pro výpočet regresních koeficient v tomto modelu je použita metoda nejmenších nelineárních čtverců, která přináší značné komplikace ve výpočtu (iterativní proces, potřebuje počáteční hodnoty pro koeficienty, proces je optimalizační, tj. řešení není jednoznačné, pokud existuje víc lokálních minim atd.). Podrobnosti lze nalézt v [18], [19], [20] a [21].
Autoregresní klouzavé průměry (ARMA) – se skládá ze dvou částí: z autoregresní (AR) a z klouzavého průměru (MA). Obvykle se označuje jako ARMA(p,q), kde p je řád autoregresní části a q je řád části klouzavého průměru. Autoregresní model řádu p – AR(p): p
X tc 'i X t i t , kde
'1, ... ,' p jsou parametry modelu, c je konstanta
i1
a t je chyba. Aby model byl stacionární10, parametry musí splňovat jistá omezení. Konstanta c se často neuvádí pro jednoduchost. Parametry modelu se určí buď pomocí metody nejmenších čtverců nebo pomocí Yule-Walker rovnic (viz [22]). Model klouzavých průměrů řádu q – MA(q): q
X t t (i ti , kde
(1, ... ,(q
jsou parametry modelu a t , t1 , ... jsou
i1
chyby. Autoregresní metoda klouzavých průměrů – ARMA(p,q): p
q
X t t 'i X t i (i t i . i1
i1
Použitím operátoru pro zpoždění L definované předpisem L k X t X t k pro X X 1, X 2, ... na část AR(p) 10 Časová řada je stacionární, pokud její rozdělení pravděpodobnosti je v čase neměnné. Pak její průměr a rozptyl jsou konstantní v čase.
37
p
p
t 1 ' i L i X t' X t pro '1 ' i L i i1
i1
a na část MA(q)
q
q
X t 1 (i L t ( t pro (1 (i Li i
i1
i 1
lze vyjádřit ARMA(p,q) takto:
p
q
1 ' i L i X t 1 (i L i t neboli ' X t( t . i1
i 1
Po zvolení parametrů p a q lze model ARMA(p,q) vypočítat pomocí metody nejmenších čtverců. Doporučuje se zvolit nejmenší možné p a q, které umožní akceptovatelnou aproximaci dat.
Autoregresní integrované klouzavé průměry (ARIMA) – je zobecněním metody ARMA. Má navíc parametr d pro řád diferencování. Ze známého modelu ARMA(p,q):
p
q
1 ' i L i X t 1 (i L i t i1
i 1
vznikne model ARIMA(p,d,q) takto:
p
q
1 ' i L 1L X t 1 (i L i t . i
i1
d
i1
Pro d=0 je tento model ekvivalentní modelu ARMA(p,q). Pro d>0 se část AR(p) diferencuje d-krát. Podrobnosti viz [15] a [23]. Je mnoho zobecnění této metody pro různé požadavky. Nejdůležitějším zobecněním bude pravděpodobně metoda SARIMA neboli sezonální ARIMA, která počítá i se sezonálními faktory.
Boxova-Jenkinsova metodologie – používá modely ARMA nebo ARIMA pro předpověď v iterativním třífázovém procesu: 1. Identifikace a výběr modelu: 10 ověřit, zda zkoumaná časová řada je stacionární a v případě potřeby ji stacionarizovat pomocí diferenciace nebo Boxovy-Jenkinsovy transformace (model ARIMA); má-li řada významný sezónní faktor použít sezónní diferenciaci a model SARIMA; je-li střední hodnota stacionární řady nenulová, je potřeba řadu vycentrovat; pomocí grafů autokorelace a částečné autokorelace zkoumané časové řady se rozhodnout jaké AR(p) a MA(q) komponenty použít.
38
2. Odhad parametrů: odhadnout koeficienty modelu, které poskytnou nejlepší shodu se zkoumanou řadou (nejčastěji pomocí nejmenších nelineárních čtverců nebo odhadu maximální pravděpodobnosti). 3. Kontrola modelu: zkontrolovat, zda odhadnutý model splňuje podmínky stacionárního procesu s jednou závislou proměnnou; střední hodnota a rozptyl chyb by měly být konstantní v čase; špatný model lze rozpoznat použitím grafu střední hodnoty a rozptylu chyb, pomocí Ljung-Box testu nebo grafů autokorelace a částečné autokorelace chyb; pokud odhadnutý model není adekvátní, je potřeba vrátit se ke kroku 1 a najít lepší model. Boxova-Jenkinsova metodologie má obecně oproti metodám založeným na dekompozici následující výhody: Modely se rychle adaptují na změny v průběhu časové řady, proto je BoxovaJenkinsova metodologie úspěšná i v těch případech, kde dekompozice selhává. Vykazuje nejlepší výsledky při analýze ekonomických časových řad. Je systematická, proto může být plně automatizována. Je ověřena, protože má četné numerické aplikace. Obecné nevýhody Boxovy-Jenkinsovy metodologie jsou: Je vhodná jen pro časové řady o délce nejméně 50 pozorování. Její praktické aplikace jsou mnohem náročnější než aplikace dekompozičních metod. Pro její složitost je těžká na implementaci a je nutné použít hotový software. Výsledné modely, zejména modely s větším počtem parametrů, se obtížně interpretují. Pro podrobnosti viz [14], [15] a [24].
Ekonometrie – aplikuje metody matematické statistiky (regresi, analýzu časových řad) na ekonomická data pro dosažení některého ze dvou cílů: 1. ověření ekonomických teorií pomocí pozorovatelných dat; 2. odhalení nových vazeb mezi ekonomickými veličinami.
4.2.5 Metody výběru produktů Na první pohled se může zdát, že výběr produktů ze seznamu, kde již každý produkt dostal ohodnocení podle zvoleného kritéria (a předpovědi), je přímočarý: prostě se vezme prvních N produktů s nejvyšším ohodnocením. Ve skutečnosti je tato metoda pouze jedna z možností a i při této metodě je netriviální otázkou volba hodnoty N.
39
Paretovo pravidlo Valná část ekonomů je toho názoru, že v maloobchodním prodeji platí Paretovo pravidlo11, tj. že 80% zisku generuje 20% produktů. Podle tohoto pravidla by se tedy měly vybírat nejlepší produkty, dokud jejich součet (obratu, zisku nebo jiného ohodnocení) nedosáhne 80% součtu všech produktů. Samozřejmě ne každý merchandiser musí se zmíněným poměrem 80:20 souhlasit, a proto by měl mít možnost zvolit si jiný cílový tržní podíl. Tržní podíl Planogram a potažmo i skříň v prodejně, na kterou je daný planogram aplikován, má tržní podíl rovný součtu tržního podílu všech produktů, které se v planogramu vyskytují. To vyjadřuje, kolik procent trhu pokryje daná skříň. Pokud merchandiser zvolí velké cílové pokrytí, pak jeden produkt (resp. jedna značka) dostane méně prostoru ve skříni, a při malém cílovém pokrytí naopak více prostoru. Produkty a značky Jak již bylo popsáno v postupu merchandisingu v kapitole 1.2.1, v planogramu se z produktů staví bloky. Tyto bloky sdružují buď produkty stejné značky, nebo produkty stejných vlastností. Například v supermarketech jsou obvykle vystaveny všechny ovocné šťávy stejné chuti a stejného balení vedle sebe, tj. značky jsou promíchané. Na regálech s čokoládami však člověk najde všechny druhy a velikosti čokolád stejné značky vedle sebe, tj. značky jsou oddělené. Mnohem častějším případem jsou bloky podle značek, ale nelze ignorovat ani bloky podle podobnosti. Další část analýzy bude uvažovat o stavění bloků podle značek, nicméně značku bude všude možné zaměnit za libovolnou definovanou skupinu produktů, a tak i za skupinu podobných produktů. Značky se dále vyznačují tím, že si je lidé pamatují. Každý asi dokáže říct z hlavy, jaká je jeho oblíbená značka šampónu, minerálky, cigarety nebo žvýkačky. Člověk tedy není vázán pouze na daný produkt, ale i na danou značku. Pokud třeba člověk při nákupu zjistí, že v prodejně došla jeho oblíbená čokoláda, tak se nejdřív poohlédne po čokoládách stejné značky, ale třeba s jinou příchutí nebo v jiném balení. Značky pomáhají i při zavedení nových produktů na trh. Pokud má nový produkt dobře známou a populární značku, tak se pravděpodobně bude prodávat mnohem líp, než nový produkt s neznámou značkou, protože lidé důvěřují značkám, které znají. V případě značky (resp. skupiny podobných produktů), která zahrnuje hodně produktů s malými tržními podíly, které ale dohromady dají silnou značku, se může lehce stát, že při výběru produktů pouze podle tržního podílu se žádný produkt z této značky nevybere. Pokud by ovšem výběr zohledňoval i tržní podíl značky, tak by se některé produkty ze zmíněné značky dostaly do planogramu.
11 Paretovo pravidlo - obecné pravidlo ekonoma Vilfreda Pareta (1848-1923) podle kterého 80% výstupů je výsledkem 20% vstupů (podrobněji viz [25])
40
Příklad Prodejna má v jisté kategorii 9 značek (A,B,..., I). Značka A má 20% tržního podílu a 10 produktů, které se prodávají přibližně stejně dobře, tj. každý produkt značky A má cca. 2% podílu na trhu. Značky B až J mají každá kolem 10% tržního podílu a 1-3 produkty, které se též prodávají přibližně stejně dobře, tj. každý produkt ze značek B až J má kolem 3-10% podílu na trhu.
První metoda – Paretovo pravidlo na produkty Výběr produktů zohledňující pouze tržní podíl produktů by vypadal následovně: Merchandiser zvolí cílové pokrytí trhu. Například 80%. Podle Paretova pravidla se vybírají nejlepší produkty dokud součet jejich ohodnocení nedosáhne 80% součtu ohodnocení všech produktů. Při takovém výběru produktů se žádný produkt ze značky A nevybere (protože A představuje spodních 20% seznamu) a v planogramu pak bude celá značka A chybět.
V důsledku toho 1 zákazník z 5 nenajde v této prodejně svou oblíbenou značku a možná raději vyhledá jiný obchod, kde svou značku najde. Druhá metoda – Paretovo pravidlo na značky Výběr produktů zohledňující i tržní podíl značek by mohl vypadat následovně: Vypočítají se tržní podíly značek sečtením tržních podílů všech produktů dané značky. Merchandiser zvolí cílové pokrytí trhu. Například 80%. Vybírají se značky od nejlepších, dokud jejich společný tržní podíl nedosáhne zvolený cílový tržní podíl. Pokud je mezi značkami nějaká, která má menší tržní podíl než 20%, pak se značka A dostane do planogramu, protože se vybere dřív, než slabší značky. Konkrétní produkty se pak vyberou podle jejich tržního podílu v rámci vybraných značek. Tímto způsobem lze docílit, aby žádná silná značka nebyla ignorována, protože vynechány budou ty nejslabší značky, které tím pádem budou chybět nejmenšímu počtu zákazníků.
4.3 Generování návrhu umístění vybraných produktů K tomu, aby bylo možné generovat užitečné návrhy pro merchandisery, je potřeba nejdřív porozumět jejich cílům a metodám při vytváření planogramů.
41
4.3.1 Typy a cíle planogramů V prvním případě vytváří merchandiser jeden planogram pro každou kategorii produktů. Takový „standardní“ planogram je pouze jakýmsi vodítkem pro personál prodejny, který je nucen investovat nemalé úsilí, aby podle jediného vzoru naplnil svoji skříň, která může být mnohem užší, širší nebo může mít jiný počet polic než standardní planogram, ba dokonce prodejna může mít i více různých skříní v dané kategorii. Nejdůležitější vlastnosti takového standardního planogramu jsou obsažené produkty a estetický celkový vzhled, ale nikoliv rozměry skříně nebo počet kusů daného produktu na planogramu. Merchandiser má s takovým planogramem minimum práce, takže automatizaci nepotřebuje. Druhý případ představují standardní planogramy pro menší skupiny skříní než všechny skříně dané kategorie. V tomto případě jsou skříně v rámci kategorie rozdělené do skupin podle počtu polic (např. 4, 5, 6) a případně podle šířky skříně (např. 40cm, 60cm, 80cm, 100cm). Každá skupina má svůj vlastní standardní planogram. Reálné skříně pak spadají do skupiny, která má rozměry svého planogramu k dané skříni nejblíž. U těchto planogramů již jsou důležité, vedle obsažených produktů a estetického vzhledu, i počet kusů jednotlivých produktů a jejich vzájemná poloha. Tato metoda již dost ulehčí práci personálu prodejny, protože si pro svoji skříň můžou vybrat planogram, který potřebuje nejméně úprav k nasazení. Pro merchandisera naopak znamená nemalou práci navíc, protože v rozsáhlém řetězci s velkou diverzitou skříní může vzniknout značné množství skupin a tím pádem i různých planogramů. Pokud není k dispozici software, který by v tomto procesu pomáhal, tak není jiná možnost, než zaměstnat víc pracovních sil. V tomto případě je tedy automatizace užitečná a žádaná. Třetím případem jsou takzvané reálné planogramy, které jsou individuální pro každou skříň a mají stejné rozměry jako jejich reálný protějšek. Pro personál prodejny jsou ideálním řešením, protože ke každé reálné skříni mají přesný popis rozmístění a nepotřebují nic upravovat. Právě proto je i zde důležité všechno, co u předchozího případu (seznam produktů, estetičnost, počty kusů a vzájemná poloha produktů). Pro merchandisera tento případ znamená nejvíc práce, protože musí vytvořit a na míru upravit tolik planogramů, kolik je skříní v celém řetězci. To je důvodem, proč se reálné planogramy používají málokdy: vyžaduje to totiž buď vhodný software s automatizací, nebo opravdu malý řetězec, jinak by to znamenalo nezvladatelné množství práce. Společný problém – rozsáhlé kategorie Ve všech zmíněních případech je přítomen problém velkých prodejen, které mají víc skříní stejné kategorie. Protože obvykle není žádoucí naplnit víc skříní podle planogramu pro jednu skříň (i když existuje i strategie „zrcadlených“ skříní), je potřeba nějakým způsobem tyto případy ošetřit. Situaci dál komplikuje fakt, že pokud má daná kategorie v prodejně víc skříní, tak obvykle ani jedna z nich nemá vypadat stejně jako skříň z „normální“ prodejny (s jedinou skříní v kategorii). V tom případě místo jednoho nového planogramu bude taková prodejna potřebovat rovnou dva (resp. tolik, kolik je skříní v dané kategorii). V prvním případě je asi nejlepší řešení ponechat původní, standardní planogram jako jediný a spolehnout se na to, že personál prodejny si vymyslí rozumné řešení, protože je stejně 42
nucen upravovat každý planogram k nasazení. Druhá možnost je vytvoření dalších N standardních planogramů pro prodejnu s N skříněmi v kategorii. Ve druhém případě, pokud různé planogramy pro různé skupiny skříní jsou podporovány softwarem, je obvykle důležité zachovat stav, kdy jedna prodejna má v dané kategorii vždy maximálně jednu skříň. Toho lze dosáhnout buď naklonováním kategorie produktů (víc kategorii se stejným obsahem ale jiným jménem), nebo vytvořením nových kategorií rozdělením původní kategorie (tj. sjednocení nových kategorií vydá původní kategorii). Ani jedno řešení ale není ideální. U klonování musí sám uživatel dávat pozor, aby se stejné produkty nedostaly do obou skříní. U rozdělení kategorie tento problém nenastane, ale pevné rozdělení produktů způsobuje jednak zkomolení tržních podílů produktů (který bude počítán pouze z části kategorie), jednak mnohem menší flexibilitu v seskupování produktů (nelze totiž dát do jedné skříně produkty z různých „podkategorií“). Ve třetím případě lze tento problém řešit elegantně a bezbolestně. Není potřeba vytvářet nové kategorie. Všechny skříně dané kategorie v prodejně můžou mít přiřazenou stejnou kategorii. Při návrhu planogramu pro tuto kategorii v problematické prodejně pak merchandiser vidí všechny skříně dané kategorie vedle sebe a navrhuje pro ně planogramy současně. Tímto způsobem se nezkomolí tržní podíly a neztratí se ani flexibilita návrhu. Dvojí pohled na kvalitu planogramu Pokud se nebere v úvahu množství práce při vytváření a nasazení planogramů a hodnotí se pouze jejich kvalita, lze rozlišovat v zásadě dva pohledy: estetický pohled – jak hezké je uspořádání produktů v policích, jak moc je přitažlivé a příjemné zákazníkovi; ekonomický pohled – produkt musí vydělat přiměřeně k výhodnosti jeho pozice ve skříní (a v prodejně), nesmí nastat výpadek (prázdná police). Estetický pohled je značně subjektivní, záleží na vkusu a kreativitě merchandisera. Ten někdy vytváří planogramy s pouhým cílem, aby byly obecně hezké a estetické, někdy ale má konkrétní cíl, kterého chce daným uspořádáním dosáhnout. Ke zvýraznění jistého produktu použije blok tvořený pouze z kusů tohoto produktu. K vytváření barevných přechodů nebo naopak kontrastu pak použije blok tvořený z různých produktů podobné (nebo kontrastní) barvy. Ekonomický pohled zastává ideu, že každé místo v prodejně má svoji cenu a produkt, který toto místo dostane, by si ho měl i zasloužit přiměřeným ziskem. To znamená, že na lukrativní místa se mají umístit nejlepší produkty. Součástí tohoto pohledu je také stavění bloků produktů, nikoliv však podle estetických, ale ekonomických hledisek. Dobře prodejný produkt by měl dostat větší blok ve skříni, aby byl lépe viditelný a snadněji nalezitelný a aby se vešlo dost kusů do skříně k eliminaci dočasného výpadku. Oba pohledy tedy pracují s bloky produktů a bloky značek (skupin produktů). Proto se na ně vztahují stejné otázky: Jaká je optimální velikost bloku daného produktu? Do jaké polohy umístit blok produktů (resp. skupin produktů)? Jaký typ skupinových bloků použít? 43
Ilustrace 4.3:b: Blok s velkou přidělenou plochou
Ilustrace 4.3:a: Blok s malou přidělenou plochou Optimální velikost bloku
Optimální velikost bloku pro jednu značku (nebo produkt) závisí v první řadě na typu skříně: vitrína (výklad nebo jakákoli skříň mimo dosah zákazníka) nebo volný prodej (zákazník si vezme zboží ze skříně sám). Pro výkladové skříně (např. v prodejně za pokladnou nebo pod stropem ve sportovním obchodě) se plánuje podle estetického pohledu, protože se jedná o místa, od kterých je zákazník vždy relativně vzdálený. Tato vzdálenost implikuje potřebu něčím zvýraznit dané místo, aby upoutalo pozornost zákazníka. Takové zvýraznění může být vkusné uspořádání několika málo dobře viditelných produktů. Kvůli nedostupnosti skříně přímo zákazníkovi odpadá nutnost dělat velké bloky produktů, protože z této skříně zboží nezmizí. Pro skříně s volným prodejem (většina maloobchodních prodejen, supermarkety, benzínky) se většinou plánuje podle ekonomického pohledu, někdy se pak ekonomický základ doladí po estetické stránce. U těchto skříní je zásadní vlastností průměrná vzdálenost zákazníka od skříně, která závisí na poloze skříně v prodejně a kterou lze určit pozorováním pohybu zákazníků v prodejně. Na této vzdálenosti závisí, jak velký musí být blok produktů nebo značky ve skříni, aby si ho zákazník všiml. Například pokud se většina zákazníků pohybuje ve vzdálenosti 1 až 2 metry od skříně, tak by minimální velikost bloku značky neměla být menší než 100 cm2. Pokud je ale tato vzdálenost 2 až 4 metry, tak by minimální velikost bloku měla být aspoň 250cm2. Je potřeba také vyjasnit rozdíl mezi velikostí bloku, která je plochou skříně přidělenou dané značce (produktu), a reálně obsazenou plochou bloku, která je fyzicky obsazena danou značkou (produktem). Na ilustracích 4.3:a a 4.3:b jsou dva bloky se stejným produktem a stejnou reálně 44
obsazenou plochou bloku, avšak s různou přidělenou plochou, tedy velikostí bloku. Otázkou tedy je, jestli je pro blok potřeba určit raději velikost nebo obsazenou plochu. U bloků značek je jednoznačně vhodnější určovat optimální velikost bloku, protože právě tato přidělená plocha ovlivňuje viditelnost v prodejně (např. blok na ilustraci 4.3:b je ve skříni víc viditelný než blok na ilustraci 4.3:a). U bloků produktů uvnitř bloku značky již situace není tak jednoznačná. Záleží na vlastnostech dané značky a produktu: jestli je značka známá a silně spojována s produktem, jestli je produkt žádaný nebo impulzivní, atd. Případ známé značky žádaného typu Zákazník je rozhodnutý koupit si konkrétní produkt již před vstupem do prodejny. Ať je tento produkt například čokoláda s oříšky značky Milka. Zákazník značku zná, takže najde si v prodejně oddělení cukrovinek (nebo přímo čokolády), pak rychlým pohledem přes celé oddělení najde značku Milka (podle známé fialové barvy balení), přistoupí blíž k bloku značky a teprve pak hledá konkrétní produkt. Z toho důvodu je dobré mít velké bloky značek pro snadné nalezení zákazníkem. Přidělenou plochu značky pak zaplní bloky produktů, které obsahují tolik kusů z konkrétních produktů, kolik jim přísluší podle tržního podílu, aby se předcházelo výpadkům. To znamená, že v tomto případě je pro bloky produktů dobré určit počet umístěných kusů neboli reálně obsazenou plochu. Tento počet lze vyvodit například ze znalosti obratu a délky intervalu mezi dvěma doplněními zboží jako průměrný obrat za tento interval. Pro blok produktů je tedy jedno, zda se umístí do skříně do jedné police nebo do dvou. Hlavní je, že se tam umístil konkrétní počet kusů. Pokud bude produkty v jednom bloku možné stavět věžovitě na sebe (ve stylu ilustrace 4.3:a), pak daný produkt vystačí s menší přidělenou plochou a do skříně se dostane víc produktů z dané značky. Nicméně ne každý produkt lze takto stavět. Tato možnost závisí na balení a jiných vlastnostech produktu. Případ neznámé značky impulzivního typu Zákazník před vstupem do prodejny ještě netuší, že si produkt koupí, případně ví, že potřebuje něco podobného, ale nemá na mysli konkrétní značku nebo produkt. To znamená, že o koupi se rozhodne impulzivně až u skříně s produkty. V takovém případě je důležité, aby byl dobře viditelný i samotný produkt, nejenom celá značka, protože tady zákazníka značka nezajímá nebo ji nezná. Proto je u takových produktů vhodné určit velikost bloku produktů, tj. celou přidělenou plochu skříně podle tržního podílu produktu v rámci značky. Poloha bloku Blok produktů je skoro vždy umístěn v horizontální poloze. Vertikální polohy se užívá v případě, že daný produkt je výjimečně dobře prodejný, takže potřebuje hodně prostoru, aby nevznikl výpadek, ale ve své kategorii má podobně silné konkurenty, které by mohl vytlačit případným horizontálním blokem přes celou polici na méně lukrativní místo (třeba na nižší 45
police). Blok značky naopak často využívá jak horizontální a vertikální polohu, tak i jejich kombinaci (například tvar obdélníka přes více polic). Volba závisí obvykle na konkrétní situaci a na preferencích merchandisera. Typ skupinových bloku – značka nebo podobnost Použitý typ skupinových bloků záleží na kategorii a na preferencích merchandisera. Například prodejny řetězce supermarketů Billa vytváří v oddělení ovocných šťáv bloky značek (vertikální i horizontální), kdežto prodejny řetězce Tesco používají bloky produktů stejných vlastností (všechny šťávy stejné chutě v jednom bloku). V oddělení čokolád ale oba řetězce shodnou na blocích podle značek.
4.3.2 Cíle generování planogramů Generování návrhu umístění může zapracovat pouze ty aspekty z kapitoly 4.3.1, které lze automatizovat. To zřejmě vylučuje estetický pohled stavění planogramu a předurčuje ekonomický pohled a skříně s volným prodejem. Ten má několik zásad, jejichž dodržení bude cílem generování návrhu:
Dobrý produkt na dobré místo. Produkty jsou již ohodnocené, takže k automatizaci zbývá ohodnotit veškeré místo v prodejnách. Pro podrobnosti viz kapitola 4.3.3.
Optimální velikost bloků. Značka má mít takový podíl prostoru ve skříni, jaký je její tržní podíl. Na základě tvrzení v kapitole 1.2.1 má 70% až 74% nákupů impulzivní charakter, takže i pro bloky produktů se bude určovat přidělená a ne obsazená plocha. Výpadek nenastane ani v tomto případě, maximálně se vejde do bloku značky méně druhů produktů než v případě určování reálně obsazené plochy. Produkt tedy má mít takový podíl prostoru v bloku značky, jaký je jeho relativní tržní podíl v rámci značky. Vzdálenost zákazníka od skříně by měla určovat minimální velikost bloku značky. Tento požadavek zasahuje i do metod výběru produktů k umístění a de facto definuje třetí metodu pro výběr, která nepotřebuje zadat ani cílové pokrytí trhu. Tato metoda na začátku přiřadí každé značce tolik prostoru ve skříni, aby to bylo přímo úměrné jejich tržnímu podílu. Pokud některá značka dostane méně prostoru, než je nastavené minimum (podle vzdálenosti zákazníka od skříně), pak tato značka nebude umístěna a její prostor se rozdělí mezi značkami, které umístěny budou. Konkrétním produktům se pak v rámci značek přiděluje prostor stejným způsobem. Touto metodou lze dosáhnout toho, že z planogramu se nevynechají ani silné značky, ani silné produkty ze slabých značek.
Polohu bloku nelze volit automaticky, protože to závisí na preferencích merchandisera, ale lze si tyto preference zapamatovat a použít při návrhu.
Typ skupinových bloků také nelze nastavit automaticky, proto bude definování skupin v každé kategorii úkolem merchandisera. 46
5 Návrh řešení
Tato kapitola nejdřív představí koncept a fungování systému Quant (přesněji Quant Standalone Edition verze 2.3.0_000), tj. výchozího systému, na kterém bude tato práce stavět, ve formě uživatelské dokumentace v kapitole 5.1. Dále upřesní požadavky na navrhované řešení (Quant + QuAI12) v kapitole 5.2. Návrh systému splňující požadavky z kapitoly 5.2 je v další části popisován ve dvou variantách. U každé části návrhu se uvede ideální varianta, tj. jak by vypadalo řešení v ideálním případě a jaké změny by vyžadovalo v základním programu. V případě potřeby se také uvádí realizovatelná varianta, která je v některých aspektech slabším řešením, nicméně představuje nutný kompromis kvůli omezením výchozího systému nebo z důvodu náročnosti implementace.
5.1 Quant – koncept a uživatelská dokumentace Popisovaný systém Quant Standalone Edition má stejnou sadu funkcí pro vytváření planogramů jako Quant Enterprise Edition, ale pracuje off-line, bez centralizované databáze a webového portálu. Tento systém lze vyzkoušet po instalaci z přiloženého kompaktního disku podle návodu v příloze A (viz strana 94). Koncept Quantu (viz ilustrace 5.1:a) vznikl v rámci softwarového projektu IPPS na MFF UK (viz [10]). Je založen na skupinách podobných prodejen a generování planogramů pro celou skupinu na základě centrálního popisu. Každá skříň v každé prodejně má přesně určené rozměry, stejně jako každý produkt. Jednotlivým skříním jsou přiřazovány kategorie skříní, které určují, jaké produkty budou do skříně umístěny. Kategorie tedy vznikají seskupením produktů. Vlastní planogramy se vytváří v rámci projektů. Projekt je vázán na právě jednu skupinu prodejen a obsahuje všechny planogramy potřebné pro veškeré skříně všech prodejen z vybrané skupiny. Skříně jsou roztříděné do hierarchie o třech úrovních: 1. První úroveň je kategorie skříní. Každá skříň má nejvýše jednu kategorii, takže určení první úrovně je jednoznačné. Pokud nějaká skříň nemá přidělenou žádnou kategorii, nezahrne se do projektu a nelze pro ni vytvořit planogram. 2. Druhá úroveň je skupina skříní. Tyto skupiny obsahují skříně s podobnými 12 Quant Artificial Intelligence – obchodní název plánovaného modulu programu Quant (vlastněno Extech, s.r.o.) pro ekonomické analýzy a podporu merchandisingu. Výsledek této diplomové práce představuje prototyp tohoto modulu.
48
uvnitř skupiny, které se aplikují pouze na danou skříň. Toto globální (pro kategorii a skupinu skříní) nebo lokální (pro jednu konkrétní skříň) rozmístění je vlastně soubor pravidel definovaných uživatelem, na základě čeho systém může vygenerovat planogram pro kteroukoliv skříň.
5.1.1 Vytvoření databáze produktů První krok je vytvoření databáze produktů. Lze ji plnit manuálním přidáváním v modulu „Produkty“ nebo funkcí hromadného importu pomocí tabulkového souboru Excel a obrázků produktů. Pro každý produkt se zadává jeho: název; identifikátor; kategorie neboli skupina produktů; značka (v terminologii Quantu brand); šířka; výška; délka; množství v balení; forma balení; obrat z prodeje; obrázek s fotkou přední strany produktu. Funkce importu v této verzi ukládá obrat podle data importu a Quant pak ukazuje vždy poslední zadané hodnoty obratu.
5.1.2 Vytvoření kategorií skříní Druhý krok je vytvoření jednotlivých kategorií skříní z produktů v modulu „Produkty“. Tyto kategorie můžou obsahovat libovolnou skupinu produktů a budou přiděleny jednotlivým skříním v prodejnách.
5.1.3 Kreslení prodejen Třetí krok je vytvoření prodejen a nakreslení jejich půdorysů. Půdorys může obsahovat skříně, pokladnu, zdi, dveře, okna, popisky skříní a fotky prodejny. Pro skříně se zadávají všechny rozměry jako výška, šířka a hloubka skříně, tloušťka jejích stěn, pozice a tloušťka všech polic (viz ilustrace 5.1:b). Pro skříně s pohyblivými policemi se zadávají všechny možné pozice polic a maximální počet fyzicky dostupných polic. Pohyblivé police znamenají skříně s volitelným připevněním police. Tyto police lze jednoduše vyjmout ze skříně nebo posunout dolů nebo nahoru do jiné přípustné pozice. Taková skříň může mít například 50 možných pozic pro police a 10 fyzicky dostupných polic, které lze připevnit na kteroukoliv z 50 pozic. Dále je možné určit, že oblast nejvyšší police bude sloužit pro zavěšení zboží na držáky (např. zubní kartáčky nebo bonbóny).
50
Ilustrace 5.1:b: Rozměry skříně
5.1.4 Kategorizace skříní Skupiny prodejen by se měli vytvářet na základě vzájemné podobnosti (např. obsahují skříně se stejnými kategoriemi, mají podobnou sestavu zákazníků atd.). Tyto skupiny lze vytvářet v modulu „Prodejny“ pomocí kontextového menu a pak do nich přetažením myší vložit prodejny. Kategorii lze přiřadit skříním v editoru prodejen v atributech skříní (dvojklik na skříň). Na stejném místě lze skříň zabarvit na libovolnou barvu pro lepší odlišení.
5.1.5 Vytvoření projektu K navržení planogramů je potřeba vytvořit projekt v modulu „Projekty“ pro jednu vybranou skupinu prodejen. V levé části editoru projektu (viz ilustrace 5.1:c) jsou uvedeny všechny kategorie skříní, které jsou zastoupeny v některé prodejně dané skupiny. Každá kategorie má pod sebou několik skupin skříní. Skupina skříní pak obsahuje konkrétní skříně. Na ilustraci 5.1:c uprostřed je zobrazena standardní skříň pro kategorii „Analgetica“. Napravo od standardní skříně je globální rozmístění pro kategorii. Standardní skříň pro kategorii nemusí odpovídat žádné existující skříni. Má výšku nejvyšší skříně kategorie a šířku nejmenší ze všech šířek v kategorii. Počet polic je odvozen od počtu řádků v globálním rozmístění. Po vytvoření globálního rozmístění pro kategorii lze ho rozdistribuovat do vybraných skupin skříní pomocí kontextového menu (na pravý klik myší).
51
Ilustrace 5.1:c: Globální rozmístění a standardní skříň kategorie Standardní skříň pro skupinu s jedinou skříní je stejná jako obsažená skříň. Pro skupinu s více skříněmi je její výška rovna největší výšce ve skupině, šířka minimální nominální šířce skupiny (začátek intervalu v názvu skupiny) a počet polic největšímu počtu polic ve skupině. Konkrétní skříně pak ukazují své planogramy s reálnými rozměry. Ty můžou mít globální rozmístění (které je stejné pro celou skupinu skříní) nebo lokální (které se vztahuje pouze na jedinou skříň). Globální (nebo lokální) rozmístění je tedy nejdůležitějším prvkem navrhování planogramů. Je to soubor pravidel definovaných uživatelem. Jeho základem je dvourozměrná
Ilustrace 5.1:d: Dosažený podíl na trhu 52
matice bloků, z nichž každý obsahuje nějaký produkt a atributy ovlivňující jak umístění produktu uvnitř bloku, tak vlastnosti bloku samotného. Tento základ pak rozšiřují priority polic (čísla na levé straně každé police) a magnetické čáry (oranžová a červená svislá čára s kolečkem uprostřed na ilustraci 5.1:c). Pozice bloků v matici určuje vzájemnou polohu produktů ve výsledným planogramu. Například pokud je v matici blok A ve vyšší polici než blok B (resp. ve stejné polici nalevo od bloku B), tak v planogramu bude produkt A taky ve vyšší polici než produkt B (resp. ve stejné polici nalevo od produktu B). Blok má vždy šířku jednoho sloupce, ale výšku může mít i větší než jeden řádek. Pomocí takových dlouhých bloků se realizují vertikální bloky (viz ilustrace 1.2:b). Horizontální bloky (viz ilustrace 1.2:a) se vytváří automaticky, protože při konstrukci planogramu z globálního rozmístění každý blok roste horizontálně, dokud má vedle sebe místo. Má-li tedy matice v některém řádku pouze jeden blok, tento blok vyplní celou polici v planogramu nezávisle na tom, ve kterém sloupci je daný blok umístěn. Ne všechny produkty z rozmístění se musí vejít do dané konkrétní skříně. Na ilustraci 5.1:d vedle globálního rozmístění jsou vidět seznamy umístěných a neumístěných produktů pro aktuálně zobrazenou skříň. Dále jsou na této ilustraci zobrazeny grafy dosaženého podílu umístěných produktů (resp. značek) na trhu, tj. podíl jejich obratu ke společnému obratu všech produktů v kategorii.
5.1.6 Distribuce produktů do skříní Ve stejné kategorii (i skupině) se můžou vyskytnout skříně s rozdílným počtem, výškou, šířkou a typem polic. Jejich planogramy, vzniklé aplikováním globálního rozmístění na ně, se tedy pochopitelně budou lišit. Odlišnost v počtu polic řeší priority (čísla nalevo vedle každé police globálního rozmístění). Při aplikování rozmístění na konkrétní skříň, která má méně polic než globální rozmístění, se vynechají police s nejnižšími prioritami (nižší číslo znamená vyšší prioritu). Při řešení odlišnosti ve výšce polic se využije faktu, že obraz bloku z rozmístění je na planogramu konkrétní skříně pro každou polici, do které blok zasahuje, tvořen souvislou maticí produktů, která může mít více řádků i sloupců. Tato odlišnost vadí v případech, když je konkrétní police velmi nízká a některý blok s vysokým produktem se do ní nevejde, nebo naopak je police vysoká a po umístění produktů by v ní pořád zůstala velká nevyužitá plocha. V prvním případě se blok s příliš vysokým produktem do nízké police vůbec neumístí, a tak ponechá místo pro ostatní bloky. Ve druhém případě lze nastavit v atributech bloku: požadovaný počet kusů nad sebou – určuje minimální počet řádků matice produktů nad sebou pro skříň s pohyblivými policemi, tj. v konkrétní skříni bude daný produkt aspoň tolikrát nad sebou, nebo se vůbec neumístí (pokud je police příliš nízká). U skříní s fixními policemi blok produktu roste vertikálně automaticky dokud může, tj. tento atribut je ignorován; maximum kusů nad sebou – určuje maximální počet řádků matice produktů nad sebou; minimální vzdálenost od stropu – minimální vzdálenost horní hrany nejvyššího řádku produktů od stropu police. Tento atribut je užitečný k zachování volného místa k pohodlnému vyjmutí produktu z police. 53
Odlišnost v délce polic může vadit buď kvůli tomu, že do krátké police se nevejdou všechny bloky z rozmístění, nebo kvůli tomu, že v dlouhé polici zůstane hodně místa nevyužito. První případ řeší priority bloků (nižší číslo znamená vyšší prioritu) tak, že pokud se do police nevejdou všechny bloky, vynechají se ty s nižší prioritou. Druhý případ je řešen automaticky tak, že po umístění všech bloků s minimálním počtem produktů se každý blok rozšiřuje horizontálně, dokud se celá police nezaplní. Toto implicitní chování lze ovlivnit pomocí atributů: minimum kusů – udává minimální počet produktů v bloku, které jsou naskládány do jednotlivých polic pouze vedle sebe. Například, pokud je toto číslo 10 a daný blok zasahuje pouze do jediné police, tak na této polici musí být nejméně 10 produktů vedle sebe. Zasahuje-li blok do dvou polic, tak v každé polici stačí mít 5 produktů vedle sebe; maximum kusů vedle sebe – udává maximální počet produktů vedle sebe. Odlišnost v typu polic ovlivňuje podstatným způsobem distribuci produktů. První rozdíl je, že atribut bloku „požadovaný počet kusů nad sebou“ se používá pouze u skříní s pohyblivými policemi, u nepohyblivých polic je ignorován. Druhý rozdíl je v tom, že u skříní s pohyblivými policemi určuje konkrétní počet a pozici využitých polic aplikované rozmístění dynamicky. To znamená, že pokud skříň má pozice pro police každých 20cm a nějaký blok s produktem o výšce 15cm má nastavený atribut „požadovaný počet kusů nad sebou“ na 5, tak tato police bude vysoká nejméně 75cm, takže zabere až 4 potencionální police a další deska (fyzická police) bude vložena až na čtvrtou pozici od aktuální. Police s držáky fungují podobně jako skříně s pohyblivými policemi s tím rozdílem, že mezi řádky bloků rozmístění se v planogramu nedávají desky a produkty jsou zarovnané k hornímu okraji pomyslné desky místo dolního (jak je tomu u pohyblivých polic). Výsledný planogram je kromě výše zmíněných mechanismů ovlivněn dalšími atributy bloku, které jsou: zvýrazněný – zvýrazní blok produktů v planogramu červeným rámem, na distribuci produktů žádný vliv nemá; otočený o 90 stupňů – umístí produkty v bloku otočené o 90 stupňů, takže v praxi se prohodí výška a šířka z rozměrů produktu; levý, pravý okraj – určuje šířku prázdného místa nalevo (resp. napravo) od každého sloupce produktů daného bloku Důležitým prvkem rozmístění, který ovlivňuje distribuci, jsou také magnetické čáry. Ty se vkládají mezi sloupce matice rozmístění a slouží pro seskupování bloků. Každá čára má svoji barvu a touto barvou označené bloky patří do její skupiny. Blok lze přiřadit do dané skupiny přetažením barevného kolečka ze středu čáry nad daný blok. Každá čára ovlivňuje pouze bloky ve vlastní skupině. První efekt seskupení je, že bloky, které jsou v různých policích bezprostředně vedle magnetické čáry (na stejné straně) jsou v planogramu zarovnané ke stejné pomyslné vertikální čáře. Druhý efekt je, že čára představuje jistou mez pro bloky z její skupiny. Bloky nalevo (resp. napravo) od čáry budou také nalevo (resp. napravo) od odpovídající pomyslné čáry v planogramu. Horizontální pozice čáry v matici bloků určuje procentuálně pozici pomyslné čáry v planogramu. Tuto horizontální pozici lze měnit otevřením dialogu s vlastností magnetické čáry (dvojklik na čáru), označením políčka „fixní“ a následným nastavením pozice čáry v procentech. 54
Posledním ovlivňujícím faktorem distribuce je zarovnání bloků na polici. Funguje stejně, jako zarovnání v textovém editoru. Má 5 stavů: vypnuto, vlevo, na střed, vpravo a do bloku. Ovlivňuje pouze bloky v jednom řádku, vedle kterého se nachází ikony zarovnání (viz ilustrace 5.1:d). Při stavu vypnuto se distribuce řídí magnetickými čarami, při všech ostatních stavech se ale veškeré magnetické čáry ignorují.
5.1.7 Vlastnosti systému Návrh planogramů v Quantu je tedy orientován na bloky produktů. Horizontální bloky produktů vytváří systém automaticky a vertikální bloky je možné vytvořit ručně (zvětšením výšky bloku přes více polic). Pro bloky značek ale systém přímou podporu nemá. Lze skládat bloky produktů z jedné značky vedle sebe (nebo nad sebe), ale nelze jednoduše zajistit, aby celý blok značky tvořil souvislý obdélník. Vzhledem k tomu, že Quant patří mezi programy, které umožňují vytváření různých planogramů pro různé kategorie (a skupiny skříní), trpí také problémem rozsáhlých kategorií (popisovaným v kapitole 4.3.1) a uživatelé jej musí sami vyřešit duplikováním nebo štěpením kategorie.
5.2 Požadavky Jak je uvedeno v kapitole 2.1, cílem je vytvoření systému automatizující kroky 2 a 5 z popsaného procesu merchandisingu. Nový systém má přitom pouze navrhnout uživateli řešení, ale nenutit ho, aby jej použil. Konečné rozhodnutí musí systém nechat na uživateli. Navrhované řešení by tedy mělo rozšířit Quant o požadované funkčnosti přidáním odděleného modulu (QuAI12), který bude spolupracovat s výchozím systémem pomocí vhodného middlewaru. Krok 2 zahrnuje výběr produktů k vystavení na základě analýzy dat o prodeji a vytváření předpovědí prodeje ke správě skladu. Vzhledem k tomu, že Quant žádným způsobem nepodporuje správu skladu, QuAI se bude zaměřovat z kroku 2 pouze na výběr správných produktů k umístění. V kroku 5 se určí doporučené umístění vybraných produktů dané kategorie do přidělených skříní tak, aby každý produkt dostal tolik místa, kolik mu náleží na základě tržního podílu, a aby se vytvořili horizontální/vertikální bloky na základě podobnosti nebo značky produktů.
Návrh projektu v novém systému by tedy měl fungovat následovně: Merchandiser nastaví na nově vytvořeném projektu: časovou periodu, pro kterou daný projekt plánuje; zdroj dat, ze kterého se budou počítat předpovědi pro ohodnocení produktů (skupina prodejen, celá firma, celý trh, jejich kombinace); kritérium pro ohodnocení produktů (obrat, zisk, kombinace předchozích 55
možností). QuAI ohodnotí každý produkt v kategorii na základě dat o prodeji a zvoleného kritéria. Toto ohodnocení se zobrazí v tabulce produktů a na základě toho se budou počítat hodnoty pro tržní podíl produktů a značek. Tento seznam produktů již obsahuje uživatelem definované skupiny produktů (označované v Quantu jako brand), které pak v planogramu budou tvořit souvislé bloky. Uživatel může označit některé produkty ze seznamu jako požadované resp. zakázané (aby se určitě dostaly resp. nedostaly do návrhu planogramu). Uživatel může požádat QuAI o návrh rozmístění pro aktuální skříň, skupinu skříní, nebo každou skupinu skříní dané kategorie na základě seznamu produktů obsahující skupiny, ohodnocení a příznaky požadovaných resp. zakázaných produktů. Při žádosti o generování návrhu také vybere metodu pro výběr produktů (viz kapitola 5.6.1). Uživatel může následně tento návrh libovolně manuálně měnit.
5.3 Architektura systému Cílový systém by tedy měl rozšířit stávající aplikaci Quant o modul QuAI, poskytující veškerou funkčnost spojenou s analýzou dat o prodeji a s navrhováním rozmístění. Tento nový modul by měl být připojen ke Quantu pomocí vhodného middlewaru (viz ilustrace 5.3:a). Pro toto oddělení je několik dobrých důvodů: Modul QuAI bude v rámci této diplomové práce představen se „Standalone“ verzí aplikace Quant, která je jednodušší na nasazení a předvádění než centralizovaná „Enterprise“ verze, nicméně v reálném nasazení bude QuAI součástí serverové strany centralizovaného řešení, a proto je kvůli znovupoužitelnosti vhodnější mít oddělený modul. Pro účely diplomové práce je rovněž výhodnější mít QuAI odděleně, protože je tak snadno viditelná hranice mezi existujícím softwarem a autorovým dílem. Tato architektura připomíná SOA13, ale na opravdový SOA je tento systém příliš malý.
Ilustrace 5.3:a: Architektura systému 13 SOA – Service Oriented Architecture neboli architektura orientovaná na služby je softwarová architektura, kde je veškerá funkčnost sdružována kolem obchodních procesů a implementována jako navzájem spolupracující služby.
56
5.4 Volba použitých technologií Jako jazyk pro implementaci modulu QuAI byla zvolena Java (verze 1.6), protože jednak jde o kvalitní, objektově orientovaný jazyk, se kterým má autor největší zkušenosti, jednak je celý Quant implementován v Javě a QuAI tak nenaruší integritu budoucího vývoje softwaru. Jako middleware byla zvolena CORBA14 (v podání JacORB-u), protože je to robustní řešení nezávislé na platformě a programovacím jazyku a v neposlední řadě je již dlouho používán v „Enterprise“ verzi Quantu, kde se osvědčil výkonností i implementací obousměrné komunikace přes síť s klienty za firewally a NAT-em15. Jako databáze pro modul QuAI byla zvolena vlastní implementace jednoduchého databázového stroje založeného na serializaci objektů do souborového systému, protože QuAI nemá velké nároky na databázový stroj, takže toto řešení bude pro demonstraci prototypové implementace dostačující a v reálné implementaci pak každá organizace nasadí svoje preferované komerční databázové řešení.
5.5 Nové funkce tabulky produktů Tabulka produktů v editoru projektů starého systému obsahuje všechny produkty z dané kategorie a zobrazuje 4 sloupce spojené s daty o prodeji, z nichž poslední 3 sloupce jsou spočítané z hodnot prvního sloupce: obrat produktu v dané skupině prodejen z posledního importovaného období; tržní podíl produktu podle obratu v rámci kategorie; tržní podíl značky podle obratu v rámci kategorie; kumulovaný tržní podíl produktů k usnadnění výběru produktů s požadovaným celkovým pokrytím trhu. V novém systému by první sloupec („obrat“) měl být přejmenován na „skóre produktu“ a měl by obsahovat ohodnocení získané od QuAI na základě nastavení projektu. Zbylé 3 sloupce se měnit nemusí, protože jejich význam zůstává stejný, změní se pouze základ pro jejich výpočet. Nově přibudou 2 sloupce pro nastavení příznaků „požadovaný“ a „zakázaný“. V ideální variantě by uživatel měl navíc možnost toto skóre ručně editovat, čímž by se změnily i ostatní 3 sloupce. Tyto změny by projekt ukládal v sobě. Tato funkčnost je užitečná, pokud má merchandiser nějaké jiné důvody k upřednostňování daného produktu, než data o prodeji (např. bonusy od výrobce nebo jednorázové akce).
14 Common Object Request Broker Architecture – mechanismus pro (síťovou) spolupráci aplikací. 15 NAT – Network Address Translation neboli překlad síťových adres. Jedná se o funkci routerů, která umožňuje překládat adresy z vnitřního (privátního) adresního rozsahu do veřejného a naopak.
58
5.5.1 Ohodnocení produktů K ohodnocení produktů je nutné mít data o prodeji. To, jaká data jsou potřeba, určují zvolená hlediska předpovědi a metody ohodnocení (viz kapitola 4.2.1 a 4.2.2). Prostorové a časové hledisko se určí pomocí nastavení projektu (viz níže). U výrobkového hlediska byl vybrán prodej samostatné položky a částečně i prodej značky nebo určitého druhu výrobku (agregovaný z prodejů produktů dané značky nebo skupiny), protože je potřeba porovnávat prodejnost právě těchto položek pro usnadnění výběru správných produktů. První požadavek na formát dat o prodeji tedy je, aby obsahovala ukazatel (identifikátor) na produkt, který popisují. Značka nebo druh produktu se pak zjistí z daného produktu. Hledisko frekvence dat je omezeno pouze z jedné strany zvoleným hlediskem času. Nelze totiž předpovídat pro menší časové úseky než je frekvence dat o prodeji. Tj. nemá smysl se ptát na předpověď pro příští týden, pokud jsou data o prodeji k dispozici s měsíční frekvencí. V takových případech by uživatel měl dostat chybovou hlášku. Na druhou stranu může mít smysl ukládání dat o prodeji s vysokou frekvencí (třeba týdenní) i když se planogramy obvykle plánují na měsíc, a to z důvodu jiného využití, třeba kvůli zobrazení srovnávacích grafů produktů nebo prodejen merchandiserovi. V případě centralizovaného softwaru s webovým portálem (jaký je i Quant Enterprise Edition) lze ukázat toto srovnávání i prodejnám řetězce. Surová a zpracovaná data Aby systém nekladl na uživatele příliš velké břemeno striktním a neměnným formátem importovaných dat o prodeji a také aby umožnil případné jiné využití dat (např. srovnávací grafy), zavede se pojem surových a zpracovaných dat. Surová data jsou uživatelem importovaná data o prodeji. Na surová data bude platit jediný požadavek: časová kontinuita. Tedy uživatel může dodávat data o prodeji s libovolnou (třeba i měnící se) frekvencí, ale nesmí být mezi importovanými daty časová mezera. Zpracovaná data jsou systémem agregovaná data ze surových dat. Prvním důvodem k vytváření zpracovaných dat je, že předpověď prodeje pracuje nejlépe (a u většiny metod pouze) s ekvidistantními pozorováními. Surová data ale nemusí být ekvidistantní, protože frekvence importovaných dat se v čase může měnit. Druhým důvodem je, že i kdyby surová data byla ekvidistantní, tak můžou mít jinou frekvenci, než pro jaké období se plánují planogramy. Plánované období platnosti planogramu se může v různých řetězcích lišit, ale v rámci jednoho řetězce je obvykle neměnné. To znamená, že zveřejnění nových planogramů je obvykle cyklická záležitost. Uživatel by tedy měl nastavit v globálních nastaveních QuAI tyto cykly zadáním data počátku prvního cyklu a délky (neboli typu) cyklu. Typ cyklu může být: týden, 2 týdny, měsíc, 2 měsíce, kvartál, 4 měsíce a půlrok. Systém pak vytvoří všechny cykly od zadaného počátečního data do posledního cyklu, pro kterého ještě jsou k dispozici data, 59
a přidá 3 další cykly navíc, které v optimálním případě odpovídají právě probíhajícímu a 2 budoucím cyklům. Systém pak vytvoří zpracovaná data pro definované cykly. Pro všechny již proběhlé cykly agreguje data o prodeji z databáze. Pro aktuální a 2 budoucí cykly však musí data předpovídat, protože pro tyto cykly pochopitelně neexistují dostatečné podklady v databázi. Počet budoucích cyklů (2) je kompromis mezi svobodou uživatele (aby mohl vytvářet planogramy i pro přespříští cyklus) a relevantností předpovídaných dat (protože čím dále do budoucnosti sahá předpověď, tím méně pravděpodobný bude její výsledek). Protože zpracovaná data jsou neměnná až do dalšího importu dat a jejich vytváření je poměrně náročné, je lepší je ukládat do databáze než vytvářet online vždy, když jsou potřeba. To znamená, že zpracovaná data budou generována při každém importu dat a při změně nastavení cyklů. Pokud se při generování zjistí, že s novým importem vznikla časová mezera v datech nebo že zvolená délka cyklů je příliš krátká (protože některá surová data jsou pro delší období), pak systém oznámí tuto chybu uživateli a operaci neprovede. Druhý požadavek na formát dat o prodeji tedy je, aby obsahovala období (nebo cyklus), pro které platí. Třetí požadavek je, aby délka období veškerých surových dat byla nanejvýš rovna délce cyklů definovaných v globálních nastaveních QuAI. Plánované období Časové hledisko předpovědi se určí při vytvoření projektu nastavením období, kdy planogramy z projektu budou platné. Nejčastěji uživateli stačí vybrat jeden z cyklů předdefinovaných v globálních nastaveních. V případě, že uživatel potřebuje mimořádný projekt, který plánuje pro jiné období, než definované cykly, měl by mít možnost zadat toto vlastní období určením počátečního a konečného data. Pokud by zvolené období potřebovalo delší předpověď prodeje než 3 cykly od posledních importovaných dat, oznámí se uživateli chyba, že předpověď by byla irelevantní. Tj. pokud uživatel ještě neimportoval data z předchozího cyklu, nemůže vytvořit projekt pro přespříští cyklus. Jestliže jsou zpracovaná data, která lze rovnou použít k ohodnocení, připravena pouze pro definované cykly, pro ohodnocení vlastního období je potřeba agregovat data z cyklů, do kterých zvolené období zasahuje. Tato agregace bude totožná s metodou vytváření zpracovaných dat ze surových (viz dále na stránce 61). Zdroj dat Prostorové hledisko se také určí při vytvoření projektu nastavením zdrojů dat o prodeji, které mají ovlivnit ohodnocení produktů. Nabízené možnosti jsou: skupina prodejen, společnost (celý řetězec), celý trh (neboli stát) a jejich kombinace. Možnost samostatné prodejny byl vyloučen kvůli tomu, že Quant navrhuje planogramy pro celou skupinu prodejen na základě jednoho ohodnocení produktů, takže není možné zohledňovat 60
v každém planogramu vlastní prodejnu. To by vyžadovalo vlastní ohodnocení a samostatný návrh pro každou prodejnu (nebo skříň). Pro získání dat pro skupinu prodejen nebo pro celou společnost jsou 2 možnosti: V ideální variantě by se importovala surová data každé prodejny zvlášť a v rámci zpracování se agregovala do větších celků (skupina nebo společnost). V realizovatelné variantě by se importovala vlastní surová data pro každou povolenou úroveň a data jednotlivých prodejen by se neimportovala vůbec (protože pro účely realizovatelné varianty nejsou potřeba).
Čtvrtým požadavkem na formát dat o prodeji tedy je, aby obsahovala typ zdroje dat (skupina, společnost, trh). Otázkou je, jak získat ohodnocení z kombinovaného zdroje. Uživatel by měl mít možnost na projektu nastavit libovolnou kombinaci ze 3 regulárních zdrojů. Proto bude možné v nastaveních zadat pro každý regulární zdroj jeho váhu ve výsledné kombinaci. Tj. pokud uživatel zadá pro trojici zdrojů (skupina, společnost, trh) váhy: 1,0,0 – pak se ohodnocení bude počítat pouze z dat skupiny; 0,1,0 – pak se ohodnocení bude počítat pouze z dat společnosti; 0,0,1 – pak se ohodnocení bude počítat pouze z dat trhu; 5,3,2 – pak 50% ohodnocení budou tvořit data skupiny, 30% data společnosti a 20% data trhu. Kritérium ohodnocení Metodu ohodnocení (neboli kritérium ohodnocení) nastaví uživatel rovněž na projektu při vytváření. Bude mít na výběr metodu počítající s obratem, metodu počítající se ziskem a kombinaci předchozích dvou metod. Metoda počítající pouze s marží je vynechána, protože se v praxi používá opravdu vzácně. Uživatel tedy najde v nastaveních dvě položky pro první dvě metody, kde může nastavit jejich váhu ve výsledném ohodnocení. Tedy váhy: 1,0 – budou znamenat metodu obratu; 0,1 – budou znamenat metodu zisku; 3,2 – budou znamenat kombinovanou metodu počítající ze 60% s obratem a ze 40% se ziskem. Zisk se počítá jako součin obratu a marže (pro cykly, které nepotřebují předpověď), takže další požadavky na formát dat o prodeji jsou, aby obsahovala obrat a marži produktu v popisovaném období. Vytváření zpracovaných dat Zpracovaná data pro již proběhlé cykly se vytváří ze surových dat agregací, která sečte obrat (a zisk) z každé instance surových dat, která má stejný produkt a zdroj dat jako právě vytvářená zpracovaná instance a jejich období se prolínají. Z instancí surových dat na okrajích cyklu se berou pouze částečné obraty (a zisky) na základě velikosti průniku a celého období surových dat. Například podle ilustrace 5.5:a k vytvoření dat pro červnový cyklus se sečtou surová data číslo 8, 9, třetina dat číslo 7 a čtvrtina dat číslo 10. 61
Ilustrace 5.5:a: Agregace surových dat Obrat se tedy spočte jako součet obratů (nebo částečných obratů) dotyčných instancí surových dat. Zisk se sečte stejným způsobem. Marže se spočte jako podíl sečteného zisku a sečteného obratu za celý cyklus. Při vytváření dat pro cykly se kontrolují časové mezery v surových datech. Pokud se vyskytne mezera, uživatel dostane chybovou hlášku. Zpracovaná data pro 3 cykly po posledním, který ještě má importovaná surová data (v ideálním případě to jsou aktuální cyklus a 2 budoucí cykly), se musí předpovídat z dat předchozích cyklů. Konkrétní metoda předpovědi je popsána v kapitole 5.5.2. Tato metoda bude předpovídat budoucí obrat. Předpověď zisku nebo marže je diskutabilní. Její možnosti jsou rozvedeny v kapitole 4.2.1. Po zvážení všech množností se autor rozhodl použít předpoklad konstantní marže v budoucnu a počítání předpovídaného zisku jako součin poslední známé marže a předpovídaného obratu. Důvodem proti ostatním možnostem je, že všechny přímo či nepřímo předpovídají budoucí marži, přičemž marže je faktor, o kterém rozhoduje prodejna (případně řetězec). To znamená, že předpověď marže by mohl fungovat jako doporučení nebo odhad budoucích rozhodnutí prodejny o ceně produktů a to (alespoň zatím) není cílem tohoto systému a je přenecháno systémům, které jsou specializovány pro tento účel. Při importu nových dat beze změny typu cyklů lze porovnat předpovídanou a právě importovanou hodnotu obratu daného cyklu. Případně lze spočítat i chybu (resp. přesnost) předpovědi a použít ji k vylepšení parametrů metody předpovědi nebo vytvářet dlouhodobou statistiku k posouzení účinnosti systému (v ideální variantě). Pro výpočet chyby by se použila metoda PMAD (viz kapitola 4.2.3). Vytváření ohodnocení Ohodnocení se vytváří na základě dat z jednoho období a z více zdrojů. Pokud je zvolené období jeden z definovaných cyklů, všechna potřebná data jsou již připravena ve zpracovaných datech. Pokud ale uživatel definoval vlastní období pro projekt, je potřeba vytvořit agregovaná data pro toto zvláštní období ze zpracovaných dat cyklů stejným způsobem, jakým se vytváří zpracovaná data ze surových. Data z různých zdrojů (skupina, společnost, trh) popisují různé prostorové dimenze, a proto se jejich hodnoty od sebe řádově liší. Kvůli tomu je nelze jednoduše porovnávat nebo kombinovat do jednoho ohodnocení, jak by návrh vyžadoval. Podobný problém představují i různá kritéria ohodnocení a jejich kombinace, protože obrat a zisk představují různé veličiny, které rovněž nelze jednoduše porovnávat. K řešení takového problému se používá normalizace hodnot přes všechny prvky zkoumané množiny, v tomto případě tedy přes všechny produkty. Normalizace představuje 62
vydělení hodnoty všech prvků normalizační konstantou. Tato operace změní pouze amplitudy hodnot dané veličiny, ale zachová relativní poměry hodnot mezi produkty, tj. nezmění se jejich pořadí. Každá veličina (obrat a zisk) z každého zdroje (skupina, společnost, trh) tedy bude mít svoji vlastní normalizační konstantu, která bude stejná napříč všemi produkty. Důležitou otázkou je, jak zvolit normalizační konstantu, aby nejlépe vystihl charakteristiku dané množiny hodnot. Nabízí se několik variant: minimum z hodnot ze všech produktů; maximum z hodnot ze všech produktů; medián z hodnot ze všech produktů; průměr z hodnot ze všech produktů. Minimum a maximum lze vyloučit z důvodu zkreslení výsledků v případě, že mezi hodnotami je jedna extrémně odlišná. Pokud by se, jako normalizační konstanta, zvolilo maximum z hodnot a jeden produkt by měl v jedné veličině extrémně vysokou hodnotu a v ostatních veličinách by se takový extrém nevyskytoval, pak by v postižené veličině měl pouze produkt s extrémní hodnotou porovnatelné ohodnocení s jinými veličinami a ostatní produkty by dostaly neporovnatelně menší ohodnocení. To by de facto vyřadilo vliv dané veličiny na výslednou kombinaci. Do úvahy tedy připadají medián a průměr. Pokud se předpokládá, že v prodeji platí zmíněné Paretovo pravidlo (viz kapitola 4.2.5), pak je pravděpodobné, že většina produktů bude mít velmi malé hodnoty, kdežto menšina produktů v součtu pokryje většinu trhu. Proto je pravděpodobné, že medián bude představovat malou hodnotu oproti významným produktům. To může způsobit u významných produktů příliš velké hodnoty pro příjemné zobrazení a zpracování. Této nepříjemnosti lze předejít použitím průměru jako normalizační konstanty. Absence jediné výhody mediánu oproti průměru – neovlivnitelnost extrémními hodnotami –, nebude příliš vadit za předpokladu, že v kategorii je dost vysoký počet produktů. Jako normalizační konstanta se tedy použije průměr z hodnot ze všech produktů. Taková normalizace způsobí, že středně dobrý produkt dostane ohodnocení kolem 1, lepší produkty několikanásobně víc (třeba do 100) a horší produkty pouze něco v rozmezí (0,1). Jestliže desetinná čísla nejsou příjemná pro lidské oko, toto ohodnocení se ještě vynásobí dostatečně vysokým číslem (třeba 1000) a zaokrouhlí na celé číslo. Poté, co se takto znormalizovaly všechny veličiny a zdroje, je lze kombinovat do výsledného ohodnocení podle nastavených poměrů na projektu.
5.5.2 Předpověď prodeje produktů Většina zkoumaných metod potřebuje k výpočtu předpovědi předem zvolit jisté parametry buď subjektivním rozhodnutím uživatele podle tvaru grafu (volba trendové funkce, aditivní, nebo multiplikativní dekompozice), nebo podle expertních propočtů (vyhlazovací konstanty atd.). Pokud by všechny produkty měly stejnou charakteristiku vývoje prodejů nebo kdyby se předpověď počítala pouze pro jednu časovou řadu (jediný produkt nebo celkový prodej firmy), bylo by možné nějakým způsobem vyřešit počáteční interakci s uživatelem. Například 63
grafickým dotazníkem, kde by uživatel viděl graf původní časové řady a pak několik grafů s aproximacemi podle různých hodnot vyžadovaných parametrů (např. s různými trendy nebo vyhlazovacími konstantami), ze kterých by subjektivním rozhodnutím vybral ten, který nejlépe odpovídá původnímu grafu. Jestliže je ale v databázi velké množství produktů, které vůbec nemusí mít podobný vývoj prodejů, je potřeba vypočítat předpověď pro každý produkt zvlášť a nezávisle na ostatních. Proto proces předpovídání musí být plně automatický a nelze do něj zahrnout žádnou uživatelskou interakci. Jediný společný rys časových řad, který lze předpokládat, je sezonní charakter prodejů. Existují sice produkty (například potraviny denní potřeby jako chléb nebo mléko), jejichž prodej je nezávislý na aktuální sezóně v roce, většina produktů ale více čí méně sezonální je. Tyto sezóny odpovídají uživatelem definovaným cyklům, proto tuto informaci lze od uživatele získat. Výběr nejvhodnější metody pro předpověď Při výběru konkrétní metody pro předpověď lze postupovat vyloučením nevhodných variant. Kvůli povaze cílů diplomové práce lze vyloučit všechny názorové a subjektivní metody, protože ty nelze automatizovat. Z metod analýzy trendu časových řad lze vyloučit extrapolační metody, protože nejsou adaptivní, a proto jimi nelze adekvátně popsat časovou řadu s trendem, který se v čase mění. Pro trend pak zbývají: metody klouzavých průměrů a mediánů, které v jednodušších variantách nepotřebují víc vstupních parametrů než délku klouzavého okna; exponenciální vyrovnávání od pana Browna potřebuje zadat jednu vyrovnávací konstantu z intervalu (0,1), od pana Holta dvě; metoda adaptivních vah potřebuje délku klouzavého okna a modifikační konstantu pro modifikaci vah. Délku klouzavého okna lze jednoduše zvolit podle počtu sezón v roce. To znamená, že metody klouzavých průměrů nebo mediánů pro trendovou složku dekompozice lze určitě použít. Vyrovnávací a modifikační konstanty se již určují hůř, protože jejich optimální hodnota závisí na konkrétních datech, a proto je nelze snadno určovat automaticky ani získávat od uživatele. Nicméně, lze použít jistý typ „hrubé síly“ tak, že se trend spočte postupně se všemi rozumnými hodnotami (z omezeného intervalu s jistým krokem mezi hodnotami) vyrovnávacích a modifikačních konstant a pomocí kriterií přesnosti předpovědi (zmíněný PMAD nebo jednoduchý součet čtvercových chyb - SSE) se určí, které hodnoty konstant jsou nejvhodnější pro danou řadu. Tím pádem lze pro trendovou složku dekompozice použít také exponenciální vyrovnávání nebo metodu adaptivních vah. Jestliže většina vstupních časových řad bude mít výraznou sezónní složku, je potřeba ji jednak eliminovat pro přesnější odhad trendu, jednak je potřeba aplikovat odpovídající sezónní faktor na předpověď trendu pro získání věrnější předpovědi budoucích hodnot řady. Společným požadovaným vstupem všech metod je, zda se počítá s aditivním nebo multiplikativním modelem dekompozice. Bohužel ke korektnímu rozhodnutí pro tento 64
parametr by byla opět potřeba uživatelova interakce. Bez toho je systém nucen zvolit jednu variantu natvrdo. Zvolenou variantou by měl být multiplikativní model, protože podle praktických zkušeností se prodej valné většiny produktů chová multiplikativně. Pro získání sezónní složky jsou k dispozici:
elementární přístup neboli metoda Census I, která je sice jednoduchá, ale na vstupu potřebuje pouze délku sezónního cyklu a je snadno interpretovatelná (což v obchodní praxi představuje často větší výhodu než sofistikovaná a těžko pochopitelná metoda);
regresní přístup zahrnující metodu kvalitativních proměnných a metodu goniometrických křivek sice nepotřebuje žádné vstupní parametry kromě délky sezónního cyklu, ale je použitelný pouze pro aditivní model dekompozice a požaduje následnou kontrolu a případnou revizi vytvořeného modelu;
Holtova-Wintersova metoda potřebuje délku sezónního cyklu a tři vyrovnávací konstanty, které se odhadují pomocí měření přesnosti předpovědi.
Kvůli složitosti určování vyrovnávacích konstant u Holtova-Wintersova metody a kvůli nevhodnosti regresního přístupu pro multiplikativní model by nejlepší volbou pro sezónní složku byla metoda Census I. Spektrální analýza je sice sofistikovaná a propracovaná metoda, ale hodí se spíš na časové řady fyzikálních jevů. Na ekonomické řady (které jsou předmětem této práce) je to až příliš mocný a těžkopádný nástroj. Regresní analýza je vhodná v případě, že předpokládáme závislost mezi prodejem produktu a jinými (předvídatelnými) nezávislými faktory. Jestliže v našem případě žádné nezávislé faktory nejsou známé, tuto metodu nelze použít. Metody ARMA a ARIMA by byly sice vhodné pro předpověď, ale jednak v základní variantě nepočítají se sezónní fluktuací, jednak potřebují určit 2 až 3 vstupní parametry modelu. Problém sezónnosti by bylo možné vyřešit použitím varianty SARIMA neboli sezonální ARIMA. Automatizované určování parametrů modelu by mohla vyřešit Boxova - Jenkinsova metodologie, která v iterativních krocích určuje parametry modelu, spočte koeficienty modelu, ověří, zda je daný model dostatečně přesný a pokud není, spouští další iteraci. Možné argumenty proti této metodě jsou: potřeba minimálně 50 pozorování pro možnost předpovídání; nutnost použít zvláštní software kvůli náročnosti implementace. Ideální varianta by tedy vytvářela předpovědi prodeje pomocí Boxovy-Jenkinsovy metodologie, která by stavěla na metodě SARIMA. Problém zde představuje nalezení vhodného softwaru, který tuto kombinaci implementuje a zároveň poskytuje možnost integrace do externích aplikací (tj. nabízí konzolový mód nebo knihovnu s definovaným API). Realizovatelná varianta bude vytvářet předpovědi pomocí vlastní implementace metody dekompozice. Konkrétně zmiňovanou metodou Census I pro identifikaci sezónní složky a metodou klouzavých mediánů pro modelování trendu. Klouzavé mediány byly upřednostňovány před exponenciálním vyrovnáváním a metodou adaptivních vah kvůli jednodušší implementaci (bez iterace přes hodnoty konstant) a před klouzavými průměry kvůli lepšímu chování v případě náhodných extrémních výkyvů. 65
5.6 Výběr produktů k umístění a generování návrhu Výběr produktů a generování návrhu umístění se z uživatelského pohledu děje v jednom kroku. Uživatel vybere položku „Generovat rozmístění“ z kontextového menu skříně nebo skupiny skříní, případně položku „Generovat rozmístění pro všechny skupiny“ z kontextového menu kategorie. Po spuštění některého ze zmíněných příkazů se otevře dialog pro nastavení metody výběru produktů a dalších parametrů generování, které budou upřesněny dále v této kapitole. Po potvrzení nastavení v dialogu se generovaným návrhem naplní mříž: lokálního rozmístění vybrané skříně; globálního rozmístění standardní skříně vybrané skupiny nebo všech skupin vybrané kategorie. Uvnitř QuAI se tento „jeden krok“ rozloží na 4 části: 1. podle ohodnocení produktů a vybrané metody pro výběr produktů se vyberou produkty a značky pro umístění a určí se velikost přiděleného místa pro jejich bloky (viz kapitola 5.6.1); 2. k určení nejatraktivnějších míst se všem pozicím ve skříních přiřadí priority (viz kapitola 5.6.2); 3. bloky značek a produktů s přidělenou velikostí se umístí do konkrétní skříně tak, aby co nejlépe respektovaly jim přidělené místo a využily priority ve skříni (viz kapitola 5.6.3); 4. na základě naplněné skříně se sestaví výstupní rozmísťovací mříž s bloky produktů, kterým se nastaví atributy tak, aby v reálné skříni vytvořili rozumný planogram (viz kapitola 5.6.4). Vstupem pro tuto část QuAI tedy budou: produkty dané kategorie s ohodnocením, rozměry, značkou a příznaky požadované resp. zakázané; skříň s konkrétními rozměry a s prioritami polic; parametry z dialogu pro generování a globální nastavení QuAI. Výstup této části bude rozmísťovací mříž naplněná bloky produktů, které mají nastavené správné atributy, aby se ve vstupní skříni vytvořilo vhodné rozmístění. Předpoklady k použití generování návrhu QuAI počítá s konkrétními rozměry vstupní (reálné či standardní) skříně. Navrhne rozmístění, které bude vhodné pro tento rozměr i pro rozměr trochu větší (díky automatickému vytváření horizontálních bloků produktů při distribuci rozmístění v Quantu). Pro značně větší skříně již ale toto rozmístění nemusí být nejvhodnější, protože do většího prostoru by se pravděpodobně vešlo i více druhů produktů nebo značek. Kvůli kvalitní spolupráci Quantu a QuAI se proto doporučuje třídit skříně v projektu do skupin na základě šířky a počtu polic. Takto vytvořené skupiny budou obsahovat dostatečně podobné skříně na to, aby byl generovaný návrh vyhovující pro všechny. Quant podporuje i skříně s držáky a pohyblivými policemi, ale QuAI se bude zabývat 66
pouze skříněmi s fixními policemi bez držáků a to ze dvou důvodů: použití držáků a pohyblivých polic je v praxi minoritní; návrh rozmístění pro tyto skříně je mnohem problematičtější než pro skříně s fixními policemi, protože počet polic (resp. řádků produktů) a jejich pozici ve skříni určuje dynamicky rozmístění aplikované na tyto skříně. Proto nebude povoleno generování rozmístění pro skupiny, které obsahují skříně s pohyblivými policemi nebo s držáky.
5.6.1 Výběr produktů a určení přiřazeného místa bloků V dialogu pro nastavení generování si uživatel zvolí jednu ze tří metod pro výběr produktů a značek, které jsou popsané v kapitolách 4.2.5 a 4.3.2. Pokud zvolí Paretovu metodu pro produkty nebo značky, zadá ještě cílové pokrytí trhu v procentech. Dále zde může nastavit minimální velikost bloků značek pro aktuální generování. Výchozí hodnota tohoto parametru se nastaví v globálních nastaveních QuAI. Velikost bloku – minimální a přidělená Velikost bloku by se v ideální variantě určovala jako obsah bloku ve skříni. To by však předpokládalo plánované využití prostoru v polici i vertikálně. Tj. určilo by se, že daný produkt má být v dané polici například ve třech řadách na sobě, protože se tam vejde. Realizaci této verze znemožňují 2 nedostatky Quantu: Standardní skříň má výšku nejvyšší skříně ze skupiny a počet jejích polic je roven největšímu počtu polic ve skupině. Police jsou pak rovnoměrně rozloženy ve skříni. To způsobuje, že standardní skříň může mít mnohem vyšší police, než jaké má některá z nejnižších skříňí ve skupině. Kvůli tomu tedy nelze s určitostí říct, zda se vybraný počet řádků produktu vejde do dané police ve všech skříních. Produkt v Quantu nemá žádný atribut k určení, zda je z něj možné stavět věž. Jestliže existují produkty, jejichž balení takovou stavbu nedovolují, obecně s tím nelze počítat. V ideální variantě by se u každého produktu zadával maximální počet kusů, které je možné stavět na sebe. V realizovatelné variantě se tedy velikost bloku bude určovat jako šířka bloku (v případě bloku přes více polic jako součet šířky bloku v každé polici). Pro potřeby algoritmu pro umístění bloků značek se pro každou značku určí minimální a přidělená velikost bloku: Minimální velikost daného bloku je vždy alespoň tak velká jako minimum z nastavení generování a pochopitelně znamená to, že daná značka se nemůže umístit do skříně s menší velikostí bloku.
Přidělená velikost bloku značky je pak alespoň tak velká jako minimální velikost dané značky a znamená ideální velikost prostoru, kterou by měla daná značka v aktuálním rozmístění zaplnit.
67
Paretova metoda pro produkty Uživatel zvolí cílové pokrytí trhu s podíly umístěných produktů. Z produktů se nejdřív vypustí všechny zakázané16. Zbylé produkty se setřídí podle jejich ohodnocení. Nejdřív se vyberou požadované17 produkty, potom se ze zbytku vybírají nejlepší produkty, dokud součet tržních podílů vybraných produktů nedosáhne cílového pokrytí. Žádný slabší produkt se nedostane do rozmístění. Po výběru produktů se sestaví seznam reprezentovaných značek a spočtou se jejich tržní podíly. Velikost bloků značek se určí následujícím postupem: Na začátku každá značka ze seznamu dostane startovací velikost rovnou minimální velikosti prostoru potřebného k umístění jednoho kusu z každého vybraného produktu značky. Pokud je tato startovací velikost menší, než minimální velikost bloku značky z nastavení generování, tak se začnou přidávat další kusy již vybraných produktů podle jejich tržního podílu dokud velikost umístěných produktů značky nedosáhne nastavené minimální velikosti. Pokud se všechny značky se startovací velikostí nevejdou do skříně, vypustí se potřebný počet nejslabších produktů. Pokud možno se ovšem nevypustí žádný požadovaný produkt. V tomto kroku již má každá vybraná značka určenou minimální velikost bloku. Zbývající prostor se rozdělí mezi značkami, které by podle tržního podílu měly dostat větší prostor než startovací. Tím se určí přidělená velikost bloku značky. O konkrétních počtech umístěných produktů v bloku značky již rozhoduje část návrhu umístění bloků do skříně - podle velikosti bloku značky a ohodnocení produktů. Paretova metoda pro značky Uživatel zvolí cílové pokrytí trhu s podíly umístěných značek. Nejdřív se vyberou značky, které obsahují požadovaný produkt. Pak se značky setřídí podle svých tržních podílů a vybírají se nejlepší z nich, dokud součet jejich tržních podílů nedosáhne velikosti cílového pokrytí. Ostatní slabší značky se nedostanou do rozmístění. Po výběru značek se určí velikost jejich bloků následujícím postupem: Na začátku každá vybraná značka dostane startovací velikost rovnou minimální velikosti prostoru potřebného k umístění jednoho kusu z každého požadovaného produktu značky. Pokud je tato startovací velikost menší, než minimální velikost bloku značky z nastavení generování, tak se začnou přidávat produkty podle jejich tržního podílu dokud velikost umístěných produktů značky nedosáhne nastavené hodnoty minimální velikosti. Pokud se všechny značky se startovací velikostí nevejdou do skříně, potřebný počet nejslabších značek se vypustí. Ovšem nevypustí se pokud možno žádná značka, která obsahuje požadovaný produkt. V tomto kroku již má každá vybraná značka určenou minimální velikost bloku. 16 Produkt je zakázaný, pokud mu uživatel nastavil příznak „zakázaný“. 17 Produkt je požadovaný, pokud mu uživatel nastavil příznak „požadovaný“.
68
Zbývající prostor se rozdělí mezi značkami, které by podle tržního podílu měly dostat větší prostor. Tím se určí přidělená velikost bloku značky. Metoda optimálních podílů
U metody optimálních podílů uživatel nemusí specifikovat nic kromě minimální velikosti bloku značky. Metoda pracuje následujícím způsobem: Na začátku každá značka, která obsahuje požadovaný produkt dostane startovací velikost rovnou minimální velikosti prostoru potřebného k umístění jednoho kusu z každého požadovaného produktu značky. Pokud je tato startovací velikost je menší, než minimální velikost bloku značky z nastavení generování, tak se začnou přidávat produkty podle jejich tržního podílu dokud velikost umístěných produktů značky nedosáhne nastavené hodnoty minimální velikosti. V tomto kroku již má každá značka určenou minimální velikost bloku. Pokud se všechny značky se startovací velikostí nevejdou do skříně, potřebný počet z nejslabších značek se vypustí. Zbývající prostor se rozdělí mezi značkami, které by podle tržního podílu měly dostat větší prostor. Značky, které by dostaly méně prostoru než je jejich minimální velikost bloku, se neumístí a jejich prostor se rozdělí mezi značkami, které umístěny budou. Tím se určí přidělená velikost bloku značky. Přednosti a nevýhody uvedených metod Vlastnosti uvedených metod za předpokladu, že žádný produkt nemá nastavený ani jeden z příznaků požadovaný a zakázaný: Metoda optimálních podílů implementuje nejvěrněji původní ekonomický záměr: každá značka má mít tolik prostoru ve skříni, jaký je její tržní podíl.
Paretova metoda pro značky umožňuje uživateli: snížit počet umístěných značek a zároveň zvýšit velikost bloků jednotlivých značek – a to zvolením nízkého cílového pokrytí trhu; zvýšit počet umístěných značek a vynutit umístění s minimální velikostí bloku i pro slabé značky – a to zvolením vysokého cílového pokrytí trhu;
Paretova metoda pro značky a metoda optimálních podílů umístí také značky, které tvoří slabé produkty, ale v součtu dávají silnou značku (oproti Paretově metodě pro produkty, která takové značky neumístí).
V případě použití příznaků požadovaný resp. zakázaný se původní vlastnosti uvedených metod poněkud změní a jejich výsledky začnou konvergovat k výsledkům Paretovy metody pro produkty. Proto se doporučuje používat tyto příznaky s rozvahou a pouze v situacích, kdy je to opravdu potřeba.
69
5.6.2 Přiřazení priorit pozicím ve skříni Přiřazení priorit pozicím ve skříni slouží ke dvěma účelům: v modulu QuAI určí nejvýhodnější police ve skříni podle jejich výšky od země a nejvhodnější horizontální pozice uvnitř jedné police; v modulu Quant pomáhá vyřadit nadbytečné řádky rozmístění (pokud reálná skříň, na kterou je rozmístění aplikováno, má méně polic než rozmísťovací mříž). V ideální variantě by uživatel mohl přiřadit základní priority skříni jako celku v editoru prodejen podle polohy skříně v prodejně. Pro toto přiřazení neexistuje automatický způsob, protože to vyžaduje znalost toku zákazníků v prodejně. Priority jednotlivých polic reálných skříní by se počítaly na základě uživatelem definované mapy, která mapuje výšky polic od země na priority. Tuto mapu by uživatel zadal v globálních nastaveních QuAI podobným způsobem jak je na ilustraci 5.6:a vlevo. Priority polic reálných skříní by se počítaly jako vážený průměr priorit zasažených danou policí. Priority pro standardní skříň skupiny by se počítaly jako průměr priorit odpovídajících polic ve všech skříních skupiny (chybějící police by znamenala nulovou prioritu). Pro znázornění toho výpočtu viz ilustrace 5.6:a. Na levé straně je mapa priorit z globálních nastavení, prostřední 4 skříně tvoří jednu skupinu a jejich standardní skříň je na pravé straně.
Ilustrace 5.6:a: Příklad počítaní priorit polic
Horizontální priority v rámci jedné police by se zadávaly v globálních nastaveních QuAI jako 2 čísla: priorita středu skříně a priorita okrajů. Podle těchto dvou čísel by se vytvořila mřížka s prioritami. Pro znázornění viz ilustrace 5.6:b, kde je mřížka vzniklá aplikováním priorit 10 (střed), 5 (okraje) na skříň, která má šířku 80 cm.
70
Ilustrace 5.6:b: Příklad horizontálních priorit V realizovatelné variantě se skříni jako celku nepřiřazuje priorita, protože Quant tuto operaci nepodporuje. Priority polic v Quantu jsou celá čísla od 1 (nejvyšší priorita) do počtu polic rozmísťovací mřížky (nejnižší priorita), která se generují a přiřazují automaticky počínaje prostřední policí. Priority u standardní skříně nejsou nijak závislé na vlastnostech reálných skříní, pouze na vlastnostech vytvořené standardní skříni. Tuto funkčnost si vlastník Quantu v tuto chvíli nepřeje změnit, protože by to ovlivnilo i distribuci globálního rozmístění do reálných skříní. Proto realizovatelná varianta nebude obsahovat uživatelské nastavení priorit pro police, místo toho si bude přepočítávat priority z Quantu (typu 1 až N) na priority pro QuAI (typu 100 až 0). Horizontální priority bude realizovatelná varianta implementovat stejným způsobem, jaký je popsaný u ideální varianty.
5.6.3 Umístění bloků do skříně Algoritmus pro umístění bloků do skříně dostane z části pro výběr produktů (viz kapitola 5.6.1) seznam značek setříděný podle jejich tržního podílu, kde každá značka má určenou minimální a přidělenou velikost bloku. Tržní podíly značek jsou upraveny tak, že značky obsahující požadované produkty mají vyšší podíl než ostatní značky. Dále dostane algoritmus ke každé značce seznam produktů setříděný podle ohodnocení. Nicméně problém umístění bloků značek a posléze produktů do konkrétní skříně je i tak značně složitý, protože: Blok značky může mít tolik různých tvarů, kolik je polic ve skříni. Blok značky daného tvaru může být umístěn ve skříni na více různých místech. Počet produktů, které mají být umístěny do skříně, není určen jednoznačně. Šířka produktů se skoro nikdy neshoduje s ideálním rozměrem místa, který by produkt dostal na základě svého ohodnocení a proto je potřeba zaokrouhlit počet umístěných produktů na celá čísla. Například pokud značka má přidělený prostor 28,7 cm a její produkty mají šířku a ideální přidělený prostor podle ohodnocení: (8,2; 13,1), (7,4; 10,2) a (10; 5,4), pak všechny níže uvedené kombinace počtu produktů jsou rozumnými možnostmi, které jsou nejblíž k velikosti bloku značky: 2, 2, 0 – 31,2 cm; 2, 1, 1 – 33,8 cm; 2, 1, 0 – 23,8 cm; 1, 2, 1 – 33,0 cm; 1, 2, 0 – 23,0 cm; 1, 1, 1 – 25,6 cm. Pozice produktů v rámci bloku značky není jednoznačně určena. Cílem rozmístění 71
může být: vytvořit co nejpěknější obdélník, aby šířka bloku značky byla ve všech policích velmi podobná; umístit nejlepší produkty na nejlepší místa v bloku a ostatní produkty na zbylé místo. Z těchto důvodů by algoritmus hledající optimální řešení musel vyzkoušet a ohodnotit všechny varianty umístění, pak vybrat tu s nejlepším ohodnocením. Takový algoritmus ale má exponenciální složitost a pro složitější vstupy by nemusel reagovat dostatečně rychle k použití v interaktivní aplikaci. Jestliže se do větších skříní umísťují i desítky značek a stovky produktů, toto nebezpečí je zcela reálné. Proto nebude navrhovaný algoritmus pro umístění bloků značek prohledávat celý stavový prostor, nýbrž použije jistou formu hladového algoritmu, který při každém rozhodnutí vybírá nejvýhodnější z dostupných možností. Tento algoritmus samozřejmě nezaručuje nalezení optimálního řešení a v extrémních případech může poskytnout pouze částečné řešení, ale na běžných vstupech by měl mít rozumné výsledky a taky akceptovatelnou složitost. Umístění bloků produktů uvnitř bloku značky představuje menší zadání stejného problému, takže se pro ně použije stejný algoritmus. V ideální variantě by se vedle hladového algoritmu implementoval i druhý algoritmus, který by prohledával celý stavový prostor a poskytoval by tedy vždy optimální řešení. Systém by pak dynamicky rozhodoval na základě velikosti vstupu, který algoritmus se použije. Toto řešení by bylo užitečné zejména pro umístění bloků produktů do bloku značky, protože tento problém má obvykle přijatelně malý vstup. Algoritmus pro umístění bloků značek do skříně Na začátku každá značka určí, jakou minimální a optimální šířku bloku potřebuje pro daný počet polic. Výsledky (tj. dvě čísla a dvě rozmístění) se zapamatují pro všechny značky a pro všechny možné počty polic. Rozmísťovací algoritmus pak začne umísťovat značky od té s nejvyšším ohodnocením. Pro aktuálně umísťovanou značku vybere nejlepší volné místo a tvar bloku podle uživatelských preferencí (viz popis dále na straně 73). Pak se otestuje, zda se značka vejde na zvolené místo se zvoleným tvarem. Přitom je možné okolní bloky posunout, pokud se daný blok umísťuje na okraj skříně a na druhém okraji je též volné místo. Důvod k tomu je ten, že díky vlastnostem horizontálních priorit budou mít bloky tendenci umísťovat se nejdřív doprostřed police a na okraj až na konci. Možnost posunu se posuzuje hierarchicky: Při posunu bloku doprava se blok zeptá všech svých pravých sousedů o kolik se můžou posunout a minimum z čísel vracených sousedy bude možný posun daného bloku. Blok se tedy může posunout pouze pokud ve všech zasažených policích je dostatek volného místa. Pokud se značka takto nevejde do skříně s optimální šířkou, vyzkouší se jiné tvary (jiné 72
počty polic). Přitom se ale zapamatuje, zda by se značka vešla na aktuální místo s aktuálním tvarem a minimální šířkou. Pokud se značka na zvolené místo nevejde ani s jinými tvary, vyzkouší se pro ni jiné volné místo. Pokud se značka nijak a nikam nevejde do skříně s optimální šířkou, vybere se první zapamatovaný stav, jak se vešla s minimální šířkou, a použije se. Pokud se žádný stav s minimální šířkou nezapamatoval, pak se tato značka již nijak nevejde do skříně a tedy nebude umístěna. Pokračuje se s další značkou. Může se stát, že po umístění vybraných značek zbude ve skříni ještě hodně volného místa kvůli použití minimální šířky u některých značek. V případě, že uživatel zvolil metodu optimálních podílů pro výběr značek, lze toto prázdné místo zaplnit značkami, které z první fáze umístění byly vyloučeny již výběrem značek, tj. nedostaly žádné přidělené místo. Algoritmus tedy zkusí umístit takové značky s minimální šířkou bloku. Při zvolení jiné metody výběru značek (nebo produktů) se tento krok vynechá, protože by mohla zvednout ukazatel pokrytí trhu umístěnými produkty (značkami) nad zvolenou úroveň, což je nežádoucí. Jak se vybere nejlepší volné místo? Volné a obsazené místo je mapováno ve dvourozměrném poli, která má tolik řádků, kolik polic má skříň, a tolik sloupců jak široká je skříň (v milimetrech). Každé políčko v tomto poli ukazuje na blok, kterým je obsazeno. Volné políčka neukazují na žádný blok. Každý blok si pamatuje svou pozici a rozměry. Obsazené bloky jsou vždy disjunktní, volné bloky naopak se můžou překrývat. Pro příklad viz ilustrace 5.6:c, kde jsou vidět obsazené bloky (pole označené stejnými písmeny) a volné políčka (očíslovaná oblast), které mají přiřazené číslo vyjadřující počet volných bloku, do kterých patří.
Ilustrace 5.6:c: Volné bloky ve skříni Volné bloky se udržují v seznamu setříděném podle důležitosti bloku, což je nejvyšší obsažená priorita. Pokud takových bloků je víc, pak se třídí podle nejmenšího obsahu, a to proto, aby algoritmus nejdřív zkusil zaplnit menší blok, protože to je těžší než zaplnit velký blok. Jak se vybere tvar bloku? Uživatel zvolí v dialogu pro nastavení generování vertikální nebo horizontální bloky 73
značek podle svých preferencí. Ovšem to neznamená, že se v rozmístění druhý typ bloku nemůže objevit. Vlastně to znamená, že při výběru tvaru bloku v rozmísťovacím algoritmu se začne tvarem, který preferuje uživatel. Nicméně, pokud tento tvar neuspěje, přijde řada na další. Může se také stát, že značku lze umístit do stejné šířky přes 5 nebo jakýkoliv vyšší počet polic, například protože obsahuje široký produkt, který nedovoluje další zúžení bloku. V takovém případě první vybraný tvar při preferenci vertikálních bloků nemusí být blok přes všechny police rozmístění (například přes 7), ale tvar s minimálním počtem polic v rámci těch, které mají minimální šířku (tj. přes 5 polic). Jak se určí minimální a optimální šířka bloku značky pro daný počet polic? Na první pohled se může zdát, že určení minimální resp. optimální šířky značky představuje stejný problém jako umístění produktů do přiděleného bloku značky (viz dále), ale opak je pravdou. Při umístění produktů do přiděleného bloku značky je totiž cílem maximalizovat celkové ohodnocení bloku značky (která je kombinací ohodnocení produktů a priorit jejich pozice ve skříni), tj. veličinu, která přidáváním dalších produktů roste. Na druhou stranu při určování minimální a optimální šířky bloku značky za určitých podmínek je cílem minimalizovat šířku bloku značky, tj. veličinu, která přidáváním produktů roste. Z toho vyplývá, že tato veličina může dobře posloužit jako heuristika v prohledávání všech možností do hloubky (tj. v backtrackingu). Pokud se bude pamatovat nejlepší zatím nalezené řešení (tedy s nejmenší šířkou) při procházení rozhodovacího stromu, lze tuto šířku použít jako omezující pravidlo pro další výpočet do hloubky. Pokud totiž v aktuálním uzlu je šířka bloku již větší, než zapamatované minimum, v celém podstromu uzlu bude šířka větší, takže tam se lepší řešení určitě nenajde, a proto lze celý podstrom odstřihnout bez prohledávání. Optimální a minimální šířka se spočítají stejným způsobem, ale pro různé vstupní seznamy produktů. Seznam produktů pro minimální šířku má být zvolen tak, aby při libovolném tvaru obsadil nejméně tak velký prostor, jako nastavená hodnota minimální velikosti bloku a aby obsazený prostor byl přitom co nejmenší. Tento seznam je závislý na zvolené metodě pro výběr produktů a značek a vytváří se postupem, které je popsané u jednotlivých metod v kapitole 5.6.1. Seznam produktů pro optimální šířku má být zvolen tak, aby poměry počtů umístěných produktů co nejlépe odpovídaly poměrům ohodnocení a přitom aby výsledná velikost bloku značky (pokud možno) nepřesáhla její přidělenou velikost. Jestliže blok značky může být umístěn i přes více polic, přičemž obvykle nějaká část prostoru zůstane nevyužita (vlastnost „zubatosti“ vertikálních bloků), je potřeba počítat s jistou rezervou na tyto nevyužité plochy. Proto není dobré aby hodnota součtu šířek vybraných produktů příliš blížila hodnotě přiřazenému velikosti bloku značky. Potřebná velikost této rezervy je závislá na tvaru bloku a na umístěných produktech, proto ji nelze jednoznačně určit. Lze předpokládat, že při preferování horizontálních bloků stačí i menší rezerva (např. 0-10%), protože samotný horizontální blok žádnou rezervu nepotřebuje a použití vertikálního bloku je tedy málo 74
pravděpodobné. Při preferování vertikálních bloků naopak je potřeba počítat s větší rezervou (např. 20-40%), aby nemuselo dojít až k použití horizontálních bloků kvůli nedostateční rezervě. Pro prvotní implementaci se proto zvolí rezervy 10% při preferenci horizontálních a 40% při preferenci vertikálních bloků. Tyto hodnoty se pak mají empiricky upřesnit na ideální. Proto se umístí mezi ostatní parametry do nastavení generování. Se zvolenou rezervou se tedy určí hranice pro součet šířek vybraných produktů. Je-li tedy aktuální součet nižší než tato hranice, přidávají se po jednom produkty, které to nejvíc zaslouží podle svého ohodnocení a aktuálního počtu umístěných kusů. Sestavený seznam produktů je pak setříděn podle šířek produktových bloků (tj. pro produkt se šířkou 8 cm, ze kterého se mají umístit 2 kusy, se bere šířka 16 cm). Pak se bloky produktů ze seznamu umísťují podle následujícího postupu: Vždy se umísťuje aktuálně nejširší produktový blok. Bloky se umísťují nejblíž ke pravému okraji bloku značky. Volné místo pro aktuální blok se vybírá buď ze seznamu volných bloků, kde se drží volné bloky, které jsou omezené zleva, nebo z neregistrovaných volných míst, které jsou na levém okraji každé police (viz ilustrace 5.6:d).
Ilustrace 5.6:d: Volné místa v bloku značky
Pro aktuálně umístěný blok se rekurzivně vyzkouší všechny volné bloky, v případě potřeby i s posunem omezujících bloků doleva, a neregistrované volné místo ve všech policích. Pro každou z těchto větví se zjistí výsledná šířka bloku značky, přičemž vybrané bude umístění s minimální šířkou. Pro částečné omezení rekurze se použije heuristika, při kterém se rozhodovací strom prohledá do hloubky a pamatuje se nejmenší zatím nalezená výsledná šířka. Pokud ve vnitřním uzlu stromu je aktuální šířka již větší než pamatovaný minimum, lze celý aktuální podstrom odstřihnout, protože v jeho listech se nalezený minimum již určitě nevylepší.
75
Jak se umístí produkty do přiděleného bloku značky? Když je již značka umístěna ve skříni, její blok dostal velikost, pozici a tím i priority. Je tedy potřeba naplnit tento blok produkty značky tak, aby výslední rozmístění mělo co nejlepší ohodnocení (tj. aby se nejlepší produkty dostaly na nejlepší místa). Užije se tedy stejný hladový algoritmus, jako pro umístění značek, ale tady místo optimální a minimální šířky má každý blok pouze jednu šířku pro daný počet polic a ta se určí počtem umístěných produktů ze zvoleného seznamu (optimálního nebo minimálního podle šířky přiděleného prostoru). U výběru tvaru pro blok produktů se bude preferovat horizontální tvar před vertikálním kvůli lepšímu chování při distribuci do reálných skříní (protože vytváří méně nevyužitého prostoru). Na konci se výsledek hladového algoritmu porovná se čtyřmi zrcadlenými obrazy umístění produktů zapamatovaného při zjišťování minimální šířky bloku značky a vybere se nejlepší varianta.
5.6.4 Sestavení výstupné mřížky s bloky produktů V tuto chvíli je již naplněna vstupní skříň, která má své konkrétní rozměry. Pokud ale vstupní skříň je standardní skříní nějaké skupiny, je potřeba zajistit, aby se u všech skříní ve skupině vytvořilo rozumné rozmístění, i když tyto skříně můžou mít jiné rozměry než vstupní skříň. Za tímto účelem je potřeba naplnit rozmísťovací mříž Quantu bloky produktů a přiřadit jim správné hodnoty atributů. Pro naplnění mřížky se vybírají jednotlivé značky použitím zametací přímky pohybující se od levého okraje skříně k pravému. Značka si stejným způsobem vybírá jednotlivé produkty k umístění. Mezikrok s vybíráním značky je užitečný kvůli tomu, aby bloky produktů jedné značky zůstaly v mřížce u sebe a vytvářely tak v uživateli dojem jednoho celku. Vybranému produktu se pak přiřadí souřadnice v mřížce a výška bloku podle počtu zasažených polic. Atribut minimum viditelných kusů se nastaví na počet umístěných produktů ve vstupní skříni, protože všechny skříně, na které bude toto rozmístění aplikováno, by měly být aspoň tak široké jako vstupní skříň, takže zvolený počet produktů se do nich určitě vejde. Atribut maximum kusů vedle sebe se nechá na výchozí hodnotě -1, tj. neomezené množství, aby se nezabránilo případnému rozšíření bloku při aplikaci rozmístění na širší skříň než je vstupní. Atribut požadovaný počet kusů nad sebou v tomto případě je irelevantní, protože se to využívá pouze u skříní s pohyblivými policemi. Atribut maximum kusů nad sebou se nastaví na -1, tj. na neomezenou hodnotu. To znamená, že věž produktů v rámci jedné police se bude stavět automaticky pokud to půjde, ale QuAI počítá celý sloupec jako jeden produkt. 76
Atribut maximum kusů za sebou se nastaví rovněž na -1, tj. v jedné polici může být umístěn tolik produktů za sebou, kolik se tam vejde. Atribut minimální vzdálenost od dna/stropu se nastaví na 10% z výšky police, aby zákazníci neměly problém odebrat produkt z police. Atributy levý a pravý okraj se nastaví na výchozí nulovou hodnotu, protože ty si nastavuje merchandiser podle svého estetického citu. Atributy zvýrazněný a otočený o 90 stupňů se nechají vypnuté, protože první je pouze estetická pomůcka, a druhý je v praxi využitelná jen ve vzácných případech. Atribut priorita je důležitým faktorem při distribuci rozmístění. Vyjadřuje to jistou preferenci daného bloku před ostatními při vytváření planogramu aplikováním rozmístění na konkrétní skříň. Distribuce produktů do konkrétní skříně se v Quantu provádí tak, že se nejdřív z každého produktu umístí minimální počet, co má nastavený v atributech bloku. Poté, co jsou takto umístěny všechny produkty, zbylé horizontální místo v policích se zaplní s produkty tak, že každý blok se zkusí rozšířit o další kus produktu začínaje od bloku s nejvyšší prioritou. V ideálním případě by toto rozšiřování bloků zohledňovalo nastavené priority bloků v mnohem větší míře. Expanze daného bloku (počet přidaných produktů) by se měla spočítat z poměru priority daného bloku a součtu priorit všech bloků v dané polici, z šířky police a daného produktu. Priorita bloku v rozmístění by se pak nastavila podle tržního podílu značky a produktu daného bloku a zohledňovala by i rozdíl mezi minimálním počtem produktů, nastaveném v atributech bloku, a ideálním počtem, která se spočítala podle tržního podílu produktu. Například pokud se z daného produktu měl být umístěn v ideálním případě 3,56 kusů, ale jeho značka dostala pouze minimální velikost bloku, a proto se umístil pouze jednou, pak by tento blok dostal vysokou prioritu, aby v širších skříních dohnal svůj handicap. V realizovatelné variantě tedy QuAI bude určovat priority bloků stejným způsobem jako ideální varianta, ale distribuce v Quantu to nebude zohledňovat víc, než to dělá ve výchozím systému. Příklad Jako příklad se uvede skupina skříní se šířkami v rozmezí [60,70) cm, kde rozmístění bude generované na základě 60 cm široké standardní skříně. V jedné polici má nejvyšší prioritu produkt se šířkou 2 cm, druhou nejvyšší produkt široký 7 cm a třetí produkt široký 3 cm, přičemž priorita prvního produktů je daleko vyšší než ostatní priority v polici. Pro skříň se šířkou 69 cm určitě zbude v polici nejméně 9 cm volného místa, které se při staré distribuci zaplní jednou s prvním a jednou s druhým produktem: 1x2 + 1x7 + 0x3= 9. Při novém mechanismu by se to místo zaplnilo se třemi kusy prvního produktu a jedním kusem třetího produktu, protože druhý produkt by se již nevešel do police po rozšíření 77
prvního produktu: 3x2 + 0x7 + 1x3 = 9. Použití magnetických čar Ve vlastnostech systému Quant (viz kapitola 5.1.7) je vysvětlené, že nelze zaručit hezké obdélníkové tvary pro celou značku, a proto jsou okraje bloku značky „zubaté“. Tento problém by šlo částečně vyřešit použitím magnetických čar, ale ty zarovnají pouze jeden okraj bloku značky, a jeden blok přitom může mít přidělenou maximálně jednu magnetickou čáru. Proto druhý okraj značky může zůstat „zubatý“. Navíc nelze umístit více magnetických čar na stejné místo horizontálně (tak, aby byly nad sebou), a proto nelze mít bloky ve stejném sloupci rozmísťovací mřížky, které jsou zarovnané k různým čárám zleva (resp. zprava). Takže k dosažení žádoucího efektu by obecně mohla být v jednom sloupci mřížky pouze jedna značka. To by neúnosně zvětšilo šířku mřížky. Kvůli těmto potížím se použití magnetických čar v generovaném rozmístění nevyplatí. V ideální variantě by se dal omezit vertikální rozsah působení magnetické čáry a dalo by se umístit více čar nad sebe. Dále by blok produktu mohl mít přidělené až dvě čáry (jednu zleva, druhou zprava), které by vymezily maximální prostor pro bloky mezi nimi. Nakonec by zarovnání bloků mohlo fungovat v rámci prostoru vymezených magnetickými čárami.
78
6 Popis prototypové implementace
Tato kapitola popisuje prototypové řešení, což je implementace realizovatelné verze návrhu z páté kapitoly. Nejdřív v kapitole 6.1 se uvede uživatelská dokumentace, pak popis nových prvků v modulu Quant v kapitole 6.2 a programátorská dokumentace k modulu QuAI v kapitole 6.3. Zkompilovaná verze implementace i původního systému je umístěna na přiloženém kompaktním disku. Rovněž je tam i zdrojový kód modulu QuAI a návod k instalaci systému (pro podrobnosti viz přílohu A na straně 94).
6.1 Návod k použití – uživatelská dokumentace K použití prototypové implementace systému Quant + QuAI je potřeba nejdřív oba moduly nainstalovat podle návodu v příloze A (viz strana 94). Nový systém má zachované všechny funkce starého systému a ty se používají stejně jak je to již popsané v kapitole 5.1. Proto zde budou popsány pouze odlišnosti starého a nového systému.
6.1.1 Import dat o prodeji K importu
dat
o prodeji
slouží
průvodce, kterého lze spustit ”Soubor/Importovat ekonomická data” hlavního okna modulu Quant.
z menu
Na první obrazovce je potřeba nastavit zdroj (ID skupiny, společnost nebo trh) a období importovaných dat. Období lze vybrat z předem definovaných cyklů pevné délky nebo lze nastavit vlastní období pomocí data počátku a konce období. Druhá obrazovka slouží pro výběr tabulkového souboru ve formátu XLS, který obsahuje data o prodeji. Na třetí obrazovce vybere uživatel list tabulky, který obsahuje data o prodeji. Poslední 3 obrazovky ukazují obsah zvoleného listu tabulky. Na čtvrté obrazovce má uživatel vybrat první relevantní buňku (ze shora) ve sloupci, kde jsou ID produktů. Systém pak začne importovat řádky od zvolené buňky níž, takže v případě, že tabulka obsahuje hlavičku, je potřeba zvolit až buňku pod hlavičkou s prvním ID.
79
Pátá obrazovka ukazuje stejnou tabulku a očekává výběr první relevantní buňky s obratem (počtem prodaných kusů). Nakonec šestá obrazovka očekává výběr první relevantní buňky s marží produktu. Po šesté obrazovce se provede import dat a uživatel dostane buď zprávu o úspěšném importu nebo chybovou hlášku, pokud by importovaná data kolidovala s již existujícími daty nebo vytvořila časovou mezeru mezi daty v databázi.
6.1.2 Globální nastavení pro modul QuAI Globální nastavení pro QuAI lze najít v menu ”Volby/Nastavení” hlavního okna modulu Quant. Otevře se dialogové okno se třemi záložkami. Poslední z nich s názvem „QuAI“ obsahuje následující prvky: Cykly pro import prodejních dat a vytváření ohodnocení produktů, které se definují pomocí počátečního data a délky cyklu. Při změně se vytvoří cykly od počátečního data až do menšího z: aktuálního data a z data posledních importovaných dat. Pokud je v databázi dostatečné množství dat (na 3 roky a víc), pak se pomocí předpovědi prodeje přidají další 3 cykly (v optimálním případě aktuální a 2 budoucí cykly).
Horizontální priority v policích skříní jako na ilustraci 5.6:b lze nastavit pomocí určení priority středu a okrajů police. Minimální šířka bloku značky v milimetrech pro generování rozmístění produktů. Tato hodnota představuje minimum přes všechny police, takže u vertikálních tvarů bloku může být výsledkem součtů šířky bloku ve všech policích. Toto nastavení slouží pouze jako implicitní hodnota v dialogu nastavení pro generování rozmístění (viz kapitola 6.1.4). Rezerva v procentech pro horizontální a vertikální tvary bloku značek popisované v kapitole 5.6.3. Toto nastavení slouží rovněž pouze jako implicitní hodnota v dialogu nastavení pro generování rozmístění (viz kapitola 6.1.4).
6.1.3 Vytvoření projektu s ohodnocením produktů Průvodce pro vytvoření nového projektu byl rozšířen o obrazovku s nastavením pro vytvoření ohodnocení produktů pro daný projekt. Tato obrazovka je vsunuta mezi výběr skupiny a vzorového projektu. Obsahuje nastavení pro: období, pro které je projekt plánován. Nastaví se výběrem jednoho z nabízených cyklů nebo zadáním data počátku a konce období;
váženou kombinaci zdrojů dat (skupina, společnost, trh), které se mají použít 80
k ohodnocení;
váženou kombinaci základů ohodnocení (obrat a zisk).
Pokud uživatel vybral období nebo zdroje, pro které neexistují importovaná ani předpovídaná data, dostane chybovou hlášku oznamující tento fakt. Pokud proces proběhl bez chyb, vytvoří se projekt, který má u všech kategorií seznam produktů s ohodnocením ve sloupci „skóre“ podle zvolených kritérií.
6.1.4 Generování rozmístění produktů Generování rozmístění se spouští z kontextového menu stromu projektu položkou: “Generovat rozmístění pro skříň” - pro vygenerování lokálního rozmístění jedné konkrétní skříně; “Generovat rozmístění pro skupinu” - pro vygenerování globálního rozmístění jedné skupiny skříní; “Generovat rozmístění pro všechny skupiny” - pro vygenerování globálního rozmístění všech skupin skříní dané kategorie. Každá z uvedených možností otevře dialog pro nastavení generování. Ovšem před učiněním tohoto kroku lze v seznamu produktu označit některé produkty jako požadované nebo zakázané (zaškrtnutím políčka v odpovídajícím sloupci), aby se určitě dostaly (resp. nedostaly) do generovaného rozmístění. Této možnosti je ale potřeba užívat s rozvahou, protože značně pozmění původní vlastnosti kritérií pro výběr produktů a značek. Dialog s nastavením pro generování rozmístění obsahuje: kritérium výběru produktů: cílový tržní podíl produktů nebo značek nebo optimální rozdělení místa podle podílů na trhu (viz kapitola 5.6.1);
preferovaný tvar bloku značky: horizontální nebo vertikální;
minimální šířku bloku značky v milimetrech (implicitní hodnota je převzata z globálního nastavení pro QuAI);
procentuální rezerva pro horizontální a vertikální tvary bloků značek popisované v kapitole 5.6.3 (implicitní hodnota je převzata z globálního nastavení pro QuAI).
Po potvrzení nastavených hodnot v dialogu dostane uživatel hlášku aby přepnul na okno modulu QuAI. Toto okno je otevřeno již od spuštění modulu QuAI, ale má funkci pouze při generování rozmístění. Má pouze informativní charakter a vzniklo pro usnadnění ladění algoritmů uvnitř modulu QuAI. Nicméně dobře poslouží i jako demonstrační prvek algoritmu pro generování rozmístění. Pro reálného uživatele ale nemá žádnou hodnotu a proto není ani lokalizované do češtiny. Má 2 záložky: „Statistics“ a „Placement“ .
81
Záložka „Statistics“ slouží pro:
zobrazení hodnot nastavení pro aktuální generování;
zvolení úrovně animace:
„Animate brand placement“ - animuje hladový algoritmus pro umístění
bloků značek do skříně;
„Animate product placement initialization“ - animuje rekurzivní
algoritmus hledající nejužší umístění daného seznamu produktů (tato fáze je značně zdlouhavá, proto není doporučené ji zapínat); „Animate greedy product placement“ - animuje hladový algoritmus pro nalezení nejlepšího rozmístění produktů uvnitř bloku značky;
zobrazení výsledků výběru produktů a značek v tabulce s názvem „Results of brand selection“ , která obsahuje sloupce: „Brand name“ - název značky; „Assigned space“ - značce přidělené místo ze skříně; „% brand space“ - procentuální podíl přiděleného prostoru mezi značkami; „% rack space“ - procentuální podíl přiděleného prostoru z celkového prostoru skříně; „% placed marketshare“ - procentuální podíl na trhu mezi značkami, které mají nenulové přidělené místo; „% ALL marketshare“ - procentuální podíl na trhu mezi všemi značkami;
zobrazení výsledků generování rozmístění v tabulce s názvem „Results of placement generation“ , která obsahuje sloupce: „Brand name“ - název značky; „Occupied space“ - reálně obsazený prostor značkou; „% spaceshare between brands“ - procentuální podíl značkou obsazeného prostoru z celkového obsazeného prostoru skříně; „% spaceshare from whole rack“ - procentuální podíl značkou obsazeného prostoru z celkového prostoru skříně; Záložka „Placement“ slouží pro animaci rozmístění. Má 4 oddělené oblasti:
Horní informační panel popisuje aktuálně prováděnou operaci a pomocí tlačítka „Pause/Continue“ umožňuje pozastavit proces generování;
Dolní informační panel sděluje kolik značek dostalo nenulové přidělené místo, kolik z nich se umístilo s minimální velikostí a kolik z nich se vůbec neumístilo;
Levá část prostředního panelu ukazuje blok, který se aktuálně umísťuje;
Pravá část prostředního panelu ukazuje aktuální podobu skříně, do kterého se umísťuje blok v levé části. Pozadí této skříně je zabarveno různě intenzivní červenou a bílou barvou podle priorit pozic ve skříni. Vyšší priority značí intenzivnější červeň, nižší naopak intenzivnější bílá. V této části jsou zobrazené již umístěné bloky a při hledání vhodného volného bloku pro aktuálně umísťovaný blok zde žlutou barvou poblikává 82
právě zkoušený volný blok.
6.2 Nové prvky v modulu Quant Původní systém Quant musel být upraven ke spolupráci s modulem QuAI. Potřebné změny provedla firma ExTech s.r.o. - vlastník systému Quant. Následující věci se měly implementovat do modulu Quant: import dat o prodeji v rozsahu popisovaném v kapitole 6.1.1 s předáním dat modulu QuAI;
dialog pro globální nastavění QuAI v rozsahu popisovaném v kapitole 6.1.2 a ukládání těchto nastavení;
obrazovka pro nastavení ohodnocení produktů při vytváření projektu (viz kapitola 6.1.3) s voláním modulu QuAI pro získání ohodnocení produktů;
ukládání seznamu produktů s ohodnocením a s příznaky a „zakázaný“ zvlášť pro každou kategorii uvnitř projektu;
dialog pro nastavení generování rozmístění (viz kapitola 6.1.4);
volání modulu QuAI pro generování rozmístění s detaily o skříni;
„požadovaný“
naplnění globální (resp. lokální) mřížky rozmístění podle výsledků generování od modulu QuAI.
6.3 Implementace modulu QuAI Hlavním
cílem
modulu
QuAI
je
implementace
/QuAI_Interface/src/name/jakab/quai/idl/quai.idl ,
CORBA které
rozhraní definuje
veškerou komunikaci mezi moduly Quant a QuAI. QuAI se spouští pomocí třídy ServerLauncher , která inicializuje komunikaci přes CORBA middleware a zaregistruje hlavní serverový objekt QuaiServerImpl. Třída QuaiServerImpl má následující metody, které modul Quant používá:
getPlanningCycleList() - pro získání aktuálního seznamu cyklů
z databáze QuAI;
rebuildAllPlanningCycles() - pro nastavení nového seznamu cyklů;
importRawSalesFigures() - pro import nových dat o prodeji;
evaluateProducts() - pro ohodnocení produktů jedné kategorie;
generatePlacement() - pro generování rozmístění produktů.
83
6.3.1 Nastavení nového seznamu cyklů Nový seznam cyklů se nastavuje v metodě rebuildAllPlanningCycles() , která nejdřív vytvoří všechny cykly od zadaného počátečního data se zadanou délkou až do aktuálně probíhajícího cyklu a přidá ještě 2 budoucí cykly. Pak pomocí třídy SalesDataProcessor spočítá zpracovaná data (ProcessedSalesData ) ze surových (RawSalesData ) pro zvolený zdroj a pro všechny cykly, pro které je to možné. Nakonec odstraní nejnovější cykly, pro které nebyla vytvořena zpracovaná data a nahradí starý seznam v databázi s novým.
6.3.2 Import dat o prodeji Import dat o prodeji provádí metoda importRawSalesFigures(), která nejdřív ověří, zda období importovaných dat není delší než aktuální délka cyklů v databázi. Pokud je delší, oznámí chybu, protože po importu těchto dat by již nebylo možné používat stejně dlouhé cykly, které se aktuálně používají. Pak ověří zda se období a zdroj importovaných dat nekryjí s již importovanými daty. Potom ověří, zda by importem nevznikla časová mezera mezi daty v databázi. Nakonec pomocí třídy SalesDataProcessor přepočítá ze zvoleného zdroje pro definované cykly a uloží je do databáze.
zpracovaná
data
6.3.3 Vytváření zpracovaných dat Třída SalesDataProcessor vytváří zpracovaná data ze surových v metodě getProcessedSalesData() , která nejdřív ověří, zda cykly nemají příliš malou délku vzhledem k surovým datům. Pak cyklem přes všechny produkty agreguje surová data podle období definovaných cyklů. Pokud se vytvořil dostatek zpracovaných dat (pro 3 roky a víc), přidá ještě 3 předpovídané cykly pomocí třídy Forecaster . Při menším počtu vstupních dat nelze předpovídat touto třídou.
6.3.4 Předpověď prodeje Předpověď prodeje implementuje třída Forecaster v metodě
Double[] forecast(Double[] observations, int K, int L) která očekává v poli observations N hodnot ekvidistantních pozorování (ze kterých žádné nechybí), v K počet požadovaných předpovědí a v L počet sezón v roce. Počet sezón v roce se spočte podle délky definovaných cyklů: týden (L=52), 2 týdny (L=26), měsíc (L=12), 2 měsíce (L=6), kvartál (L=4), půlrok (L=2), rok (L=1).
84
Pro tento vstup vrátí pole s předpovědí pro sezónu N+1, N+2, ..., N+K . Tato metoda nejdřív identifikuje sezónní složku pomocí metody Census I, pak očistí časovou řadu od sezonální fluktuace. Z očištěné řady zjistí průběh trendu pomocí metody klouzavých mediánů a prodlouží zjištěný trend na období N+1, ..., N+K . Výsledná předpověď pak vznikne aplikováním příslušných sezónních faktorů na odhadovanou hodnotu trendu pro období N+1, ..., N+K . Zjištění sezónní složky Z původní řady N pozorování vznikne aplikací klouzavých mediánů (délky L ) N-L+1 hodnot, které by měly být očištěné od sezónních a náhodných fluktuací. Nazvěme tuto vzniklou řadu TrC1 (akronym z Trend a Cycle). První člen řady TrC1 patří do období L/2+1 (L+1/2 pro liché L ). V případě, že L je liché, hodnoty TrC1 jsou u správných sezón (v prostředku intervalu, ze kterého byl medián zkonstruován) a lze postoupit do dalšího kroku s TrC=TrC1 . V případě sudého L je však každý člen řady TrC1 posunut o půl sezóny dopředu od středu intervalu mediánu. Proto je potřeba vytvořit řadu TrC2 , která vznikne z řady TrC1 aplikováním klouzavého mediánu délky L , ale tentokrát se hodnota mediánu přidělí období o půl sezóny před středem intervalu mediánu. Vzniklá řada TrC2 tedy představuje mediány, které jsou ve středu intervalu původních hodnot, které ovlivňují daný medián. Do dalšího kroku výpočtu se postoupí s TrC=TrC2 . V další části bude předpokládáno sudé L pro jednoduchost (pro liché L celý proces funguje obdobně). Další krok je vytvoření řady SeR (akronym ze Seasonal a Residual) stejné délky jako řada TrC . členy řady SeR se vypočítají jako poměr odpovídajících členů původní řady a TrC (viz vzorec ve druhém kroku popisu metody Census I v kapitole 4.2.4). Hrubý sezónní faktor pro sezónu L/2+1 se spočte jako aritmetický průměr hodnot řady SeR pro období L/2+1, L/2+1+L, L/2+1+2L, ... až do konce řady SeR . Obdobným způsobem se spočtou hrubé sezónní faktory i pro další období: L/2+2, L/2+3, ..., L/2+L-1 (viz vzorec ve třetím kroku popisu metody Census I v kapitole 4.2.4). Nakonec tedy dostaneme hrubý odhad sezónní složky pro každou z L sezón. Jestliže jednoznačnost dekompozice požaduje, aby součet sezónních složek u multiplikativní dekompozice byl L , hrubé sezónní faktory se musí znormalizovat. Normalizace se provádí vydělením součinu L a hrubého sezónního faktoru dané sezóny součtem všech hrubých sezónních faktorů (viz vzorec ve čtvrtém kroku popisu metody Census I v kapitole 4.2.4). Zjištěné normalizované sezónní faktory lze již použít k očištění původní řady a ke korekci předpovědi. Očištění řady od sezónních fluktuací Očištěnou řadu lze získat vydělením členů původní řady odpovídajícím (normalizovaným) sezonálním faktorem (viz vzorec v pátém kroku popisu metody Census I v kapitole 4.2.4).
85
Tabulka 6.3.a: Výpočet pro příklad předpovědi Odhad trendu Odhad trendu se provádí stejným způsobem, jak vznikla řada TrC z původní řady, tedy metodou klouzavých mediánů délky L aplikované na očištěnou řadu (v případě sudého L je aplikována dvakrát). Na konci vzniklého trendu chybí L/2-1 hodnot (ve druhé iteraci L/2 ), které je potřeba dopočítat. Tyto členy se dopočítají jako medián ze tří údajů: odpovídající hodnoty z očištěné řady; nejbližší hodnoty trendové řady; výsledku lineární extrapolace dvou nejbližších hodnot trendové řady na časový bod za chybějící hodnotou. Prodloužení trendu Prodloužení trendu bude předpokládat lokálně lineární trend, tedy odhad trendu v časovém bodě N+1 se spočte prodloužením přímky procházející body trendu v časových bodech N-1 a N . Pro dostatečně vyhlazený trend a malé odhadované období toto lineární prodloužení představuje dobrý odhad vývoje, protože jeho odchylka od jiných druhů trendu (polynomiálního vyššího řádu, exponenciálního i konstantního) je poměrně malá. Proto chyba předpovědi bude akceptovatelná i v případě, že ve skutečnosti řada má jiný trend než lokálně lineární.
86
Ilustrace 6.3:a: Graf pro příklad předpovědi Předpověď Hodnota předpovědi pro období N+i bude tedy součinem prodloužení trendu pro období N+i a odpovídajícího sezónního faktoru. Příklad V tabulce 6.3.a je uveden výpočet pro konkrétní příklad s N=26 a L=4 . Pro představu o přesnosti předpovědi je předpovídána řada po celé délce trendu (místo K povinných období N+1, ..., N+K ). Lze tedy pozorovat rozdíly mezi odhadovanými a reálnými hodnotami. Pro názornost jsou v grafu na ilustraci 6.3:a zobrazeny původní (oranžová), očištěná (fialová), trendová (modrá) a předpovídaná (zelená) řada. Na tomto příkladu je vidět, že metoda Census I je vhodná pro silně sezonální řady, protože zelená řada věrně následuje oranžovou.
6.3.5 Ohodnocení produktů Pro
ohodnocení
produktů
volá
metoda evaluateProducts() metodu ProductEvaluator.evaluateProducts() , která pro každý požadovaný zdroj (podle ProductEvaluationSettings ) získá hotová zpracovaná data pro zvolený cyklus nebo agreguje nová zpracovaná data z uložených pro vlastní období. Pokud pro některý produkt chybí data pro požadovaný zdroj a období, přidá se varování na kontejner pro návratové hodnoty (EvaluationResult ). Pak se nalezené hodnoty všech veličin znormalizují přes všechny produkty pomocí metody normalizeValues() . Nakonec se podle nastavení zkombinují požadované veličiny (přesněji jejich normalizované hodnoty) a vytvoří se ohodnocení pro každý produkt v metodě createScores() . 87
6.3.6 Generování návrhu rozmístění Pro generování návrhu rozmístění slouží metoda generatePlacement() , která nejdřív vytiskne nastavení pro generování do okna QuAI. Pak podle nastavené metody pro výběr produktů a značek vybere značky a přidělí jim správné množství místa pomocí třídy BrandAndProductSelector přesně tak, jak to popisuje kapitola 5.6.1. V případě metody výběru podle optimálního rozdělení místa obsahuje získaný seznam značek všechny značky, tedy i ty, kterým nebylo žádné místo přiděleno. Tento detail bude důležitý pro 3-fázový algoritmus generování. Po přidělení prostoru značkám se vytiskne statistika o výběru značek do okna QuAI. Pak se vytvoří prázdná skříň (třída Rack ) a naplní se prioritami podle nastavení generování a vstupní skříně. Potom se pomocí třídy BrandPlacementGenerator prázdná skříň naplní generovaným rozmístěním. Nakonec se vytiskne statistika generovaného rozmístění do okna QuAI a modulu Quant se předá mřížka naplněná produkty.
Fungování třídy BrandPlacementGenerator Samotné generovaní rozmístění implementuje třída BrandPlacementGenerator 3-fázově: 1. V první fázi umístí bloky značek hladovým algoritmem podle popisu v kapitole 5.6.3 pomocí metody placeBrandsWithAssignedSpace() . Tato metoda potřebuje mít vypočítanou optimální a minimální šířku bloku každé značky pro každý přípustný tvar bloku. Tento rekurzivní výpočet, popsaný na konci kapitoly 5.6.3, implementuje třída ProductPlacementGenerator pomocí backtrackingu s heuristikou. 2. Druhá fáze se aplikuje pouze v případě metody výběru značek podle optimálního rozdělení místa. V této fázi se zaplňují zatím prázdná místa ve skříni tak, že se zkouší postupně umístit nejlepší značky s minimální velikostí, kterým nebyl přidělen žádný prostor. Může se totiž stát, že kvůli rezervám pro velikost bloku značky nebo kvůli umístění některých značek s minimální velikostí, zbude ve skříni po první fáze rozmístění ještě hodně volného místa. Tuto fázi implementuje metoda placeBrandsWithMinimalSizeToSmallestFreeBlock() .
3. Po druhé fázi mají bloky značek v sobě umístěné produkty podle rekurzivního algoritmu z první fáze, která nepočítala se správnými prioritami. Navíc se ještě pořád vyskytují malinké prázdné a nevyužité bloky ve skříni mezi bloky značek. Proto třetí fáze zkusí roztáhnout každý blok značky horizontálně a vertikálně přilepením okolních volných bloků k bloku značky. V takto zvětšeném prostoru pak zkusí umístit produkty pomocí hladového algoritmu a výsledek porovná se 4 zrcadlenými obrazy původního rozmístění produktů, které již dostalo správné priority. Vybere se rozmístění s nejvyšším ohodnocením. Celou třetí fázi implementuje metoda attachLeftFreeSpaceToPlacedBrandsAndGenerateProductPlaceme
88
nt() . Hladové rozmístění produktů a porovnání soupeřících rozmístění pak metoda BrandBlock.placeProducts() .
Zkušenosti z provozu Při zkoušení prototypové implementace na různých vstupech se ukázalo, že implementované hladové algoritmy jsou dostatečně rychlé za všech okolností. Na druhou stranu rychlost18 rekurzivního algoritmu pro hledání bloku značky s nejmenší šířkou při daném seznamu umístěných produktů závisí na vstupu. Na rozumně malých vstupech (bohatá19 značka v malém prostoru nebo chudá20 značka ve velkém prostoru) je rychlost přijatelná (do 10 sekund). Na velkých vstupech (bohatá značka, která dostala pro sebe celou skříň) ale čas výpočtu již vyšplhá i k několika minutám. Nicméně zmíněné velké vstupy byly způsobené volbou nelogických kombinací nastavení, které v reálném provozu mají pramalou pravděpodobnost výskytu. Optimální hodnoty pro rezervy bloky značek Rezervy pro horizontální a vertikální bloky značek se dostaly do nastavení generování proto, aby se empiricky zjistily jejich optimální hodnoty. Při generování s preferencí horizontálních značek většinou stačilo 10-15% horizontální rezervy a 10-30% vertikální rezervy. Naopak při generování s preferencí vertikálních značek většinou stačilo 5-15% horizontální rezervy, ale bylo nutné 30-50% vertikální rezervy. Z těchto výsledků vzniklo kompromisem implicitní nastavení pro systém přiložený k této práci na kompaktním disku: 15% horizontální rezervy a 30% vertikální rezervy. Nicméně pro optimální výsledky se doporučuje měnit tyto hodnoty podle toho, jaký tvar bloku značek se preferuje v aktuálním generování.
18 uvedené časy běhu generování byly měřeny na platformě AMD Athlon64 3000 (2000MHz) 19 bohatá značka má mnoho různých produktů 20 chudá značka má málo různých produktů
89
7 Zhodnocení splnění cílů
Prototypová implementace podle realizovatelné verze návrhu generuje automaticky planogramy podle dat o prodeji. Tyto planogramy jsou specifické pro každou prodejnu a pokud nejsou dostatečně estetické, může je merchandiser snadno upravit v globálním měřítku a jeho množství práce se nezvýší ani při přidávání nových prodejen do aplikace. Generování planogramů je při rozumných vstupech dostatečně rychlé (do 10 sekund). Ostatní operace jako ohodnocení produktů nebo import prodejních dat proběhne bez čekání. Sice se při jistých extrémních vstupech (když nějaká značka s mnoha produkty dostane abnormálně velký prostor) generování značně zpomalí, frekvence použití podobných vstupů je ale zanedbatelná. Proto lze konstatovat, že vytvořený návrh a prototypová implementace splňují cíle této práce. Očekávání vlastníka systému Quant se také naplnila, protože dosavadní testy nového systému opravdovými merchandisery prokázaly, že výstupné planogramy jsou ekonomicky správné a esteticky přijatelné. Přitom každý zkušený merchandiser, který má svá pravidla při vytváření planogramů, dokáže tato pravidla prosadit pomocí nastavení generování. QuAI pro něj tedy nepředstavuje nucenou překážku, ale volitelnou pomoc. Firma ExTech dokázala pomocí této práce zaujmout pozornost: řetězců lékáren systémem Quant+QuAI, který automatizací procesu zrychlí práci merchandisera bez újmy na kvalitě nebo estetické úrovni výsledných planogramů; jednotlivých nezávislých lékáren nově vyvinutým webovým systémem, který na základě zkušeností s QuAI generuje individuální planogramy pro každou skříň lékárny na žádost lékárníka a tím vlastně nahrazuje práci merchandisera s ryze ekonomickým přístupem. Quant může tedy díky QuAI úspěšně konkurovat známým a řádově dražším systémům pro merchandising.
7.1 Srovnání s existujícími přístupy Všechna tři kritéria automatizace z kapitoly 2.2 splňují kromě zde navrženého systému i produkty Apollo, Intactix a Galleria, čímž se kvalifikují jako vhodná řešení cíle této práce. Nicméně, kvůli jejich vysokým cenám si je mohou dovolit pouze velké řetězce (100 a víc prodejen) a často ani tyto řetězce nejsou spokojeny s možnostmi, které tyto systémy nabízí. Pro menší řetězce nezbývá jiná možnost než se spokojit s levnějším a méně sofistikovaným 90
řešením, což pro ně znamená víc práce. Pokud zvolený kompromis bude bez specifičnosti pro prodejnu, tak se buď použije standardní planogram ve všech prodejnách a tím se sníží kvalita merchandisingu, nebo merchandiser nakreslí specifické planogramy pro každou prodejnu ručně a tím se celý proces mnohonásobně zpomalí. Už při malém řetězci o deseti prodejnách je množství práce merchandisera řádově větší. Výběr a ohodnocení produktů v systému Quant + QuAI sice nedosahuje kvalit profesionálních data mining nástrojů, ani specializovaných ekonomických analýz, ale tyto nástroje jsou obvykle drahé a jejich použití vyžaduje od merchandisera nemalé schopnosti a zkušenosti. Navíc tyto nástroje fungují často interaktivně a tím znemožňují automatizaci. Navržené řešení představuje kompromis v požadavcích na znalosti merchandisera (jestliže proces je automatizovaný) a je přístupné širší vrstvě uživatelů díky nižší ceně.
7.2 Možnosti dalšího rozšíření Vzniklou prototypovou implementaci lze zřejmě vylepšit o všechny rozdíly mezi ideálním a realizovatelným návrhem, nicméně existují i další možnosti, které by vylepšily i ideální verzi návrhu. Automatická úprava existujícího planogramu Uživatel by mohl mít planogram, kam si ručně umístil několik produktů a pak by požádal QuAI, aby doplnil planogram produkty podle ekonomických kritérií. Případně by mohl mít každý blok v rozmísťovací mřížce atribut „zafixovaný“, který by naznačoval, že QuAI při doplnění planogramu nemá hýbat s tímto blokem. Tuto funkci by využili merchandiseři, kteří třeba chtějí mít ve skříni jistou značku v jistém nepravidelném tvaru pro upoutání pozornosti a na ostatních produktech jim tolik nezáleží. Výška a hloubka produktu QuAI by měl počítat s výškou (a hloubkou) produktu při výběru a generování rozmístění, aby se nestalo to, že umístí produkt do police, kam se reálně nevejde, protože je příliš vysoký nebo hluboký. V prototypové implementaci se s tím nepočítá a spoléhá se na to, že prodejny mají obvykle dost velké skříně a police k umístění vlastního sortimentu. Této funkci aktuálně brání způsob výpočtu standardní skříně v Quantu, protože ta může mít vyšší police než některá reálná skříň v její skupině. Kvalitnější předpověď prodeje Podle ideální verze návrhu by se k předpovědi měla použít metoda Box-Jenkins na základě SARIMA. Tato metoda i ostatní sofistikované metody pro analýzu časových řad potřebují buď uživatele s expertními znalostmi a další vstup (tj. proces předpovědi by musel být interaktivní), nebo hotový software, který danou metodu ovládá a je schopen počítat bez interakce experta. 91
Pro vlastníka Quantu je ale vytvořený prototyp takzvaný proof-of-concept 21, proto zatím nechtěl do modulu QuAI investovat mnoho prostředků. Teprve až se tento způsob práce osvědčí a ukáže se, že o tuto službu je zájem, začne se uvažovat o případné koupi licence na statistický software buď pro distribuci s každou instancí Standalone (off-line) verze, nebo pro centralizovaný QuAI modul pro uživatele Enterprise verze. Správa skladu Modul QuAI by měl spolupracovat s dalším modulem (nebo se separátním systémem) pro správu skladu, protože mezi správou skladu a vystavením zboží ve skříních je oboustranná vazba:
QuAI (resp. Quant) obsahuje planogramy pro příští období, tudíž ví (nebo alespoň by vědět měl), kolik kusů kterého produktu se zhruba prodá v následujícím období. Předáním této informace správě skladu, lze zjistit, kolik kusů daného produktu se má objednat.
Správa skladu má záznamy o tom, jak velké zásoby daného produktů prodejna (nebo řetězec) má a jak dlouho jej již drží na skladě, případně kdy daný produkt expiruje. Na základě těchto pozorování jednak lze zjistit žádané produkty a propadáky, jednak lze předvídat hromadnou ztrátu kvůli expiraci zboží. Pokud správa skladu předá tyto informace modulu QuAI, ten umí lépe plánovat rozmístění (díky žádaným produktům a propadákům) a navrhnout výprodejovou akci na produkty, které jsou těsně před expirací. Problém rozsáhlých kategorií
Quant je vhodný pro malé prodejny. Neumí dobře pracovat s prodejnami, které mají víc skříní se stejnou kategorií (pokud mají mít různé planogramy), jak tvrdí kapitola 4.3.1. Prozatím se to v Quantu řeší nejčastěji duplikováním kategorie. Existuje ale i lepší alternativa: Všechny skříně by se ohodnotily podle výhodnosti jejich pozice v prodejně, pak by se ohodnotily jejich police podle výhodnosti pozice ve skříni. Obsah (šířka) všech skříní (polic) v dané kategorii a prodejně by se počítala dohromady jako jedna skříň. Podle sloučeného obsahu/šířky by se vypočítalo, kolik prostoru dostane která značka. Distribuce značek a produktů by začala vybírat nejlepší místa ze všech dostupných skříní. Při takovém vylepšení by se již musela generovat lokální rozmístění pro každou skříň místo globálního rozmístění pro skupinu skříní, proto by po generování merchandiser musel zkontrolovat všechny skříně, zda jsou v pořádku.
21 proof-of-concept – anglický ustálený výraz pro částečnou realizaci něčeho, co zatím neexistuje, za účelem ověření životaschopnosti dané věci
92
8 Závěr
Hlavním cílem této práce bylo analyzovat možnosti automatizace opakujících se činností z merchandisingového postupu, navrhnout automatizovaný systém a implementovat ho na úrovni prototypu. Tato práce se omezila na automatizaci návrhů rozmístění produktů ve skříních prodejny tak, aby tyto návrhy vyhovovaly zároveň estetickým i ekonomickým požadavkům. Díky důkladné analýze problematiky planogramů, použití a předpovídání prodejních dat k výběru nejlepších produktů vznikl návrh systému, který umožňuje merchandiserovi automaticky generovat ekonomicky správné planogramy při zachování možnosti hromadných úprav k dosažení estetického vzhledu, a to bez nutnosti kreslení planogramu pro každou prodejnu zvlášť. Tento návrh má ideální a realizovatelnou verzi. Podle realizovatelné verze návrhu, která je specializovaná na jeden konkrétní systém pro tvorbu planogramů, byl implementován prototyp nového modulu k tomuto existujícímu systému. Tento nový modul doplňuje chybějící funkce původního systému: podporu prodejních dat, výběr produktů k umístění a generování návrhu rozmístění produktů. Díky tomuto novému modulu nabízí rozšířený systém rychlejší a snazší práci pro merchandisery. Tím vlastníkovi systému umožní konkurovat dodavatelům známých a řádově dražších systémů, které v současné době ovládají trh. Největší přínos práce ale není v prototypové implementaci, nýbrž ve výběru správných produktů k umístění a ve správném určení jejich počtu a pozice ve skříních. Tyto vlastnosti totiž má i obecnější ideální verze návrhu, kterou lze po patřičných úpravách použít i k rozšíření jiného systému pro merchandising. Cíle diplomové práce byly tedy splněny.
93
Příloha A
Obsah CD K této práci je přiložený kompaktní disk, který obsahuje následující věci: text diplomové práce ve formátu PDF v adresáři /text zdrojový kód modulu QuAI v adresáři /zdrojovy_kod , který má strukturu projektu vývojového prostředí Eclipse (viz http://www.eclipse.org/ ) instalátory původního systému v adresáři /install/puvodni instalátory nového systému v adresáři /install/novy pokyny k instalaci obou verzí v souboru /install/readMe.txt doplněk k programátorské dokumentaci ve formě JavaDoc generované ze zdrojového kódu modulu QuAI v adresáři /doc (pro prohlížení je potřeba otevřít soubor /doc/index.html v prohlížeči HTML) testovací data o prodeji v tabulkách XLS v podadresářích (podle různých zdrojů dat) adresáře /data/prodejni_data pro snadné zkoušení importu dat o prodeji v systému Návod na instalaci a spuštění původního systému Quant Pro instalaci původního systému Quant je potřeba vybrat a spustit správný instalátor podle platformy uživatele z: /install/puvodni/quant_se_neutral_setup_2_3_0_000.exe nebo
/install/puvodni/quant_se_neutral_setup_2_3_0_000.sh
Po spuštění se objeví průvodce instalací, kde je potřeba postupně: odsouhlasit licenční ujednání aplikace QuantSE, kterou vlastní firma ExTech s.r.o.; vybrat místo instalace na pevném disku; zvolit místo vytvoření odkazů pro spuštění aplikace; vybrat začlenění do spouštěcího menu operačního systému; vybrat jazyk pro aplikaci.
Nainstalovanou aplikaci lze spustit pomocí vytvořených odkazů podle volby uživatele nebo přímo z instalačního adresáře příkazem QuantSEExplorer(.exe). Odinstalovat aplikaci lze opět pomocí vytvořených odkazů podle volby uživatele nebo přímo z instalačního adresáře příkazem uninstall(.exe).
94
Návod na instalaci a spuštění nového systému Quant + QuAI Pro instalaci nového systému Quant + QuAI je potřeba nejdřív nainstalovat modul QuAI, pak modul Quant. Postup je obdobný jako v případě původního systému. Uživatel si vybere a spustí správný instalátor podle platformy z: /install/novy/quai_setup_QuAI_1_0.exe nebo
/install/novy/quai_setup_QuAI_1_0.sh
Po spuštění se objeví stejný průvodce instalací jako v případě původního systému. Nainstalovaný modul lze spustit pomocí vytvořených odkazů podle volby uživatele nebo přímo z instalačního adresáře příkazem QuAI(.exe). Odinstalovat modul lze opět pomocí vytvořených odkazů podle volby uživatele nebo přímo z instalačního adresáře příkazem uninstall(.exe). Pro instalaci modulu Quant si uživatel zopakuje proces se správným instalátorem podle platformy z:
/install/novy/quant_se_for_quai_neutral_setup_2_3_0_DIPLOM A_OF_GERGELY_JAKAB.exe nebo /install/novy/quant_se_for_quai_neutral_setup_2_3_0_DIPLOM A_OF_GERGELY_JAKAB.sh
Upozornění: Modul Quant potřebuje mít při spuštění již spuštěný modul QuAI.
95
Seznam ilustrací Ilustrace 1.2:a: Horizontální bloky...........................................................................8 Ilustrace 1.2:b: Vertikální bloky..............................................................................8 Ilustrace 4.3:a: Blok s malou přidělenou plochou..................................................44 Ilustrace 4.3:b: Blok s velkou přidělenou plochou.................................................44 Ilustrace 4.3:c: Hodnota místa ve skříni.................................................................47 Ilustrace 5.1:a: Koncept Quantu.............................................................................49 Ilustrace 5.1:b: Rozměry skříně.............................................................................51 Ilustrace 5.1:c: Globální rozmístění a standardní skříň kategorie..........................52 Ilustrace 5.1:d: Dosažený podíl na trhu..................................................................52 Ilustrace 5.3:a: Architektura systému.....................................................................56 Ilustrace 5.3:b: Import dat o prodeji.......................................................................57 Ilustrace 5.3:c: Ohodnocení produktů jedné kategorie..........................................57 Ilustrace 5.3:d: Generování rozmístění produktů...................................................57 Ilustrace 5.5:a: Agregace surových dat..................................................................62 Ilustrace 5.6:a: Příklad počítaní priorit polic..........................................................70 Ilustrace 5.6:b: Příklad horizontálních priorit........................................................71 Ilustrace 5.6:c: Volné bloky ve skříni....................................................................73 Ilustrace 5.6:d: Volné místa v bloku značky..........................................................75 Ilustrace 6.3:a: Graf pro příklad předpovědi..........................................................87
96
Seznam použité literatury [1] Chromková, Hana, Zentiva, a.s.: Merchandising, PHARMA NEWS, 2006_02, URL: http://www.pharmanews.cz/2006_02/merchan.html [2] Friend, Scott C.; Walker, Patricia: Welcome to the New World of Merchandising, Harvard Business Review, 2001 November, URL: http://harvardbusinessonline.hbsp.harvard.edu/b02/en/common/item_detail.jhtm l?id=R0110K [3] Aldata Solution Oyj:Keeping the customer: Three strategic imperatives for optimizing the in-store experience, 2007, URL: http://www.aldatasolution.com/us/store/files/Executive%20Briefing%20-%20Optimizing%20In-Store %20Experience.pdf [4] POPAI, the Global Association for Marketing at-Retail: The Marketing at-Retail Industry, , URL: http://www.popai.com/AM/Template.cfm?Section=Industry [5] George Little Management, LLC: Display & Merchandising Guide, , URL: http://www.glmshows.com/press/DisplayHandbook/index.html [6] Chromková, Hana, Zentiva, a.s.: Merchandising, PHARMA NEWS, 2006_03, URL: http://www.pharmanews.cz/2006_03/merchandis.html [7] Graff, Kevin; Ciuciura, Jan: Winning Retail 2nd Edition, 2004, URL: http://strategis.ic.gc.ca/epic/site/retra-comde.nsf/en/h_qn00039e.html [8] Donna Geary: Merchandising for Sales and Profits: Promoting Impulse Sales, , URL: http://www.sideroad.com/Retail_Services/impulse-sales.html [9] Schreibfeder, Jon:Why Is InventoryTurnover Important?, 1997, URL: http://www.effectiveinventory.com/article2.html [10]Softwarový projekt: Industry Product Placement System, 2005, URL: http://urtax.ms.mff.cuni.cz/prk/zadani/ipps.pdf [11]Tomek, Jan: Základy strategického marketingu, 1999, URL: http://www.kmo.zcu.cz/ZAAB-V%DDCHODISKO/AAA-STR.MKTskripta.doc [12]Wikipedia: Calculating Demand Forecast Accuracy, , URL: http://en.wikipedia.org/wiki/Calculating_Demand_Forecast_Accuracy [13]Wikipedia: Forecasting, , URL: http://en.wikipedia.org/wiki/Forecasting
97
[14] StatSoft: Electronic Statistics Textbook, StatSoft, Inc., 2007, URL: http://www.statsoft.com/textbook/stathome.html [15] Křivý, Ivan: Analýza časových řad, Přírodovědecká fakulta, Ostravská Univerzita, 2006, URL: http://prf.osu.cz/doktorske_studium/dokumenty/Time_Series_Analysis.pdf [16]Teda, Jaroslav: Inteligentní ekonomické systémy [ III ], 2006, URL: http://programujte.com/index.php?akce=clanek&cl=2006010101-inteligentniekonomicke-systemy-iii[17]Anděl, Jiří: Statistická analýza časových řad, Praha SNTL,1976 [18]Wikipedia: Regresní analýza, , URL: http://cs.wikipedia.org/wiki/Regresn %C3%AD_anal%C3%BDza [19]Wikipedia: Lineární regrese, , URL: http://cs.wikipedia.org/wiki/Line%C3%A1rn %C3%AD_regrese [20]Wikipedia: Non-linear regression, , URL: http://en.wikipedia.org/wiki/Nonlinear_regression [21]Wikipedia: Least squares, , URL: http://en.wikipedia.org/wiki/Least_squares [22]Wikipedia: Autoregressive moving average model, , URL: http://en.wikipedia.org/wiki/Autoregressive_moving_average_model [23]Wikipedia: Autoregressive integrated moving average, , URL: http://en.wikipedia.org/wiki/Autoregressive_integrated_moving_average [24]Wikipedia: Box-Jenkins, , URL: http://en.wikipedia.org/wiki/Box-Jenkins [25]Wikipedia: Pareto principle, , URL: http://en.wikipedia.org/wiki/Pareto_principle
98