algorytm 3, Pomoce naukowe, studia, informatyka


Algorytm jest to sformalizowany ciąg logicznie powiązanych instrukcji (poleceń, rozkazów), których wykonanie pozwoli na przetworzenie informacji wejściowych (danych) w informacje wyjściowe (wyniki).
Przetwarzanie informacji to zadanie problemowe, które możemy nazwać "rozwiązywaniem zadań".
Szerzej algorytmem możemy nazwać sformalizowane rozwiązywanie krok po kroku dowolnego problemu.

Na całościowe rozwiązanie problemu składają się :
• wybór metody rozwiązania problemu
• plan zastosowania tej metody do rozwiązania problemu
• opis czynności wykonywanych podczas realizacji tego planu wraz z opisem ich skutków
• ostateczny wynik wykonywanych czynności
Czynności służące do rozwiązania zadania (kroki) to :
• analiza treści zadania
• wykaz danych wejściowych; wiadomych i niewiadomych oraz relacji między nimi
• sprawdzenie czy zadanie posiada jednoznaczne rozwiązanie
• wybór metody rozwiązania zadania
• opis czynności, które należy wykonać z danymi wejściowymi przy zastosowaniu
• wybranej metody rozwiązania
• sporządzenie i przedstawienie wyników rozwiązania zadania
• Urządzenie techniczne, które może realizować algorytm nosi nazwę automatu (żelazko z termoregulatorem, lodówka, pralka automatyczna). Uniwersalnym automatem do realizacji algorytmów z zakresu przetwarzania danych jest komputer.

Składowe algorytmu to :
• nazwa algorytmu,
• opis obiektów
• deklaracja stałych i zmiennych tekstowych i liczbowych
• deklaracja funkcji użytkownika
• opis czynności jakie należy wykonać z obiektami, co realizujemy za pomocą instrukcji, które opisują nie tylko sposób działania i kolejność ich wykonywania ale również ewentualne warunki jakie muszą być spełnione w celu uzyskania prawidłowego rozwiązania
• opis wyników - zawiera sposób udostępnienia wyników rozwiązanego zadania


Przykłady algorytmów to :
• Algorytm Euklidesa
• Algorytmy sortowania
• Algorytmy kompresji
• Algorytmy sztucznej inteligencji
• Algorytmy przeszukiwania drzew: min-max i alpha-beta

Algorytmy sortowania
W życiu codziennym często spotykamy się z faktem porządkowania np., aby łatwiej było znaleźć hasło w słowniku są one uporządkowane wg określonych zasad.

Sortowanie - proces ustawienia zbioru obiektów w określonym porządku

Metody sortowania:
1. przez zamianę (sortowanie bąbelkowe)
2. przez wybieranie
3. przez wstawianie


Ad.1 Jedną z popularnych metod sortowania jest sortowanie przez prostą zamianę (sortowanie bąbelkowe). W metodzie tej porównujemy sąsiednie elementy. W celu uporządkowania elementów od najmniejszego do największego, jeśli drugi element jest mniejszy od poprzedniego, to zamieniamy go miejscami. Następnie element, który stał się drugim, porównujemy z trzecim i przestawiamy, jeśli jest mniejszy itd.
Przykład:
7 6 1 9 5 - porównujemy 7 i 6 ( przestawiamy, bo 6 < 7)
6 7 1 9 5 - porównujemy 7 i 1 ( przestawiamy, bo 1 < 7)
6 1 7 9 5 - porównujemy 7 i 9 ( nie przestawiamy, bo 10 > 7)
6 1 7 9 5 - porównujemy 9 i 5 ( przestawiamy, bo 5 < 10)
6 1 7 5 9 - 9 na właściwym miejscu
….
Aż do uzyskania odpowiedniego porządku


Ad.2 Polega na wyszukaniu najmniejszej liczby, przestawieniu jej na początek ciągu elementów (czyli zamienieniu jej z pierwszą liczbą ciągu) i takim samym postępowaniu dalszym z pominięciem pierwszego elementu.
Przykład:
7 6 1 9 5 - 1 na pierwszą pozycję, 7 w miejsce 1
1 6 7 9 5 - 5 na drugą pozycję, 6 w miejsce 5
1 5 7 9 6 - 6 na trzecią pozycję, 7 w miejsce 6
1 5 6 9 7 - 7 na czwartą pozycję, 9 w miejsce 7
1 5 6 7 9 - 9 na właściwym miejscu (piątym)

Ad.3 Sortowanie przez wstawianie
Metoda porządkowania przez wybór polega na wstawianiu elementu we właściwe miejsce, jest ona powszechnie stosowana przez osoby grające w karty.

7| 6 1 9 5
6 7| 1 9 5
1 6 7| 9 5
1 6 7 9| 5
1 6 7 5 9|

Na schemacie kreska oddziela posortowaną lewą część liczb od nieposortowanej prawej części. Jeśli pragniemy ustawić liczby w kolejności od najmniejszego do największego, to bierzemy element drugi i jeśli jest on mniejszy od pierwszego to wstawiamy przed nim. Następnie bierzemy element trzeci i wstawiamy również w odpowiednie miejsce, a więc jeśli jest mniejszy od pierwszego to przed pierwszy, jeśli mniejszy od drugiego to przed drugi.

Kompresja - ogólnie działanie mające na celu zmniejszenie wielkości czegoś (czyli zwiększenia gęstości). Np. wody (fizyka). Działaniem przeciwnym do kompresji jest dekompresja.
W informatyce chodzi o działania mające na celu zmniejszenie objętości informacyjnej danych, czyli wyrażenie zestawu danych za pomocą mniejszej ilości bitów.

Sztuczna Inteligencja (ang. [Artificial Intelligence]) (AI) to technologia i kierunek badań informatycznych, którego zadaniem jest "Konstruowanie maszyn, o których działaniu dałoby się powiedzieć, że są podobne do ludzkich przejawów inteligencji",

Istnieją dwa różne podejścia do pracy nad AI. Pierwsze, to tworzenie całościowych modeli matematycznych analizowanych problemów i implementowanie ich w formie programów komputerowych mających realizować konkretne cele. Drugie to próby tworzenia struktur i programów "samouczących się", takich jak modele [sieci neuronowych]? oraz opracowywania procedur rozwiązywania problemów poprzez "uczenie" takich programów a następnie uzyskiwanie od nich odpowiedzi na "pytania".

Algorytm min-max to najprostszy algorytm przeszukiwania drzew mający zastosowanie w komputerowych nielosowych algorytmach gry w dwie osoby, np. szachów.
Wybieramy ten ruch który po ruchu przeciwnika ma "największą najmniejszą" wartość (stąd nazwa). Czyli dla każdego ruchu symulujemy wszystkie możliwe ruchy przeciwnika i za wartość danego naszego ruchu uznajemy wartość najlepszego z punktu przeciwnika ruchu który może on wykonać jeśli my wykonamy dany ruch (część min). Potem wybieramy ruch o najwyższej wartości (część max).

Wartość sytuacji można szacować rekurencyjnie algorytmem min-max, jednak po kilku poziomach konieczne jest użycie jakiejś innej funkcji, np. przyjmującej 1 dla wygranej, 0 dla przegranej i inną wartość dla pozostałych sytuacji.

Algorytm alpha-beta to zoptymalizowana postać algorytmu min-max. Podczas przeszukiwania zachowane są dwie wartości: α - najlepszy jak na razie nasz ruch i β - najlepszy jak na razie dla przeciwnika ruch w przypadku danego naszego ruchu. Przeszukiwanie ruchów przeciwnika możemy zakończyć kiedy β spadnie poniżej α, czyli w przypadku wykonania przez nas danego ruchu przeciwnik potrafi wykonać taki ruch, że nasz wynik będzie niższy niż dla jakiegoś innego naszego ruchu.

Rodzaje zapisu algorytmów
Opis słowny - polega na logicznym i zrozumiałym dla odbiorcy przedstawieniu kolejnych czynności (akcji), jakie należy wykonać, aby osiągnąć zamierzony efekt. Przykładami takiego opisu algorytmu mogą być: przepis kulinarny,
Schemat blokowy - jest jedną z najpopularniejszych form przedstawiania algorytmu.
Rodzaje sieci działań:
Proste (sekwencyjne) - nie używa się w nich bloków warunkowych. W takiej sieci działań kolejność realizacji poszczególnych operacji jest ściśle określona i żadna z nich nie może być pominięta ani powtórzona.
Z rozwidleniem - zawiera w sobie wybór jednej z kilku możliwych dróg realizacji danego zadania. Istnieje w nim przynajmniej jeden blok warunkowy.
Z pętlą, często w trakcie realizacji danego zadania konieczne jest powtórzenie niektórych operacji różniących się jedynie zestawem danych. Pętla obejmuje tą część bloków, która ma być powtarzana.
Złożone - będące kombinacją powyższych sieci.

ZASADY BUDOWY SCHEMATU BLOKOWEGO
1) Każda operacja jest umieszczona w skrzynce
2) Schemat ma tylko jedną skrzynkę "początek" i przynajmniej jedną skrzynkę "koniec"
3) Skrzynki są ze sobą połączone.
4) Ze skrzynki wychodzi jedno połączenie; wyjątek stanowią skrzynki: "koniec" (z której nie wychodzą już żądne połączenia) oraz "warunkowa"
(z której wychodzą dwa połączenia opisane TAK i NIE - w zależności od tego, czy warunek jest spełniony czy nie, można wyjść jedną z dwóch dróg)
5) W skrzynce "operacyjnej" zamiast znaku "=" pojawia się oznaczenie ":="



Wyszukiwarka

Podobne podstrony:
algorytm 1, Pomoce naukowe, studia, informatyka
algorytm 2, Pomoce naukowe, studia, informatyka
algorytm projektowania systemu informatycznego, Pomoce naukowe, studia, informatyka
hakerzy jako subkultura, Pomoce naukowe, studia, informatyka
język XML, Pomoce naukowe, studia, informatyka
język SQL, Pomoce naukowe, studia, informatyka
wykłady - cz. 1, Pomoce naukowe, studia, informatyka
wirtualni operatorzy komórkowi, Pomoce naukowe, studia, informatyka
automatyka - ściąga, Pomoce naukowe, studia, informatyka
polityka bezpieczeństwa w sieciach komputerowych, Pomoce naukowe, studia, informatyka
analiza systemu informatycznego biura pośrednictwa pracy, Pomoce naukowe, studia, informatyka
projekt i wykonanie sieci komputerowej - cz.2, Pomoce naukowe, studia, informatyka
skróty klawiaturowe, Pomoce naukowe, studia, informatyka
etapy projektowania bazy danych, Pomoce naukowe, studia, informatyka
system zarządzania bazami danych access, Pomoce naukowe, studia, informatyka
system Netware, Pomoce naukowe, studia, informatyka
wykłady - cz. 6, Pomoce naukowe, studia, informatyka
systemy informatyczne w ekonomii, Pomoce naukowe, studia, informatyka
wykłady - cz. 2, Pomoce naukowe, studia, informatyka

więcej podobnych podstron