From 9455e783a4d50b1fed4e670a00fa6ce5868b039c Mon Sep 17 00:00:00 2001 From: Serhii Hromov Date: Mon, 18 May 2020 12:50:27 +0000 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=BD=D0=BE=D0=B2=D0=B8=D1=82=D0=B8=20'r?= =?UTF-8?q?aport.md'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- raport.md | 74 +++++++++++++++++++------------------------------------ 1 file changed, 25 insertions(+), 49 deletions(-) diff --git a/raport.md b/raport.md index e95c54a..51782e6 100644 --- a/raport.md +++ b/raport.md @@ -2,79 +2,56 @@ ### Opis -Tematem podprojektu jest rozpoznawanie posiłków. -Użyty jest algorytm genetyczny. +Tematem podprojektu jest rozpoznawanie zamówień na podstawie historii zamówień. +Użyłem drzew decyzyjnych. ### Dane -Posiłki, ich nazwa oraz rodzaj. +Potrawy, ich nazwa, rodzaj oraz charakterystyka. menu = Context.fromstring(''' |meat|salad|meal|drink|cold|hot | - Pork | X | | X | | | X | + Pork | X | | | | | X | Espresso | | | | X | | X | + Latte | | | | X | | X | Green Tea | | | | X | X | | - Greek Salad| | X | X | | X | | + Greek Salad| | X | | | X | | Pizza | | | X | | | X |''') -Za pomocy graphviz możemy narysować grafy z poniższego kodu: - digraph Lattice { - node [label="" shape=circle style=filled width=.25] - edge [dir=none labeldistance=1.5 minlen=2] - c0 - c1 - c1 -> c1 [color=transparent headlabel=Pork labelangle=270] - c1 -> c1 [color=transparent labelangle=90 taillabel=meat] - c1 -> c0 - c2 - c2 -> c2 [color=transparent headlabel="Green Tea" labelangle=270] - c2 -> c2 [color=transparent labelangle=90 taillabel=cold] - c2 -> c0 - c3 - c3 -> c3 [color=transparent headlabel="Greek Salad" labelangle=270] - c3 -> c3 [color=transparent labelangle=90 taillabel=salad] - c3 -> c0 - c4 - c4 -> c4 [color=transparent headlabel=Espresso labelangle=270] - c4 -> c4 [color=transparent labelangle=90 taillabel=drink] - c4 -> c2 - c5 - c5 -> c1 - c5 -> c3 - c5 -> c4 - } +Dane uczące: + training_data = [ + ['meat','hot','Pork'], + ['salad','cold','Greek Salad'], + ['drink','hot','Espresso'], + ['drink','hot','Latte'], + ['drink','cold','Green Tea'], + ['meal','hot','Pizza'], + ] + + Dane testowe: - func_input = ['meal'] + test_data = [ + ['meat','hot','Latte'], + ['salad','hot','Greek Salad'], + ['drink','hot','Pork'], + ['drink','cold','Green Tea'], + ['drink','hot','Greek Salad'], + ] -Dane wyjściowe: - ['Pork', 'Greek Salad', 'Pizza'] ### Implementacja Główna część: + In process - gen_num = 20 #generations - gen_sol = 6 #solutions - gen_par_mating = 2 #how many solutions we select - - mut_per_gen = 10 - mut_num_gen = None - - par_selc_type = "tournament" - crossover = "two_points" - muta_type = "scramble" - par_keep = 1 #keep only one parent - - init_range_l = -2 #low - init_range_h = -5 #high ... @@ -82,7 +59,6 @@ Główna część: ### Biblioteki * concepts -* pygad (algorytm genetyczny) * random * numpy