drzewo_wiki #18

Merged
s473561 merged 5 commits from drzewo_wiki into master 2023-05-29 13:28:33 +02:00
5 changed files with 249 additions and 16 deletions
Showing only changes of commit 5341f5330b - Show all commits

View File

@ -3,6 +3,36 @@ import pandas as pd
from sklearn.tree import DecisionTreeClassifier from sklearn.tree import DecisionTreeClassifier
from sklearn.tree import export_graphviz from sklearn.tree import export_graphviz
# def make_tree():
# plikZPrzecinkami = open("training_data.txt", 'w')
# with open('DecisionTree/200permutations_table.txt', 'r') as plik:
# for linia in plik:
# liczby = linia.strip()
# wiersz = ""
# licznik = 0
# for liczba in liczby:
# wiersz += liczba
# wiersz += ";"
# wiersz = wiersz[:-1]
# wiersz += '\n'
# plikZPrzecinkami.write(wiersz)
# plikZPrzecinkami.close()
# x = pd.read_csv('DecisionTree/training_data.txt', delimiter=';',
# names=['wielkosc', 'waga,', 'priorytet', 'ksztalt', 'kruchosc', 'dolna', 'gorna', 'g > d'])
# y = pd.read_csv('DecisionTree/decisions.txt', names=['polka'])
# # X_train, X_test, y_train, y_test = train_test_split(x, y, test_size=0.3, random_state=1) # 70% treningowe and 30% testowe
# # Tworzenie instancji klasyfikatora ID3
# clf = DecisionTreeClassifier(criterion='entropy')
# # Trenowanie klasyfikatora
# clf.fit(x.values, y.values)
# # clf.fit(X_train, y_train)
# return clf
plikZPrzecinkami = open("training_data.txt", 'w') plikZPrzecinkami = open("training_data.txt", 'w')
with open('200permutations_table.txt', 'r') as plik: with open('200permutations_table.txt', 'r') as plik:

Binary file not shown.

19
main.py
View File

@ -44,18 +44,13 @@ def main():
if grid_points.grid[(wiersz, kolumna)] is GridCellType.PLACE: #picks up package if grid_points.grid[(wiersz, kolumna)] is GridCellType.PLACE: #picks up package
if wozek.ln == 0: if wozek.ln == 0:
paczka_pop = ekran.lista_paczek.pop() wozek.picks_up_package()
ekran.lista_paczek_na_regalach.append(paczka_pop)
paczka_pop.is_in_move = True
wozek.storage.append(paczka_pop)
wozek.ln = wozek.ln + 1
wozek.dynamic_wozek_picture() wozek.dynamic_wozek_picture()
print(ekran.lista_paczek)
## wozek jedzie odlozyc paczke na regal ## wozek jedzie odlozyc paczke na regal
paczka1 = wozek.storage[-1] przenoszona_paczka = wozek.storage[-1]
array, reg = paczka1.tablica_do_drzewa(paczka1.kategoria) array, reg = przenoszona_paczka.tablica_do_drzewa(przenoszona_paczka.kategoria)
plikZPrzecinkami = open("DecisionTree/training_data.txt", 'w') plikZPrzecinkami = open("DecisionTree/training_data.txt", 'w')
@ -90,14 +85,8 @@ def main():
wozek.przemiesc_wozek_po_sciezce(sciezka) wozek.przemiesc_wozek_po_sciezce(sciezka)
if wozek.ln != 0: # drops package if wozek.ln != 0: # drops package
print(paczka1) wozek.drops_package(przenoszona_paczka, reg, predictions)
paczka1.update_position(reg.numerWiersza*70, reg.numerKolumny*70)
paczka_pop.is_in_move = False
wozek.storage.pop()
wozek.ln = wozek.ln - 1
reg.put_package_on_the_regal(paczka1, predictions)
wozek.dynamic_wozek_picture() wozek.dynamic_wozek_picture()
ekran.odswiez_ekran(wozek)
if event.type == pygame.MOUSEBUTTONDOWN: if event.type == pygame.MOUSEBUTTONDOWN:
# lewy przycisk myszy # lewy przycisk myszy

200
training_data.txt Normal file
View File

@ -0,0 +1,200 @@
1;0;0;1;0;0;1;0
0;0;1;0;1;1;0;1
2;0;1;1;0;0;0;1
2;2;1;0;1;1;1;0
1;0;0;1;0;0;0;1
2;1;0;0;1;1;0;0
1;0;0;0;1;0;0;1
1;1;0;1;0;0;0;1
0;0;1;0;1;1;1;0
0;2;0;0;0;1;1;0
0;0;1;0;0;1;0;1
0;0;0;0;0;1;1;0
0;2;1;0;1;1;0;0
2;0;0;0;1;0;0;0
2;1;0;1;0;1;1;1
0;1;1;0;1;1;1;0
0;2;0;1;1;1;0;1
1;2;1;0;1;1;0;0
0;0;1;1;1;1;0;1
0;0;0;1;1;0;0;1
1;1;1;1;1;0;1;0
1;2;1;0;0;1;1;1
2;2;1;1;0;1;1;1
1;2;1;0;1;1;0;1
0;1;0;0;0;1;0;1
1;1;0;0;0;1;0;1
0;1;0;0;0;1;1;1
2;1;0;1;0;1;0;1
0;1;1;0;1;1;0;0
2;1;0;1;0;1;1;0
1;2;1;0;0;0;1;1
1;2;0;1;0;1;1;1
0;2;0;1;0;1;0;1
2;1;1;0;1;1;1;1
0;2;0;1;0;0;0;1
0;1;1;0;0;1;1;0
2;2;1;0;0;0;1;1
1;0;0;0;0;0;1;0
0;0;1;1;0;1;0;0
2;2;0;1;1;1;0;0
1;2;1;1;0;0;0;1
1;2;0;1;0;0;1;1
0;1;0;1;1;1;1;0
0;1;0;0;1;1;0;0
0;1;0;1;1;0;0;0
1;1;1;0;1;1;0;1
1;1;1;1;0;1;1;0
2;1;1;1;0;1;1;0
2;2;0;0;1;1;0;0
1;0;0;1;0;1;0;1
2;1;1;1;1;0;1;0
0;0;0;0;1;1;0;0
2;1;1;1;0;1;0;1
1;2;1;1;1;0;1;1
0;2;0;0;1;1;1;1
2;1;0;1;1;0;0;0
0;2;1;1;1;0;1;1
1;2;0;1;1;1;1;0
0;2;0;0;0;1;0;1
1;2;0;0;0;1;0;0
2;0;0;1;0;1;1;1
2;1;1;0;0;0;1;1
0;1;1;1;0;1;0;0
2;1;0;1;1;1;0;0
0;2;0;1;0;0;0;0
2;1;0;0;1;0;0;1
1;1;0;0;1;1;0;0
2;0;0;1;0;0;1;1
2;0;1;1;1;0;1;1
2;2;0;1;1;0;0;0
0;1;0;1;1;1;0;1
1;0;1;1;1;0;0;0
2;0;0;1;1;1;1;1
1;0;0;0;0;0;0;1
2;1;1;0;0;0;0;1
0;0;0;0;1;1;0;1
0;1;0;1;0;0;0;1
2;2;0;1;0;0;0;0
0;2;1;1;1;1;0;1
2;2;1;0;0;1;1;0
1;2;0;0;1;1;1;0
0;1;1;1;0;0;0;1
1;1;1;0;1;0;0;0
2;0;1;1;0;0;1;1
2;0;1;0;1;0;1;0
2;2;0;0;0;1;1;0
1;1;0;1;1;0;1;1
2;0;0;0;0;0;1;1
1;2;0;0;1;1;0;1
1;2;1;1;0;0;0;0
0;0;1;1;1;1;1;0
0;2;1;1;0;1;0;0
2;1;1;0;0;0;1;0
1;0;0;1;1;0;0;0
2;2;0;1;1;1;0;1
2;0;0;1;1;1;0;0
0;2;1;0;0;0;0;0
1;2;1;1;1;0;0;1
0;0;0;0;0;1;1;1
2;2;1;1;1;0;1;1
0;1;0;0;1;0;1;0
2;1;1;0;1;1;0;0
0;1;1;1;1;1;1;1
1;2;1;1;1;0;1;0
2;0;1;1;1;1;1;0
1;0;1;1;0;0;1;0
0;2;0;0;1;0;0;1
2;2;0;0;0;1;0;0
0;2;0;0;1;1;0;0
0;1;0;0;0;0;1;1
1;0;0;0;0;1;0;1
2;1;0;0;0;0;1;0
0;1;1;0;0;1;0;0
1;0;1;0;1;0;1;0
2;0;0;0;1;1;0;0
0;0;0;0;0;0;0;0
0;0;1;0;1;0;0;0
1;0;1;0;0;0;0;0
0;2;1;0;0;0;0;1
2;0;0;1;1;1;0;1
0;2;0;1;1;1;1;0
0;2;1;1;1;1;1;1
1;2;0;1;0;1;1;0
0;2;1;0;0;1;0;0
2;0;1;1;1;1;1;1
0;0;0;1;1;1;1;1
1;2;0;1;1;0;0;0
1;2;0;1;1;0;0;1
2;2;0;1;0;0;1;0
2;2;0;0;0;0;1;0
0;0;0;1;0;0;1;0
1;0;1;0;1;0;0;0
0;2;0;0;0;0;0;0
2;0;1;0;1;1;1;1
0;2;1;0;0;0;1;1
0;2;1;0;1;1;1;1
2;2;1;0;1;0;1;0
1;1;1;1;1;1;1;1
0;1;1;0;1;0;0;0
2;1;1;0;0;1;1;1
0;0;1;0;1;1;1;1
0;1;1;0;1;0;1;0
2;0;0;1;0;0;1;0
1;1;0;1;1;1;1;0
2;0;0;1;1;1;1;0
0;0;1;0;0;1;1;0
1;0;1;0;1;1;1;1
0;1;0;0;0;0;0;1
0;2;0;1;1;0;0;1
2;1;1;0;1;0;1;1
1;1;1;1;1;0;1;1
1;0;1;1;0;0;1;1
1;0;0;1;1;0;0;1
2;1;1;1;0;0;1;0
1;0;0;0;0;0;0;0
0;0;0;1;1;1;1;0
1;0;1;1;0;0;0;1
2;1;1;1;1;0;1;1
1;2;0;1;0;1;0;1
1;1;0;0;0;1;1;0
2;2;1;0;1;1;0;1
0;0;0;0;0;0;1;0
0;2;0;0;0;1;1;1
2;1;0;0;0;0;1;1
0;0;0;1;1;1;0;0
1;0;1;0;0;1;1;0
2;0;0;0;1;1;1;1
1;2;1;0;0;0;0;1
2;2;0;0;0;1;0;1
0;1;1;0;0;0;1;0
0;2;0;0;1;0;1;0
1;1;0;0;1;1;1;1
0;0;0;1;0;0;1;1
0;1;1;0;0;1;1;1
2;2;0;1;1;0;1;0
1;0;1;0;1;0;1;1
1;1;0;1;0;0;1;1
2;0;1;1;0;0;1;0
2;0;1;0;0;0;1;0
1;1;1;1;0;1;1;1
2;1;1;0;1;0;0;0
0;2;0;1;1;0;0;0
1;2;1;1;0;1;0;0
2;1;1;1;1;1;0;1
0;2;0;1;0;1;1;1
0;2;1;0;1;0;0;1
0;1;1;0;0;0;1;1
1;0;0;1;1;0;1;1
2;2;1;1;0;0;0;0
0;1;1;0;0;0;0;0
2;0;1;1;0;1;0;0
0;1;1;0;0;0;0;1
0;0;1;1;1;0;1;0
0;2;0;0;0;0;1;0
2;0;0;1;0;1;1;0
0;0;1;0;1;0;1;1
2;2;0;0;1;0;1;1
2;2;0;1;0;0;0;1
2;2;0;1;0;1;0;1
1;2;1;0;0;1;0;1

View File

@ -122,3 +122,17 @@ class Wozek(pygame.sprite.Sprite):
else: else:
self.image = pygame.transform.rotate(self.image, 90) self.image = pygame.transform.rotate(self.image, 90)
def picks_up_package(self):
paczka_pop = ekran.lista_paczek.pop()
ekran.lista_paczek_na_regalach.append(paczka_pop)
paczka_pop.is_in_move = True
self.storage.append(paczka_pop)
self.ln = self.ln + 1
def drops_package(self, paczka, reg, predictions):
paczka.update_position(reg.numerWiersza*70, reg.numerKolumny*70)
paczka.is_in_move = False
self.storage.pop()
self.ln = self.ln - 1
reg.put_package_on_the_regal(paczka, predictions)