ZZN - Projekt: Porovnání verzí

Z Waritkova wiki
Skočit na navigaci Skočit na vyhledávání
(Založena nová stránka s textem „== Zadání == === Popis dat === Data, <nowiki> </nowiki>která budou v projektu použita jsou pravidelně získávána z webového rozhraní AR hry Ingr…“)
 
Řádek 3: Řádek 3:
 
=== Popis dat ===
 
=== Popis dat ===
 
Data,
 
Data,
<nowiki> </nowiki>která budou v projektu použita jsou pravidelně získávána z webového  
+
která budou v projektu použita jsou pravidelně získávána z webového  
 
rozhraní AR hry Ingress a obsahují údaje sesbírané v průběhu cca sedmi  
 
rozhraní AR hry Ingress a obsahují údaje sesbírané v průběhu cca sedmi  
 
měsíců.
 
měsíců.
Řádek 18: Řádek 18:
  
 
Z
 
Z
<nowiki> </nowiki>dat budou tedy získávány znalosti o rozložení jednotlivých akcí v rámci
+
dat budou tedy získávány znalosti o rozložení jednotlivých akcí v rámci
<nowiki> </nowiki>dnů/týdne/měsíce či případné korelace mezi akcemi jednotlivých  
+
dnů/týdne/měsíce či případné korelace mezi akcemi jednotlivých  
 
znepřátelených stran.
 
znepřátelených stran.
 
* rozložení získaných zkušeností (AP) v průběhu dne
 
* rozložení získaných zkušeností (AP) v průběhu dne
 
* poměr jednotlivých akcí v průběhu dne
 
* poměr jednotlivých akcí v průběhu dne
 
Získaná
 
Získaná
<nowiki> </nowiki>data poté bude možno využít pro taktické plánování hry ve městě,  
+
data poté bude možno využít pro taktické plánování hry ve městě,  
 
jelikož budou známy intervaly, ve kterých je velice malá aktivita a je  
 
jelikož budou známy intervaly, ve kterých je velice malá aktivita a je  
 
tedy možno nerušeně provádět časově náročné operace ke kterým je vhodná  
 
tedy možno nerušeně provádět časově náročné operace ke kterým je vhodná  
Řádek 31: Řádek 31:
 
== Východiska práce ==
 
== Východiska práce ==
 
V
 
V
<nowiki> </nowiki>této kapitole se věnuji základní teorii, popisující proces dobývání dat
+
této kapitole se věnuji základní teorii, popisující proces dobývání dat
<nowiki> </nowiki>z databáze. Dále se zde také zabývám stručným popisem zdroje dat.
+
z databáze. Dále se zde také zabývám stručným popisem zdroje dat.
  
 
=== Databáze ===
 
=== Databáze ===
 
Databáze
 
Databáze
<nowiki> </nowiki>je systémem, který slouží k ukládání a následnému zpracování dat. Není  
+
je systémem, který slouží k ukládání a následnému zpracování dat. Není  
 
však tvořen pouze daty, ale také příslušnými úložnými médii a vztahy  
 
však tvořen pouze daty, ale také příslušnými úložnými médii a vztahy  
 
mezi daty samotnými.
 
mezi daty samotnými.
Řádek 48: Řádek 48:
 
=== Dolování z dat ===
 
=== Dolování z dat ===
 
Dolování
 
Dolování
<nowiki> </nowiki>z dat (data mining) je analytická metodologie, která slouží ke  
+
z dat (data mining) je analytická metodologie, která slouží ke  
 
získávání skrytých, netriviálních a potenciálně užitečných informací z  
 
získávání skrytých, netriviálních a potenciálně užitečných informací z  
 
dostupných dat. Obvykle tento proces slouží ke získání výhody (obchodní,
 
dostupných dat. Obvykle tento proces slouží ke získání výhody (obchodní,
<nowiki> </nowiki>herní) strany, která proces provádí.
+
herní) strany, která proces provádí.
  
 
Při  
 
Při  
 
tomto procesu je velmi důležité, aby dolování probíhalo nad správnými  
 
tomto procesu je velmi důležité, aby dolování probíhalo nad správnými  
 
daty. V opačném případě hrozí, že získané výsledky, i přesto že na první
 
daty. V opačném případě hrozí, že získané výsledky, i přesto že na první
<nowiki> </nowiki>pohled vypadají správně, budou zcela nesmyslné.
+
pohled vypadají správně, budou zcela nesmyslné.
  
 
=== Ingress ===
 
=== Ingress ===
 
Ingress je Augmented Reality hra
 
Ingress je Augmented Reality hra
<nowiki> </nowiki>vytvářená v Niantic Labs pod záštitou společnosti Google. Ve hře spolu  
+
vytvářená v Niantic Labs pod záštitou společnosti Google. Ve hře spolu  
 
soupeří dvě frakce (Enlightened a Resistance) o portály vytvořené  
 
soupeří dvě frakce (Enlightened a Resistance) o portály vytvořené  
 
tajemnou rasou Shapers, pomocí kterých lze vytvářet trojúhelníková pole,
 
tajemnou rasou Shapers, pomocí kterých lze vytvářet trojúhelníková pole,
<nowiki> </nowiki>která posléze jsou schopna ovlivňovat myšlení lidí nacházející se v  
+
která posléze jsou schopna ovlivňovat myšlení lidí nacházející se v  
 
tomto poli.
 
tomto poli.
  
 
Data, která jsou zde použita představují záznam veškerých akcí na území města Brno v rozmezí od března do počátku listopadu.
 
Data, která jsou zde použita představují záznam veškerých akcí na území města Brno v rozmezí od března do počátku listopadu.
  
Analýza dat
+
== Analýza dat ==
  
 
Tato kapitola se zaměřuje na zpracování dat a jejich analýzu s pomocí programu RapidMiner.
 
Tato kapitola se zaměřuje na zpracování dat a jejich analýzu s pomocí programu RapidMiner.
Řádek 74: Řádek 74:
 
=== Zdrojová podoba dat ===
 
=== Zdrojová podoba dat ===
 
Výchozí
 
Výchozí
<nowiki> </nowiki>data se vyskytují v podobě poměrně složitých objektů, kde každý objekt  
+
data se vyskytují v podobě poměrně složitých objektů, kde každý objekt  
 
popisuje právě jednu akci. Naštěstí, v tomto projektu se těmito daty  
 
popisuje právě jednu akci. Naštěstí, v tomto projektu se těmito daty  
 
nemusíme zabývat, jelikož je možno data získat v již předzpracované  
 
nemusíme zabývat, jelikož je možno data získat v již předzpracované  
Řádek 96: Řádek 96:
 
=== Čištění zdrojových dat ===
 
=== Čištění zdrojových dat ===
 
K
 
K
<nowiki> </nowiki>provedení analýzy bylo třeba data sloučit do jednoho datového balíčku a
+
provedení analýzy bylo třeba data sloučit do jednoho datového balíčku a
<nowiki> </nowiki>vygenerovat chybějící údaje, které je možno z dat vypočítat.
+
vygenerovat chybějící údaje, které je možno z dat vypočítat.
  
 
Za pomoci skriptu v jazyce PHP byl vytvořen soubor dat fe formátu CSV s následujícím obsahem:
 
Za pomoci skriptu v jazyce PHP byl vytvořen soubor dat fe formátu CSV s následujícím obsahem:
Řádek 105: Řádek 105:
 
* Příznak, zda je hráč provádějící akci členem Enlightened
 
* Příznak, zda je hráč provádějící akci členem Enlightened
 
Ke
 
Ke
<nowiki> </nowiki>konverzi časového razítka na denní hodinu jsme dospěli z důvodu, že se  
+
konverzi časového razítka na denní hodinu jsme dospěli z důvodu, že se  
 
nám nepodařilo do RapidMineru naimportovat data ve formátu data a času.
 
nám nepodařilo do RapidMineru naimportovat data ve formátu data a času.
  
 
=== Histogram poměrů bodů mezi frakcemi pro jednotlivé hodiny ===
 
=== Histogram poměrů bodů mezi frakcemi pro jednotlivé hodiny ===
 
Primárním
 
Primárním
<nowiki> </nowiki>cílem práce bylo zjistit výhodné hodiny, kdy je nižší aktivita jedné z  
+
cílem práce bylo zjistit výhodné hodiny, kdy je nižší aktivita jedné z  
 
frakcí a tento čas je tedy vhodný k provádění akcí za nepřítomnosti  
 
frakcí a tento čas je tedy vhodný k provádění akcí za nepřítomnosti  
 
protistrany.
 
protistrany.
  
 
K vytvoření tohoto histogramu
 
K vytvoření tohoto histogramu
<nowiki> </nowiki>bylo nutno data agregovat podle denní hodiny a poté pro jednotlivé  
+
bylo nutno data agregovat podle denní hodiny a poté pro jednotlivé  
 
hodiny spočítat poměry bodů získaných jednotlivými frakcemi. Z těchto  
 
hodiny spočítat poměry bodů získaných jednotlivými frakcemi. Z těchto  
 
dat pak již bylo možno vytvořit histogram.
 
dat pak již bylo možno vytvořit histogram.
  
 
Výsledný graf je možno vidět v příloze 1.
 
Výsledný graf je možno vidět v příloze 1.
 +
 +
[[Soubor:zzn1.jpg|Příloha 1]]
  
 
=== Graf poměru jednotlivých akcí podle denní hodiny ===
 
=== Graf poměru jednotlivých akcí podle denní hodiny ===
 
Dále
 
Dále
<nowiki> </nowiki>se práce zabývá zjištěním skladby jednotlivých akcí v průběhu dne. Ke  
+
se práce zabývá zjištěním skladby jednotlivých akcí v průběhu dne. Ke  
 
zjištění tohoto údaje bylo nutno data agregovat podle denní hodiny a  
 
zjištění tohoto údaje bylo nutno data agregovat podle denní hodiny a  
 
akce. Z výsledných dat již je možno vytvořit výsledný graf, který je  
 
akce. Z výsledných dat již je možno vytvořit výsledný graf, který je  
 
možno vidět v příloze 2.
 
možno vidět v příloze 2.
 +
 +
[[Soubor:zzn2.jpg|Příloha 2]]
  
 
== Závěr ==
 
== Závěr ==
 
Z
 
Z
<nowiki> </nowiki>grafu poměrně jasně vyplývá, že nejvýhodnější poměr akcí mezi  
+
grafu poměrně jasně vyplývá, že nejvýhodnější poměr akcí mezi  
 
jednotlivými frakcemi ve prospěch Enlightened je jednoznačně okolo sedmé
 
jednotlivými frakcemi ve prospěch Enlightened je jednoznačně okolo sedmé
<nowiki> </nowiki>hodiny ráno. Tím se také potvrdila doměnka mezi brněnskou komunitou, že
+
hodiny ráno. Tím se také potvrdila doměnka mezi brněnskou komunitou, že
<nowiki> </nowiki>Resistance je v ranních hodinách neaktivní. Naopak pro Resistance je  
+
Resistance je v ranních hodinách neaktivní. Naopak pro Resistance je  
 
jejvýhodnějším časem okolo druhé hodiny v noci (ráno), kdy už  
 
jejvýhodnějším časem okolo druhé hodiny v noci (ráno), kdy už  
 
pravděpodobně většina Enlightened hráčů je doma.
 
pravděpodobně většina Enlightened hráčů je doma.
  
 
Z
 
Z
<nowiki> </nowiki>grafu rozložení jednotlivých akcí v průběhu dne pak vyplývá, že nejvíce
+
grafu rozložení jednotlivých akcí v průběhu dne pak vyplývá, že nejvíce
<nowiki> </nowiki>nově obsazených protálů je v brzce odpoledních hodinách. Z tohoto  
+
nově obsazených protálů je v brzce odpoledních hodinách. Z tohoto  
 
vyvozujeme domněnku, že v odpoledních hodinách je aktivní většina nových
 
vyvozujeme domněnku, že v odpoledních hodinách je aktivní většina nových
<nowiki> </nowiki>a příležitostných hráčů, kdežto v nočních hodinách hrají převážně  
+
a příležitostných hráčů, kdežto v nočních hodinách hrají převážně  
 
skalní příznivci hry.
 
skalní příznivci hry.

Verze z 10. 11. 2015, 13:31

Zadání

Popis dat

Data,

která budou v projektu použita jsou pravidelně získávána z webového 

rozhraní AR hry Ingress a obsahují údaje sesbírané v průběhu cca sedmi měsíců.

Data jsou časovým obrazem vývoje hry ve městě Brno, každý řádek těchto dat obsahuje tyto základní údaje:

  • co se stalo (akce)
  • kdy se to stalo (čas)
  • kdo akci provedl
  • kde se akce stala
  • v případě že to dává smysl, úroveň použité výbavy (rozsah 1-8, jinak 0)

Co chci z dat získat

Hlavním cílem projektu je z daných dat získat co nejpřesnější statistický obraz vývoje hry ve městě.

Z

dat budou tedy získávány znalosti o rozložení jednotlivých akcí v rámci
dnů/týdne/měsíce či případné korelace mezi akcemi jednotlivých 

znepřátelených stran.

  • rozložení získaných zkušeností (AP) v průběhu dne
  • poměr jednotlivých akcí v průběhu dne

Získaná

data poté bude možno využít pro taktické plánování hry ve městě, 

jelikož budou známy intervaly, ve kterých je velice malá aktivita a je tedy možno nerušeně provádět časově náročné operace ke kterým je vhodná nepřítomnost protistrany.

Východiska práce

V

této kapitole se věnuji základní teorii, popisující proces dobývání dat
z databáze. Dále se zde také zabývám stručným popisem zdroje dat.

Databáze

Databáze

je systémem, který slouží k ukládání a následnému zpracování dat. Není 

však tvořen pouze daty, ale také příslušnými úložnými médii a vztahy mezi daty samotnými.

Existuje několik druhů databází, rozlišení je možno například následující:

  • Relační databáze
  • Objektová databáze
  • Objektově-relační databáze
  • Dokumentově orientovaná databáze

Dolování z dat

Dolování

z dat (data mining) je analytická metodologie, která slouží ke 

získávání skrytých, netriviálních a potenciálně užitečných informací z dostupných dat. Obvykle tento proces slouží ke získání výhody (obchodní,

herní) strany, která proces provádí.

Při tomto procesu je velmi důležité, aby dolování probíhalo nad správnými daty. V opačném případě hrozí, že získané výsledky, i přesto že na první

pohled vypadají správně, budou zcela nesmyslné.

Ingress

Ingress je Augmented Reality hra

vytvářená v Niantic Labs pod záštitou společnosti Google. Ve hře spolu 

soupeří dvě frakce (Enlightened a Resistance) o portály vytvořené tajemnou rasou Shapers, pomocí kterých lze vytvářet trojúhelníková pole,

která posléze jsou schopna ovlivňovat myšlení lidí nacházející se v 

tomto poli.

Data, která jsou zde použita představují záznam veškerých akcí na území města Brno v rozmezí od března do počátku listopadu.

Analýza dat

Tato kapitola se zaměřuje na zpracování dat a jejich analýzu s pomocí programu RapidMiner.

Zdrojová podoba dat

Výchozí

data se vyskytují v podobě poměrně složitých objektů, kde každý objekt 

popisuje právě jednu akci. Naštěstí, v tomto projektu se těmito daty nemusíme zabývat, jelikož je možno data získat v již předzpracované podobě.

Z databáze je možno data získat jako dvojici spolu provázaných tabulek s následující strukturou:

Tabulka players

  • ID hráče
  • Jméno
  • Frakce
  • Pomocná data, nejsou relevantní

Tabulka actions

  • ID hráče, který akci provedl (reference na tabulku players)
  • UNIX timestamp kdy byla akce provedena
  • Název akce (z množiny názvů akcí)
  • Úroveň
  • GPS souřadnice

Čištění zdrojových dat

K

provedení analýzy bylo třeba data sloučit do jednoho datového balíčku a
vygenerovat chybějící údaje, které je možno z dat vypočítat.

Za pomoci skriptu v jazyce PHP byl vytvořen soubor dat fe formátu CSV s následujícím obsahem:

  • Denní hodina, kdy k akci došlo
  • Název akce
  • Získané body
  • Příznak, zda je hráč provádějící akci členem Enlightened

Ke

konverzi časového razítka na denní hodinu jsme dospěli z důvodu, že se 

nám nepodařilo do RapidMineru naimportovat data ve formátu data a času.

Histogram poměrů bodů mezi frakcemi pro jednotlivé hodiny

Primárním

cílem práce bylo zjistit výhodné hodiny, kdy je nižší aktivita jedné z 

frakcí a tento čas je tedy vhodný k provádění akcí za nepřítomnosti protistrany.

K vytvoření tohoto histogramu

bylo nutno data agregovat podle denní hodiny a poté pro jednotlivé 

hodiny spočítat poměry bodů získaných jednotlivými frakcemi. Z těchto dat pak již bylo možno vytvořit histogram.

Výsledný graf je možno vidět v příloze 1.

Příloha 1

Graf poměru jednotlivých akcí podle denní hodiny

Dále

se práce zabývá zjištěním skladby jednotlivých akcí v průběhu dne. Ke 

zjištění tohoto údaje bylo nutno data agregovat podle denní hodiny a akce. Z výsledných dat již je možno vytvořit výsledný graf, který je možno vidět v příloze 2.

Příloha 2

Závěr

Z

grafu poměrně jasně vyplývá, že nejvýhodnější poměr akcí mezi 

jednotlivými frakcemi ve prospěch Enlightened je jednoznačně okolo sedmé

hodiny ráno. Tím se také potvrdila doměnka mezi brněnskou komunitou, že
Resistance je v ranních hodinách neaktivní. Naopak pro Resistance je 

jejvýhodnějším časem okolo druhé hodiny v noci (ráno), kdy už pravděpodobně většina Enlightened hráčů je doma.

Z

grafu rozložení jednotlivých akcí v průběhu dne pak vyplývá, že nejvíce
nově obsazených protálů je v brzce odpoledních hodinách. Z tohoto 

vyvozujeme domněnku, že v odpoledních hodinách je aktivní většina nových

a příležitostných hráčů, kdežto v nočních hodinách hrají převážně 

skalní příznivci hry.