niedziela, 26 lutego 2012

IUI (wykład 3)

 
 

26 lutego 2012

13:17

 
 

J S.

 
 

Historia i Definicja inteligencji

  • Zdolność do rozwiązywania testów psychologicznych (Edwin Boring, 1923);
  • Powstały liczne testy sprawdzające zdolnośći intelektualne i nadające mu pewną rangę (liczbę) - np. test Wechslera (1939);
  • Pojęcie sztucznej inteligencji w procesie inżynierskim zaproponował John McCarthy (1956) :
    • Celem jest algorytmizacja działań mogących uchodzić za inteligentne.
  • Inteligencja obliczeniowa - proces efektywnego przekształcania informacji związany w pewsnym stopniu z wiedzą (o języku)
  • Sztuczna AI - modelowanie umysłu człowieka (podejście wizjonerskie)
  • Roger Penrose zaproponował 4 podejścia do definiowania sz. i. (z czego tylko 2 pierwsze podejścia a nawet pierwsze tylko zapewnia powodzenie )

     
     

  • Turing - test,
    • rezultatem tego testu jest konkurs chaterbotów - komisja przeprowadza dialog z botami (osoba nie wie czy rozmawia z człowiekiem czy programem - ma to ocenić );
    • Dialog polega na zadawaniu pytań z dziedziny ogólnej (poznanie świata)
    • Pytanie:
      • Czy boty oszukują ludzi ?
      • Czy zbliżają się do pułapu gdzie granica między botami a ludźmi zaczyna się zacierać?

         
         

         
         

  • Chiński pokój
    • Mamy zbiór reguł jak odpowiadać na znaczki otrzymane na kartce po chińsku;
    • Siedzimy w pokoju zamkniętym
    • Otrzymujemy instrukcje na kartce w języku chińskim
    • Mamy zareagować na dane instrukcje w języku nie znanym na podstawie słownika reguł odpowiedzi
      • Pytanie czy to jest inteligencja (czy jest to jej wyraz)??

         
         

         
         

  • Kreatywność
    • Budujemy algorytmy działające w sposób kreatywny;
    • Wychodzimy od etymologii słowa - "twórczy"
    • Kreatywność to zdolność użycia naszy ch zasobów obliczeniowych do tego aby eksplorować je i wytwarzać nowe wartości które dotychczas nie były w nich zapisane
    • Typy kreatywności:
      • h-creativity - coś co jeszcze nie było znane ludzkości
      • P- creativity - coś co nie jest dla nas znane ale znane było innym
      • E-creativity - tworzymy zbiór elementów nieznanych nam - to co wydaje się nam ciekawe przyjmujemy za kreatywne
      • T-creativity

         
         

  • Przykłady działań kreatywnego działania algorytmów w informatyce w przeszłości:
    • Pokonanie arcymistrza szachowego przez program
      • Kreatywność w programach tego typu, jest w węzłach drzewa decyzyjnego;
      • Program Deep Blue 2 vs Garry Kasparov
    • EMI - inteligencja muzyczna
      • Twórcy poddawali utwory danego twórcy algorytmom typu data-mine [??data mind??]
      • Tworzenie nowych utworów na podstawie wzorców otrzymanych z procesu data-mine
    • Komputer działa na podstawie wzorców - to człowiek na końcu ocenia czy wynik prac jest coś wart

       
       

  • Kreatywność - przykłady
    • Technika PRIME
      • Aktywacja danych węzłów - sposób pobudzenia odpowiednich węzłów w grafie decyzji;
      • Sprawdzanie skojarzeń dwóch słów - czy w mózgu danej osoby jest ścieżka łącząca dane pojęcia
      • Przykład generatora tekstów piosenek Stinga

       
       

       
       

      Ostatnia modyfikacja: 2012-02-26; 14:16

      • Aplikacje generujące teksty piosenek
      • Generator przemówień PRL

         
         

    • Generacja tekstów na podstawie łańcuchów Markova
      • Oparte na metodach probabilistycznych
      • Ciąg elementów w którym wystąpienie elementu jest uzależnione od swych poprzedników
        • Łańcuch pierwszego rzędu - element ma tylko jednego poprzednika
        • ł. Wyższych rzędów - więcej poprzedników;

           
           

      • Metoda szybka
      • Proste budowanie słownika
      • Przykład spaceru z psem
        • Tworzymy mapę słów z zaznaczeniem poprzednika i następnika
        • Liczymy wystąpienie poszczególnych kombinacji
        • Słabo z sensownością powstałych zdań dla łańcucha pierwszego rzędu- mogą wystąpić nielogiczne zdania
        • Zwiększając rzędowość łańcucha do II rzędu otrzymujemy już sensowne wyrażenia

           
           

      • Operując stopniem łańcucha zwiększamy logiczność zdań ale zmniejszamy liczbę kombinacji
      • Aby zachować dużą losowość możemy wprowadzać ocenianie logiki wyrażeń

         
         

         
         

    • Generacja poezji (poezja kombinatoryczna)
      • Zastosowanie metodyk POS
        • POS - możliwość automatycznego znacznikowania części mowy za pomocą określonych reguł gramatycznych (specyficzne szablony)
        • Na kombinatorykę słów (tworzenie neologizmów) nakładamy warstwę logiki słownika gramatycznego (metoda POS opisana powyżej) i dodatkowych reguł - np.. Koniec ma być rymowany;

           
           

    • Zmiana słów bez zmiany logiki:
      • Zamiana liczb występujących w tekście na liczby
        • Przemnażamy przez daną wartość i otrzymujemy inne wartości
      • W wyniku otrzymujemy tą samą logikę ze zmianą wartości posiadania opisywanych przedmiotów i ludzi
      • Możemy zamienić obiekty w zdaniu - otrzymujemy zdanie nieco innym sensie ale zachowanej poprawności logicznej
        • Taka metodyka wykorzystywana przy pozycjonowaniu stron w wyszukiwarkach internetowych;
        • Wspomaganie generowania tekstów -
        • wspomaganie szybkości pisania - dokańczanie zdań w trakcie pisania
          • Na ETI robią wtyczki do WORD'a
        • Automatycznie generowanie mail'a (spam);

           
           

       
       

       
       

  • Klasyfikacja tekstów
    • Przetwarzanie języka naturalnego
      • NLG (natural language generation)
      • NLP (natural Language processing)
      • NLU (n. l. Understanding)
      • Słownik wordnet (wspierany przez Google)

         
         

      • Co robimy z tekstem do przetworzenia?
        • Wykorzystujemy metodę POS - part of speech(oznaczamy jaką częścią mowy słowo jest)
        • Wyłapywanie tokenów - trzeba uważać aby nie działały zbyt naiwnie (szczególnie jeśli chodzi o frazy złożone - nazwy własne z białymi znakami);
        • Lematyzacja
        • Stop words - wyznaczanie słów zatrzymujących działanie algorytmu
        • Wyznaczanie znaków interpunkcyjnych i specjalnych;
        • Tworzenie słowników (wordnet, tezaurus)
          • Np.. Dostarczają synonimów

       
       

       
       

      Ostatnia modyfikacja: 2012-02-26; 15:14

  • NLP Tools
  • Historia
  • Reprezentacja dokumentów
    • Przetworzenie dokumentu
    • Wyciagnięcie danych typowych, cechy charakterystyczne tekstu
    • (…)

       
       

      METODY EKSTRACJI cech z dokumentu (trzy metody)

    • ?kompresja?
    • ?wyszukiwanie?

       
       

       
       

      Algorytm kompresji

    • "Elementy językowe spakowane osobno zajmują więcej miejsca niż spakowane razem"
    • Wymaga wykonania permutacji porównanai podobieństwa każdego dokumentu z każdym

       
       

      Wyszukiwanie Boolowskie i odległościowe

    • Boolowskie BM:
      • Budowa odwróconego indeksu
        • Struktura pozwalająca wyszukiwać w czasie jednostkowym dane słowa
        • Wykorzystywane w podpowiadaniu słów wprowadzanych w przeglądarce internetowej
        • Dla listy wszystkich słów występujących w korpusie słownym (strony www) podaje wagę binarną (0 - słowo nie występuje, 1 - słowo jest); wyznacza się i przypisuje indeksy słowom - na tej podstawie możliwe jest szybkie wyszukanie słów przez przeglądarkę
        • Prawo heap'a - w miarę dodawania słów do słownika liczba tokenów będzie się zmniejszać

           
           

      • Prawo Zipfa
        • Jak stworzymy sobie listę słów to otrzymamy rozkład w mia (….) (ble ble ble)
        • -> słabo opisane

         
         

         
         

    • Wyszukiwanie oparte na dystansach (odległościowe) VSM
      • Vector space model
      • Liczymy odległosći prawdopodobne dla naszych wyrażeń
      • Metoda BOW - bag of words - worek gdzie informacja o kolejności wyrażeń jest zatracana
        • Tworzymy słownik słów
          • Słownik tworzy nam wymiary w przestrzeni , w której dokumenty są odwzorowane jako punkt;
          • Dodajemy wagi dla przestrzeni określające czestotliwość wystąpienia elementu

             
             

      • Możemy stworzyć specyficzny ranking wyrażeń (w rzeciwieństwie do metody boolean)
      • Redukcja wymiarowości (dwa sposoby)-
        • poprzez selekcję cech charakterystycznych na podstawie ważenia
          • Wykonuje się ją za pomocą dwóch miar:
            • Miara częstości wystąpień terminu
            • Miara użyteczności -jak zadane słowo jest istotne do zcharakteryzowania zadanego tekstu w kontekście całego repozytorium zdań
              • Term -słowo przeprocesowane
              • Słowo -element pochodzący ze zdania

                 
                 

            • Wejście dla tych metod powyżej
              • liczba obiektów
              • Liczba cech i wagi

                 
                 

            • Na tej podstawie można sklasyfikować elementy

               
               

        • Oparte na podstawie algebry (o tym nie będziemy mówić - zbyt zaawansowane)

           
           

      • Miary wykorzystywane do obliczeń odległości między wymiarami:
        • Miara euklidesowa
        • Miara minkowskiego
        • Miara Cosinusowa
        • Miara mahalanobisa
        • Miara Czybyszewa

           
           

           
           

    • Porównanie VSM i BM

       
       

      Nie mówimy o modelu HAL (pomija to )

       
       

       
       

       
       

      Ostatnia modyfikacja: 2012-02-26; 16:15

       
       

      Klasyfikatory

    • K-NN (k- nearest neighbours)
      • obliczanie odległości do k- najbliższych sąsiadów
      • Problemem jest poprawne dobranie parametru k
      • Znać idee klasyfikatora i potrafić obliczyć odległości [E]

         
         

    • Metoda rankingowa
      • Obliczenie przynależności na podstawie sumy różnic wystąpień danej cechy

         
         

    • Klasyfikator bayesa - prawdopodobieństwo
      • Przynależność tekstu do klasy na podstawie rozkładu słów w danej klasie
      • Twierdzenie bayesa

       
       

       
       

       
       

       
       

      WYSZUKIWANIE INFORMACJI (część trzecia)

    • Definicja usługi
    • Rodzaje usług
    • Informacja a dane
    • Piramida wiedzy
    • Systemy rozmyte
    • Klasteryzacja
    • Ranking wyszukiwarek
    • Webmining
      • Drążenie danych - 3 sposoby:
        • Eksploracja zawartości sieci
        • Eksploracja Połączeń sieci
        • Eksploracja Korzystania z sieci

           
           

    • Proces wyszukiwania
      • Wyszukiwarki cache'ują dane
      • Moduł pozyskiwania danych - crawler (pająk)
        • Dla punktów startowych bot porusza się po linkach w głąb sieci;
      • Moduł analizatora
      • Moduł indeksera
        • Przetwarza dokumenty dostarczone przez crowler'a i zrzuca je do bazy za pomocą pewnej reprezentacji

           
           

    • Historia GOOGLE

     
     

IW (wykład 1)


25 lutego 2012

09:19



Na ostatnim laboratorium dostaniemy krótkie zadanie do zaliczenia - ale najważniejszy jest projekt (specyfikacja wymagań)




Wykład



Pojęcia będą wymagane dla zrozumienia treści zadań na egzaminie


Problem musi być zdefiniowany i mieć określonego właściciela








Ostatnia modyfikacja: 2012-02-25; 10:20
Druga godzina: Wymagania względem systemu




Ostatnia modyfikacja: 2012-02-25; 12:14

 
Pojedyncze źródło wymagań

 

 
SWS:
  1. Określamy granice problemu\\




    Zdarzenia biznesowe


    Oszacowanie nakładów


    Formy realizacji inicjacji projektu
    Koniec na 42 stronie

     

ZPI (wykład 1)


18 lutego 2012

09:22



Wróbel


Wstęp




Ostatnia modyfikacja: 2012-02-18; 09:32

 
Przyczyny braku sukcesu projektu (slajd 9/72);

 
Rozkład błedów popełnianych przy konstrukcji systemów IT:
  • Najwięcej to specyfikacja wymagań i projekt - są też najbardziej kosztowne do usunięcia
  • Błędy implementacji - koszty bardzo małe


    Inżynieria oprogramowania - zajmuje się usystematyzowaniem procedur wytwarzania oprogramowania
  • Definicje na egzaminie




    Procesy klienta i dostawcy (slajd 24/72)
    Miary sukcesu
  • Generalnie srutu tutu






    Po przerwie:
    Kaskadowy cykl życia oprogramowania
  • Budowa
  • Zalety i wady


    Model V - pozwala na zwiększenie jakości produktu ale przy zwiększonych nakładach


    Co zrobić kiedy kient nie potrafi określić swoich potrzeb? - zastosować model prototypowy
  • Prototyp nie musi być produktem - może to być makieta
  • Po zaakceptowaniu prototypu budowany system jest od nowa


    Co zrobić kiedy projekt jest obarczony duzym ryzykiem? - model spiralny
  • Wyodrębnione są 4 części
    • Planowanie
    • Identyfikacja i rozróżnianie ryzyka
    • Implementacja i Testowanie
    • Planowanie następnej iteracji



       
  • Model przyrostowy
    • System powstaje przy kolejnych przyrostach
    • Po iteracjach system jest już funkcjonalny
       


      Ostatnia modyfikacja: 2012-02-18; 10:52


      Modele:
      • Przekształcenia formalne
      • MDD
      • Re-engineering (zasób ponownego użycia [E])
      • RUP - iteracyjny proces wytwarzania oprogramowania - zawiera zbiór dobrych praktyk








        Ostatnia modyfikacja: 2012-02-18; 11:16
  • SCRUM - młyn w rugby

     
    Product backlog - wszystkie funkcje które mają zostać wytworzone w projekcie (zestaw funkcji);
    Sprint - okres czasu w którym realizuje się funkcjonalność wybrana z backlogu 9nie dłużej niż 2-6 tygodni)- codziennie dochodzi do spotkania - informacja co się zrobiło.

     





     

     

WAI (wykład 3)


 
26 lutego 2012
09:18
Wytwarzanie aplikacji internetowych
W
dr P. Czarnul
9.15-13.00
NE



 
Usługi sieciowe na Tomcat i GlassFish

 

 
SOAP

 

 
  1. Mamy usługę
  2. Stawiamy serwer
  3. Tworzymy opis usługi w WSDL (odpowiednik IDL w CORBIE)
  4. "rozgłaszamy" opis UDDI





     
  5. Wykorzystujemy serwer tomcat z pakietem axis
    1. W podkatalogu tomcat /webapps umieszczamy dodatkowy katalog axis (rozpakowany pakiet pobrany z internetu)
    2. Axis daje 2 możliwości tworzenia usług
      1. Jeśli mamy kod javy (rozszerzenie .jws) to wrzucamy plik do katalogu axis (i tyle)
        1. Klasa zawiera metody publiczne - do udostępnienia

           


Struktura WSDL
  1. Wsdl:message - odpowiada danym wysyłanym od klienta do usługi (zestaw danych wejścioewych do usługi; Request), lub od usługi do klienta (Response)
  2. Wsdl:portType - wiąże ze sobą elementy typu message i określa jakiej (..) metody usługi sieciowej dotyczą;
    1. Wsdl:operation - w usłudze jest jakaś metoda dla której dane wejściowe zdefiniowane są przez zmienne w elemencie wsdl:input message, zaś dane wyjściowe w wsdl:output message;

       
  3. Wsdl:binding
    1. Wsdlsoap:binding style="rpc" (remote procedure call)

       


Na stronie przedmiotu są instrukcje laboratoryjne (to co na wykładzie zrobił - krok po kroku)AUI-1-lab2.pdf


http://fox.eti.pg.gda.pl/~pczarnul/AUI-1-lab3.pdf



(instrukcje laboratoryjne będą dostępne - ale są to tylko poglądowe instrukcje - na laborkach będzie co innego)


Ostatnia modyfikacja: 2012-02-26; 11:04
Po przerwie - zabezpieczenia usług internetowych

 

 
-przykład autoryzacji:

 
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="runtaskuser"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="runtaskuser" password="uio9" roles="runtaskuser"/>
</tomcat-users>

 

 
  • Ograniczenie dostępu dla roli (runtaskuser)
    • Powinno pojawić się okno z danymi do uwierzytelnienia (login. Hasło)


      <security-constraint>
      <web-resource-collection>
      <web-resource-name>RunTaskApplication</web-resource-name>
      <url-pattern>/*</url-pattern>
      </web-resource-collection>
      <auth-constraint>
      <role-name>runtaskuser</role-name>
      </auth-constraint>
      </security-constraint>
      <login-config>
      <auth-method>BASIC</auth-method>
      <realm-name>RunTask Application</realm-name>
      </login-config>






      Przykłady aplikacji w Netbeans (runtaskws serwis)


      Tworzenie aplkacji klienta:
    • Nowy projekt
    • Nowa aplikacja standardowa Java
    • Dodajemy do aplikacji nowy element : new WS client
    • Podajemy adres WSDL
    • W kodzie dodajemy wywołanie metody udostępnionej














      Ostatnia modyfikacja: 2012-02-26; 11:47
      Ostatnia część wykładu na temat zintegrowanych usług sieciowych

       
    • Przykład z produkcją dżemu






      Na egzaminie tylko slajdy o tematyce o której wspominał w trakcie (tylko kto go słuchał?)


      W rejestrze UDDI są 4 elementy:
    • Biznes entity
    • Biznes binding
    • Biznes service
    • tModel



       
    • Nie będzie od nas wymagać UDDI - standard na wymarciu


      Przegląd architektur - tak trzeba traktować ten przedmiot
      (java EE, servlety i Webserwisy - zakres tematyczny)

PT (wykład 2)


18 lutego 2012
13:34
K D.

 
ADO.NET

 
  • Demonstruje na visual studio 2008

     

PT (wykład 1)




11 lutego 2012
09:21

Tomasz D.

Egzamin w sesji egzaminacyjnej
Po 50pkt do zdobycia z wykładu i laboratorium
Zalicza suma większa od 50% (bez progów z teorii czy laboratorium)




Platformy technologiczne
  • Definicja [Technologia, Platforma] - sposób jak coś zrobić (inżynieria, Technologia) - szczegóły inżynierskie (na czym to zrobić) - to są platformy;
  • Rys historyczny
    • Przetwarzanie w chmurach - wiemy tylko jak coś zrobić (brak platform)

       
  • Porównanie technologii - schemat
    • Czemu nie ma PHP? - to zwykły program (interpreter nie kompilator), można go uruchomić w konsoli na maszynie - nie otrzebuje serwera WWW;
    • Serwer aplikacyjny aplikacji Windows to windows server! (IIS to tylko serwer WWW)
    • Warstwa runtime - po to aby aplikacja była przenośna (CLR i Java runtime);
      • CLR - przenośny ale tylko na windowsach!
      • Java - jvm (kilkanaście wersji)
    • Warstwa obsługi bazy danych (JDBC,JPA, ADO.NET);
      • Mapowanie obiektowo - relacyjne (wcześniej LINQ teraz entity …);
    • Komponenty(biblioteki) prezentacji danych (Servlets,JSP,JSF,ASP.NET)
      • JSF - ściągnieta technologia z Microsoft ASP.NET - w tej chwili na wymarciu obie bo zbyt zamulają
    • Na końcu aplikacje najwyższego poziomu


      [cała godzina na jednym slajdzie!!!]










      Ostatnia modyfikacja: 2012-02-11; 10:13
      Po przerwie

  • Środowiska wykonawcze - tytuł slajdu
  • Bytecode dla javy
    • Microsoft ściągnął to i stworzył MSIL - są bardzo podobne do siebie
  • PHP - Zend Server - moduł od wersji 5 - zapamiętuje się pierwszą interpretację i w następnej wersji jest wykorzystywany (zamieniony kod na bytecode) - mechanizm cache'owania - na razie zarzucone - ma być włączone w wersji 6.
  • Porównanie maszyn wirtualnych JVM i CLR
    • JVM - bierze bytecode i tłumaczy
    • CLR - mechanizm cache'owania przetłumaczonych kodów (z MSIL )
    • JIT a ENGEN
  • Interpreter PHP spowalnia środowisko;


    Obsługa żadania w PHP
  • Konfiguracja krok po kroku
    • Instalacja serwer WWW
    • Biblioteki


    Współpraca Apache - Tomcat
  • Java
  • Też jest serwer WWW - Apache
  • Dodany Tomcat (wymaga JVM) - kontener
  • Załadować trzeba moduły mod_jserv
  • Komunikacja między nimi oparta o sockety


    Obsługa żądania JSP
  • Żądanie http (klient-server)
  • Serwer wysyła żądanie do kontenera (Serwer - java engine)
  • W razie potrzeby JVM odczytuje plik .jsp (java engine - kompilator)
  • JSP jest parsowane na kod serwletu
  • Serwlet zostaje uruchomiony i generuje HTML (w sliniku Java)
  • Kontener wysyła HTML do serwera


    Mechanizm wolny przy pierwszym uruchomieniu
    Przy kolejnych bardzo szybko (gotowe serwlety)


    HTTP Runtime

     
  • Przeglądarka - html - IIS
    • IIS zwraca HTML
  • Przeglądarka - aspx -IIS
    • IIS ładuje bibilotekę aspnet_isapi.dll
    • Przy użyciu aplikacji Inetinfo.exe ….

       
    Cykl życia strony ASP.NET

     
  • Po kompilacji otrzymamy plik dll (w przypadku javy był to class);
  • Obiekt po wygenerowaniu dll zostaje usunięty z pamięci (w javie był cache'owany)


    Czas życia obiektów
  • Najszybszy JSP, ASP na drugim miejscu, i php na końcu


    Przetwarzanie żądań w potoku HTTP(na przykładzie APS.NET)
  • Cały mechanizm ukryty przed programistą
  • Aplikacja skalowalna - ten sam kod posadzony na wielu serwerach
  • HttpRuntime pobiera jedną z instancji aplikacji serwera - wybiera wolną instancję
  • Żądanie po obróbce trafia do fabryki obiektów usługi - rozpoznaje po rozszerzeniach
    • Stronie aspx - fabryka sięga do bibliotek standardowo przypisanych do strony 9np. Page)
  • Po obróbce przez moduły wylatuje to do klienta
  • Przed tym w HttpContext przechowywana jest informacja o stanie sesji
  • Podobny mechanizm jest w Javie (moduły nazywają się filtrami)


    Czas życia obiektów
  • ASP.NET - zapisywany stan obiektu przed usunięciem


    Kontrolki serwerowe
  • Znajduje się tablica kontrolek w klasie Page
  • W kodzie znajduje nazwę kontrolki i przepytuje tablicę
    • Po znalezieniu jej w tablicy kontrolek wywoływana jest metoda render tworząca kod html
    • Po przepytaniu całej tablicy wszystko zbierane jest w całość i wyjściowo tworzy się strona html


    ??


    Utrzymanie stanu kontrolek






    Ostatnia modyfikacja: 2012-02-11; 11:15
    Mechanizm sesji

     
  • Sam serwer aplikacji nie potrafi zapewnić sesji;
  • W ramach sesji: utrzymanie (wymiana inf między klientem a serwerem że one wiedzą że maj asię ze sobą komunikować) i śledzenie (obiekty przechowywania sesji);

    • Śledzenie sesji
    • ID sesji przechowywane po obu stronach (klient - serwer)
    • ID sesji po stronie serwera przechowywane są w pamięci, pliku, lub bazie danych - wyboru dokonuje administrator serwera;
    • 3 rodzaje utrzymania sesji: cookies, przepisywanie url , ukryte formsy
    • Wyboru konfiguracji sesji dokonuje administrator serwera
    • W jaki sposób serwer wykonuje wyboru metody?
      • Użyć wszystkiego!
        • Użyj cookies
        • Jeśli odpowie cookies i url to serwer wie że mają być cookies
        • Jeśli tylko url to musi szukać dalej (bo klient nie obsługuje cookies)



    [Schemat komunikacji klient - serwer]
  • Ustawiany zegar sesji przez administratora serwera
  • Ważne jest zamknięcie sesji - można spreparować cookies przy nie zamkniętej sesji


    [pare slajdów ominięto]


    Wnioski
  • Współdzielony dostęp do danych
  • Skalowalność aplikacji - sesja w pamięci -> nie da się - po dodaniu serwerów nowe nie będą miały dostępu do pamięci (trzeba zastosować pliki lub bazę)


    Przechowywanie stanu sesji
  • InProc
  • Out-of_proc
    • Serwer stanu (coś jak aplikacyjny)
    • Dane sesji w bazie danych (InstallSqlState.sql, InstallPersistantSqlState.sql)
    • Rozwiązanie najwolniejsze ale najmniej zawodne



    [dużo slajdów pominiętych][…]


    WZORCE PROJEKTOWE


    Wzorzec MVC
  • Model ustawia wartości obiektu
  • Kotroler wybiera widok


    JSP
  • W widoku osadzane są obiekty
    • Klasa kontrolera - serwlet
    • Klasa widoku JSP
    • Klasa modelu - bean (bean ma obecnie prawo przetwarzania danych do obiektów - może być użyte przez serwlet i widok - kiedyś model to tylko baza danych)


    PHP
  • Wadą bałaganiarstwo (brak uporządkowania standardów)
  • Nowe frameworki wymuszają wzorzec mvc
  • [Mało opisu php]


    ASP
  • Stary asp wykorzystywał viewState (który java ukradła do JSF), który zamulał i zdecydowano wyciąć to
  • Powstał ASP.NET MVC - który nawiązuje do rowiązań Javy (pierwotnej) i PHP;


    […]pominięt slajdy - mówi że za dużo chciał powoedzieć - nie wyrobi się


    Aplikacje webowe


    Konfiguracja web.config


    Konfiguracja global.asax


    Co to jest serwer aplikacji ?
    • Obsługa komunikatów
    • Komunikacja z bazą danych
    • Obsługa poczty
    • Obsługa dostępu do katalogów
    • Utrzymywanie puli połączeń






      Ostatnia modyfikacja: 2012-02-11; 12:10


    PRZETWARZANIE W CHMURACH


    Przetwarzanie w chmurach
  • Modele chmury


    • Kolokacja (historycznie)
      Hoteling, kolokacja – usługa (zwykle informatyczna) polegająca na ulokowaniu sprzętu klienta w siedzibie (serwerowni) dostawcy, który zobowiązuje się do utrzymania tego sprzętu.
      Usługa świadczona przez ISP polegająca na udostępnieniu zasobów serwerowni. W ramach usługi klient może otrzymywać miejsce w szafie serwerowej, dostęp do sieci, zasilanie i wsparcie administratorów, samemu dostarczając serwer(y), czym różni się ta usługa od hostingu.
    • IaaS - zapewnienie infrastuktury
    • PaaS - zapewnienie platformy
    • SaaS - jak google docs, lub sklep inter netowy (zapewnienie aplikacji)

       
  • Dostępne platformy:
    • NET - MS Azure
    • Java - Google Apps Engine, Amazon…
    • PHP - MS Azure


    Windows AZURE


    Zasadność stosowania
  • Chwilowe zapotrzebowanie na większą moc obliczeniową (np.. Sklep internetowy w okresie świątecznym)




    [Cennik]
  • Koszty- najmniej ok. 280 zł, optymalnie 1000 zł/ miesiąc (windows Azure)
    • Z Home.pl ok. 850 zł;
  • Możliwość rozliczenia godzinowego (windows azure i amazon);


    \Windows Azure składa się z trzech elementów:
  • aplikacje(wgrywanie),
  • baza danych(storage - pamięci folderowe/plikowe,
    • struktura płaska,
    • Baza danych
    • Struktura kolejek
  • Moduł diagnostyczny
    • Azure Fabric

       

WAI (wykład 2)


19 lutego 2012

13:21

Wytwarzanie aplikacji internetowych
W
dr P. Czarnul
13.15-17.00
NE AUD.2







Java servlets
-Serwlety - umożliwiają konstrukcje aplikacji typu klient- serwer


Tomcat
Omówienie przykładów z tomcat samples








Projekt: książka gości




Szyfrowanie symetryczne - jeden klucz do szyfrowania i deszyfrowania


Asymetryczne - klucz publiczny i k. prywatny skojarzony z publicznym (przechowywany u klienta)


Org.eclipse.jst.servlet.ui.project.facet.WebProjectWizard

WAI (wykład 1)

http://fox.eti.pg.gda.pl/~pczarnul

 
 

50% pkt z egzaminu i 50% z laboratorium

 
 

 
 

materiał1

 
 

Architektury systemów rozproszonych

 
 

  1. Przetwarzanie w klastrze
  2. Klient-serwer

 
 

Java:

  1. JAVA Standard Edition - pojedynczy klient
  2. JAVA Enterprise edition - klient serwer

 
 

Ostatnia modyfikacja: 2012-02-12; 10:54

Systemy agentowe - przykładowy system JADE

Rola agentów:

  • negocjace
  • Podejmowanie decycji

     
     

     
     

     
     

    Volunteer computing

    Ostatnia modyfikacja: 2012-02-12; 11:46

     
     

     
     

    Grid computing

  • Wykorzystywane w korporacjach
  • Kontrolowane współdzielenie zasobów
  • Udostępnia jednolity interfejs dla danych zadań
  • Dla klienta system jest przezroczysty - nie wie gdzie to jest uruchamiane
  • Przykład systemów: Gridbas, unicorn

     
     

     
     

    Cloud computing

  • Różnica do grid:
    • Grid dla użytkowników wewnętrznych (zaufanych)
    • Cloud udostępniane przez dostawców
      • SaaS - udostępniony softwane
      • IaaS - infrastruktury
      • PaaS - całkowitej platformy

     
     

     
     

PIZI (wykład 1)


12 lutego 2012
13:19

Sz. M

 

 

 
Egzamin 40 pkt (21 pkt zalicza wykład)
Lab 4 zadania: po 10 pkt (40 max, 21 na zaliczenie)

 
Hasło do materiałów: PiZIszwoch2012

 
Wstęp - zakres materiału
(tematy pracy mgr pojawią się w maju)
Slajdy z których mogą być pytania będą zaznaczane przez wykładowce [E]

 
Ostatnia modyfikacja: 2012-02-12; 13:35
Multimedia - definicje

 
Ostatnia modyfikacja: 2012-02-12; 13:41
Przykładowae zastosowanie multimediów:
  • Hypermedia - media w internecie



 
Informacja i dane multimedialne (obraz) [E]
  • Przetwazrzanie - redukcja oczu, przetw. Artystycnze
  • Rozpoznawanie obrazów - OCR
  • Modelowanie
    • przetwarzanie informacji
    • Pomysł w głowie - modelujemy w narzędziach modelowania 3d
  • Grafika - wizualizacja
    • Koncepcja (np.. Równanie matematyczne)
    • Reprezentacja matematyczne koncepcji
    • Powstaje zwizualizowana koncepcja w postaci np.. Bitmapy
       

       
  • Podstawowe definicje na egzaminie (typu barwa )[E]



     
  • Mieszanie kolorów - 3 prawo Grassmana






    Ostatnia modyfikacja: 2012-02-12; 14:15
  • dzwiek




    Nieliniowa charatkerystyka percepcji jasności:
    Widmo prawdziwe jasności jest progowe - stopniowe
    Percepcja w mózgu - na granicy są inne wartości








    Sygnał chrominancji może być kompresowany silniej od jasności gdyż człowiek odbiera bardziej dokładnie jasność (nie kolor - chodzi o gęstość czopków i pręcików)


    Zakres słuchu człowieka - 10 do potęgi 13




    Pojęcia na egzamin - dyskretyzacja i kwantyzacja [E]


    Rozmiar bitmapy [E] (po przekształceniach, na podstawie rozmiaru i rozdzielczości)






    Format GIF:
    • Z przeplotem (informacje przesyłane mogą być przed ząładowaniem całości przedstawione
    • Był opatentowany - teraz już nie i się rozwija










      Symbol I - image (intensywność)



       


    HDR - (obraz o wysokiej dynamiki) technologia, w której dąży się do tego aby dobre szczegóły były zarówno dla elementów ciemnych jak i jasnych


    Progowanie - najczęściej używa się aby dostać wyraźniejszy obraz czarno-biały




    Koniec na filtrach cyfrowych



    Na zaliczenie f. dolno i górnoprzepustowe [E]

IUI (wykład 2)



19 lutego 2012

09:20

Ostatni wykład prof J

 

Reguły wnioskowania
  • reguła odrywania (modus ponens)
    • Jeżeli A to B i A to B;
      • Jeżeli suma liczb cyfr dzieli się przez 3 to liczba dzieli się przez 3
  • Uniwersalna specjalizacja
  • Reguła rezolucji

     

    Baza danych jest sprzeczna:
  • Jeżeli w trakcie wnioskowania ukazują się dwa przeciwstawne wnioski

     


     

    W prologu operuje się klauzulami 9to wyrażenia logiczne np. 'AvBv…vC'; gdzie A to predykat prosty lub złożony)
    Klauzula Horna - tych konkretnie używa się w prologu (wszystkie predykaty za wyjątkiem jednego są zanegowane)np.. !Av!Bv…v!CvB

     


     

    X A Y - to jest xor!

     


     


     

    Ostatnia modyfikacja: 2012-02-19; 09:39
Wpz - klauzule - strona 51 w materiałach

  • Przekształcanie wyrażeń do postaci klauzul
    • Wyrzucamy implikacje;
    • Redukcja zakresu działania symbolu negacji
    • Standaryzacja zmiennych
    • Eliminacja kwantyfikatorów szczegółowych (występuje tu funkcja Skolema)
    • dfa
    • Przedstawienie wyrażenie w normalnej postaci iloczynowej
      • Każdą funkcję boolean możemy przedstawić w normalnej postaci
    • fasfaf

       


       

      Pomija unifikacje i … (coś tam) -> od razu do przykładu 4.11 (strona 55)
      [E]Zadanie na egzaminie - na pewno to przekształcenie + drugie zadanie (coś tam podane i trzeba opisać co to zdanie oznacza w języku naturalnym)

       
    • Tematy, które pomijamy nie będą obowiązywały na egzaminie

       

      Ostatnia modyfikacja: 2012-02-19; 10:54
      Zagadnienia roztrzygalności
      • Przykład niekonczącego się wnioskowania (strona 64 - Rys. 4.13)
      • Logika pierwszego rzędu - jeżeli coś się da wykazać to w skończonym czasie da się wywniskować

         
      Zagadnienie pełności
      • Istnieją zagadnienia (zdania arytmetyczne), których nie da się wykazać a są prawdziwe (nie da się wyprowadzić z przyjętych dla arytmetyki aksjomatów);

         

     

    KONIEC LOGIKI PIERWSZEGO RZĘDU

     


     


     


     


     

    Ostatnia modyfikacja: 2012-02-19; 11:18
    Fuzzy logic

     

    [Wnioskowanie rozmyte] - str. 68
    Operacje na zbiorach rozmytych 5.1.2 (str 73)
    Omawia rysunek 5.6
    • Intersection - c (iloczyn)
    • Union - d (suma)
    • Comlement - e (negacja)

       

      [inne definicje pominięte - nie będzie obowiazywać na egzaminie]
       

      Ostatnia modyfikacja: 2012-02-19; 11:28
    System wnioskowania rozmytego - 5.1.4 (str 79)
    • Rozmywanie (fuzyfikacja)
    • Operacje rozmyte(logiczne)
    • Implikacje
    • Kompozycja
    • Precyzowanie

       

      Omówiony rys 5.14(str 84) (system MAMDAM)

     



     


     
    SYSTEM SUGENO - wynik nie jest trójkątem a prążkiem - łatwiejsze obliczenia
    • Stosowane obliczenia środka ciężkości



       


       

      Ostatnia modyfikacja: 2012-02-19; 11:52
      Koniec systemów rozmytych
      [E] opisać system rozmyty lub znaleźć wynik (będzie na propozycjach zadań)

       


       

      Inne podejście - sieci Bayessa (5.2)
      - zdarzenia losowe


       


       


       


       

IUI (wykład 1)



11 lutego 2012

13:26

 

Inteligentne usługi informatyczne

 

Prof. J.

 
(druga część przedmiotu t J. S.)
(Laboratoria D.)

 
Sztuczna inteligencja - jest to roziwnięcie

 
Zaliczenie: suma pkt z wykł i laboratorium (waga 50/50)
6 zadań (4 z części pierwszej Jędrucha)

 
Materiały -wykłady z opisami tekstowymi

 

 

 

 
Definicja sztucznej inteligencji
-różne definicje

 

 
Dziedzina SI składa się z metod i zastosowań;
Każdą z metod wykonuje w róznym skutku człowiek
  •  
  • Metody
    • Przeglądanie grafów
    • Reprezentacja wiedzy
      • Człowiek posiada bazę wiedzy
    • Metody uczenia się
      • Na podstawie tabel wzorcowych aplikacja sama ocenia nowe dane;

 [coś się tu rozjechało dalej]

  1.  


     

    Pytanie na zaliczenie:

[A]

[E]
pqFAŁSZp AND qp NOT qq NOT pp XOR qp OR qp NOR qp XNOR qNOT qq pNOT pp qp NAND qPRAWDA
0000000011111111
0100011100001111
1000101100110011
1101000101010101
Warto zwrócić uwagę, iż wynik operacji NOT <inny operator>, np. AND › NAND, OR › NOR daje zawsze wynik inny niż ów <inny operator>, tzn. jeśli wynik operacji tego operatora na pewnej danej wynosi 1, NOT operator da 0, w przeciwnym wypadku odwrotnie.

 
  1. Każdy przedmiot jest octem i nie jest kwaśny

  2.  


     
  3. ([A]x)o(x)v!k(x)

  4.  

    Trzeba to sprawdzić. Do tego stosujemy kilka wzorów:

     

    1. a->b = !avb;
      1. !(avb)=!a^!b
    2. !([A]x)A(x)=[E]x!(Ax)
    3. ……...

     

 

"
Ax

 

"

 

Sprawdzając wzór (2)
([A]x)!O(x) -> !k(x)
([A]x)o(x)v!k(x)== ([A]x)k(x) -> o(x)
Czyli (2) równa się 4

 

Ostatnia modyfikacja: 2012-02-11; 15:54
Omawia przykłady ze slajdów