Maciej Piotr Jankowski
|
|
- Urszula Chmiel
- 6 lat temu
- Przeglądów:
Transkrypt
1 Reduced Adder Graph Implementacja algorytmu RAG Maciej Piotr Jankowski Maciej Piotr Jankowski 1
2 Plan prezentacji 1. Wstęp 2. Implementacja 3. Usprawnienia optymalizacyjne 3.1. Tablica ekspansji 3.2. Faktoryzacja 4. Wyniki testów 5. Instrukcja obsługi programu 6. Podsumowanie Maciej Piotr Jankowski 2
3 Wstęp Algorytm RAG został wymyślony dla usprawnienia procesu projektowania filtrów cyfrowych. Pozwala on tworzyć kolejne współczynniki filtru na podstawie współczynników poprzednich, np. przy wystąpieniu współczynników {3, 25} możemy zamiast zapisać 25 = = 8 * Elementem wymagającym optymalizacji jest w tym przypadku ilość wystapień sumatorów (czyli działań +/-) w układzie. Niestety, problem takiej optymalizacji układu jest NP-zupełny i wymaga odpowiednich narzędzi usprawniających działanie algorytmu Maciej Piotr Jankowski 3
4 Implementacja Algorytm zaimplementowałem w C++. Stworzyłem jedną klasę RAG, która zajmuje się całym procesem. Przy pisaniu starałem się opierać na regułach heurystycznych, tzn. w pierwszej kolejności realizowane są współczynniki o najmniejszym koszcie (koszt = ilość sumatorów potrzebnych do realizacji). Jednakże duża złożoność obliczeniowa decyzji, które współczynniki realizować w dalszej kolejności oraz w jaki sposób, skłoniła mnie do poszukiwania metod usprawniających ten proces. Dodałem dwa elementy: - tablicę ekspansji - faktoryzację współczynników Wyniki uzyskane dzięki tym metodom uważam za całkiem przyzwoite, co dobrze widać w testach (pkt 4.) W dalszej części prezentacji przedstawię bardziej szczegółowo powyższe metody Maciej Piotr Jankowski 4
5 Tablica ekspansji Usprawnienia optymalizacyjne Tablica ekspansji pozwala na bardzo szybką ocenę złożoności realizacji danego współczynnika. Jest to konieczne przy decyzji, który ze współczynników realizować w następnej kolejności. Tablica ta zawiera w polu o numerze n ilość sumatorów koniecznych do realizacji współczynnika n. Na samym początku tablica ta uzupełniana jest na podstawie możliwości kombinacji potęg dwójki (ponieważ nie mamy jeszcze żadnych współczynników). Kilka jej pierwszych pól wygląda następująco: Maciej Piotr Jankowski 5
6 Tablica ekspansji cz. 2. Zgodnie z założeniami tablica ta w polach odpowiadających potęgom dwójki ma wartość 0, gdyż nie potrzebujemy żadnego sumatora do ich realizacji. Natomiast w polu 19 mamy wartość 2, ponieważ potrzebujemy dwóch sumatorów: 19 = Aktualizacja tablicy ekspansji W momencie, gdy zrealizujemy jakiś współczynnik, tablica musi zostać uaktualniona. Polega to na porównaniu jej starych wartości z realizacjami uwzględniającymi nowy współczynnik. W przypadku, gdy nowa realizacja jest korzystniejsza dla np. liczby k, pole w tablicy tab[k] zmniejsza swoją wartość. I następnie jest sprawdzane, czy liczba k nie powoduje poprawy realizacji jakiegoś współczynnika Maciej Piotr Jankowski 6
7 Tablica ekspansji cz. 3. Przykład Mamy na początku tablicę uzupełnioną wartościami z potęg dwójki. Następnie realizujemy współczynnik k=5 jako 5=4+1. Następne, co musimy zrobić, to zaktualizować tablicę ekspansji: W tym celu należy porównać wartości stare z wartościami przesuniętymi o k w prawo i zwiększonymi o 1, jak na rysunku. Jeśli powstały w ten sposób wynik jest lepszy (jak dla 13 lub 21) to jest zapisywany i następny krok to k = 13. To samo powtarzamy dla 2k, 4k, 8k, 16k itd = = Maciej Piotr Jankowski 7
8 Podsumowanie i parametry Tablica ekspansji cz. 3. Ciągła aktualizacja tablicy ekspansji jest niewątpliwie sporym obciążeniem dla całego projektu. Jednak pożyteczność tej tablicy jest tak duża, że wydaje mi się iż opłaca się to w zupełności. Dodatkowo, żeby nieco poprawić szybkość, wprowadziłem różne usprawnienia, między innymi zapamiętuję wartości minimalne dla realizacji z jednym sumatorem, dwoma itd.(granice dolne) W miarę uzupełniania tablicy wartości te dość szybko rosną, co pozwala przyspieszyć działanie programu. Parametrem tablicy ekspansji jest jej długość, określona jako log2 z faktycznej długości tablicy. Większa tablica może dawać czasem (raczej dość rzadko) lepsze rezultaty, ale wydłuża też czas obliczeń, więc wybór należy do użytkownika. Nie należy też przesadzać, by wartości współczynników pomocniczych (tworzonych pośrednio podczas procesu) nie były zbyt duże Maciej Piotr Jankowski 8
9 Faktoryzacja Faktoryzacja polega na rozłożeniu liczby na liczby pierwsze. Dzięki temu, a następnie połączeniu tych liczb w odpowiednie grupy można niekiedy uzyskać wyniki lepsze niż wynikające z tablicy ekspansji. Przykład. Liczba 715 zapisana za pomocą potęg dwójki w sposób normalny ma postać: 715 = = =... Jakby nie ustawiać, zawsze wychodzi 5 sumatorów. Po zastosowaniu faktoryzacji otrzymujemy: 715 = 5*11*13 = 55*13 = 65*11 = 5*143 Odpowiedni algorytm wyszukuje najlepszą kombinację czynników pierwszych i mamy: 715 = 65*11 = (64 + 1)*( ) Efekt widać na pierwszy rzut oka ilość sumatorów z 5 zmalała do Maciej Piotr Jankowski 9
10 Faktoryzacja cz. 2. Uwagi: Rozkład na czynniki pierwsze uzyskałem stosując metodę Monte Carlo. Najbardziej złożonym elementem tej części projektu jest funkcja generująca wszystkie możliwe iloczyny czynników pierwszych i licząca zarazem ich minimalną realizację. Należy zauważyć, że wśród czynników końcowego iloczynu tylko jeden z nich może korzystać z wcześniej zrealizowanych współczynników reszta musi być tworzona z potęg dwójki, gdyż tylko wtedy taki iloczyn będzie możliwy w realizacji Maciej Piotr Jankowski 10
11 Wyniki testów Testy zostały przeprowadzone na zupełnie losowych danych wygenerowanych przez program gen_filtr. Wyniki są uśrednione z 5 przykładów dla każdego przypadku. współczynników sumatorów Sumatorów/wsp ,6 1, ,2 1, ,8 1, ,8 0, ,4 0, ,2 0, ,6 0, ,8 0, ,8 0, ,4 0, Maciej Piotr Jankowski 11
12 Przykładowe realizacje {3, 25, 75, 150,256} X 4 3X 8 25X X 75X X Maciej Piotr Jankowski 12
13 Przykładowe realizacje cz. 2. {99, 715} X 4 8 (faktoryzacja) X 715X Maciej Piotr Jankowski 13
14 Instrukcja obsługi programu wybór wielkości tablicy ekspansji rozpoczyna obliczenia pasek postępu parametry wynikowe pozwala na ponowne obliczenia (np. po zmianie wielkości tablicy) okienko z wynikami Obsługa programu jest dość intuicyjna i myślę, że nie wymaga dodatkowych wyjaśnień Maciej Piotr Jankowski 14
15 Instrukcja obsługi programu cz. 2. Interpretacja wyników Wyniki są wypisane w postaci sieci równań, które kompletnie opisują graf powstały w wyniku działania algorytmu. W równaniach tych pojawiają się współczynniki pomocnicze, które są używane w dalszej części. Kolejność realizacji powinna się odbywać zgodnie z kolejnością wypisania współczynników. Oraz zgodnie z zasadami arytmetyki (tzn. W pierwszej kolejności wartości w nawiasach!). Z pewnych względów nie są wypisywane współczynniki będące potęgami dwójki. Format danych wejściowych W pierwszym wierszu pliku powinna znajdować się liczba współczynników, w następnych wierszach poszczególne współczynniki Maciej Piotr Jankowski 15
16 Instrukcja obsługi programu - cz.3. Obsługa programu gen_filtr.exe Program ten generuje losowe współczynniki filtru. Sposób użycia: gen_filtr nazwa_pliku ilość_współczynników Maciej Piotr Jankowski 16
17 Podsumowanie Informacje, które zawarłem w tej prezentacji opisują mój projekt oraz samą istotę algorytmu Reduced Adder Graph bardzo powierzchownie. Problem ten jest jednak na tyle złożony, że potrzeba znacznie więcej miejsca i czasu żeby go opisać. Wyniki, jakie uzyskałem przy pomocy tego programu wskazują, że rzeczywiście warto jest się zainteresować tego typu rozwiązaniem, gdyż dla większej ilości współczynników otrzymujemy graf, w którym na każdy współczynnik przypada mniej niż jeden sumator to tak, jakby każdą liczbę dało się zapisać za pomocą sumy dwóch potęg dwójki Maciej Piotr Jankowski 17
Wstęp do Informatyki zadania ze złożoności obliczeniowej z rozwiązaniami
Wstęp do Informatyki zadania ze złożoności obliczeniowej z rozwiązaniami Przykład 1. Napisz program, który dla podanej liczby n wypisze jej rozkład na czynniki pierwsze. Oblicz asymptotyczną złożoność
Bardziej szczegółowoSzukanie rozwiązań funkcji uwikłanych (równań nieliniowych)
Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych) Funkcja uwikłana (równanie nieliniowe) jest to funkcja, która nie jest przedstawiona jawnym przepisem, wzorem wyrażającym zależność wartości
Bardziej szczegółowoProcesy Markowa zawdzięczają swoją nazwę ich twórcy Andriejowi Markowowi, który po raz pierwszy opisał problem w 1906 roku.
Procesy Markowa zawdzięczają swoją nazwę ich twórcy Andriejowi Markowowi, który po raz pierwszy opisał problem w 1906 roku. Uogólnienie na przeliczalnie nieskończone przestrzenie stanów zostało opracowane
Bardziej szczegółowoPodstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10.
ZAMIANA LICZB MIĘDZY SYSTEMAMI DWÓJKOWYM I DZIESIĘTNYM Aby zamienić liczbę z systemu dwójkowego (binarnego) na dziesiętny (decymalny) należy najpierw przypomnieć sobie jak są tworzone liczby w ww systemach
Bardziej szczegółowo2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0,
2 Arytmetyka Niech b = d r d r 1 d 1 d 0 będzie zapisem liczby w systemie dwójkowym Zamiana zapisu liczby b na system dziesiętny odbywa się poprzez wykonanie dodawania d r 2 r + d r 1 2 r 1 d 1 2 1 + d
Bardziej szczegółowoTabele przestawne tabelą przestawną. Sprzedawcy, Kwartały, Wartości. Dane/Raport tabeli przestawnej i wykresu przestawnego.
Tabele przestawne Niekiedy istnieje potrzeba dokonania podsumowania zawartości bazy danych w formie dodatkowej tabeli. Tabelę taką, podsumowującą wybrane pola bazy danych, nazywamy tabelą przestawną. Zasady
Bardziej szczegółowoZadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for.
Zadania do wykonania Rozwiązując poniższe zadania użyj pętlę for. 1. apisz program, który przesuwa w prawo o dwie pozycje zawartość tablicy 10-cio elementowej liczb całkowitych tzn. element t[i] dla i=2,..,9
Bardziej szczegółowoOSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA
OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) 16.01.2003 Algorytmy i Struktury Danych PIŁA ALGORYTMY ZACHŁANNE czas [ms] Porównanie Algorytmów Rozwiązyjących problem TSP 100 000 000 000,000 10 000 000
Bardziej szczegółowoZadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5.
Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5. Schemat Hornera. Wyjaśnienie: Zadanie 1. Pozycyjne reprezentacje
Bardziej szczegółowoMetoda Karnaugh. B A BC A
Metoda Karnaugh. Powszechnie uważa się, iż układ o mniejszej liczbie elementów jest tańszy i bardziej niezawodny, a spośród dwóch układów o takiej samej liczbie elementów logicznych lepszy jest ten, który
Bardziej szczegółowoNazwa implementacji: Nauka języka Python pętla for. Autor: Piotr Fiorek
Nazwa implementacji: Nauka języka Python pętla for Autor: Piotr Fiorek Opis implementacji: Poznanie innego rodzaju pętli, jaką jest pętla for w języku Python. Składnia pętli for jest następująca: for
Bardziej szczegółowoAkademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Olimpiada O Diamentowy Indeks AGH 2017/18. Informatyka Etap III
Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Olimpiada O Diamentowy Indeks AGH 017/18 Informatyka Etap III Zadania po 17 punktów Zadanie 1 Dla pewnej N-cyfrowej liczby naturalnej obliczono
Bardziej szczegółowoSortowanie zewnętrzne
Algorytmy i struktury danych Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski Sortowanie zewnętrzne 1 Wstęp Bardzo często
Bardziej szczegółowoDzielenie sieci na podsieci
e-damiangarbus.pl Dzielenie sieci na podsieci dla każdego Uzupełnienie do wpisu http://e-damiangarbus.pl/podzial-sieci-na-podsieci/ Dwa słowa wstępu Witaj, właśnie czytasz uzupełnienie do wpisu na temat
Bardziej szczegółowoWstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe. P. F. Góra
Wstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2015 Co można zrobić z układem równań... tak, aby jego rozwiazania się nie zmieniły? Rozważam
Bardziej szczegółowoAlgorytmy i struktury danych. Wykład 4
Wykład 4 Różne algorytmy - obliczenia 1. Obliczanie wartości wielomianu 2. Szybkie potęgowanie 3. Algorytm Euklidesa, liczby pierwsze, faktoryzacja liczby naturalnej 2017-11-24 Algorytmy i struktury danych
Bardziej szczegółowowagi cyfry 7 5 8 2 pozycje 3 2 1 0
Wartość liczby pozycyjnej System dziesiętny W rozdziale opiszemy pozycyjne systemy liczbowe. Wiedza ta znakomicie ułatwi nam zrozumienie sposobu przechowywania liczb w pamięci komputerów. Na pierwszy ogień
Bardziej szczegółowoJeśli czas działania algorytmu zależy nie tylko od rozmiaru danych wejściowych i przyjmuje różne wartości dla różnych danych o tym samym rozmiarze,
Oznaczenia: Jeśli czas działania algorytmu zależy nie tylko od rozmiaru danych wejściowych i przyjmuje różne wartości dla różnych danych o tym samym rozmiarze, to interesuje nas złożoność obliczeniowa
Bardziej szczegółowoZaawansowane algorytmy i struktury danych
Zaawansowane algorytmy i struktury danych u dr Barbary Marszał-Paszek Opracowanie pytań praktycznych z egzaminów. Strona 1 z 12 Pytania praktyczne z kolokwium zaliczeniowego z 19 czerwca 2014 (studia dzienne)
Bardziej szczegółowoLuty 2001 Algorytmy (7) 2000/2001 s-rg@siwy.il.pw.edu.pl
System dziesiętny 7 * 10 4 + 3 * 10 3 + 0 * 10 2 + 5 *10 1 + 1 * 10 0 = 73051 Liczba 10 w tym zapisie nazywa się podstawą systemu liczenia. Jeśli liczba 73051 byłaby zapisana w systemie ósemkowym, co powinniśmy
Bardziej szczegółowo7. CIĄGI. WYKŁAD 5. Przykłady :
WYKŁAD 5 1 7. CIĄGI. CIĄGIEM NIESKOŃCZONYM nazywamy funkcję określoną na zbiorze liczb naturalnych, dodatnich, a wyrazami ciągu są wartości tej funkcji. CIĄGIEM SKOŃCZONYM nazywamy funkcję określoną na
Bardziej szczegółowoMikroekonometria 6. Mikołaj Czajkowski Wiktor Budziński
Mikroekonometria 6 Mikołaj Czajkowski Wiktor Budziński Metody symulacyjne Monte Carlo Metoda Monte-Carlo Wykorzystanie mocy obliczeniowej komputerów, aby poznać charakterystyki zmiennych losowych poprzez
Bardziej szczegółowoKRYPTOGRAFIA I OCHRONA DANYCH PROJEKT
KRYPTOGRAFIA I OCHRONA DANYCH PROJEKT Temat: Zaimplementować system kryptografii wizualnej http://www.cacr.math.uwaterloo.ca/~dstinson/visual.html Autor: Tomasz Mitręga NSMW Grupa 1 Sekcja 2 1. Temat projektu
Bardziej szczegółowoImport danych w formacie txt
Przewodnik Inżyniera Nr 27 Aktualizacja: 06/2017 Import danych w formacie txt Program powiązany: Fundament bezpośredni Plik GEO5: Demo_manual_27_1.gpa (przykład przygotowany do importu danych) Demo_manual_27_2.gpa
Bardziej szczegółowoWyszukiwanie binarne
Wyszukiwanie binarne Wyszukiwanie binarne to technika pozwalająca na przeszukanie jakiegoś posortowanego zbioru danych w czasie logarytmicznie zależnym od jego wielkości (co to dokładnie znaczy dowiecie
Bardziej szczegółowoARCHITEKTURA KOMPUTERÓW Systemy liczbowe
ARCHITEKTURA KOMPUTERÓW Systemy liczbowe 20.10.2010 System Zakres znaków Przykład zapisu Dziesiętny ( DEC ) 0,1,2,3, 4,5,6,7,8,9 255 DEC Dwójkowy / Binarny ( BIN ) 0,1 11111 Ósemkowy ( OCT ) 0,1,2,3, 4,5,6,7
Bardziej szczegółowoRównoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami
Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami dr inż. Mariusz Uchroński Wrocławskie Centrum Sieciowo-Superkomputerowe Agenda Cykliczny problem przepływowy
Bardziej szczegółowoTab. 1 Tab. 2 t t+1 Q 2 Q 1 Q 0 Q 2 Q 1 Q 0
Synteza liczników synchronicznych Załóżmy, że chcemy zaprojektować licznik synchroniczny o następującej sekwencji: 0 1 2 3 6 5 4 [0 sekwencja jest powtarzana] Ponieważ licznik ma 7 stanów, więc do ich
Bardziej szczegółowox 2 = a RÓWNANIA KWADRATOWE 1. Wprowadzenie do równań kwadratowych 2. Proste równania kwadratowe Równanie kwadratowe typu:
RÓWNANIA KWADRATOWE 1. Wprowadzenie do równań kwadratowych Przed rozpoczęciem nauki o równaniach kwadratowych, warto dobrze opanować rozwiązywanie zwykłych równań liniowych. W równaniach liniowych niewiadoma
Bardziej szczegółowoKonkurs z przedmiotu eksploracja i analiza danych: problem regresji i klasyfikacji
Konkurs z przedmiotu eksploracja i analiza danych: problem regresji i klasyfikacji Michał Witczak Data Mining 20 maja 2012 r. 1. Wstęp Dostarczone zostały nam 4 pliki, z których dwa stanowiły zbiory uczące
Bardziej szczegółowoUniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania
Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania Celem ćwiczenia jest zapoznanie studentów z najprostszą dynamiczną strukturą
Bardziej szczegółowoAlgorytmy w teorii liczb
Łukasz Kowalik, ASD 2004: Algorytmy w teorii liczb 1 Algorytmy w teorii liczb Teoria liczb jest działem matemtyki dotyczącym własności liczb naturalnych. Rozważa się zagadnienia związane z liczbami pierwszymi,
Bardziej szczegółowoPomorski Czarodziej 2016 Zadania. Kategoria C
Pomorski Czarodziej 2016 Zadania. Kategoria C Poniżej znajduje się 5 zadań. Za poprawne rozwiązanie każdego z nich możesz otrzymać 10 punktów. Jeżeli otrzymasz za zadanie maksymalną liczbę punktów, możesz
Bardziej szczegółowoKompletna dokumentacja kontenera C++ vector w - http://www.cplusplus.com/reference/stl/vector/
STL, czyli o co tyle hałasu W świecie programowania C++, hasło STL pojawia się nieustannie i zawsze jest o nim głośno... często początkujące osoby, które nie znają STL-a pytają się co to jest i czemu go
Bardziej szczegółowox x
DODTEK II - Inne sposoby realizacji funkcji logicznych W kolejnych podpunktach zaprezentowano sposoby realizacji przykładowej funkcji (tej samej co w instrukcji do ćwiczenia "Synteza układów kombinacyjnych")
Bardziej szczegółowoDziałanie algorytmu oparte jest na minimalizacji funkcji celu jako suma funkcji kosztu ( ) oraz funkcji heurystycznej ( ).
Algorytm A* Opracowanie: Joanna Raczyńska 1.Wstęp Algorytm A* jest heurystycznym algorytmem służącym do znajdowania najkrótszej ścieżki w grafie. Jest to algorytm zupełny i optymalny, co oznacza, że zawsze
Bardziej szczegółowoEdytor materiału nauczania
Edytor materiału nauczania I. Uruchomienie modułu zarządzania rozkładami planów nauczania... 2 II. Opuszczanie elektronicznej biblioteki rozkładów... 5 III. Wyszukiwanie rozkładu materiałów... 6 IV. Modyfikowanie
Bardziej szczegółowoNIEDZIESIĄTKOWE SYSTEMY LICZENIA.
NIEDZIESIĄTKOWE SYSTEMY LICZENIA. Inspiracją do powstania artykułu było popularne powiedzenie :,,... to jest oczywiste jak 2 x 2 jest 4. To powiedzenie pokazuje jak bardzo system dziesiętny zakorzenił
Bardziej szczegółowoZadanie 2: Arytmetyka symboli
1 Cel ćwiczenia Zadanie 2: Arytmetyka symboli Wykształcenie umiejętności abstrahowania operacji arytmetycznych. Zapoznanie się i przećwiczenie mechanizmu tworzenia przeciążeń funkcji operatorowych. Utrwalenie
Bardziej szczegółowoMikroekonometria 5. Mikołaj Czajkowski Wiktor Budziński
Mikroekonometria 5 Mikołaj Czajkowski Wiktor Budziński Zadanie 1. Wykorzystując dane me.medexp3.dta przygotuj model regresji kwantylowej 1. Przygotuj model regresji kwantylowej w którym logarytm wydatków
Bardziej szczegółowo2. DZIAŁANIA NA WIELOMIANACH
WIELOMIANY 1. Stopieo wielomianu. Działania na wielomianach 2. Równość wielomianów. 3. Pierwiastek wielomianu. Rozkład wielomianu na czynniki 4. Równania wielomianowe. 1.STOPIEŃ WIELOMIANU Wielomian to
Bardziej szczegółowoKongruencje twierdzenie Wilsona
Kongruencje Wykład 5 Twierdzenie Wilsona... pojawia się po raz pierwszy bez dowodu w Meditationes Algebraicae Edwarda Waringa (1770), profesora (Lucasian Professor) matematyki w Cambridge, znanego głównie
Bardziej szczegółowoWymagania edukacyjne z matematyki dla klasy VII
Wymagania edukacyjne z matematyki dla klasy VII Szkoły Podstawowej nr 100 w Krakowie Na podstawie programu Matematyka z plusem Na ocenę dopuszczającą Uczeń: rozumie rozszerzenie osi liczbowej na liczby
Bardziej szczegółowoWymagania edukacyjne z matematyki dla uczniów klasy VII szkoły podstawowej
Wymagania edukacyjne z matematyki dla uczniów klasy VII szkoły podstawowej Ocenę dopuszczającą otrzymuje uczeń, który: rozumie rozszerzenie osi liczbowej na liczby ujemne umie porównywać liczby wymierne,
Bardziej szczegółowoRozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych
Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych Piotr Modliński Wydział Geodezji i Kartografii PW 13 stycznia 2012 P. Modliński, GiK PW Rozw.
Bardziej szczegółowoKOŁO MATEMATYCZNE LUB INFORMATYCZNE - klasa III gimnazjum, I LO
Aleksandra Nogała nauczycielka matematyki w Gimnazjum im. Macieja Rataja w Żmigrodzie olanog@poczta.onet.pl KONSPEKT ZAJĘĆ ( 2 godziny) KOŁO MATEMATYCZNE LUB INFORMATYCZNE - klasa III gimnazjum, I LO TEMAT
Bardziej szczegółowoznalezienia elementu w zbiorze, gdy w nim jest; dołączenia nowego elementu w odpowiednie miejsce, aby zbiór pozostał nadal uporządkowany.
Przedstawiamy algorytmy porządkowania dowolnej liczby elementów, którymi mogą być liczby, jak również elementy o bardziej złożonej postaci (takie jak słowa i daty). Porządkowanie, nazywane również często
Bardziej szczegółowoPodstawy OpenCL część 2
Podstawy OpenCL część 2 1. Napisz program dokonujący mnożenia dwóch macierzy w wersji sekwencyjnej oraz OpenCL. Porównaj czasy działania obu wersji dla różnych wielkości macierzy, np. 16 16, 128 128, 1024
Bardziej szczegółowoI. Podstawy języka C powtórka
I. Podstawy języka C powtórka Zadanie 1. Utwórz zmienne a = 730 (typu int), b = 106 (typu long long), c = 123.45 (typu double) Wypisz następujące komunikaty: Dane sa liczby: a = 730, b = 106 i c = 123.45.
Bardziej szczegółowoTeoretyczne podstawy informatyki
Teoretyczne podstawy informatyki Wykład 12a: Prawdopodobieństwo i algorytmy probabilistyczne http://hibiscus.if.uj.edu.pl/~erichter/dydaktyka2010/tpi-2010 Prof. dr hab. Elżbieta Richter-Wąs 1 Teoria prawdopodobieństwa
Bardziej szczegółowoWZÓR OGÓLNY CIĄGU GEOMETRYCZNEGO
WZÓR OGÓLNY CIĄGU GEOMETRYCZNEGO, to ciąg, którego kolejne wyrazy powstają poprzez mnożenie poprzednich wyrazów przez liczbę, którą nazywamy ilorazem ciągu geometrycznego i oznaczamy: q Do opisu ciągu
Bardziej szczegółowoUniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Algorytmy i struktury danych Laboratorium Nr 4
Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Algorytmy i struktury danych Laboratorium Nr 4 Algorytmy sortowania zewnętrznego 1 Wstęp Bardzo często przy rozwiązywaniu praktycznych
Bardziej szczegółowoJeszcze o algorytmach
Jeszcze o algorytmach Przykłady różnych, podstawowych algorytmów 11.01.2018 M. Rad Plan Powtórka Znajdowanie najmniejszego elementu Segregowanie Poszukiwanie przez połowienie Wstawianie Inne algorytmy
Bardziej szczegółowoAlgorytmy sztucznej inteligencji
www.math.uni.lodz.pl/ radmat Przeszukiwanie z ograniczeniami Zagadnienie przeszukiwania z ograniczeniami stanowi grupę problemów przeszukiwania w przestrzeni stanów, które składa się ze: 1 skończonego
Bardziej szczegółowoAlgorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny
Algorytm to przepis; zestawienie kolejnych kroków prowadzących do wykonania określonego zadania; to uporządkowany sposób postępowania przy rozwiązywaniu zadania, problemu, z uwzględnieniem opisu danych
Bardziej szczegółowoWykład z Technologii Informacyjnych. Piotr Mika
Wykład z Technologii Informacyjnych Piotr Mika Uniwersalna forma graficznego zapisu algorytmów Schemat blokowy zbiór bloków, powiązanych ze sobą liniami zorientowanymi. Jest to rodzaj grafu, którego węzły
Bardziej szczegółowoSortowanie. Tomasz Żak zak. styczeń Instytut Matematyki i Informatyki, Politechnika Wrocławska
Tomasz Żak www.im.pwr.wroc.pl/ zak Instytut Matematyki i Informatyki, Politechnika Wrocławska styczeń 2014 Przypuśćmy, że po sprawdzeniu 30 klasówek układamy je w kolejności alfabetycznej autorów. Jak
Bardziej szczegółowoJak korzystać z Excela?
1 Jak korzystać z Excela? 1. Dane liczbowe, wprowadzone (zaimportowane) do arkusza kalkulacyjnego w Excelu mogą przyjmować różne kategorie, np. ogólne, liczbowe, walutowe, księgowe, naukowe, itd. Jeśli
Bardziej szczegółowoMicrosoft Access materiały pomocnicze do ćwiczeń cz. 1
Microsoft Access materiały pomocnicze do ćwiczeń cz. 1 I. Tworzenie bazy danych za pomocą kreatora Celem ćwiczenia jest utworzenie przykładowej bazy danych firmy TEST, zawierającej informacje o pracownikach
Bardziej szczegółowoALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny
ALGORYMY Algorytm to przepis; zestawienie kolejnych kroków prowadzących do wykonania określonego zadania; to uporządkowany sposób postępowania przy rozwiązywaniu zadania, problemu, z uwzględnieniem opisu
Bardziej szczegółowoWykład z równań różnicowych
Wykład z równań różnicowych 1 Wiadomości wstępne Umówmy się, że na czas tego wykładu zrezygnujemy z oznaczania n-tego wyrazu ciągu symbolem typu x n, y n itp. Zamiast tego pisać będziemy x (n), y (n) itp.
Bardziej szczegółowoAlgorytmy przeszukiwania wzorca
Algorytmy i struktury danych Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski Algorytmy przeszukiwania wzorca 1 Wstęp Algorytmy
Bardziej szczegółowoNiezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.
Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą
Bardziej szczegółowoZadanie 1. Algorytmika ćwiczenia
Zadanie 1 Algorytmika ćwiczenia Zadanie 2 Zadanie 3 Zadanie 4 Zadanie 5 Zadanie 6 Zadanie 7 Wiązka zadań Ułamki dwójkowe W systemach pozycyjnych o podstawie innej niż 10 można zapisywać nie tylko liczby
Bardziej szczegółowoInstrukcja do modułu Kontroli Zarządczej (KZ)
Instrukcja do modułu Kontroli Zarządczej (KZ) www.budzet-zadaniowy.com 1 Spis treści I Kontrola Zarządcza... 3 II Ogólna budowa KZ... 4 III Tworzenie nowych dokumentów KZ opcja Nowy... 5 IV Otwieranie
Bardziej szczegółowoNa podstawie: MS Project 2010 i MS Project Server Efektywne zarządzanie projektem i portfelem projektów, Wilczewski S.
Praca z planami bazowymi, Wizualizacja planów bazowych, Plany pośrednie, Wprowadzanie wartości rzeczywistych, Przedstawianie informacji o postępie prac, Analiza odchyleń. zarządzanie projektem i portfelem
Bardziej szczegółowoMetody uporządkowania
Metody uporządkowania W trakcie faktoryzacji macierzy rzadkiej ilość zapełnień istotnie zależy od sposobu numeracji równań. Powstaje problem odnalezienia takiej numeracji, przy której ilość zapełnień będzie
Bardziej szczegółowoWstęp do programowania. Reprezentacje liczb. Liczby naturalne, całkowite i rzeczywiste w układzie binarnym
Wstęp do programowania Reprezentacje liczb Liczby naturalne, całkowite i rzeczywiste w układzie binarnym System dwójkowy W komputerach stosuje się dwójkowy system pozycyjny do reprezentowania zarówno liczb
Bardziej szczegółowoZamówienia algorytmiczne
Zamówienia algorytmiczne Strona 1 z 13 Spis treści 1. Działanie zamówień algorytmicznych... 3 2. Konfiguracja... 3 2.2 Włączenie zamówień algorytmicznych poprzez wybór typu zamówienia... 3 2.3 Włączenie
Bardziej szczegółowo2. Tworzenie tabeli przestawnej. W pierwszym oknie dialogowym kreatora określamy źródło danych, które mamy zamiar analizować.
1. Tabele przestawne Tabele przestawne pozwalają zestawiać dane zawarte w bazach danych przechowywanych w skoroszytach lub plikach zewnętrznych. Tabela przestawna jest dynamicznym zestawieniem danych zawartych
Bardziej szczegółowoWymagania na poszczególne oceny w klasie II gimnazjum do programu nauczania MATEMATYKA NA CZASIE
Wymagania na poszczególne oceny w klasie II gimnazjum do programu nauczania MATEMATYKA NA CZASIE Wymagania konieczne K dotyczą zagadnień elementarnych, stanowiących swego rodzaju podstawę, powinien je
Bardziej szczegółowoPrzykładowe sprawozdanie. Jan Pustelnik
Przykładowe sprawozdanie Jan Pustelnik 30 marca 2007 Rozdział 1 Sformułowanie problemu Tematem pracy jest porównanie wydajności trzech tradycyjnych metod sortowania: InsertionSort, SelectionSort i BubbleSort.
Bardziej szczegółowoZESPÓŁ SZKÓŁ W OBRZYCKU
Matematyka na czasie Program nauczania matematyki w gimnazjum ZGODNY Z PODSTAWĄ PROGRAMOWĄ I z dn. 23 grudnia 2008 r. Autorzy: Agnieszka Kamińska, Dorota Ponczek ZESPÓŁ SZKÓŁ W OBRZYCKU Wymagania edukacyjne
Bardziej szczegółowoPrzedmiotowe zasady oceniania i wymagania edukacyjne z matematyki dla klasy drugiej gimnazjum
Przedmiotowe zasady oceniania i wymagania edukacyjne z matematyki dla klasy drugiej gimnazjum I. POTĘGI I PIERWIASTKI oblicza wartości potęg o wykładnikach całkowitych liczb różnych od zera zapisuje liczbę
Bardziej szczegółowoKRYTERIA OCENIANIA Z MATEMATYKI W OPARCIU O PODSTAWĘ PROGRAMOWĄ I PROGRAM NAUCZANIA MATEMATYKA 2001 DLA KLASY DRUGIEJ
KRYTERIA OCENIANIA Z MATEMATYKI W OPARCIU O PODSTAWĘ PROGRAMOWĄ I PROGRAM NAUCZANIA MATEMATYKA 2001 DLA KLASY DRUGIEJ TREŚCI KSZTAŁCENIA WYMAGANIA PODSTAWOWE WYMAGANIA PONADPODSTAWOWE Liczby wymierne i
Bardziej szczegółowoUkłady VLSI Bramki 1.0
Spis treści: 1. Wstęp... 2 2. Opis edytora schematów... 2 2.1 Dodawanie bramek do schematu:... 3 2.2 Łączenie bramek... 3 2.3 Usuwanie bramek... 3 2.4 Usuwanie pojedynczych połączeń... 4 2.5 Dodawanie
Bardziej szczegółowoZMIERZYĆ SIĘ Z KALKULATOREM
ZMIERZYĆ SIĘ Z KALKULATOREM Agnieszka Cieślak Wyższa Szkoła Informatyki i Zarządzania z siedzibą w Rzeszowie Streszczenie Referat w prosty sposób przedstawia niekonwencjonalne sposoby mnożenia liczb. Tematyka
Bardziej szczegółowoAlgorytmy sortujące. sortowanie kubełkowe, sortowanie grzebieniowe
Algorytmy sortujące sortowanie kubełkowe, sortowanie grzebieniowe Sortowanie kubełkowe (bucket sort) Jest to jeden z najbardziej popularnych algorytmów sortowania. Został wynaleziony w 1956 r. przez E.J.
Bardziej szczegółowoif (wyrażenie ) instrukcja
if (wyrażenie ) instrukcja Jeśli wartość wyrażenia jest różna od zera, to jest wykonywana instrukcja, jeśli wartość wyrażenia jest równa 0, to dana instrukcja nie jest wykonywana Wyrażenie testowe podajemy
Bardziej szczegółowoJak nie zostać niewolnikiem kalkulatora? Obliczenia pamięciowe i pisemne.
Jak nie zostać niewolnikiem kalkulatora? Obliczenia pamięciowe i pisemne. W miarę postępu techniki w niepamięć odeszły nawyki do wykonywania pisemnych albo pamięciowych obliczeń. O suwaku logarytmicznym,
Bardziej szczegółowoZadania ze statystyki, cz.6
Zadania ze statystyki, cz.6 Zad.1 Proszę wskazać, jaką część pola pod krzywą normalną wyznaczają wartości Z rozkładu dystrybuanty rozkładu normalnego: - Z > 1,25 - Z > 2,23 - Z < -1,23 - Z > -1,16 - Z
Bardziej szczegółowo8. Neuron z ciągłą funkcją aktywacji.
8. Neuron z ciągłą funkcją aktywacji. W tym ćwiczeniu zapoznamy się z modelem sztucznego neuronu oraz przykładem jego wykorzystania do rozwiązywanie prostego zadania klasyfikacji. Neuron biologiczny i
Bardziej szczegółowoSposoby przedstawiania algorytmów
Temat 1. Sposoby przedstawiania algorytmów Realizacja podstawy programowej 5. 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych problemów; 2) formułuje ścisły
Bardziej szczegółowoPodstawowe moduły układów cyfrowych układy sekwencyjne cz.2 Projektowanie automatów. Rafał Walkowiak Wersja /2015
Podstawowe moduły układów cyfrowych układy sekwencyjne cz.2 Projektowanie automatów synchronicznych Rafał Walkowiak Wersja.2 24/25 UK Funkcje wzbudzeń UK Funkcje wzbudzeń Pamieć Pamieć UK Funkcje wyjściowe
Bardziej szczegółowo0 + 0 = 0, = 1, = 1, = 0.
5 Kody liniowe Jak już wiemy, w celu przesłania zakodowanego tekstu dzielimy go na bloki i do każdego z bloków dodajemy tak zwane bity sprawdzające. Bity te są w ścisłej zależności z bitami informacyjnymi,
Bardziej szczegółowoProgramowanie dynamiczne
Programowanie dynamiczne Ciąg Fibonacciego fib(0)=1 fib(1)=1 fib(n)=fib(n-1)+fib(n-2), gdzie n 2 Elementy tego ciągu stanowią liczby naturalne tworzące ciąg o takiej własności, że kolejny wyraz (z wyjątkiem
Bardziej szczegółowoCzym jest całka? Całkowanie numeryczne
Całkowanie numeryczne jest to zagadnienie z metod elementów skończonych (MES). Korzystając z całkowania numerycznego możemy obliczyć wartość dowolnej całki jednowymiarowej oznaczonej. Wynik jest zawsze
Bardziej szczegółowoMetody uporządkowania
Metody uporządkowania W trakcie faktoryzacji macierzy rzadkiej ilość zapełnień istotnie zależy od sposobu numeracji równań. Powstaje problem odnalezienia takiej numeracji, przy której: o ilość zapełnień
Bardziej szczegółowoTechnologie Informacyjne
POLITECHNIKA KRAKOWSKA - WIEiK - KATEDRA AUTOMATYKI Technologie Informacyjne www.pk.edu.pl/~zk/ti_hp.html Wykładowca: dr inż. Zbigniew Kokosiński zk@pk.edu.pl Wykład: Generacja liczb losowych Problem generacji
Bardziej szczegółowoPodział sieci na podsieci wytłumaczenie
Podział sieci na podsieci wytłumaczenie Witam wszystkich z mojej grupy pozdrawiam wszystkich z drugiej grupy. Tematem tego postu jest podział sieci na daną ilość podsieci oraz wyznaczenie zakresów IP tychże
Bardziej szczegółowoCMAES. Zapis algorytmu. Generacja populacji oraz selekcja Populacja q i (t) w kroku t generowana jest w następujący sposób:
CMAES Covariance Matrix Adaptation Evolution Strategy Opracowanie: Lidia Wojciechowska W algorytmie CMAES, podobnie jak w algorytmie EDA, adaptowany jest rozkład prawdopodobieństwa generacji punktów, opisany
Bardziej szczegółowoCIĄGI wiadomości podstawowe
1 CIĄGI wiadomości podstawowe Jak głosi definicja ciąg liczbowy to funkcja, której dziedziną są liczby naturalne dodatnie (w zadaniach oznacza się to najczęściej n 1) a wartościami tej funkcji są wszystkie
Bardziej szczegółowoElektroniczny Urząd Podawczy
Elektroniczny Urząd Podawczy Dzięki Elektronicznemu Urzędowi Podawczemu Beneficjent może wypełnić i wysłać formularz wniosku o dofinansowanie projektów w ramach Regionalnego Programu Operacyjnego Województwa
Bardziej szczegółowoznajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.
Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo
Bardziej szczegółowoZarządzanie przedsięwzięciem informatycznym. Śledzenie projektu
Zarządzanie przedsięwzięciem informatycznym Śledzenie projektu Plan bazowy Plan bazowy jest zapisanym planem oryginalnym projektu, jest trwałym zapisem harmonogramu i kosztów. Plan bazowy zawiera główny
Bardziej szczegółowoPrzedstawienie najważniejszych zmian w formularzu wniosku o dofinansowanie EFRR wprowadzonych r.
Przedstawienie najważniejszych zmian w formularzu wniosku o dofinansowanie EFRR wprowadzonych 02.01.2018 r. W przypadku wniosków złożonych przed aktualizacją wniosku (tj. przed 2 stycznia 2018 r.) a będących
Bardziej szczegółowoPole wielokąta. Wejście. Wyjście. Przykład
Pole wielokąta Liczba punktów: 60 Limit czasu: 1-3s Limit pamięci: 26MB Oblicz pole wielokąta wypukłego. Wielokąt wypukły jest to wielokąt, który dla dowolnych jego dwóch punktów zawiera również odcinek
Bardziej szczegółowoProjekt ZSWS. Instrukcja uŝytkowania narzędzia SAP Business Explorer Analyzer. 1 Uruchamianie programu i raportu. Tytuł: Strona: 1 z 31
Strona: 1 z 31 Explorer Analyzer 1 Uruchamianie programu i raportu PoniŜsze czynności uruchamiają program Bex Analyzer oraz wybrany raport z hurtowni danych. 1. uruchom z menu Start>Programy>Business Explorer>Analyzer
Bardziej szczegółowoMatematyka dyskretna. Andrzej Łachwa, UJ, /10
Matematyka dyskretna Andrzej Łachwa, UJ, 2018 andrzej.lachwa@uj.edu.pl 10/10 Podziały i liczby Stirlinga Liczba Stirlinga dla cykli (często nazywana liczbą Stirlinga pierwszego rodzaju) to liczba permutacji
Bardziej szczegółowo1. Wykład NWD, NWW i algorytm Euklidesa.
1.1. NWD, NWW i algorytm Euklidesa. 1. Wykład 1 Twierdzenie 1.1 (o dzieleniu z resztą). Niech a, b Z, b 0. Wówczas istnieje dokładnie jedna para liczb całkowitych q, r Z taka, że a = qb + r oraz 0 r< b.
Bardziej szczegółowo