Zastosowanie technologii nvidia CUDA do zrównoleglenia algorytmu genetycznego dla problemu komiwojażera
|
|
- Helena Włodarczyk
- 7 lat temu
- Przeglądów:
Transkrypt
1 Zastosowanie technologii nvidia CUDA do zrównoleglenia algorytmu genetycznego dla problemu komiwojażera Adam Hrazdil Wydział Inżynierii Mechanicznej i Informatyki Kierunek informatyka, Rok V hrazdil@op.pl Streszczenie W poniższej pracy zaprezentowano możliwości przetwarzania równoległego przy użyciu wielu rdzeni procesora graficznego na przykładzie problemu komiwojażera realizowanego przez algorytm genetyczny. Genetyczny algorytm został zaimplementowany w dwóch wersjach: sekwencyjnej działającej na CPU oraz równoległej z wykorzystaniem technologii CUDA. Zaprezentowana została architektura CUDA, porównano wyniki otrzymane przez dwie wersje algorytmu pod względem wydajności oraz sformułowano wnioski. 1 Wstęp Spośród wielu metod sztucznej inteligencji obliczeniowej algorytmy genetyczne AG (ang. Genetic Algorithms) doczekały się wielu zastosowań. Można je wykorzystywać do rozwiązywania rzeczywistych problemów z dowolnej dziedziny ludzkiej działalności. Rozwój algorytmów genetycznych został zapoczątkowany w roku 1975 pracą Johna Hollanda z Uniwersytetu Michigan [9]. Obecnie zastosowanie algorytmów genetycznych jest imponujące, stosowane są bowiem one w szeregowaniu zadań, modelowaniu finansowym, optymalizacji funkcji oraz harmonogramowaniu. Gwałtownie przeżywany rozwój algorytmów genetycznych pobudził w ostatnim czasie różne obszary nauki i techniki min. fizykę, biologię, programowanie układów układów scalonych VLSI (ang. Very Large Scale of Integration), a także zarządzanie. Rozróżnia się trzy zasadnicze grupy zastosowań AG [4]: algorytmy przeszukujące (Search), optymalizujące (Optimization) i uczące (Learning). Algorytmy genetyczne wykorzystują poszukiwania oparte na mechanizmach doboru naturalnego oraz dziedziczności. Łączą w sobie ewolucyjną zasadę przeżycia najlepiej przystosowanych osobników z systematyczną, choć zrandomizowaną wymianą informacji [2]. Algorytmy ewolucyjne i genetyczne są ściśle zdefiniowanymi procedurami matematycznymi wykorzystywanymi do rozwiązywania niektórych problemów, dla których standardowe algorytmy są nieznane lub mają nieakceptowalnie długi czas 1
2 działania. Zasada ich działania opiera się na mechanizmach skonstruowanych w oparciu o procesy zaobserwowane w biologicznej ewolucji. Zadanie komiwojażera (TSP - ang. Traveling Salesman Problem) [10] jest właśnie jednym z takich problemów. Ogólny problem komiwojażera sformułowany jest następująco: dane jest n miast, a każde dwa z nich połączone są drogą o określonej długości. W jednym z miast znajduje się komiwojażer, który chce odwiedzić wszystkie miasta w taki sposób, aby w każdym mieście znaleźć się dokładnie jeden raz, a na koniec wędrówki powrócić do miejsca startowego. Optymalnym rozwiązaniem jest trasa, dla której koszt objazdu jest najmniejszy. Na podstawie teorii grafów problem komiwojażera można przedstawić jako zadanie polegające na znalezieniu minimalnego cyklu Hamiltona w pełnym grafie ważonym. Miasta są wierzchołkami grafu, trasy pomiędzy nimi to krawędzie z wagami. Waga krawędzi może odpowiadać odległości pomiędzy miastami połączonymi tą krawędzią, czasowi podróży lub koszcie przejazdu. Zadanie sprowadza się do znalezienia permutacji miast (i 1, i 2,, i n ), dla której koszt jest najmniejszy. Dla problemu komiwojażera nie jest znany algorytm efektywny, tzn. rozwiązujący ten problem w czasie wielomianowym. Należy on do klasy problemów NP-trudnych, w związku z tym niemożliwy jest przegląd zupełny przestrzeni rozwiązań. Dlatego jest często wybierany do weryfikacji nowych pomysłów w dziedzinie AG. 2 Ogólna charakterystyka architektury CUDA CUDA (ang. Compute Unified Device Architecture) [6] to technologia typu GPGPU (ang. General-Purpose Computing on Graphics Processing Units) opracowana przez firmę nvidia. Jest uniwersalną architekturą procesorów wielordzeniowych (głównie kart graficznych) umożliwiającą wykorzystanie ich mocy obliczeniowej do rozwiązywania ogólnych problemów numerycznych w sposób wydajniejszy niż w tradycyjnych, procesorach ogólnego zastosowania (CPU). Na rysunku 1 przedstawiono porównanie mocy obliczeniowych kolejnych generacji procesorów typu CPU firmy Intel oraz GPU firmy nvidia. 2
3 Integralną częścią architektury CUDA jest oparte na języku programowania C środowisko programistyczne wysokiego poziomu, w którego skład wchodzą m.in. specjalny kompilator (nvcc) oraz interfejs programowania aplikacji. Projekt architektury CUDA zakłada pełną skalowalność programów, napisany dziś program wykonywalny ma w przyszłości działać bez żadnych zmian na coraz wydajniejszych procesorach graficznych posiadających coraz większą liczbę rdzeni, rejestrów, pamięci operacyjnej i innych zasobów. Procesor (ang. Host) wykonuje kod sekwencyjnie do czasu wywołania funkcji jądra (ang. Kernel) działającej na karcie graficznej (ang. Device). Każdorazowe wywołanie tej funkcji tworzy na karcie graficznej nową siatkę wątków (ang. Grid). Wątki są zgrupowane w blokach (możliwa struktura 1D, 2D, 3D), maksymalnie można przydzielić 512 x 512 x 64 wątków w bloku. Bloki zgrupowane są w siatce, maksymalnie x Wymiary bloku i siatki podajemy jako argumenty wywołania funkcji jądra. Schemat wywołania funkcji jądra wywołanej przez procesor został przedstawiony na rysunku 2. Rys. 2. Schemat wywołania funkcji jądra (źródło [5]) Karta graficzna jest zrealizowana jako zbiór multiprocesorów (SM, ang. Single Multiprocessor), które są podstawową jednostką obliczeniową GPU. Są to skalarne, zmiennoprzecinkowe jednostki arytmetyczno-logiczne pojedynczej precyzji. Każdy multiprocesor zawiera osiem równoległych procesorów strumieniowych (SP, ang. Scalar Processor). SM zawiera również dwie jednostki specjalne (SFU, ang. Special Function Units), wykonujące bardziej złożone funkcje 3
4 matematyczne (np. pierwiastek, funkcja sinus). Każdy SM posiada także jedną jednostkę arytmetyczną podwójnej precyzji. Celem ułatwienia współpracy między wątkami wykonywanymi przez SP każdy SM zawiera 16 KB pamięci współdzielonej. Każdy multiprocesor ma zlecane do jednoczesnego wykonania jeden bądź więcej bloków wątków. 3 Implementacja algorytmu Algorytmy z wykorzystaniem technologii CUDA zostały zaimplementowane tak, aby sposób działania najwierniej odwzorowywał wersje sekwencyjne wykonywalne na CPU. Każda iteracja algorytmu jest jednorazowo wywołaną funkcją jądra. Jest to spowodowane tym, że przed rozpoczęciem nowej iteracji wszystkie operacje w poprzedniej iteracji muszą się zakończyć. Biblioteka CUDA podczas działającej funkcji jądra nie umożliwia synchronizacji bloków, dlatego nie można rozpocząć obliczeń dla nowej iteracji w tej samej funkcji jądra. Ponowne wywołanie funkcji jądra w tym samym wątku programu wykonywalnego na CPU daje gwarancje zakończenia działania wszystkich bloków. Populacja między wywołaniami funkcji jądra jest przechowywana w pamięci głównej GPU, która jest zachowywana między kolejnymi wywołaniami funkcji jądra do czasu jej jawnego zwolnienia. Opracowanie algorytmu genetycznego pod kątem odpowiedniego zadania wymaga zaprojektowania odpowiedniego kodowania dla chromosomów. W implementacji algorytmu zastosowana została reprezentacja ścieżkowa [1]. Krzyżowanie w przypadku reprezentacji ścieżkowej jest skomplikowaną czynnością. Wynikiem działania operatora krzyżowania musi być potomek akceptowalny (zawierający unikalną listę miast). Dla przyjętej reprezentacji zastosowano krzyżowanie z częściowym zastępowaniem [1] (ang. Partially Matched Crossover). Wynikiem działania operatora mutacji tak jak w przypadku krzyżowania, musi być chromosom akceptowalny. Dla chromosomu w zastosowanej reprezentacji zaimplementowano następujące operatory mutacji: wzajemnej wymiany wymienia się dwa losowe miasta, inwersją obraca się kolejność wszystkich genów w chromosomie, przesunięciem przesuwa się chromosom w wybraną stronę, końcowe geny które wychodzą poza zakres wstawiane są na początek, lokalna optymalizacja - wybiera się miasto i zamienia sąsiadem, jeśli wynik zamiany przynosi skrócenie trasy. W selekcji osobników naśladuje się mechanizm przeżycia w naturze. Wobec tego oczekuje się, że osobnik o najwyższym stopniu przystosowania uzyska liczne potomstwo. Do najważniejszych metod selekcji należą [3]: metoda elitarna, metoda turniejowa, metoda proporcjonalna ("Metoda koła ruletki "). Ocena danego osobnika polega na zsumowaniu odległości pomiędzy kolejnymi miastami wyznaczonymi przez daną reprezentację. Mniejsza wartość oceny jest tożsama z mniejszym kosztem odwiedzenia wszystkich miast. 4
5 4 Porównanie wydajności algorytmów Testy przeprowadzane były na komputerze wyposażonym w procesor AMD Phenom II X4 B50 taktowany rdzeniem 3,1 GHz, pamięć RAM DDR 3 taktowaną zegarem 1333 MHz oraz kartę graficzną GeForce GTX 275, posiadającą 30 multiprocesorów, taktowanych zegarem 1,40 GHz. Testy były prowadzone w środowisku Windows 7 Professional 64 bit. Kod był kompilowany za pomocą CUDA SDK 3.0 beta i Visual Studio Algorytmy zostały przetestowane dla wielkości zadania 500 miast. Miasta zostały losowo umieszczone na powierzchni o wymiarach 1200 x 850. Przykładowy chromosom populacji początkowej został pokazany na rysunku 3. Rys. populacji początkowej Wyniki porównywania obu algorytmów wykazały zbliżone długości tras dla analogicznych pokoleń. Wyniki zostały zaprezentowane na rysunku 4. Rys. 4. Porównanie przystosowania najlepszego osobnika algorytmów w kolejnych iteracjach algorytmu 5
6 Dla oceny wydajności algorytmów z wykorzystaniem różnych technologi wyniki testu przedstawiono na rysunku 5 jako wykres zależności przystosowania od czasu działania aplikacji. Rys. 5. Porównanie przystosowania najlepszego osobnika algorytmów w czasie Wyraźnie widoczny jest duży wzrost wydajności aplikacji korzystającej z technologii CUDA. Po 10 sekundach aplikacja wykorzystująca technologię CUDA i osiągnęła wynik lepszy od wersji sekwencyjnej po czasie 10 minut. Ostateczny wynik działania aplikacji wykorzystującej technologię CUDA został pokazany na rysunku 6. Osiągnięcie tego wyniku wymagało 60 tysięcy pokoleń. W tym czasie sekwencyjna aplikacja uzyskała 3 razy dłuższą trasę wykonując 1400 pokoleniach. Wyniki w testowanym przypadku wykazują 42 krotne przyśpieszenie. Rys. 6. Wynik działania algorytmu CUDA (najlepszy wynik w pokoleniu) Większa ilość miast wiąże się także ze zwiększeniem operacji wykonywanych na chromosomach. Ilość możliwych rozwiązań w przypadku większej ilości miast jest 6
7 też znacznie większa. Następnie badano wpływu rozmiaru chromosomu na czas wykonywania aplikacji. Wyniki testów zostały przedstawione na rysunku 7. Rys. 7. Wpływ rozmiaru chromosomu na czas działania aplikacji wykonującej technologie CUDA Porównanie czasów wykonywania obu aplikacji przedstawiono na rysunku 8. Badano przyśpieszenia w zależności o rozmiarów chromosomu. Maksymalne osiągnięte przyśpieszenie w tym przypadku osiągnięto dla 400 miast i czas wykonywania aplikacji z wykorzystaniem technologi CUDA był 58,6 razy krótszy. Dla chromosomów o długości większej od 320 wartości przyśpieszenia osiągnęły podobny poziom. Badając zachowanie algorytmu dla różnych długości chromosomów, testowano wydajność równoległych operatorów genetycznych. Rys. 8. Wpływ rozmiaru chromosomu na przyśpieszenie Aplikacje poddano testom badającym wpływ rozmiaru populacji na przyśpieszenie w porównaniu z wersją sekwencyjną wykonywalną na CPU. Pierwszy test przeprowadzono dla 512 osobników, następnie zwiększano w każdym następnym teście dwukrotnie rozmiar populacji, aż do wielkości osobników. Zwiększanie parametru rozmiaru populacji wprowadza większy potencjał genetyczny, ale ma też swoje minusy, prowadzi do wydłużenia czasu obliczeń, w wersji działającej na CPU czas działania zwiększa się proporcjonalnie do wielkości populacji. W przypadku wykorzystania karty graficznej zwiększenie ilości populacji także wpływa na zwiększenie czasu działania programu, jednak w testowanej aplikacji nie zawsze są one proporcjonalne do wielkości populacji. Wyniki zostały przedstawione na rysunku 9. 7
8 Rys. 9. Wpływ rozmiaru populacji na przyśpieszenie W wersji wykorzystującej CUDA jedno pokolenie jest jednorazowo wywołaną funkcją jądra. Wywołanie funkcji jądra przez komputer i przekazanie jej parametrów jest związane z pewnymi nakładami czasowymi. W przypadku mniejszych populacji ma to większe znaczenie, ponieważ nakład czasowy jest czynnikiem determinującym czas działania, zwiększając rozmiary populacji zwiększamy ilość obliczeń dla funkcji jądra a tym samym maleje znaczenie kosztów jej wywołania. 5 Podsumowanie W artykule opisano podstawowe założenia architektury CUDA. Na przykładzie algorytmów genetycznych wykazano istotną przewagę układów GPU nad klasycznym CPU w przypadku przeprowadzania obliczeń o znacznym stopniu równoległości. Otrzymane wyniki świadczą, że architektura CUDA świetnie sprawdza się w dziedzinie algorytmów genetycznych. Znacznie większą wydajność w stosunku do ceny oraz ogólnodostępność tej technologii mogą zacznie przyczynić się do rozwoju algorytmów ewolucyjnych. Bibliografia [1] Z. Michalewicz, Algorytmy genetyczne + struktury danych = programowanie Ewolucyjne, wydanie III, Warszawa: WNT, [2] D.E. Goldberg, Algorytmy genetyczne i ich zastosowania, Warszawa: WNT, [3] J. Arabas: Wykłady z algorytmów ewolucyjnych. Warszawa: WNT, [4] H. Kwaśnicka, Obliczenia ewolucyjne w sztucznej inteligencji, 1999 [5] D. L. Applegate, R. E. Bixby, V. Chvátal, W. J. Cook, The Traveling Salesman Problem: A Computational Study, [6] NVIDIA Corporation, NVidia CUDA Programming Guide 2.3, [7] NVIDIA Corporation, GeForce 8800 GPU Architecture Overview, [8] NVIDIA Corporation, Advanced CUDA Training, 2008 [9] J. H. Holland, Adaptation in Natural and Artificial Systems, University of Michigan Press, [10] T. H. Cormen, C. E. Leiserson, R. L. Riverst, Wprowadzenie do algorytmów Warszawa WNT,
Algorytm genetyczny (genetic algorithm)-
Optymalizacja W praktyce inżynierskiej często zachodzi potrzeba znalezienia parametrów, dla których system/urządzenie będzie działać w sposób optymalny. Klasyczne podejście do optymalizacji: sformułowanie
Bardziej szczegółowoAlgorytm Genetyczny. zastosowanie do procesów rozmieszczenia stacji raportujących w sieciach komórkowych
Algorytm Genetyczny zastosowanie do procesów rozmieszczenia stacji raportujących w sieciach komórkowych Dlaczego Algorytmy Inspirowane Naturą? Rozwój nowych technologii: złożone problemy obliczeniowe w
Bardziej szczegółowoPorównanie wydajności CUDA i OpenCL na przykładzie równoległego algorytmu wyznaczania wartości funkcji celu dla problemu gniazdowego
Porównanie wydajności CUDA i OpenCL na przykładzie równoległego algorytmu wyznaczania wartości funkcji celu dla problemu gniazdowego Mariusz Uchroński 3 grudnia 2010 Plan prezentacji 1. Wprowadzenie 2.
Bardziej szczegółowoLABORATORIUM 7: Problem komiwojażera (TSP) cz. 2
Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny, Politechnika Śląska www.imio.polsl.pl OBLICZENIA EWOLUCYJNE LABORATORIUM 7: Problem komiwojażera (TSP) cz. 2 opracował:
Bardziej szczegółowoCUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu
CUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu inż. Daniel Solarz Wydział Fizyki i Informatyki Stosowanej AGH 1. Cel projektu. Celem projektu było napisanie wtyczki
Bardziej szczegółowoAlgorytmy genetyczne
Algorytmy genetyczne Motto: Zamiast pracowicie poszukiwać najlepszego rozwiązania problemu informatycznego lepiej pozwolić, żeby komputer sam sobie to rozwiązanie wyhodował! Algorytmy genetyczne służą
Bardziej szczegółowoAlgorytmy genetyczne
9 listopada 2010 y ewolucyjne - zbiór metod optymalizacji inspirowanych analogiami biologicznymi (ewolucja naturalna). Pojęcia odwzorowujące naturalne zjawiska: Osobnik Populacja Genotyp Fenotyp Gen Chromosom
Bardziej szczegółowoGenerowanie i optymalizacja harmonogramu za pomoca
Generowanie i optymalizacja harmonogramu za pomoca na przykładzie generatora planu zajęć Matematyka Stosowana i Informatyka Stosowana Wydział Fizyki Technicznej i Matematyki Stosowanej Politechnika Gdańska
Bardziej szczegółowoALGORYTMY GENETYCZNE (wykład + ćwiczenia)
ALGORYTMY GENETYCZNE (wykład + ćwiczenia) Prof. dr hab. Krzysztof Dems Treści programowe: 1. Metody rozwiązywania problemów matematycznych i informatycznych.. Elementarny algorytm genetyczny: definicja
Bardziej szczegółowoPLAN WYKŁADU OPTYMALIZACJA GLOBALNA OPERATOR KRZYŻOWANIA ETAPY KRZYŻOWANIA
PLAN WYKŁADU Operator krzyżowania Operator mutacji Operator inwersji Sukcesja Przykłady symulacji AG Kodowanie - rodzaje OPTYMALIZACJA GLOBALNA Wykład 3 dr inż. Agnieszka Bołtuć OPERATOR KRZYŻOWANIA Wymiana
Bardziej szczegółowoAlgorytmy genetyczne (AG)
Algorytmy genetyczne (AG) 1. Wprowadzenie do AG a) ewolucja darwinowska b) podstawowe definicje c) operatory genetyczne d) konstruowanie AG e) standardowy AG f) przykład rozwiązania g) naprawdę bardzo,
Bardziej szczegółowoMIO - LABORATORIUM. Imię i nazwisko Rok ak. Gr. Sem. Komputer Data ... 20 / EC3 VIII LAB...
MIO - LABORATORIUM Temat ćwiczenia: TSP - Problem komiwojażera Imię i nazwisko Rok ak. Gr. Sem. Komputer Data Podpis prowadzącego... 20 / EC3 VIII LAB...... Zadanie Zapoznać się z problemem komiwojażera
Bardziej szczegółowoWyznaczanie optymalnej trasy problem komiwojażera
Wyznaczanie optymalnej trasy problem komiwojażera Optymalizacja w podejmowaniu decyzji Opracowała: mgr inż. Natalia Malinowska Wrocław, dn. 28.03.2017 Wydział Elektroniki Politechnika Wrocławska Plan prezentacji
Bardziej szczegółowoAlgorytmy ewolucyjne 1
Algorytmy ewolucyjne 1 2 Zasady zaliczenia przedmiotu Prowadzący (wykład i pracownie specjalistyczną): Wojciech Kwedlo, pokój 205. Konsultacje dla studentów studiów dziennych: poniedziałek,środa, godz
Bardziej szczegółowoAlgorytmy genetyczne w optymalizacji
Algorytmy genetyczne w optymalizacji Literatura 1. David E. Goldberg, Algorytmy genetyczne i ich zastosowania, WNT, Warszawa 1998; 2. Zbigniew Michalewicz, Algorytmy genetyczne + struktury danych = programy
Bardziej szczegółowoAlgorytmy ewolucyjne NAZEWNICTWO
Algorytmy ewolucyjne http://zajecia.jakubw.pl/nai NAZEWNICTWO Algorytmy ewolucyjne nazwa ogólna, obejmująca metody szczegółowe, jak np.: algorytmy genetyczne programowanie genetyczne strategie ewolucyjne
Bardziej szczegółowoRównoważność algorytmów optymalizacji
Równoważność algorytmów optymalizacji Reguła nie ma nic za darmo (ang. no free lunch theory): efektywność różnych typowych algorytmów szukania uśredniona po wszystkich możliwych problemach optymalizacyjnych
Bardziej szczegółowoAlgorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny
Algorytmy stochastyczne, wykład 01 J. Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2014-02-21 In memoriam prof. dr hab. Tomasz Schreiber (1975-2010) 1 2 3 Różne Orientacyjny
Bardziej szczegółowoAlgorytmy genetyczne. Dariusz Banasiak. Katedra Informatyki Technicznej Wydział Elektroniki
Dariusz Banasiak Katedra Informatyki Technicznej Wydział Elektroniki Obliczenia ewolucyjne (EC evolutionary computing) lub algorytmy ewolucyjne (EA evolutionary algorithms) to ogólne określenia używane
Bardziej szczegółowoSCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO
SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO. Rzeczywistość (istniejąca lub projektowana).. Model fizyczny. 3. Model matematyczny (optymalizacyjny): a. Zmienne projektowania
Bardziej szczegółowoWybrane podstawowe rodzaje algorytmów
Wybrane podstawowe rodzaje algorytmów Tomasz Głowacki tglowacki@cs.put.poznan.pl Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia na Politechnice Poznańskiej w zakresie technologii informatycznych
Bardziej szczegółowoAlgorytmy ewolucyjne - algorytmy genetyczne. I. Karcz-Dulęba
Algorytmy ewolucyjne - algorytmy genetyczne I. Karcz-Dulęba Algorytmy klasyczne a algorytmy ewolucyjne Przeszukiwanie przestrzeni przez jeden punkt bazowy Przeszukiwanie przestrzeni przez zbiór punktów
Bardziej szczegółowoObliczenia ewolucyjne - plan wykładu
Obliczenia ewolucyjne - plan wykładu Wprowadzenie Algorytmy genetyczne Programowanie genetyczne Programowanie ewolucyjne Strategie ewolucyjne Inne modele obliczeń ewolucyjnych Podsumowanie Ewolucja Ewolucja
Bardziej szczegółowoKARTA MODUŁU KSZTAŁCENIA
KARTA MODUŁU KSZTAŁCENIA I. Informacje ogólne 1 Nazwa modułu kształcenia Sztuczna inteligencja 2 Nazwa jednostki prowadzącej moduł Instytut Informatyki, Zakład Informatyki Stosowanej 3 Kod modułu (wypełnia
Bardziej szczegółowoZadanie 5 - Algorytmy genetyczne (optymalizacja)
Zadanie 5 - Algorytmy genetyczne (optymalizacja) Marcin Pietrzykowski mpietrzykowski@wi.zut.edu.pl wersja 1.0 1 Cel Celem zadania jest zapoznanie się z Algorytmami Genetycznymi w celu rozwiązywanie zadania
Bardziej szczegółowoAlgorytmy genetyczne. Materiały do laboratorium PSI. Studia niestacjonarne
Algorytmy genetyczne Materiały do laboratorium PSI Studia niestacjonarne Podstawowy algorytm genetyczny (PAG) Schemat blokowy algorytmu genetycznego Znaczenia, pochodzących z biologii i genetyki, pojęć
Bardziej szczegółowoProgramowanie z wykorzystaniem technologii CUDA i OpenCL Wykład 1
Programowanie z wykorzystaniem technologii CUDA i OpenCL Wykład 1 Organizacja przedmiotu Dr inż. Robert Banasiak Dr inż. Paweł Kapusta 1 2 Nasze kompetencje R n D Tomografia 3D To nie tylko statyczny obraz!
Bardziej szczegółowoAlgorytmy genetyczne dla problemu komiwojażera (ang. traveling salesperson)
Algorytmy genetyczne dla problemu komiwojażera (ang. traveling salesperson) 1 2 Wprowadzenie Sztandarowy problem optymalizacji kombinatorycznej. Problem NP-trudny. Potrzeba poszukiwania heurystyk. Chętnie
Bardziej szczegółowoi3: internet - infrastruktury - innowacje
i3: internet - infrastruktury - innowacje Wykorzystanie procesorów graficznych do akceleracji obliczeń w modelu geofizycznym EULAG Roman Wyrzykowski Krzysztof Rojek Łukasz Szustak [roman, krojek, lszustak]@icis.pcz.pl
Bardziej szczegółowoDobór parametrów algorytmu ewolucyjnego
Dobór parametrów algorytmu ewolucyjnego 1 2 Wstęp Algorytm ewolucyjny posiada wiele parametrów. Przykładowo dla algorytmu genetycznego są to: prawdopodobieństwa stosowania operatorów mutacji i krzyżowania.
Bardziej szczegółowoBudowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Bardziej szczegółowoAlgorytmy genetyczne. Materiały do laboratorium PSI. Studia stacjonarne i niestacjonarne
Algorytmy genetyczne Materiały do laboratorium PSI Studia stacjonarne i niestacjonarne Podstawowy algorytm genetyczny (PAG) Schemat blokowy algorytmu genetycznego Znaczenia, pochodzących z biologii i genetyki,
Bardziej szczegółowoPLAN WYKŁADU OPTYMALIZACJA GLOBALNA ZADANIE KOMIWOJAŻERA METODY ROZWIĄZYWANIA. Specyfika zadania komiwojażera Reprezentacje Operatory
PLAN WYKŁADU Specyfika zadania komiwojażera Reprezentacje Operatory OPTYMALIZACJA GLOBALNA Wykład 5 dr inż. Agnieszka Bołtuć ZADANIE KOMIWOJAŻERA Koncepcja: komiwojażer musi odwiedzić każde miasto na swoim
Bardziej szczegółowoTesla. Architektura Fermi
Tesla Architektura Fermi Tesla Tesla jest to General Purpose GPU (GPGPU), GPU ogólnego przeznaczenia Obliczenia dotychczas wykonywane na CPU przenoszone są na GPU Możliwości jakie daje GPU dla grafiki
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ółowoLABORATORIUM 4: Algorytmy ewolucyjne cz. 2 wpływ operatorów krzyżowania i mutacji na skuteczność poszukiwań AE
Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny, Politechnika Śląska www.imio.polsl.pl METODY HEURYSTYCZNE LABORATORIUM 4: Algorytmy ewolucyjne cz. 2 wpływ operatorów krzyżowania
Bardziej szczegółowoMetody przeszukiwania
Metody przeszukiwania Co to jest przeszukiwanie Przeszukiwanie polega na odnajdywaniu rozwiązania w dyskretnej przestrzeni rozwiązao. Zwykle przeszukiwanie polega na znalezieniu określonego rozwiązania
Bardziej szczegółowoLABORATORIUM 3: Wpływ operatorów krzyżowania na skuteczność poszukiwań AE
Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny, Politechnika Śląska www.imio.polsl.pl OBLICZENIA EWOLUCYJNE LABORATORIUM 3: Wpływ operatorów krzyżowania na skuteczność
Bardziej szczegółowoProgramowanie procesorów graficznych NVIDIA (rdzenie CUDA) Wykład nr 1
Programowanie procesorów graficznych NVIDIA (rdzenie CUDA) Wykład nr 1 Wprowadzenie Procesory graficzne GPU (Graphics Processing Units) stosowane są w kartach graficznych do przetwarzania grafiki komputerowej
Bardziej szczegółowoBudowa Mikrokomputera
Budowa Mikrokomputera Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Podstawowe elementy komputera Procesor Pamięć Magistrala (2/16) Płyta główna (ang. mainboard, motherboard) płyta drukowana komputera,
Bardziej szczegółowoProgramowanie procesorów graficznych GPGPU
Programowanie procesorów graficznych GPGPU 1 GPGPU Historia: lata 80 te popularyzacja systemów i programów z graficznym interfejsem specjalistyczne układy do przetwarzania grafiki 2D lata 90 te standaryzacja
Bardziej szczegółowoAlgorytmy genetyczne. Paweł Cieśla. 8 stycznia 2009
Algorytmy genetyczne Paweł Cieśla 8 stycznia 2009 Genetyka - nauka o dziedziczeniu cech pomiędzy pokoleniami. Geny są czynnikami, które decydują o wyglądzie, zachowaniu, rozmnażaniu każdego żywego organizmu.
Bardziej szczegółowoBudowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Bardziej szczegółowoOdkrywanie algorytmów kwantowych za pomocą programowania genetycznego
Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego Piotr Rybak Koło naukowe fizyków Migacz, Uniwersytet Wrocławski Piotr Rybak (Migacz UWr) Odkrywanie algorytmów kwantowych 1 / 17 Spis
Bardziej szczegółowoPraca dyplomowa magisterska
Praca dyplomowa magisterska Implementacja algorytmów filtracji adaptacyjnej o strukturze transwersalnej na platformie CUDA Dyplomant: Jakub Kołakowski Opiekun pracy: dr inż. Michał Meller Plan prezentacji
Bardziej szczegółowoTechniki optymalizacji
Techniki optymalizacji Algorytm kolonii mrówek Idea Smuga feromonowa 1 Sztuczne mrówki w TSP Sztuczna mrówka agent, który porusza się z miasta do miasta Mrówki preferują miasta połączone łukami z dużą
Bardziej szczegółowoSprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer
Sprzęt komputerowy 2 Autor prezentacji: 1 prof. dr hab. Maria Hilczer Budowa komputera Magistrala Procesor Pamięć Układy I/O 2 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący
Bardziej szczegółowoGospodarcze zastosowania algorytmów genetycznych
Marta Woźniak Gospodarcze zastosowania algorytmów genetycznych 1. Wstęp Ekonometria jako nauka zajmująca się ustalaniem za pomocą metod statystycznych ilościowych prawidłowości zachodzących w życiu gospodarczym
Bardziej szczegółowoPRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy w ramach treści kierunkowych, moduł kierunkowy oólny Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK
Bardziej szczegółowo6. Klasyczny algorytm genetyczny. 1
6. Klasyczny algorytm genetyczny. 1 Idea algorytmu genetycznego została zaczerpnięta z nauk przyrodniczych opisujących zjawiska doboru naturalnego i dziedziczenia. Mechanizmy te polegają na przetrwaniu
Bardziej szczegółowoProblemy z ograniczeniami
Problemy z ograniczeniami 1 2 Dlaczego zadania z ograniczeniami Wiele praktycznych problemów to problemy z ograniczeniami. Problemy trudne obliczeniowo (np-trudne) to prawie zawsze problemy z ograniczeniami.
Bardziej szczegółowoArchitektury komputerów Architektury i wydajność. Tomasz Dziubich
Architektury komputerów Architektury i wydajność Tomasz Dziubich Przetwarzanie potokowe Przetwarzanie sekwencyjne Przetwarzanie potokowe Architektura superpotokowa W przetwarzaniu potokowym podczas niektórych
Bardziej szczegółowoZadania laboratoryjne i projektowe - wersja β
Zadania laboratoryjne i projektowe - wersja β 1 Laboratorium Dwa problemy do wyboru (jeden do realizacji). 1. Water Jug Problem, 2. Wieże Hanoi. Water Jug Problem Ograniczenia dla każdej z wersji: pojemniki
Bardziej szczegółowoModyfikacje i ulepszenia standardowego algorytmu genetycznego
Modyfikacje i ulepszenia standardowego algorytmu genetycznego 1 2 Przypomnienie: pseudokod SGA t=0; initialize(p 0 ); while(!termination_condition(p t )) { evaluate(p t ); T t =selection(p t ); O t =crossover(t
Bardziej szczegółowoWstęp do Sztucznej Inteligencji
Wstęp do Sztucznej Inteligencji Algorytmy Genetyczne Joanna Kołodziej Politechnika Krakowska Wydział Fizyki, Matematyki i Informatyki Metody heurystyczne Algorytm efektywny: koszt zastosowania (mierzony
Bardziej szczegółowoPROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK
1 PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK POLITECHNIKA CZĘSTOCHOWSKA 2 Część teoretyczna Informacje i wstępne wymagania Cel przedmiotu i zakres materiału Zasady wydajnego
Bardziej szczegółowoCUDA część 1. platforma GPGPU w obliczeniach naukowych. Maciej Matyka
CUDA część 1 platforma GPGPU w obliczeniach naukowych Maciej Matyka Bariery sprzętowe (procesory) ok na. 1 10 00 la raz t y Gdzie jesteśmy? a ok. 2 razy n 10 lat (ZK) Rozwój 1985-2004 i dalej? O roku ów
Bardziej szczegółowoStandardowy algorytm genetyczny
Standardowy algorytm genetyczny 1 Szybki przegląd 2 Opracowany w USA w latach 70. Wcześni badacze: John H. Holland. Autor monografii Adaptation in Natural and Artificial Systems, wydanej w 1975 r., (teoria
Bardziej szczegółowoZapoznanie z technikami i narzędziami programistycznymi służącymi do tworzenia programów współbieżnych i obsługi współbieżności przez system.
Wstęp Zapoznanie z technikami i narzędziami programistycznymi służącymi do tworzenia programów współbieżnych i obsługi współbieżności przez system. Przedstawienie architektur sprzętu wykorzystywanych do
Bardziej szczegółowoSprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer
Sprzęt komputerowy 2 Autor prezentacji: 1 prof. dr hab. Maria Hilczer Budowa komputera Magistrala Procesor Pamięć Układy I/O 2 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący
Bardziej szczegółowoALGORYTMY GENETYCZNE ćwiczenia
ćwiczenia Wykorzystaj algorytmy genetyczne do wyznaczenia minimum globalnego funkcji testowej: 1. Wylosuj dwuwymiarową tablicę 100x2 liczb 8-bitowych z zakresu [-100; +100] reprezentujących inicjalną populację
Bardziej szczegółowoAlgorytm indukcji klasyfikatora za pomocą EA z automatycznym przełączaniem ukierunkowań
Algorytm indukcji klasyfikatora za pomocą EA z automatycznym przełączaniem ukierunkowań Anna Manerowska, Michal Kozakiewicz 2.12.2009 1 Wstęp Jako projekt na przedmiot MEUM (Metody Ewolucyjne Uczenia Maszyn)
Bardziej szczegółowoInstrukcja projektowa cz. 2
Programowanie lokalnych aplikacji.net 2018/19 Instrukcja projektowa cz. 2 Wielozadaniowość w Windows Prowadzący: Tomasz Goluch Wersja: 7.0 I. Zadania projektowe 02. Cel: Utrwalenie wiedzy zdobytej podczas
Bardziej szczegółowoMoc płynąca z kart graficznych
Moc płynąca z kart graficznych Cuda za darmo! Czyli programowanie generalnego przeznaczenia na kartach graficznych (GPGPU) 22 października 2013 Paweł Napieracz /20 Poruszane aspekty Przetwarzanie równoległe
Bardziej szczegółowoWAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego
WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego Algorytm ewolucyjny algorytm ewolucyjny inicjuj P 0 {P 0 1, P 0 2... P 0 μ } t 0 H P 0 while! stop for (i 1: λ) if (a< p c ) O t i mutation(crossover
Bardziej szczegółowoAlgorytmy ewolucyjne. Łukasz Przybyłek Studenckie Koło Naukowe BRAINS
Algorytmy ewolucyjne Łukasz Przybyłek Studenckie Koło Naukowe BRAINS 1 Wprowadzenie Algorytmy ewolucyjne ogólne algorytmy optymalizacji operujące na populacji rozwiązań, inspirowane biologicznymi zjawiskami,
Bardziej szczegółowoINŻYNIERIA OPROGRAMOWANIA
INSTYTUT INFORMATYKI STOSOWANEJ 2013 INŻYNIERIA OPROGRAMOWANIA Inżynieria Oprogramowania Proces ukierunkowany na wytworzenie oprogramowania Jak? Kto? Kiedy? Co? W jaki sposób? Metodyka Zespół Narzędzia
Bardziej szczegółowoPLAN WYKŁADU OPTYMALIZACJA GLOBALNA HISTORIA NA CZYM BAZUJĄ AG
PLAN WYKŁADU OPTYMALIZACJA GLOBALNA Wykład 2 dr inż. Agnieszka Bołtuć Historia Zadania Co odróżnia od klasycznych algorytmów Nazewnictwo Etapy Kodowanie, inicjalizacja, transformacja funkcji celu Selekcja
Bardziej szczegółowoLABORATORIUM 2: Wpływ wielkości populacji i liczby pokoleń na skuteczność poszukiwań AE. opracował: dr inż. Witold Beluch
OBLICZENIA EWOLUCYJNE LABORATORIUM 2: Wpływ wielkości populacji i liczby pokoleń na skuteczność poszukiwań AE opracował: dr inż. Witold Beluch witold.beluch@polsl.pl Gliwice 12 OBLICZENIA EWOLUCYJNE LABORATORIUM
Bardziej szczegółowoRozwiązanie problemu komiwojażera przy użyciu algorytmu genetycznego 2
Joanna Ochelska-Mierzejewska 1 Politechnika Łódzka Rozwiązanie problemu komiwojażera przy użyciu algorytmu genetycznego 2 Wprowadzenie Jednym z podstawowych ogniw usług logistycznych jest transport [7].
Bardziej szczegółowoZaawansowane programowanie
Zaawansowane programowanie wykład 1: wprowadzenie + algorytmy genetyczne Plan wykładów 1. Wprowadzenie + algorytmy genetyczne 2. Metoda przeszukiwania tabu 3. Inne heurystyki 4. Jeszcze o metaheurystykach
Bardziej szczegółowoOptymalizacja optymalizacji
7 maja 2008 Wstęp Optymalizacja lokalna Optymalizacja globalna Algorytmy genetyczne Badane czasteczki Wykorzystane oprogramowanie (Algorytm genetyczny) 2 Sieć neuronowa Pochodne met-enkefaliny Optymalizacja
Bardziej szczegółowoZadania badawcze prowadzone przez Zakład Technik Programowania:
Zadania badawcze prowadzone przez Zakład Technik Programowania: - Opracowanie metod zrównoleglania programów sekwencyjnych o rozszerzonym zakresie stosowalności. - Opracowanie algorytmów obliczenia tranzytywnego
Bardziej szczegółowoPrzetwarzanie Równoległe i Rozproszone
POLITECHNIKA KRAKOWSKA - WIEiK KATEDRA AUTOMATYKI I TECHNOLOGII INFORMACYJNYCH Przetwarzanie Równoległe i Rozproszone www.pk.edu.pl/~zk/prir_hp.html Wykładowca: dr inż. Zbigniew Kokosiński zk@pk.edu.pl
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ółowoStrefa pokrycia radiowego wokół stacji bazowych. Zasięg stacji bazowych Zazębianie się komórek
Problem zapożyczania kanałów z wykorzystaniem narzędzi optymalizacji Wprowadzenie Rozwiązanie problemu przydziału częstotliwości prowadzi do stanu, w którym każdej stacji bazowej przydzielono żądaną liczbę
Bardziej szczegółowoMESco. Testy skalowalności obliczeń mechanicznych w oparciu o licencje HPC oraz kartę GPU nvidia Tesla c2075. Stanisław Wowra
MESco Testy skalowalności obliczeń mechanicznych w oparciu o licencje HPC oraz kartę GPU nvidia Tesla c2075 Stanisław Wowra swowra@mesco.com.pl Lider w dziedzinie symulacji na rynku od 1994 roku. MESco
Bardziej szczegółowoAlgorytmy ewolucyjne
Algorytmy ewolucyjne wprowadzenie Piotr Lipiński lipinski@ii.uni.wroc.pl Piotr Lipiński Algorytmy ewolucyjne p.1/16 Cel wykładu zapoznanie studentów z algorytmami ewolucyjnymi, przede wszystkim nowoczesnymi
Bardziej szczegółowoBadania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle
Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle Paweł Szołtysek 12 czerwca 2008 Streszczenie Planowanie produkcji jest jednym z problemów optymalizacji dyskretnej,
Bardziej szczegółowoOptymalizacja. Wybrane algorytmy
dr hab. inż. Instytut Informatyki Politechnika Poznańska www.cs.put.poznan.pl/mkomosinski, Andrzej Jaszkiewicz Problem optymalizacji kombinatorycznej Problem optymalizacji kombinatorycznej jest problemem
Bardziej szczegółowoPrzygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,
Przetwarzanie równoległe PROJEKT OMP i CUDA Temat projektu dotyczy analizy efektywności przetwarzania równoległego realizowanego przy użyciu komputera równoległego z procesorem wielordzeniowym z pamięcią
Bardziej szczegółowoWYKORZYSTANIE ALGORYTMÓW GENETYCZNYCH I MRÓWKOWYCH W PROBLEMACH TRANSPORTOWYCH
Inżynieria Rolnicza 7(105)/2008 WYKORZYSTANIE ALGORYTMÓW GENETYCZNYCH I MRÓWKOWYCH W PROBLEMACH TRANSPORTOWYCH Justyna Zduńczuk, Wojciech Przystupa Katedra Zastosowań Matematyki, Uniwersytet Przyrodniczy
Bardziej szczegółowoNowoczesne technologie przetwarzania informacji
Projekt Nowe metody nauczania w matematyce Nr POKL.09.04.00-14-133/11 Nowoczesne technologie przetwarzania informacji Mgr Maciej Cytowski (ICM UW) Lekcja 2: Podstawowe mechanizmy programowania równoległego
Bardziej szczegółowoJCuda Czy Java i CUDA mogą się polubić? Konrad Szałkowski
JCuda Czy Java i CUDA mogą się polubić? Konrad Szałkowski Agenda GPU Dlaczego warto używać GPU Budowa GPU CUDA JCuda Przykładowa implementacja Co to jest? GPU GPU Graphical GPU Graphical Processing GPU
Bardziej szczegółowoPodejście memetyczne do problemu DCVRP - wstępne wyniki. Adam Żychowski
Podejście memetyczne do problemu DCVRP - wstępne wyniki Adam Żychowski Na podstawie prac X. S. Chen, L. Feng, Y. S. Ong A Self-Adaptive Memeplexes Robust Search Scheme for solving Stochastic Demands Vehicle
Bardziej szczegółowoWysokowydajna implementacja kodów nadmiarowych typu "erasure codes" z wykorzystaniem architektur wielordzeniowych
Wysokowydajna implementacja kodów nadmiarowych typu "erasure codes" z wykorzystaniem architektur wielordzeniowych Ł. Kuczyński, M. Woźniak, R. Wyrzykowski Instytut Informatyki Teoretycznej i Stosowanej
Bardziej szczegółowoProgramowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz
Programowanie równoległe i rozproszone Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz 23 października 2009 Spis treści Przedmowa...................................................
Bardziej szczegółowoWykorzystanie architektury Intel MIC w obliczeniach typu stencil
Wykorzystanie architektury Intel MIC w obliczeniach typu stencil Kamil Halbiniak Wydział Inżynierii Mechanicznej i Informatyki Kierunek informatyka, Rok IV Instytut Informatyki Teoretycznej i Stosowanej
Bardziej szczegółowoTeoria algorytmów ewolucyjnych
Teoria algorytmów ewolucyjnych 1 2 Dlaczego teoria Wynik analiza teoretycznej może pokazać jakie warunki należy spełnić, aby osiągnąć zbieżność do minimum globalnego. Np. sukcesja elitarystyczna. Może
Bardziej szczegółowoAlgorytmy ewolucyjne (3)
Algorytmy ewolucyjne (3) http://zajecia.jakubw.pl/nai KODOWANIE PERMUTACJI W pewnych zastosowaniach kodowanie binarne jest mniej naturalne, niż inne sposoby kodowania. Na przykład, w problemie komiwojażera
Bardziej szczegółowoMETODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne
METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne dr hab. inż. Andrzej Obuchowicz, prof. UZ Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski A. Obuchowicz: MSI - algorytmy ewolucyjne
Bardziej szczegółowoWykorzystanie metod ewolucyjnych w projektowaniu algorytmów kwantowych
Wykorzystanie metod ewolucyjnych w projektowaniu algorytmów kwantowych mgr inż. Robert Nowotniak Politechnika Łódzka 1 października 2008 Robert Nowotniak 1 października 2008 1 / 18 Plan referatu 1 Informatyka
Bardziej szczegółowoAlgorytmy ewolucyjne. wprowadzenie
Algorytmy ewolucyjne wprowadzenie Gracjan Wilczewski, www.mat.uni.torun.pl/~gracjan Toruń, 2005 Historia Podstawowy algorytm genetyczny został wprowadzony przez Johna Hollanda (Uniwersytet Michigan) i
Bardziej szczegółowoModyfikacja algorytmów retransmisji protokołu TCP.
Modyfikacja algorytmów retransmisji protokołu TCP. Student Adam Markowski Promotor dr hab. Michał Grabowski Cel pracy Celem pracy było przetestowanie i sprawdzenie przydatności modyfikacji klasycznego
Bardziej szczegółowoAlgorytmy stochastyczne, wykład 02 Algorytmy genetyczne
Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne J. Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2014-02-27 1 Mutacje algorytmu genetycznego 2 Dziedzina niewypukła abstrakcyjna
Bardziej szczegółowoKatedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa
Wydział Zarządzania AGH Katedra Informatyki Stosowanej Algorytmy ewolucyjne Treść wykładu Wprowadzenie Zasada działania Podział EA Cechy EA Algorytm genetyczny 2 EA - wprowadzenie Algorytmy ewolucyjne
Bardziej szczegółowoZadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik
Zadanie transportowe i problem komiwojażera Tadeusz Trzaskalik 3.. Wprowadzenie Słowa kluczowe Zbilansowane zadanie transportowe Rozwiązanie początkowe Metoda minimalnego elementu macierzy kosztów Metoda
Bardziej szczegółowoProgramowanie genetyczne, gra SNAKE
STUDENCKA PRACOWNIA ALGORYTMÓW EWOLUCYJNYCH Tomasz Kupczyk, Tomasz Urbański Programowanie genetyczne, gra SNAKE II UWr Wrocław 2009 Spis treści 1. Wstęp 3 1.1. Ogólny opis.....................................
Bardziej szczegółowoPolitechnika Wrocławska Wydział Elektroniki INFORMATYKA SYSTEMÓW AUTONOMICZNYCH. Heurystyka, co to jest, potencjalne zastosowania
Politechnika Wrocławska Wydział Elektroniki INFORMATYKA SYSTEMÓW AUTONOMICZNYCH Autor: Łukasz Patyra indeks: 133325 Prowadzący zajęcia: dr inż. Marek Piasecki Ocena pracy: Wrocław 2007 Spis treści 1 Wstęp
Bardziej szczegółowoAnna Gryko-Nikitin Politechnika Białostocka, Wydział Zarządzania, Katedra Informatyki Gospodarczej i Logistyki
Niektóre osobliwości algorytmów genetycznych na przykładzie zagadnień logistycznych Certain peculiarities of the genetic algorithms based on logistic issues Anna Gryko-Nikitin Politechnika Białostocka,
Bardziej szczegółowo