320 likes | 572 Views
Teoretyczne podstawy informatyki. http://th-www.if.uj.edu.pl/~erichter/dydaktyka /TPI-2005. Zakres tematyczny. Co to jest informacja? Algorytmy i struktury danych, poprawność algorytmu Złożoność obliczeniowa cz. I Rekursja, indukcja, iteracja, teoria prawdopodobieństwa
E N D
Teoretyczne podstawy informatyki http://th-www.if.uj.edu.pl/~erichter/dydaktyka/TPI-2005
Zakres tematyczny • Co to jest informacja? • Algorytmy i struktury danych, poprawność algorytmu • Złożoność obliczeniowa cz. I • Rekursja, indukcja, iteracja, teoria prawdopodobieństwa • Modele danych: drzewa, listy, zbiory, relacje, grafy • Złożoność obliczeniowa, cz. II • Wzorce, automaty, wyrażenia regularne i gramatyki • Języki formalne, problemy NP-zupełne
Literatura • H. Abelson, et al., Struktura i intepretacja programów komputerowych • A. V. Acho, J. D. Ullman, Wykłady z informatyki z przykładami w języku C • T. H. Cormen, Ch. F. Leiserson, R. L. Rivest, Wprowadzenie do algorytmów • A. Drozdek, D. L. Simon, Struktury danych w języku C • D. Harel, Rzecz o istocie informatyki • J.E. Hopcroft, J. Ullman, Wprowadzenie do teorii automatów, jezyków i obliczeń • S. Kowalski, A. W. Mostowski, Teoria automatów i lingwistyka matematyczna • Ch. H. Papadimitriou, Złożoność obliczeniowa • W. Sikorski, Wykłady z podstaw informatyki • W. M. Turski, Propedeutyka Informatyki • N. Wirth, Algorytmy i struktury danych = programy Zaliczenie przedmiotu • zaliczenie ćwiczeń z zadań rachunkowych • egzamin pisemny: podany obowiazujacy zestaw zagadnień z wykładu
Informatyka: mechanizacja abstrakcji • Wpływ informatyki na funkcjonowaniu społeczeństw jest widoczny: rozpowszechnianie się komputerów, systemów informatycznych, edytorów tekstu, arkuszy kalkulacyjnych itd... • Ważną cecha informatyki jest ułatwianie samego programowania i czynienie programowania bardziej niezawodnym • Zasadniczo jednak informatyka jest • nauką o abstrakcji , czyli nauką o tworzeniu właściwego modelu reprezentującego problem i wynajdowaniu odpowiedniej techniki mechanicznego jego rozwiązywania • Informatycy tworzą abstrakcje rzeczywistych problemów w formach które mogą być rozumiane i przetwarzane w pamięci komputera
Informatyka: mechanizacja abstrakcji Abstrakcjaoznaczać będzie pewne uproszczenie, zastąpienie skomplikowanych i szczegółowych okoliczności występujących w świecie rzeczywistym zrozumiałym modelem umożliwiającym rozwiązanie naszego problemu. Oznacza to że abstrahujemy od szczegółów które nie maja wpływu lub mają minimalny wpływ na rozwiązanie problemu. Opracowanie odpowiedniego modelu ułatwia zajęcie się istotą problemu. • W ramach tego wykładu omówimy • modele danych: abstrakcje wykorzystywane do opisywania problemów • struktury danych: konstrukcje języka programowania wykorzystywane do reprezentowania modelów danych. Przykładowo język C udostępnia wbudowane abstrakcje takie jak struktury czy wskaźniki, które umożliwiają reprezentowanie skomplikowanych abstrakcji takich jak grafy • algorytmy: techniki wykorzystywane do otrzymywania rozwiązań na podstawie operacji wykonywanych na danych reprezentowanych przez abstrakcje modelu danych, struktury danych lub na inne sposoby
Teoretyczne podstawy informatyki Wykład 1a: Trochę historii... trochę przyszłości • Algorytm Euklidesa, krosno Jacquarda, maszyny Babbage, algorytmika, komputery..... • Oprogramowanie wielkich eksperymentów fizycznych.... czyli wyznawanie dla współczesnej informatyki stosowanej
Trochę historii ....... Gdzieś miedzy 400 a 300 rokiem p.n.e wielki grecki matematyk Euklides wynalazłalgorytmznajdowania największego wspólnego dzielnika (nwd) dwóch dodatnich liczb całkowitych. Szczegóły algorytmu są nieistotne... algorytm Euklidesa uważa się za pierwszy kiedykolwiek wymyślony niebanalny algorytm. Słowo algorytm wywodzi się od nazwiska perskiego matematyka Muhammeda Alchwarizmi (łac.. Algorismus), który żył w IX wieku p.n.e i któremu przypisuje się podanie reguł dodawania, odejmowania, mnożenia i dzielenia zwykłych liczb dziesiętnych. Jedną z najwcześniejszych maszyn wykonujących proces sterowany czymś co można nazwać algorytmem jest krosno tkackie wynalezione w 1801 roku przez Josepha Jacquarda. Tkany wzór określały karty z otworami wydziurkowanymi w różnych miejscach.Te otwory, które wyczuwał specjalny mechanizm, sterowały wyborem nitek i innymi czynnościami maszyny.
Maszyna Babbage • Jedną z najważniejszych i najbardziej barwnych postaci w historii • informatyki był Charles Babbage. Ten angielski matematyk, częściowo • zbudowawszy w roku 1833 urządzenie zwane maszyną różnicową, • służące do obliczania pewnych wzorów matematycznych, obmyślił • i zrobił plany godnej uwagi maszyny zwanej maszyną analityczną • maszyna różnicowa realizowała konkretne zadanie • maszyna analityczna realizowała konkretny algorytm czyli program zakodowany w postaci otworów wydziurkowanych na kartach • Maszyny Babbage były w swej naturze mechaniczne, oparte raczej • na dzwigniach, trybach i przekładniach, a nie na elektronice i krzemie • Koncepcje zawarte w projekcie maszyny analitycznej Babbage’a tworzą podstawę wewnętrznej struktury i zasad działania dzisiejszych komputerów
Algorytmika, komputery • Połowa lat trzydziestych to niektóre z najbardziej fundamentalnych prac nad teorią algorytmów, uzmysławiających możliwości i ograniczenia algorytmów wykonywanych przez maszyny • Kluczowe postacie to: Alan Turing (Anglik), Kurt Goedel (Niemiec), Andriej A. Markow (Rosjanin), Alonzo Church, Emil Post i Stephen Kleene (Amerykanie) • Lata pięćdziesiąte i sześćdziesiąte to szybkie postępy w budowie komputerów: era badań jądrowych i kosmicznych, postępy w dziedzinie łączności wspieranej przez komputery (filtrowanie i analiza); gospodarka, bankowość, itd. • Uznanie informatyki za niezależną dyscyplinę akademicką nastąpiło w połowie lat sześćdziesiątych
Trochę przyszłości...tej zupełnie bliskiej • Fizyka wysokich energii: zajmuje się (bada) podstawowe składniki materii i siły występujące miedzy nimi. Jest dziedziną podstawową. Zadaje pytania o charakterze fundamentalnym dla naszego rozumienia wszechświata i jego powstania. • Podstawowe składniki materii czyli cząstki elementarne: elektron, muon, lepton tau, neutrina, kwarki. • Podstawowe oddziaływania: elektromagnetyczne, słabe, silne, grawitacyjne. Oddziaływaniami rządzą pewne prawa symetrii: zachowanie symetrii globalnej, lokalnej wymusza formę oddziaływania. • CERN: • największe laboratorium fizyki wysokich energii w Europie • organizacja międzynarodowa założona w 1953/1954 przez 12 krajów • Polska członkiem od 1991 roku • Skupia około 10 000 aktywnych fizyków, informatyków, inżynierów, elektroników
CERN i eksperymenty LHC Start: początek 2007 Tunel o obwodzie 27km (do 180m pod ziemia)
Detektory eksperymentów fizyki wysokich energii • Detektory pozwalają na obserwację (rejestrację) serii oddziaływań, podjęcie decyzji czy oddziaływanie jest interesujące, identyfikację produkowanych cząstek, pomiar ich energii i pędu. • Detektory dla zderzeń przy wysokich energiach muszą być duże, zbudowane z różnych poddetektorów (każdy dedykowany do rejestracji pewnego określonego typu sygnału). Niektóre poddetektory umieszczone są w polu magnetycznym (aby umożliwić pomiar pędu). • Metody pomiarowe to pomiar absorpcji energii, rekonstrukcja toru na podstawie „śladów” zostawionych w poszczególnych warstwach detektorów, itd. itd...
Tilecal Solenoid A T L A S Muon end-cap chamber Barrel LAr ECAL zdjecia rok 2003 Barrel coil cryostat Długość : ~40 m Promień : ~10 m Waga : ~ 7000 ton TRT end-cap wheel
TRT+SCT barrel travelled to the pit, 24th Aug 2006 A tight fit between BT and EC Calorimeter Through the parking area From the trolley to the support rails Inside cryostat
„On-line computing model” dla eksperymentów LHC czyli:Jak w ciągu 1 sekundywybrać 1 spośród 107 ? LHC (Large Hadron Collider) będzie zderzał przeciwbieżne wiązki protonów z energią środka masy 14 TeV. (Ta energia wystarczałaby na produkcję 15 000 protonów!) Wiązki protonów będą oddziaływały co 25 ns wewnątrz ogromnego detektora wypełnionego milionami kanałów odczytu elektronicznego. Każde zderzenie wiązek to ~ 23 pp oddziaływań, każde produkujące strugę (~ 103) wychodzących cząstek. • Odstęp pomiędzy kolejnymi zderzeniami wiązek to tylko 25ns • 25ns to odległość 8m dla cząstek poruszających się z prędkością światła (to jest mniej niż promień detektora) • Na raz w detektorze „fale cząstek” od 3 kolejnych zderzeń • Tylko niewielka cześć tych oddziaływań może zostać zapisana „na taśmie”System który podejmuje decyzje nazywa się TRIGGER.
„On-line computing model” dla eksperymentów LHC • Co to znaczy niewielka część? • 25ns 40 x 106/s zderzeń • 23 oddział/zderzenie 23 x 40 x 106 /sek ~ 109 /sek oddział • możemy zarejestrować tylko ~ 100/sek zderzeń redukcja 107 Ile informacji trzeba przetworzyć? trigger elektron: 8bit x 40MHz x 7500 ~ 3 000 Gbit/sek Czy można podjąć decyzje w 25ns? nie można: czas rejestracji w detektorze dłuższy (ok. 50 x 25ns) informacje trzeba wysłać do procesora (ok. 15 x 25ns) informacje trzeba przetworzyć (ok. 10 x 25ns) Metoda to wielopoziomowość podejmowania decyzji, każdy poziom procesuje tylko pewien % informacji, stopniowa redukcja ilość interesujących zderzeń, w tym czasie informacja jest przechowywana w tzw. „pipeline pamięci” Po wydaniu decyzji OK następuje zczytanie informacji z całego detektora (po „zero suppression”, linki optyczne 40Gbit/sek) ~ 100Hz x 1MB
„Off-line computing model” dla eksperymentów LHC • Definiuje ogólną architekturę czyli sposób w jaki planuje się używać • dostępnych mocy obliczeniowych • Jak duże moce są potrzebne aby zanalizować informację zebraną w detektorze? • Jaki system zapisu danych (media, technologia)? • Jaki system networku? itd... • Założenia wstępne • długi czas życia ~ 20 lat • 85% rozwijane w niezależnych grupach na całym świecie • technologia obiektowa, język C++, aplikacje w java, skrypty w pythonie, pliki xml,.... • Parametry wejściowe • 100Hz częstość rejestracji (109 oddziaływań na rok) • 1 MB rozmiar przypadku • 1 MB/godz. informacji dodatkowej (kalibracja odczytu) • 150 równoczesnych użytkowników (dostęp do baz danych)...
Detector alignment Detector description Detector calibration Generate Events Reconstruction parameters Build Reconstruction Geometry Build Simulation Geometry Physics Reconstruct Events Reconstuction geometry Analyze Events Simulation geometry ATLAS Detector Simulate Events Raw Data ESD AOD Co to znaczy analizować dane”?
e+ f Z0 _ f e- Od „surowych danych” do fizyki czyli co się dzieje podczas analizy? 250Kb – 1 Mb 100 Kb 25 Kb 5 Kb 500 b 2037 2446 1733 1699 4003 3611 952 1328 2132 1870 2093 3271 4732 1102 2491 3216 2421 1211 2319 2133 3451 1942 1121 3429 3742 1288 2343 7142 Fragmentation, DecayPhysics analysis Basic physics Results Raw dataConvert tophysicsquantities InteractionwithdetectormaterialPattern,recognition, Particleidentification Detectorresponseapplycalibration, alignment Analysis Reconstruction Simulation (Monte-Carlo)
Co to znaczy „zaprogramować” geometrię? Jaka jest skala problemu? • 25,5 millionów oddzielnych elementów • 23 000różnych obiektów geometrycznych • 4673różnych typów geometrycznych • kontrolowanie nakładających się na siebie przypadków • 1 000 000sygnałów w detektorze na przypadek
REKONSTRUKCJA i interpretacja INFORMACJI Przykładjak może wyglądaćgraficznaprezentacjainformacji odczytanej z detektora i przetworzonejprzez algorytmyrekonstrukcyjne
REKONSTRUKCJA i interpretacja INFORMACJI A tu trochę bardziej „gesty”obraz.Nałożyliśmy 23 dodatkowe przypadki, tzw. pile-up.
Northern Tier ~1 TIPS Hierarchical View 1 TIPS = 25,000 SpecInt95 PC (1999) = ~15 SpecInt95 ~PBytes/sec Online System ~100 MBytes/sec Offline Farm~20 TIPS • One bunch crossing per 25 ns • 100 triggers per second • Each event is ~1 Mbyte ~100 MBytes/sec Tier 0 CERN Computer Centre >20 TIPS ~ Gbits/sec or Air Freight HPSS Tier 1 UK Regional Centre (RAL) US Regional Centre Italian Regional Centre French Regional Centre HPSS HPSS HPSS HPSS Tier 2 Tier2 Centre ~1 TIPS Tier2 Centre ~1 TIPS Tier2 Centre ~1 TIPS Tier 3 ~Gbits/sec Physicists work on analysis “channels” Each institute has ~10 physicists working on one or more channels Data for these channels should be cached by the institute server Lancaster ~0.25TIPS Liverpool Manchester Sheffield Physics data cache 100 - 1000 Mbits/sec Tier 4 Workstations
Toward flat structure: GRID Lab m Uni x USA Brookhaven Lancs UK USA FermiLab Lab a France Tier 1 Physics Department Uni n CERN Tier2 ………. Italy Desktop Lab b Germany NL Lab c Uni y Uni b The LHC Computing Facility
ATLAS Production system AMI prodDB dms Don Quijote Windmill super super super super super soap jabber jabber jabber soap LCG exe LCG exe NG exe G3 exe LSF exe Capone Dulcinea Lexor RLS RLS RLS LCG NG Grid3 LSF
Computing: daily CSC production jobs over the past couple of months Production for software validation and CSC physics samples Some statistics June now: Over 50 Million events produced EGEE grid 59 % NorduGrid 13 % OSG 28 %
Service monitoring Grid3 – a snapshot of sites • Sep 06 • 30 sites, multi-VO • shared resources • ~3000 CPUs (shared)
LCG2 site map • 73 Sites • 7700 CPU • ~35 pass all tests
Jobs distribution on LCG Krakow
Co z tego dzieje się w Krakowie? • grupa ATLAS, ALICE, LHCb (eksperymenty LHC) w Instytucie Fizyki Jądrowej ul. Radzikowskiego 152 • grupa ATLAS i LHCb w AGH • Czym się zajmujemy? • modelowanie triggera (on-line) • rekonstrukcja i analiza informacji (off-line) • oprogramowanie dla monitorowania pracy detektora • projektowanie elementów elektroniki • procesowanie dużej ilości danych: GRID • przygotowywanie przyszłych analiz fizycznych Zapraszamy ....