10 typów głównych algorytmów

Wśród różnych rodzajów istniejących algorytmów wyróżniają się te, które są sklasyfikowane według ich systemu znakowego i zgodnie z ich funkcją. Algorytm to seria kroków, które są wykonywane w celu rozwiązania problemu, wykonania zadania lub wykonania obliczeń.

Z definicji są one na ogół rygorystycznymi i logicznymi projektami, takimi jak operacje matematyczne, które okazały się optymalne do rozwiązania wszelkich trudności.

Zasadniczo algorytm jest najlepiej znanym rozwiązaniem konkretnego problemu. Zgodnie ze swoją strategią i funkcją istnieje wiele rodzajów algorytmów.

Niektóre z tych typów to: algorytmy dynamiczne, algorytmy odwrotne, algorytmy sił brutalnych, algorytmy oportunistyczne, algorytmy znakowania i algorytmy losowe.

Algorytmy mają różne zastosowania w wielu dziedzinach. Z obszaru komputerowego, przez matematykę do obszaru marketingu. Istnieją tysiące odpowiednich algorytmów do rozwiązywania problemów w każdym obszarze.

Klasyfikacja typów algorytmów

Zgodnie z jego systemem znakowania

Algorytmy jakościowe

Algorytmy te to te, w których umieszczane są elementy słowne. Przykładem tego typu algorytmu są instrukcje lub „krok po kroku” podawane ustnie.

Tak jest w przypadku przepisów kulinarnych lub instrukcji do wykonania zadania DIY.

Algorytmy ilościowe

Są przeciwieństwem algorytmów jakościowych, ponieważ umieszczane są elementy numeryczne. Te typy algorytmów są używane w matematyce do wykonywania obliczeń. Na przykład, aby znaleźć pierwiastek kwadratowy lub rozwiązać równanie.

Algorytm obliczeniowy

Są to algorytmy tworzone za pomocą komputera; Wiele z tych algorytmów jest bardziej złożonych i dlatego musi być wykonywana za pośrednictwem maszyny. Mogą to być również zoptymalizowane algorytmy ilościowe.

Algorytm nie obliczeniowy

Algorytmy te są tymi, których nie można wykonać za pomocą komputera; na przykład programowanie telewizora.

Zgodnie z jego funkcją

Algorytm etykietowania

Algorytm ten wykorzystuje automatyzację do dynamicznego ustalania cen na podstawie takich czynników, jak zachowanie klienta.

Praktyka polega na automatycznym ustawianiu ceny za przedmioty w sprzedaży, aby zmaksymalizować zysk sprzedającego. Od początku lat 90. jest to powszechna praktyka w branży lotniczej.

Algorytm znakowania jest powszechną praktyką w wysoce konkurencyjnych branżach, takich jak podróże i handel internetowy.

Ten typ algorytmu może być niezwykle złożony lub stosunkowo prosty. W wielu przypadkach mogą być samoukiem lub mogą być stale optymalizowane za pomocą testów.

Algorytm znakowania może być niepopularny wśród klientów, ponieważ ludzie cenią sobie stabilność i bezstronność.

Algorytmy probabilistyczne

Jest to algorytm, w którym wynik lub sposób, w jaki uzyskuje się wynik, zależy od prawdopodobieństwa. Czasami nazywane są również algorytmami losowymi.

W niektórych aplikacjach zastosowanie tego typu algorytmu jest naturalne, na przykład podczas symulacji zachowania pewnego istniejącego lub planowanego systemu w czasie. W tym przypadku wynik jest przypadkowy.

W innych przypadkach problem do rozwiązania jest deterministyczny, ale można go przekształcić w przypadkowy i można go rozwiązać stosując algorytm prawdopodobieństwa.

Zaletą tego typu algorytmu jest to, że jego zastosowanie nie wymaga zaawansowanej lub matematycznej wiedzy. Istnieją trzy główne typy: numeryczny, Monte Carlo i Las Vegas.

Algorytm numeryczny wykorzystuje przybliżenie zamiast manipulacji symbolicznych, aby rozwiązać problemy analizy matematycznej. Mogą być stosowane we wszystkich dziedzinach inżynierii i nauk fizycznych.

Z drugiej strony algorytmy Monte Carlo generują odpowiedzi oparte na prawdopodobieństwie. W rezultacie rozwiązania wytwarzane przez ten algorytm mogą być poprawne lub nie, ponieważ mają pewien margines błędu.

Jest używany przez programistów, matematyków i naukowców. Są one skontrastowane z algorytmami Las Vegas.

Wreszcie, algorytmy Las Vegas są scharakteryzowane, ponieważ wynik zawsze będzie poprawny, ale system może wykorzystać więcej przewidywanych zasobów lub więcej czasu oszacowania.

Innymi słowy: te algorytmy dokonują pewnego rodzaju zakładu przy użyciu zasobów, ale zawsze dają dokładny wynik.

Dynamiczne programowanie

Słowo dynamiczne odnosi się do metody, w której algorytm oblicza wynik. Czasami rozwiązanie elementu problemu zależy od rozwiązania szeregu mniejszych problemów.

Dlatego, aby rozwiązać ten problem, te same wartości muszą być obliczane wielokrotnie, aby rozwiązać mniejsze problemy. Ale to powoduje marnotrawstwo cykli.

Aby temu zaradzić, można zastosować programowanie dynamiczne. W tym przypadku zasadniczo pamiętany jest wynik każdego podproblemu; w razie potrzeby wartość ta jest używana zamiast obliczać ją ponownie i ponownie.

Algorytmy heurystyczne

Algorytmy te to takie, które znajdują rozwiązania wśród wszystkich możliwych, ale nie gwarantują, że zostaną znalezione najlepsze z nich. Z tego powodu są one traktowane jako przybliżone lub nie precyzyjne algorytmy.

Zwykle znajdują rozwiązanie bliskie najlepszym i znajdują je szybko i łatwo. Generalnie ten typ algorytmu jest używany, gdy niemożliwe jest znalezienie rozwiązania w normalny sposób.

Algorytmy cofania

Są to algorytmy, które zostały odwołane przez obserwację ich zachowania. Zazwyczaj są to przybliżenia oryginalnego algorytmu skonstruowanego do celów takich jak konkurencja lub badania.

Algorytmy można cofnąć, aby zbadać ich wpływ na rynki, gospodarkę, oznaczanie cen, operacje i społeczeństwo.

Ravenous Algorithm

W wielu problemach podejmowanie żarłocznych decyzji prowadzi do optymalnych rozwiązań. Ten typ algorytmów ma zastosowanie do problemów optymalizacyjnych.

W każdym kroku żarłocznego algorytmu podejmowana jest logiczna i optymalna decyzja, aby w końcu osiągnąć najlepsze ogólne rozwiązanie.

Należy jednak pamiętać, że po podjęciu decyzji nie można jej poprawić ani zmienić w przyszłości.

Testowanie prawdziwości żarłocznego algorytmu jest bardzo ważne, ponieważ nie wszystkie tego rodzaju algorytmy prowadzą do optymalnego rozwiązania globalnego.